From c75e8201073ef11c0ca1c56f5c0bf36093116cd3 Mon Sep 17 00:00:00 2001 From: fierval Date: Tue, 2 Jul 2019 17:23:56 -0700 Subject: [PATCH 001/248] ssd vgg --- .../Finetune VGG SSD-checkpoint.ipynb | 423 +++++++++++ .../notebooks/Deploy Accelerated.ipynb | 633 +++++++++++++++++ .../notebooks/Finetune VGG SSD.ipynb | 423 +++++++++++ .../finetune-ssd-vgg/notebooks/config.json | 5 + .../finetune-ssd-vgg/notebooks/sample.jpg | Bin 0 -> 84889 bytes .../finetune-ssd-vgg/notebooks/sample.xml | 26 + .../finetune-ssd-vgg/tfssd/__init__.py | 0 .../tfssd/anchors/.__init__.py | 0 .../tfssd/anchors/generate_anchors.py | 92 +++ .../tfssd/dataprep/dataset_utils.py | 114 +++ .../tfssd/dataprep/pascalvoc_common.py | 112 +++ .../tfssd/dataprep/pascalvoc_to_tfrecords.py | 223 ++++++ .../tfssd/datautil/__init__.py | 0 .../finetune-ssd-vgg/tfssd/datautil/parser.py | 65 ++ .../tfssd/datautil/ssd_vgg_preprocessing.py | 397 +++++++++++ .../tfssd/datautil/tf_image.py | 306 ++++++++ .../tfssd/finetune/__init__.py | 0 .../finetune-ssd-vgg/tfssd/finetune/eval.py | 159 +++++ .../tfssd/finetune/inference.py | 95 +++ .../tfssd/finetune/metrics.py | 0 .../tfssd/finetune/model_saver.py | 57 ++ .../finetune-ssd-vgg/tfssd/finetune/train.py | 144 ++++ .../tfssd/finetune/train_eval_base.py | 125 ++++ .../finetune-ssd-vgg/tfssd/model/__init__.py | 0 .../tfssd/model/custom_layers.py | 164 +++++ .../tfssd/model/np_methods.py | 252 +++++++ .../tfssd/model/ssd_common.py | 408 +++++++++++ .../tfssd/model/ssd_vgg_300.py | 660 ++++++++++++++++++ .../tfssd/tfextended/__init__.py | 24 + .../tfssd/tfextended/bboxes.py | 508 ++++++++++++++ .../tfssd/tfextended/image.py | 0 .../finetune-ssd-vgg/tfssd/tfextended/math.py | 63 ++ .../tfssd/tfextended/metrics.py | 397 +++++++++++ .../tfssd/tfextended/tensors.py | 95 +++ .../finetune-ssd-vgg/tfssd/tfutil/__init__.py | 0 .../tfssd/tfutil/endpoints.py | 20 + .../finetune-ssd-vgg/tfssd/tfutil/tf_utils.py | 158 +++++ .../tfssd/tfutil/visualization.py | 114 +++ 38 files changed, 6262 insertions(+) create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/.__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/metrics.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/image.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/__init__.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb new file mode 100644 index 00000000..075b4ce9 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb @@ -0,0 +1,423 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Finetuning VGG-SSD Object Detection Model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prerequisits for Local Training\n", + "\n", + "* CUDA 10.0, cuDNN 7.4\n", + "* Recent Anaconda environment\n", + "* Tensorflow 1.12+" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# install supported FPGA ML models, including VGG SSD\n", + "# skip if already installed\n", + "!pip install azureml-accel-models\n", + "!pip install -U --ignore-installed tensorflow-gpu==1.13.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2\n", + "import os, sys, glob\n", + "import tensorflow as tf\n", + "\n", + "# Tensorflow Finetuning Package\n", + "sys.path.insert(0, os.path.abspath('../tfssd/'))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import Training / Validation Data\n", + "\n", + "Images are .jpg files and annotations - .xml files in PASCAL VOC format.\n", + "Each image file has a matching annotations file\n", + "\n", + "In this notebook we are looking for gaps on the shelves stocked with different products:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import cv2\n", + "plt.rcParams['figure.figsize'] = 10, 10\n", + "img = cv2.imread('sample.jpg')\n", + "\n", + "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", + "plt.imshow(img)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "779 images found and 779 matching annotations found.\n" + ] + } + ], + "source": [ + "from dataprep import dataset_utils, pascalvoc_to_tfrecords\n", + "\n", + "data_dir = r'x:\\data\\grocery\\source'\n", + "data_dir_images = os.path.join(data_dir, \"JPEGImages\")\n", + "data_dir_annotations = os.path.join(data_dir, \"Annotations\")\n", + "classes = [\"stockout\"]\n", + "\n", + "images = glob.glob(os.path.join(data_dir_images, \"*.jpg\"))\n", + "annotations = glob.glob(os.path.join(data_dir_annotations, \"*.xml\"))\n", + "\n", + "# check for image and annotations files matching each other\n", + "images, annotations = dataset_utils.check_labelmatch(images, annotations)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Split Into Training and Validation and Create TFRecord Datasets" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + ">> Converting image 1/623WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\dataprep\\pascalvoc_to_tfrecords.py:78: FastGFile.__init__ (from tensorflow.python.platform.gfile) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.gfile.GFile.\n", + ">> Converting image 623/623\n", + "Finished converting the Pascal VOC dataset!\n", + ">> Converting image 156/156\n", + "Finished converting the Pascal VOC dataset!\n", + "['test_0000.tfrecord', 'test_0001.tfrecord', 'train_0000.tfrecord', 'train_0001.tfrecord', 'train_0002.tfrecord', 'train_0003.tfrecord', 'train_0004.tfrecord', 'train_0005.tfrecord', 'train_0006.tfrecord']\n" + ] + } + ], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "\n", + "train_images, test_images, \\\n", + " train_annotations, test_annotations = train_test_split(images, annotations, test_size = .2, random_state = 40)\n", + "\n", + "data_output_dir = os.path.join(data_dir, \"../tfrec\")\n", + "\n", + "pascalvoc_to_tfrecords.run(data_output_dir, classes, train_images, train_annotations, \"train\")\n", + "pascalvoc_to_tfrecords.run(data_output_dir, classes, test_images, test_annotations, \"test\")\n", + "\n", + "print(os.listdir(data_output_dir))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup and Run Training/Validation Loops" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Setup Training Data, Import the Model" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "from finetune.train import TrainVggSsd\n", + "from finetune.eval import EvalVggSsd\n", + "\n", + "root_dir = r'x:\\grocery\\azml_ssd_vgg'\n", + "# this is the directory where the original model to be\n", + "# fine-tuned will be delivered and models saved as the training loop runs\n", + "ckpt_dir = root_dir\n", + "\n", + "# get .tfrecord files created in the previous step\n", + "train_files = glob.glob(os.path.join(data_output_dir, \"train_*.tfrecord\"))\n", + "validation_files = glob.glob(os.path.join(data_output_dir, \"test_*.tfrecord\"))\n", + "\n", + "# run for these epochs\n", + "n_epochs = 6" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Training Parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# steps per training epoch\n", + "num_train_steps=3000\n", + "# batch size. \n", + "batch_size = 2\n", + "# steps to save as a checkpoint\n", + "steps_to_save=3000\n", + "# using Adam optimizer. These are the configurable parameters\n", + "learning_rate = 1e-4\n", + "learning_rate_decay_steps=3000\n", + "learning_rate_decay_value=0.96" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Validation Parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "num_eval_steps=156\n", + "# number of classes. Includes the \"none\" (background) class\n", + "# cannot be more than 21\n", + "num_classes=2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Run Training Loop" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\datautil\\ssd_vgg_preprocessing.py:213: sample_distorted_bounding_box (from tensorflow.python.ops.image_ops_impl) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "`seed2` arg is deprecated.Use sample_distorted_bounding_box_v2 instead.\n", + "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\ops\\control_flow_ops.py:423: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Colocations handled automatically by placer.\n", + "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\util\\tf_should_use.py:193: initialize_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.\n", + "Instructions for updating:\n", + "Use `tf.variables_initializer` instead.\n", + "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\training\\saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use standard file APIs to check for files with this prefix.\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "3000: loss: 44.949, avg per step: 0.048 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8393\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "6000: loss: 16.735, avg per step: 0.054 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8477\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "9000: loss: 17.331, avg per step: 0.048 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8689\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "12000: loss: 28.185, avg per step: 0.048 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8711\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "15000: loss: 38.361, avg per step: 0.051 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8753\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "18000: loss: 43.066, avg per step: 0.051 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8769\n" + ] + } + ], + "source": [ + "for _ in range(n_epochs):\n", + "\n", + " with TrainVggSsd(ckpt_dir, train_files, \n", + " num_steps=num_train_steps, \n", + " steps_to_save=steps_to_save, \n", + " batch_size = batch_size,\n", + " learning_rate=learning_rate,\n", + " learning_rate_decay_steps=learning_rate_decay_steps, \n", + " learning_rate_decay_value=learning_rate_decay_value) as trainer:\n", + " trainer.train()\n", + "\n", + " with EvalVggSsd(ckpt_dir, validation_files, \n", + " num_steps=num_eval_steps, \n", + " num_classes=num_classes) as evaluator:\n", + " evaluator.eval() " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize Training Results" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n" + ] + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "from finetune.inference import InferVggSsd\n", + "\n", + "plt.rcParams[\"figure.figsize\"] = 15, 15\n", + "path = 'X:/data/grocery/dataset/test/JPEGImages'\n", + "image_names = sorted(os.listdir(path))\n", + "infer = InferVggSsd(ckpt_dir, gpu=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 695 ms\n" + ] + } + ], + "source": [ + "%%time\n", + "classes, scores, boxes = infer.infer_file(os.path.join(path, image_names[-21]), visualize=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "infer.close()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb new file mode 100644 index 00000000..93313f7a --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb @@ -0,0 +1,633 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Deploy Vgg Ssd Model" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2\n", + "\n", + "import os, sys\n", + "import tensorflow as tf\n", + "\n", + "import warnings\n", + "warnings.filterwarnings('ignore')\n", + "\n", + "sys.path.insert(0, os.path.abspath(\"../tfssd\"))\n", + "from tfutil import endpoints\n", + "from finetune.model_saver import SaverVggSsd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Restore the AzureML workspace" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "brainwave\n", + "MSRBrainwave\n", + "westus2\n", + "93177b32-3f08-4530-a61e-d1775d2480ad\n" + ] + } + ], + "source": [ + "from azureml.core import Workspace\n", + "\n", + "ws = Workspace.from_config(path=\"./config.json\")\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Accellerated Container Image" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "from azureml.core.model import Model\n", + "from azureml.core.image import Image\n", + "from azureml.accel import AccelOnnxConverter\n", + "from azureml.accel import AccelContainerImage\n", + "\n", + "model_ckpt_dir = r'/datadrive/Dropbox/neal/kroger/azml_ssd_vgg/'\n", + "model_name = r'ssdvgg'\n", + "model_save_path = os.path.join(model_ckpt_dir, model_name)\n", + "\n", + "# model_save_path should NOT exist prior to saving the model\n", + "not os.path.exists(model_save_path)" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/ops/tensor_array_ops.py:162: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Colocations handled automatically by placer.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/ops/tensor_array_ops.py:162: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Colocations handled automatically by placer.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/azureml/accel/models/utils.py:55: to_float (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.cast instead.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/azureml/accel/models/utils.py:55: to_float (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.cast instead.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use standard file APIs to check for files with this prefix.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use standard file APIs to check for files with this prefix.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO:tensorflow:Restoring parameters from /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/vggssd/1.1.3/ssd_vgg_bw-18000\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO - Restoring parameters from /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/vggssd/1.1.3/ssd_vgg_bw-18000\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From /data/home/boris/git/neal/Brainwave-Open-Source/tfssd/finetune/model_saver.py:60: simple_save (from tensorflow.python.saved_model.simple_save) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.simple_save.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING - From /data/home/boris/git/neal/Brainwave-Open-Source/tfssd/finetune/model_saver.py:60: simple_save (from tensorflow.python.saved_model.simple_save) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.simple_save.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/saved_model/signature_def_utils_impl.py:205: build_tensor_info (from tensorflow.python.saved_model.utils_impl) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.utils.build_tensor_info or tf.compat.v1.saved_model.build_tensor_info.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/saved_model/signature_def_utils_impl.py:205: build_tensor_info (from tensorflow.python.saved_model.utils_impl) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.utils.build_tensor_info or tf.compat.v1.saved_model.build_tensor_info.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO:tensorflow:Assets added to graph.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO - Assets added to graph.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO:tensorflow:No assets to write.\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO - No assets to write.\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO:tensorflow:SavedModel written to: /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/ssdvgg/saved_model.pb\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO - SavedModel written to: /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/ssdvgg/saved_model.pb\n" + ] + } + ], + "source": [ + "with SaverVggSsd(model_ckpt_dir) as saver:\n", + " saver.save_for_deployment(model_save_path)\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "scrolled": false + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Registering model ssdvgg\n", + "Successfully registered: \tssdvgg\tNone\t8\t\n", + "\n", + "Running..............\n", + "Succeeded\n", + "Operation c0325e8b-db6e-4c55-8467-f95e66756447 completed, operation state \"Succeeded\"\n", + "sas url to download model conversion logs https://brainwave2118624577.blob.core.windows.net/azureml/LocalUpload/e1dfae56cd184146bd84bf7f81b9f310/conversion_log?sv=2018-03-28&sr=b&sig=iSjWt3MJ3po%2FcmmvbMevqr0TmaGVzXLveJMdOECwg1k%3D&st=2019-06-28T22%3A50%3A07Z&se=2019-06-29T07%3A00%3A07Z&sp=r\n", + "[2019-06-28 22:58:57Z]: Starting model conversion process\n", + "[2019-06-28 22:58:57Z]: Downloading model for conversion\n", + "[2019-06-28 22:59:01Z]: Converting model\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,064 [INFO ] Parsing conversion options\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,064 [DEBUG] Options: {'toolVersion': '1.0', 'toolName': 'fpga', 'input_node_names': 'Placeholder:0', 'output_node_names': 'ssd_300_vgg/block4_box/Reshape_1:0,ssd_300_vgg/block7_box/Reshape_1:0,ssd_300_vgg/block8_box/Reshape_1:0,ssd_300_vgg/block9_box/Reshape_1:0,ssd_300_vgg/block10_box/Reshape_1:0,ssd_300_vgg/block11_box/Reshape_1:0,ssd_300_vgg/block4_box/Reshape:0,ssd_300_vgg/block7_box/Reshape:0,ssd_300_vgg/block8_box/Reshape:0,ssd_300_vgg/block9_box/Reshape:0,ssd_300_vgg/block10_box/Reshape:0,ssd_300_vgg/block11_box/Reshape:0', 'require_fpga_conversion': 'True', 'sourceModelFlavor': 'tf', 'targetModelFlavor': 'accelonnx', 'unpack': 'true'}\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] Begin splitting graph ...\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] input path => /tmp/4tij54cf.rue/input\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] output path => /tmp/tmpdw6oebvf\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] Splitting requires FPGA only\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [DEBUG] Descending into /tmp/4tij54cf.rue/input/ssdvgg\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,066 [INFO ] Found model dir /tmp/4tij54cf.rue/input/ssdvgg\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,066 [INFO ] Trying to load input directory with SavedModelLoader\n", + "[2019-06-28 22:59:04Z]: converter err: 2019-06-28 22:59:04.083268: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,380 [INFO ] Restoring parameters from /tmp/4tij54cf.rue/input/ssdvgg/variables/variables\n", + "[2019-06-28 22:59:04Z]: converter err: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", + "[2019-06-28 22:59:04Z]: converter err: from ._conv import register_converters as _register_converters\n", + "[2019-06-28 22:59:04Z]: converter err: INFO:tensorflow:Restoring parameters from /tmp/4tij54cf.rue/input/ssdvgg/variables/variables\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,589 [INFO ] Attempt splitting into ONNX FPGA Graph\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,590 [INFO ] Splitting into 3 stage pipeline\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,591 [INFO ] Found brainwave model of type BrainwaveModel.Ssd_Vgg\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,621 [INFO ] Adding stage TensorFlow Placeholder:0 --> brainwave_ssd_vgg_1_Version_0.1_input_1\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,622 [INFO ] Adding stage Brainwave brainwave_ssd_vgg_1_Version_0.1_input_1 --> ssd_300_vgg/conv4/conv4_3/Relu\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,622 [INFO ] Adding stage TensorFlow ssd_300_vgg/conv4/conv4_3/Relu --> ssd_300_vgg/block4_box/Reshape_1:0,ssd_300_vgg/block7_box/Reshape_1:0,ssd_300_vgg/block8_box/Reshape_1:0,ssd_300_vgg/block9_box/Reshape_1:0,ssd_300_vgg/block10_box/Reshape_1:0,ssd_300_vgg/block11_box/Reshape_1:0,ssd_300_vgg/block4_box/Reshape:0,ssd_300_vgg/block7_box/Reshape:0,ssd_300_vgg/block8_box/Reshape:0,ssd_300_vgg/block9_box/Reshape:0,ssd_300_vgg/block10_box/Reshape:0,ssd_300_vgg/block11_box/Reshape:0\n", + "[2019-06-28 22:59:04Z]: converter err: INFO:tensorflow:Froze 0 variables.\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,642 [INFO ] Froze 0 variables.\n", + "[2019-06-28 22:59:04Z]: converter err: 2019-06-28 22:59:04.705279: W tensorflow/core/graph/graph_constructor.cc:1265] Importing a graph with a lower producer version 26 into an existing graph with producer version 27. Shape inference will have run different parts of the graph with different producer versions.\n", + "[2019-06-28 22:59:04Z]: converter std: Converted 0 variables to const ops.\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,847 [INFO ] There are 71 variable names in original BW graph\n", + "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,847 [INFO ] Found 71 matching variables in existing session\n", + "[2019-06-28 22:59:05Z]: converter err: INFO:tensorflow:Restoring parameters from /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,276 [INFO ] Restoring parameters from /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg\n", + "[2019-06-28 22:59:05Z]: converter err: INFO:tensorflow:Froze 20 variables.\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,486 [INFO ] Froze 20 variables.\n", + "[2019-06-28 22:59:05Z]: converter std: Converted 20 variables to const ops.\n", + "[2019-06-28 22:59:05Z]: converter err: INFO:tensorflow:Froze 51 variables.\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,671 [INFO ] Froze 51 variables.\n", + "[2019-06-28 22:59:05Z]: converter std: Converted 51 variables to const ops.\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,851 [INFO ] Parse manifest file generated by splitter\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,852 [INFO ] Processing tensorflow stage\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,852 [INFO ] Processing brainwave stage\n", + "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,852 [INFO ] Invoking python3 /converter/external/brainwave/tensorflow_params_to_caffe.py -n VGG -c /data/models/ssd_vgg/model.prototxt -t /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg -o /tmp/tmpc1hitvmk/model_caffe.out -p ssd_300_vgg\n", + "[2019-06-28 22:59:10Z]: converter std: 2019-06-28 22:59:10,280 [INFO ] Brainwave compiler output:\n", + "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.369659] Execution started.\n", + "[2019-06-28 22:59:10Z]: converter std: 2019-06-28 22:59:08.391148: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", + "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.397032] Importing tensorflow graph... Done.\n", + "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.669752] Restoring variables... Done.\n", + "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.840631] Converting to Caffe... Done.\n", + "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:09.844696] Serializing protocol buffer output... Done.\n", + "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:10.037971] Execution finished. Execution took 1.668296 seconds\n", + "[2019-06-28 22:59:10Z]: converter std: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", + "[2019-06-28 22:59:10Z]: converter std: from ._conv import register_converters as _register_converters\n", + "[2019-06-28 22:59:10Z]: converter std: 2019-06-28 22:59:10,281 [INFO ] Invoking python3 /converter/external/brainwave/generate_firmware.py --output_format=code -i /data/models/ssd_vgg/model.prototxt -mp /tmp/tmpc1hitvmk/model_caffe.out -if /tmp/tmpc1hitvmk/subgraph.graphir -o /tmp/tmpc1hitvmk/firmware.c -off --v3_isa --double_buffer_parameters --back_propagate_strides --prefetch_matrices --super_prefetch_MRF --super_prefetch_MRF_lookahead=2 --spatial_pool_interleave=3 --use_genericConvolution --use_expander --min_zeros=226 --ivrf_size=12999 --asvrf1_size=5100 --merge_large_layers --allow_interleaved_output\n", + "[2019-06-28 22:59:33Z]: converter std: 2019-06-28 22:59:33,517 [INFO ] Brainslice firmware generator output:\n", + "[2019-06-28 22:59:33Z]: converter std: error:\n", + "[2019-06-28 22:59:33Z]: converter std: WARNING: Logging before InitGoogleLogging() is written to STDERR\n", + "[2019-06-28 22:59:33Z]: converter std: W0628 22:59:17.475265 416 upgrade_proto.cpp:72] Note that future Caffe releases will only support input layers and not input fields.\n", + "[2019-06-28 22:59:33Z]: converter std: 2019-06-28 22:59:32.348985: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", + "[2019-06-28 22:59:33Z]: converter std: /converter/external/brainwave/output_printer.py:4200: SyntaxWarning: assertion is always true, perhaps remove parentheses?\n", + "[2019-06-28 22:59:33Z]: converter std: assert(len(sp)==2, \"Shape is expected as 2D\")\n", + "[2019-06-28 22:59:33Z]: converter std: /converter/external/brainwave/output_printer.py:4222: SyntaxWarning: assertion is always true, perhaps remove parentheses?\n", + "[2019-06-28 22:59:33Z]: converter std: assert(len(sp)==1, \"Shape is expected as 1D\")\n", + "[2019-06-28 22:59:33Z]: converter std: /converter/external/brainwave/output_printer.py:4284: SyntaxWarning: assertion is always true, perhaps remove parentheses?\n", + "[2019-06-28 22:59:33Z]: converter std: assert(len(outputVal[1])==1, \"Shape is expected as 1D\")\n", + "[2019-06-28 22:59:33Z]: converter std: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", + "[2019-06-28 22:59:33Z]: converter std: from ._conv import register_converters as _register_converters\n", + "[2019-06-28 22:59:33Z]: converter std: 2019-06-28 22:59:33,518 [INFO ] Invoking python3 /converter/external/tf2onnx/tf2onnx/convert.py --input /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg.frozen.pb --inputs brainwave_ssd_vgg_1_Version_0.1_input_1:0 --output /tmp/tmpc1hitvmk/ssd_vgg.onnx --outputs ssd_300_vgg/conv4/conv4_3/Relu:0 --continue_on_error --custom-rewriter BrainSlice --rewriter-config /data/models/ssd_vgg/converter.json --weight-path /tmp/tmpc1hitvmk --firmware-path /data/firmware/brainslice-v3-3.0.4/ssd_vgg\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,679 [INFO ] Onnx converter output:\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35.115539: I tensorflow/tools/graph_transforms/transform_graph.cc:317] Applying fold_batch_norms\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35.143892: I tensorflow/tools/graph_transforms/transform_graph.cc:317] Applying fold_old_batch_norms\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35.248886: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", + "[2019-06-28 22:59:35Z]: converter std: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", + "[2019-06-28 22:59:35Z]: converter std: from ._conv import register_converters as _register_converters\n", + "[2019-06-28 22:59:35Z]: converter std: /usr/lib/python3.6/re.py:212: FutureWarning: split() requires a non-empty pattern match.\n", + "[2019-06-28 22:59:35Z]: converter std: return _compile(pattern, flags).split(string, maxsplit)\n", + "[2019-06-28 22:59:35Z]: converter std: INFO:tf2onnx.optimizer.transpose_optimizer: 0 transpose op(s) left, ops diff after transpose optimization: Counter({'Const': 0, 'Placeholder': 0, 'Pad': 0, 'BrainSlice': 0, 'Relu': 0, 'Identity': 0})\n", + "[2019-06-28 22:59:35Z]: converter std: using tensorflow=1.12.0, onnx=1.3.0, opset=7, tfonnx=0.4.0.fork/6bf11d\n", + "[2019-06-28 22:59:35Z]: converter std: Complete successfully, the onnx model is generated at /tmp/tmpc1hitvmk/ssd_vgg.onnx\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,679 [INFO ] Moving /tmp/tmpc1hitvmk/ssd_vgg.onnx ==> /tmp/4tij54cf.rue/output/ssd_vgg.onnx\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,755 [INFO ] Renaming the file /tmp/4tij54cf.rue/output/brainwave.cab ==> /tmp/4tij54cf.rue/output/brainwave.cab\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,755 [INFO ] Processing tensorflow stage\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,860 [INFO ] Saving conversion status\n", + "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,860 [INFO ] Conversion completed\n", + "[2019-06-28 22:59:36Z]: Uploading conversion results\n", + "[2019-06-28 22:59:47Z]: Conversion completed with result Success\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "Successfully converted: ssdvgg.8.accelonnx aml://asset/73aa8bf040694c34b2c40d0d9b602f9c 1 ssdvgg.8.accelonnx:1 2019-06-28 23:00:06.480438+00:00 \n", + "\n" + ] + } + ], + "source": [ + "registered_model = Model.register(workspace = ws,\n", + " model_path = model_save_path,\n", + " model_name = model_name)\n", + "print(\"Successfully registered: \", registered_model.name, registered_model.description, registered_model.version, '\\n', sep = '\\t')\n", + "\n", + "input_tensor = saver.input_name_str\n", + "output_tensors_str = \",\".join(saver.output_names)\n", + "\n", + "# Convert model\n", + "convert_request = AccelOnnxConverter.convert_tf_model(ws, registered_model, input_tensor, output_tensors_str)\n", + "# If it fails, you can run wait_for_completion again with show_output=True.\n", + "convert_request.wait_for_completion(show_output=True)\n", + "converted_model = convert_request.result\n", + "print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", + " converted_model.id, converted_model.created_time, '\\n')" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating image\n", + "Running..............\n", + "Succeeded\n", + "Image creation operation finished for image ssdvgg-image:3, operation \"Succeeded\"\n", + "Created AccelContainerImage: ssdvgg-image Succeeded brainwave56a8d7eb.azurecr.io/ssdvgg-image:3\n", + "\n" + ] + } + ], + "source": [ + "# Package into AccelContainerImage\n", + "image_config = AccelContainerImage.image_configuration()\n", + "# Image name must be lowercase\n", + "image_name = \"{}-image\".format(model_name)\n", + "image = Image.create(name = image_name,\n", + " models = [converted_model],\n", + " image_config = image_config, \n", + " workspace = ws)\n", + "image.wait_for_creation(show_output=True)\n", + "print(\"Created AccelContainerImage: {} {} {}\\n\".format(image.name, image.creation_state, image.image_location))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Deploy to AKS Cluster" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import AksCompute, ComputeTarget\n", + "\n", + "# Uses the specific FPGA enabled VM (sku: Standard_PB6s)\n", + "# Standard_PB6s are available in: eastus, westus2, westeurope, southeastasia\n", + "prov_config = AksCompute.provisioning_configuration(vm_size = \"Standard_PB6s\",\n", + " agent_count = 1, \n", + " location = \"westus2\")\n", + "\n", + "aks_name = 'aks-pb6-obj2'\n", + "# Create the cluster\n", + "aks_target = ComputeTarget.create(workspace = ws, \n", + " name = aks_name, \n", + " provisioning_configuration = prov_config)" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating....................................................................................................................................................................................................\n", + "SucceededProvisioning operation finished, operation \"Succeeded\"\n", + "Succeeded\n", + "None\n" + ] + } + ], + "source": [ + "aks_target.wait_for_completion(show_output=True)\n", + "print(aks_target.provisioning_state)\n", + "print(aks_target.provisioning_errors)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Deploy AccelContainerImage to AKS ComputeTarget" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Creating service\n", + "Running................................\n", + "SucceededAKS service creation operation finished, operation \"Succeeded\"\n" + ] + } + ], + "source": [ + "from azureml.core.webservice import Webservice, AksWebservice\n", + "\n", + "# Set the web service configuration (for creating a test service, we don't want autoscale enabled)\n", + "# Authentication is enabled by default, but for testing we specify False\n", + "aks_config = AksWebservice.deploy_configuration(autoscale_enabled=False,\n", + " num_replicas=1,\n", + " auth_enabled = False)\n", + "\n", + "aks_service_name ='my-aks-service'\n", + "\n", + "aks_service = Webservice.deploy_from_image(workspace = ws,\n", + " name = aks_service_name,\n", + " image = image,\n", + " deployment_config = aks_config,\n", + " deployment_target = aks_target)\n", + "aks_service.wait_for_deployment(show_output = True)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "# Using the grpc client in AzureML Accelerated Models SDK\n", + "from azureml.accel import PredictionClient" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "address=52.247.236.16, port=80, ssl=False, name=my-aks-service\n" + ] + } + ], + "source": [ + "address = aks_service.scoring_uri\n", + "ssl_enabled = address.startswith(\"https\")\n", + "address = address[address.find('/')+2:].strip('/')\n", + "port = 443 if ssl_enabled else 80\n", + "print(f\"address={address}, port={port}, ssl={ssl_enabled}, name={aks_service.name}\")" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "# Initialize AzureML Accelerated Models client\n", + "client = PredictionClient(address=address,\n", + " port=port,\n", + " use_ssl=ssl_enabled,\n", + " service_name=aks_service.name)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [], + "source": [ + "from tfutil import visualization\n", + "output_tensors = saver.output_names" + ] + }, + { + "cell_type": "code", + "execution_count": 24, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "import glob\n", + "\n", + "image_dir = r'/datadrive/Dropbox/neal/data/kroger/dataset/test/JPEGImages/'\n", + "im_files = glob.glob(os.path.join(image_dir, '*.jpg'))\n", + "im_file = im_files[-21]\n", + "\n", + "import azureml.accel._external.ssdvgg_utils as ssdvgg_utils\n", + "\n", + "result = client.score_file(path=im_file, input_name=saver.input_name_str, outputs=output_tensors)\n", + "classes, scores, bboxes = ssdvgg_utils.postprocess(result, select_threshold=0.5)\n", + "\n", + "plt.rcParams['figure.figsize'] = 15, 15\n", + "img = cv2.imread(im_file)\n", + "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", + "visualization.plt_bboxes(img, classes, scores, bboxes)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "scrolled": false + }, + "outputs": [], + "source": [ + "result" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb new file mode 100644 index 00000000..075b4ce9 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb @@ -0,0 +1,423 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Finetuning VGG-SSD Object Detection Model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prerequisits for Local Training\n", + "\n", + "* CUDA 10.0, cuDNN 7.4\n", + "* Recent Anaconda environment\n", + "* Tensorflow 1.12+" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# install supported FPGA ML models, including VGG SSD\n", + "# skip if already installed\n", + "!pip install azureml-accel-models\n", + "!pip install -U --ignore-installed tensorflow-gpu==1.13.1" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "%load_ext autoreload\n", + "%autoreload 2\n", + "import os, sys, glob\n", + "import tensorflow as tf\n", + "\n", + "# Tensorflow Finetuning Package\n", + "sys.path.insert(0, os.path.abspath('../tfssd/'))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import Training / Validation Data\n", + "\n", + "Images are .jpg files and annotations - .xml files in PASCAL VOC format.\n", + "Each image file has a matching annotations file\n", + "\n", + "In this notebook we are looking for gaps on the shelves stocked with different products:" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import cv2\n", + "plt.rcParams['figure.figsize'] = 10, 10\n", + "img = cv2.imread('sample.jpg')\n", + "\n", + "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", + "plt.imshow(img)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "779 images found and 779 matching annotations found.\n" + ] + } + ], + "source": [ + "from dataprep import dataset_utils, pascalvoc_to_tfrecords\n", + "\n", + "data_dir = r'x:\\data\\grocery\\source'\n", + "data_dir_images = os.path.join(data_dir, \"JPEGImages\")\n", + "data_dir_annotations = os.path.join(data_dir, \"Annotations\")\n", + "classes = [\"stockout\"]\n", + "\n", + "images = glob.glob(os.path.join(data_dir_images, \"*.jpg\"))\n", + "annotations = glob.glob(os.path.join(data_dir_annotations, \"*.xml\"))\n", + "\n", + "# check for image and annotations files matching each other\n", + "images, annotations = dataset_utils.check_labelmatch(images, annotations)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Split Into Training and Validation and Create TFRecord Datasets" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + ">> Converting image 1/623WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\dataprep\\pascalvoc_to_tfrecords.py:78: FastGFile.__init__ (from tensorflow.python.platform.gfile) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.gfile.GFile.\n", + ">> Converting image 623/623\n", + "Finished converting the Pascal VOC dataset!\n", + ">> Converting image 156/156\n", + "Finished converting the Pascal VOC dataset!\n", + "['test_0000.tfrecord', 'test_0001.tfrecord', 'train_0000.tfrecord', 'train_0001.tfrecord', 'train_0002.tfrecord', 'train_0003.tfrecord', 'train_0004.tfrecord', 'train_0005.tfrecord', 'train_0006.tfrecord']\n" + ] + } + ], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "\n", + "train_images, test_images, \\\n", + " train_annotations, test_annotations = train_test_split(images, annotations, test_size = .2, random_state = 40)\n", + "\n", + "data_output_dir = os.path.join(data_dir, \"../tfrec\")\n", + "\n", + "pascalvoc_to_tfrecords.run(data_output_dir, classes, train_images, train_annotations, \"train\")\n", + "pascalvoc_to_tfrecords.run(data_output_dir, classes, test_images, test_annotations, \"test\")\n", + "\n", + "print(os.listdir(data_output_dir))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup and Run Training/Validation Loops" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Setup Training Data, Import the Model" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "from finetune.train import TrainVggSsd\n", + "from finetune.eval import EvalVggSsd\n", + "\n", + "root_dir = r'x:\\grocery\\azml_ssd_vgg'\n", + "# this is the directory where the original model to be\n", + "# fine-tuned will be delivered and models saved as the training loop runs\n", + "ckpt_dir = root_dir\n", + "\n", + "# get .tfrecord files created in the previous step\n", + "train_files = glob.glob(os.path.join(data_output_dir, \"train_*.tfrecord\"))\n", + "validation_files = glob.glob(os.path.join(data_output_dir, \"test_*.tfrecord\"))\n", + "\n", + "# run for these epochs\n", + "n_epochs = 6" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Training Parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "# steps per training epoch\n", + "num_train_steps=3000\n", + "# batch size. \n", + "batch_size = 2\n", + "# steps to save as a checkpoint\n", + "steps_to_save=3000\n", + "# using Adam optimizer. These are the configurable parameters\n", + "learning_rate = 1e-4\n", + "learning_rate_decay_steps=3000\n", + "learning_rate_decay_value=0.96" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Validation Parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "num_eval_steps=156\n", + "# number of classes. Includes the \"none\" (background) class\n", + "# cannot be more than 21\n", + "num_classes=2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Run Training Loop" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\datautil\\ssd_vgg_preprocessing.py:213: sample_distorted_bounding_box (from tensorflow.python.ops.image_ops_impl) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "`seed2` arg is deprecated.Use sample_distorted_bounding_box_v2 instead.\n", + "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\ops\\control_flow_ops.py:423: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Colocations handled automatically by placer.\n", + "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\util\\tf_should_use.py:193: initialize_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.\n", + "Instructions for updating:\n", + "Use `tf.variables_initializer` instead.\n", + "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\training\\saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use standard file APIs to check for files with this prefix.\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "3000: loss: 44.949, avg per step: 0.048 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8393\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "6000: loss: 16.735, avg per step: 0.054 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8477\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "9000: loss: 17.331, avg per step: 0.048 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8689\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "12000: loss: 28.185, avg per step: 0.048 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8711\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "15000: loss: 38.361, avg per step: 0.051 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8753\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", + "INFO:tensorflow:Starting training for 3000 steps\n", + "18000: loss: 43.066, avg per step: 0.051 secc\n", + "\n", + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n", + "INFO:tensorflow:Starting evaluation for 156 steps\n", + "Evaluation step: 156\n", + "mAP: 0.8769\n" + ] + } + ], + "source": [ + "for _ in range(n_epochs):\n", + "\n", + " with TrainVggSsd(ckpt_dir, train_files, \n", + " num_steps=num_train_steps, \n", + " steps_to_save=steps_to_save, \n", + " batch_size = batch_size,\n", + " learning_rate=learning_rate,\n", + " learning_rate_decay_steps=learning_rate_decay_steps, \n", + " learning_rate_decay_value=learning_rate_decay_value) as trainer:\n", + " trainer.train()\n", + "\n", + " with EvalVggSsd(ckpt_dir, validation_files, \n", + " num_steps=num_eval_steps, \n", + " num_classes=num_classes) as evaluator:\n", + " evaluator.eval() " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize Training Results" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n" + ] + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "from finetune.inference import InferVggSsd\n", + "\n", + "plt.rcParams[\"figure.figsize\"] = 15, 15\n", + "path = 'X:/data/grocery/dataset/test/JPEGImages'\n", + "image_names = sorted(os.listdir(path))\n", + "infer = InferVggSsd(ckpt_dir, gpu=False)" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Wall time: 695 ms\n" + ] + } + ], + "source": [ + "%%time\n", + "classes, scores, boxes = infer.infer_file(os.path.join(path, image_names[-21]), visualize=True)" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": {}, + "outputs": [], + "source": [ + "infer.close()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.7" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json new file mode 100644 index 00000000..01a6b095 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json @@ -0,0 +1,5 @@ +{ + "subscription_id": "93177b32-3f08-4530-a61e-d1775d2480ad", + "resource_group": "MSRBrainwave", + "workspace_name": "brainwave" +} \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9d0ab04daef7fc0c649b61d190257ebac44764b0 GIT binary patch literal 84889 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 z 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

?1`<=>*wbi}tr@2SnoMJ@AmXG4(@g-<;(#MG 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 PuXe}n2b1~HKp+3v*l?_? literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml new file mode 100644 index 00000000..319a36d4 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml @@ -0,0 +1,26 @@ + + runeightft1 + 1555394321.8154433.jpg + E:/Image grocerydemostills/runeightft1/1555394321.8154433.jpg + + Unknown + + + 852 + 506 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 660 + 201 + 712 + 294 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/.__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/.__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py new file mode 100644 index 00000000..740fb3c5 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py @@ -0,0 +1,92 @@ +import numpy as np +import math +from model.ssd_vgg_300 import SSDNet, SSDParams + +_R_MEAN = 123. +_G_MEAN = 117. +_B_MEAN = 104. +EVAL_SIZE = (300, 300) + +defaults = SSDNet.default_params + +img_shape = defaults.img_shape +num_classes = defaults.num_classes +feat_layers = defaults.feat_layers +feat_shapes = defaults.feat_shapes +anchor_size_bounds = defaults.anchor_size_bounds +anchor_sizes = defaults.anchor_sizes +anchor_ratios = defaults.anchor_ratios +anchor_steps = defaults.anchor_steps +anchor_offset = defaults.anchor_offset +normalizations = defaults.normalizations +prior_scaling = defaults.prior_scaling + +def ssd_anchor_one_layer(img_shape, + feat_shape, + sizes, + ratios, + step, + offset=0.5, + dtype=np.float32): + """Computer SSD default anchor boxes for one feature layer. + + Determine the relative position grid of the centers, and the relative + width and height. + + Arguments: + feat_shape: Feature shape, used for computing relative position grids; + size: Absolute reference sizes; + ratios: Ratios to use on these features; + img_shape: Image shape, used for computing height, width relatively to the + former; + offset: Grid offset. + + Return: + y, x, h, w: Relative x and y grids, and height and width. + """ + # Compute the position grid: simple way. + # y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] + # y = (y.astype(dtype) + offset) / feat_shape[0] + # x = (x.astype(dtype) + offset) / feat_shape[1] + # Weird SSD-Caffe computation using steps values... + y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] + y = (y.astype(dtype) + offset) * step / img_shape[0] + x = (x.astype(dtype) + offset) * step / img_shape[1] + + # Expand dims to support easy broadcasting. + y = np.expand_dims(y, axis=-1) + x = np.expand_dims(x, axis=-1) + + # Compute relative height and width. + # Tries to follow the original implementation of SSD for the order. + num_anchors = len(sizes) + len(ratios) + h = np.zeros((num_anchors, ), dtype=dtype) + w = np.zeros((num_anchors, ), dtype=dtype) + # Add first anchor boxes with ratio=1. + h[0] = sizes[0] / img_shape[0] + w[0] = sizes[0] / img_shape[1] + di = 1 + if len(sizes) > 1: + h[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[0] + w[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[1] + di += 1 + for i, r in enumerate(ratios): + h[i+di] = sizes[0] / img_shape[0] / math.sqrt(r) + w[i+di] = sizes[0] / img_shape[1] * math.sqrt(r) + return y, x, h, w + + +def ssd_anchors_all_layers(img_shape = img_shape, + offset=0.5, + dtype=np.float32): + """Compute anchor boxes for all feature layers. + """ + layers_anchors = [] + for i, s in enumerate(feat_shapes): + anchor_bboxes = ssd_anchor_one_layer(img_shape, s, + anchor_sizes[i], + anchor_ratios[i], + anchor_steps[i], + offset=offset, dtype=dtype) + layers_anchors.append(anchor_bboxes) + return layers_anchors diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py new file mode 100644 index 00000000..5d1cee2b --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py @@ -0,0 +1,114 @@ +import os +import sys +import tarfile + +from six.moves import urllib +import tensorflow as tf + +LABELS_FILENAME = 'labels.txt' + +import shutil +from os import path + +def check_labelmatch(images, annotations): + data_dir_images = os.path.split(images[0])[0] + data_dir_annot = os.path.split(annotations[0])[0] + + im_files = {os.path.splitext(os.path.split(f)[1])[0] for f in images} + annot_files = {os.path.splitext(os.path.split(f)[1])[0] for f in annotations} + + extra_ims = im_files.difference(annot_files) + extra_annots = annot_files.difference(im_files) + mismatch = len(extra_ims) > 0 or len(extra_annots) > 0 + + if mismatch: + print(f"The following files will be removed from the training process:") + + if len(extra_ims) > 0: + print(f"images without annotations: {extra_ims}") + + if len(extra_annots) > 0: + print(f"annotations without images: {extra_annots}") + + if not mismatch: + print(str(len(images)) + ' images found and ' + str(len(annotations)) + ' matching annotations found.' ) + return (images, annotations) + + im_files = im_files.difference(extra_ims) + annot_files = annot_files.difference(extra_annots) + + im_files = [os.path.join(data_dir_images, f+".jpg") for f in im_files] + annot_files = [os.path.join(data_dir_annot, f+".xml") for f in annot_files] + + return(im_files, annot_files) + +def create_dir(path): + try: + path_annotations = path + '/Annotations' + path_images = path + '/JPEGImages' + + os.makedirs(path_annotations) + os.makedirs(path_images) + + except OSError: + print("Creation of folders in directory %s failed. Folder may already exist." % path) + else: + print("Successfully created images and annotations folders at %s" % path) + +def move_images(data_dir, train_images, train_annotations, + test_images, test_annotations): + + source = data_dir + '/' + + for image in train_images: + image = data_dir + '/' + image + dst = source + 'train/' + '/JPEGImages' + + if path.exists(image): + shutil.copy(image, dst) + + for image in test_images: + image = data_dir + '/' + image + dst = source + 'test/' + '/JPEGImages' + + if path.exists(image): + shutil.copy(image, dst) + + for annot in train_annotations: + annot = data_dir + '/' + annot + dst = source + 'train/' + '/Annotations' + + if path.exists(annot): + shutil.copy(annot, dst) + + for annot in test_annotations: + annot = data_dir + '/' + annot + dst = source + 'test/' + '/Annotations' + + if path.exists(annot): + shutil.copy(annot, dst) + + print('Images and annotations have been copied to directories: ' + source + 'train' + ' and ' + source + 'test') + +def int64_feature(value): + """Wrapper for inserting int64 features into Example proto. + """ + if not isinstance(value, list): + value = [value] + return tf.train.Feature(int64_list=tf.train.Int64List(value=value)) + + +def float_feature(value): + """Wrapper for inserting float features into Example proto. + """ + if not isinstance(value, list): + value = [value] + return tf.train.Feature(float_list=tf.train.FloatList(value=value)) + + +def bytes_feature(value): + """Wrapper for inserting bytes features into Example proto. + """ + if not isinstance(value, list): + value = [value] + return tf.train.Feature(bytes_list=tf.train.BytesList(value=value)) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py new file mode 100644 index 00000000..61bca57d --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py @@ -0,0 +1,112 @@ +# Copyright 2015 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Provides data for the Pascal VOC Dataset (images + annotations). +""" +import os + +import tensorflow as tf +from dataprep import dataset_utils + +slim = tf.contrib.slim + +VOC_LABELS = { + 'none': (0, 'Background'), + 'aeroplane': (1, 'Vehicle'), + 'bicycle': (2, 'Vehicle'), + 'bird': (3, 'Animal'), + 'boat': (4, 'Vehicle'), + 'bottle': (5, 'Indoor'), + 'bus': (6, 'Vehicle'), + 'car': (7, 'Vehicle'), + 'cat': (8, 'Animal'), + 'chair': (9, 'Indoor'), + 'cow': (10, 'Animal'), + 'diningtable': (11, 'Indoor'), + 'dog': (12, 'Animal'), + 'horse': (13, 'Animal'), + 'motorbike': (14, 'Vehicle'), + 'person': (15, 'Person'), + 'pottedplant': (16, 'Indoor'), + 'sheep': (17, 'Animal'), + 'sofa': (18, 'Indoor'), + 'train': (19, 'Vehicle'), + 'tvmonitor': (20, 'Indoor'), +} + +def get_split(split_name, dataset_dir, file_pattern, reader, + split_to_sizes, items_to_descriptions, num_classes): + """Gets a dataset tuple with instructions for reading Pascal VOC dataset. + + Args: + split_name: A train/test split name. + dataset_dir: The base directory of the dataset sources. + file_pattern: The file pattern to use when matching the dataset sources. + It is assumed that the pattern contains a '%s' string so that the split + name can be inserted. + reader: The TensorFlow reader type. + + Returns: + A `Dataset` namedtuple. + + Raises: + ValueError: if `split_name` is not a valid train/test split. + """ + if split_name not in split_to_sizes: + raise ValueError('split name %s was not recognized.' % split_name) + file_pattern = os.path.join(dataset_dir, file_pattern % split_name) + + # Allowing None in the signature so that dataset_factory can use the default. + if reader is None: + reader = tf.TFRecordReader + # Features in Pascal VOC TFRecords. + keys_to_features = { + 'image/encoded': tf.FixedLenFeature((), tf.string, default_value=''), + 'image/format': tf.FixedLenFeature((), tf.string, default_value='jpeg'), + 'image/height': tf.FixedLenFeature([1], tf.int64), + 'image/width': tf.FixedLenFeature([1], tf.int64), + 'image/channels': tf.FixedLenFeature([1], tf.int64), + 'image/shape': tf.FixedLenFeature([3], tf.int64), + 'image/object/bbox/xmin': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/ymin': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/xmax': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/ymax': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/label': tf.VarLenFeature(dtype=tf.int64), + 'image/object/bbox/difficult': tf.VarLenFeature(dtype=tf.int64), + 'image/object/bbox/truncated': tf.VarLenFeature(dtype=tf.int64), + } + items_to_handlers = { + 'image': slim.tfexample_decoder.Image('image/encoded', 'image/format'), + 'shape': slim.tfexample_decoder.Tensor('image/shape'), + 'object/bbox': slim.tfexample_decoder.BoundingBox( + ['ymin', 'xmin', 'ymax', 'xmax'], 'image/object/bbox/'), + 'object/label': slim.tfexample_decoder.Tensor('image/object/bbox/label'), + 'object/difficult': slim.tfexample_decoder.Tensor('image/object/bbox/difficult'), + 'object/truncated': slim.tfexample_decoder.Tensor('image/object/bbox/truncated'), + } + decoder = slim.tfexample_decoder.TFExampleDecoder( + keys_to_features, items_to_handlers) + + labels_to_names = None + if dataset_utils.has_labels(dataset_dir): + labels_to_names = dataset_utils.read_label_file(dataset_dir) + + return slim.dataset.Dataset( + data_sources=file_pattern, + reader=reader, + decoder=decoder, + num_samples=split_to_sizes[split_name], + items_to_descriptions=items_to_descriptions, + num_classes=num_classes, + labels_to_names=labels_to_names) diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py new file mode 100644 index 00000000..52112c97 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py @@ -0,0 +1,223 @@ +# Copyright 2015 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Converts Pascal VOC data to TFRecords file format with Example protos. + +The raw Pascal VOC data set is expected to reside in JPEG files located in the +directory 'JPEGImages'. Similarly, bounding box annotations are supposed to be +stored in the 'Annotation directory' + +This TensorFlow script converts the training and evaluation data into +a sharded data set consisting of 1024 and 128 TFRecord files, respectively. + +Each validation TFRecord file contains ~500 records. Each training TFREcord +file contains ~1000 records. Each record within the TFRecord file is a +serialized Example proto. The Example proto contains the following fields: + + image/encoded: string containing JPEG encoded image in RGB colorspace + image/height: integer, image height in pixels + image/width: integer, image width in pixels + image/channels: integer, specifying the number of channels, always 3 + image/format: string, specifying the format, always'JPEG' + + + image/object/bbox/xmin: list of float specifying the 0+ human annotated + bounding boxes + image/object/bbox/xmax: list of float specifying the 0+ human annotated + bounding boxes + image/object/bbox/ymin: list of float specifying the 0+ human annotated + bounding boxes + image/object/bbox/ymax: list of float specifying the 0+ human annotated + bounding boxes + image/object/bbox/label: list of integer specifying the classification index. + image/object/bbox/label_text: list of string descriptions. + +Note that the length of xmin is identical to the length of xmax, ymin and ymax +for each example. +""" +import os +import sys +import random + +import numpy as np +import tensorflow as tf + +import xml.etree.ElementTree as ET + +from dataprep.dataset_utils import int64_feature, float_feature, bytes_feature + +# TFRecords conversion parameters. +RANDOM_SEED = 4242 +SAMPLES_PER_FILES = 100 + +def _set_voc_labels_map(class_list): + return dict(**{'none': 0}, **{cl: i + 1 for i, cl in enumerate(class_list)}) + +def _process_image(img_name, annot_name, class_list): + """Process a image and annotation file. + + Args: + img_name: string, path to an image file e.g., '/path/to/example.JPG'. + Returns: + image_buffer: string, JPEG encoding of RGB image. + height: integer, image height in pixels. + width: integer, image width in pixels. + """ + # Read the image file. + image_data = tf.gfile.FastGFile(img_name, 'rb').read() + class_dict = _set_voc_labels_map(class_list) + + # Read the XML annotation file. + filename = annot_name + tree = ET.parse(filename) + root = tree.getroot() + + # Image shape. + size = root.find('size') + shape = [int(size.find('height').text), + int(size.find('width').text), + int(size.find('depth').text)] + # Find annotations. + bboxes = [] + labels = [] + labels_text = [] + difficult = [] + truncated = [] + for obj in root.findall('object'): + label = obj.find('name').text + labels.append(class_dict[label]) + labels_text.append(label.encode('ascii')) + + if obj.find('difficult'): + difficult.append(int(obj.find('difficult').text)) + else: + difficult.append(0) + if obj.find('truncated'): + truncated.append(int(obj.find('truncated').text)) + else: + truncated.append(0) + + bbox = obj.find('bndbox') + bboxes.append((to_valid_range(float(bbox.find('ymin').text) / shape[0]), + to_valid_range(float(bbox.find('xmin').text) / shape[1]), + to_valid_range(float(bbox.find('ymax').text) / shape[0]), + to_valid_range(float(bbox.find('xmax').text) / shape[1]) + )) + return image_data, shape, np.clip(bboxes, a_min=0., a_max=1.), labels, labels_text, difficult, truncated + +def to_valid_range(v): + if v < 0.0: + return 0.0 + if v > 1.0: + return 1.0 + return v + + +def _convert_to_example(image_data, labels, labels_text, bboxes, shape, + difficult, truncated): + """Build an Example proto for an image example. + + Args: + image_data: string, JPEG encoding of RGB image; + labels: list of integers, identifier for the ground truth; + labels_text: list of strings, human-readable labels; + bboxes: list of bounding boxes; each box is a list of integers; + specifying [xmin, ymin, xmax, ymax]. All boxes are assumed to belong + to the same label as the image label. + shape: 3 integers, image shapes in pixels. + Returns: + Example proto + """ + xmin = [] + ymin = [] + xmax = [] + ymax = [] + for b in bboxes: + assert len(b) == 4 + # pylint: disable=expression-not-assigned + [l.append(point) for l, point in zip([ymin, xmin, ymax, xmax], b)] + # pylint: enable=expression-not-assigned + + image_format = b'JPEG' + example = tf.train.Example(features=tf.train.Features(feature={ + 'image/height': int64_feature(shape[0]), + 'image/width': int64_feature(shape[1]), + 'image/channels': int64_feature(shape[2]), + 'image/shape': int64_feature(shape), + 'image/object/bbox/xmin': float_feature(xmin), + 'image/object/bbox/xmax': float_feature(xmax), + 'image/object/bbox/ymin': float_feature(ymin), + 'image/object/bbox/ymax': float_feature(ymax), + 'image/object/bbox/label': int64_feature(labels), + 'image/object/bbox/label_text': bytes_feature(labels_text), + 'image/object/bbox/difficult': int64_feature(difficult), + 'image/object/bbox/truncated': int64_feature(truncated), + 'image/format': bytes_feature(image_format), + 'image/encoded': bytes_feature(image_data)})) + return example + + +def _add_to_tfrecord(img_name, annot_name, class_list, tfrecord_writer): + """Loads data from image and annotations files and add them to a TFRecord. + + Args: + dataset_dir: Dataset directory; + name: Image name to add to the TFRecord; + tfrecord_writer: The TFRecord writer to use for writing. + """ + image_data, shape, bboxes, labels, labels_text, difficult, truncated = \ + _process_image(img_name, annot_name, class_list) + + example = _convert_to_example(image_data, labels, labels_text, + bboxes, shape, difficult, truncated) + tfrecord_writer.write(example.SerializeToString()) + + +def _get_output_filename(output_dir, name, idx): + return os.path.join(output_dir, f"{name}_{idx:04d}.tfrecord") + +def run(output_dir, classes_list, images_list, annotations_list, output_name): + """Runs the conversion operation. + + Args: + output_dir: Output directory. + """ + + if not tf.gfile.Exists(output_dir): + tf.gfile.MakeDirs(output_dir) + + if(len(images_list) != len(annotations_list)): + raise ValueError("Images and annotations lists are of different legnths!") + + # Process dataset files. + fidx = 0 + i = 0 + im_annot = list(zip(images_list, annotations_list)) + + while i < len(im_annot): + # Open new TFRecord file. + tf_filename = _get_output_filename(output_dir, output_name, fidx) + with tf.python_io.TFRecordWriter(tf_filename) as tfrecord_writer: + j = 0 + while i < len(im_annot) and j < SAMPLES_PER_FILES: + sys.stdout.write('\r>> Converting image %d/%d' % (i+1, len(im_annot))) + sys.stdout.flush() + + img_name, annot_name = im_annot[i] + _add_to_tfrecord(img_name, annot_name, classes_list, tfrecord_writer) + i += 1 + j += 1 + fidx += 1 + + print('\nFinished converting the Pascal VOC dataset!') diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py new file mode 100644 index 00000000..daa56a65 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py @@ -0,0 +1,65 @@ +import tensorflow as tf +import numpy as np +import os + +from datautil.ssd_vgg_preprocessing import preprocess_for_train, preprocess_for_eval +from model import ssd_common +from tfutil import tf_utils + +features = { + 'image/encoded': tf.FixedLenFeature((), tf.string, default_value=''), + 'image/format': tf.FixedLenFeature((), tf.string, default_value='jpeg'), + 'image/height': tf.FixedLenFeature([1], tf.int64), + 'image/width': tf.FixedLenFeature([1], tf.int64), + 'image/channels': tf.FixedLenFeature([1], tf.int64), + 'image/shape': tf.FixedLenFeature([3], tf.int64), + 'image/object/bbox/xmin': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/ymin': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/xmax': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/ymax': tf.VarLenFeature(dtype=tf.float32), + 'image/object/bbox/label': tf.VarLenFeature(dtype=tf.int64), + 'image/object/bbox/difficult': tf.VarLenFeature(dtype=tf.int64), + 'image/object/bbox/truncated': tf.VarLenFeature(dtype=tf.int64), +} + + +def get_parser_func(anchors, num_classes, is_training, var_scope): + ''' + Dataset parser function for training and evaluation + + Arguments: + preprocess_fn - function that does preprocesing + ''' + + preprocess_fn = preprocess_for_train if is_training else preprocess_for_eval + + def parse_tfrec_data(example_proto): + with tf.variable_scope(var_scope): + parsed_features = tf.parse_single_example(example_proto, features) + + image_string = parsed_features['image/encoded'] + image_decoded = tf.image.decode_jpeg(image_string) + + labels = tf.sparse.to_dense(parsed_features['image/object/bbox/label']) + + xmin = tf.sparse.to_dense(parsed_features['image/object/bbox/xmin']) + xmax = tf.sparse.to_dense(parsed_features['image/object/bbox/xmax']) + ymin = tf.sparse.to_dense(parsed_features['image/object/bbox/ymin']) + ymax = tf.sparse.to_dense(parsed_features['image/object/bbox/ymax']) + bboxes = tf.stack([ymin, xmin, ymax, xmax], axis=1) + + if is_training: + image, labels, bboxes = preprocess_fn(image_decoded, labels, bboxes) + else: + image, labels, bboxes, _ = preprocess_fn(image_decoded, labels, bboxes) + + # ground truth encoding + # each of the returns is a litst of tensors + if is_training: + classes, localisations, scores = \ + ssd_common.tf_ssd_bboxes_encode(labels, bboxes, anchors, num_classes) + return tf_utils.reshape_list([image, classes, localisations, scores]) + else: + return tf_utils.reshape_list([image, labels, bboxes]) + + return parse_tfrec_data \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py new file mode 100644 index 00000000..a0cf0249 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py @@ -0,0 +1,397 @@ +# Copyright 2015 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Pre-processing images for SSD-type networks. +""" +from enum import Enum, IntEnum +import numpy as np + +import tensorflow as tf + +from tensorflow.python.ops import control_flow_ops + +import tfextended as tfe +from datautil import tf_image + +# Resizing strategies. +Resize = IntEnum('Resize', ('NONE', # Nothing! + 'CENTRAL_CROP', # Crop (and pad if necessary). + 'PAD_AND_RESIZE', # Pad, and resize to output shape. + 'WARP_RESIZE')) # Warp resize. + +# VGG mean parameters. +_R_MEAN = 123. +_G_MEAN = 117. +_B_MEAN = 104. + +# Some training pre-processing parameters. +BBOX_CROP_OVERLAP = 0.5 # Minimum overlap to keep a bbox after cropping. +MIN_OBJECT_COVERED = 0.25 +CROP_RATIO_RANGE = (0.6, 1.67) # Distortion ratio during cropping. +EVAL_SIZE = (300, 300) + + +def tf_image_whitened(image, means=[_R_MEAN, _G_MEAN, _B_MEAN]): + """Subtracts the given means from each image channel. + + Returns: + the centered image. + """ + if image.get_shape().ndims != 3: + raise ValueError('Input must be of size [height, width, C>0]') + + mean = tf.constant(means, dtype=image.dtype) + image = image - mean + return image + + +def tf_image_unwhitened(image, means=[_R_MEAN, _G_MEAN, _B_MEAN], to_int=True): + """Re-convert to original image distribution, and convert to int if + necessary. + + Returns: + Centered image. + """ + mean = tf.constant(means, dtype=image.dtype) + image = image + mean + if to_int: + image = tf.cast(image, tf.int32) + return image + + +def np_image_unwhitened(image, means=[_R_MEAN, _G_MEAN, _B_MEAN], to_int=True): + """Re-convert to original image distribution, and convert to int if + necessary. Numpy version. + + Returns: + Centered image. + """ + img = np.copy(image) + img += np.array(means, dtype=img.dtype) + if to_int: + img = img.astype(np.uint8) + return img + + +def tf_summary_image(image, bboxes, name='image', unwhitened=False): + """Add image with bounding boxes to summary. + """ + if unwhitened: + image = tf_image_unwhitened(image) + image = tf.expand_dims(image, 0) + bboxes = tf.expand_dims(bboxes, 0) + image_with_box = tf.image.draw_bounding_boxes(image, bboxes) + tf.summary.image(name, image_with_box) + + +def apply_with_random_selector(x, func, num_cases): + """Computes func(x, sel), with sel sampled from [0...num_cases-1]. + + Args: + x: input Tensor. + func: Python function to apply. + num_cases: Python int32, number of cases to sample sel from. + + Returns: + The result of func(x, sel), where func receives the value of the + selector as a python integer, but sel is sampled dynamically. + """ + sel = tf.random_uniform([], maxval=num_cases, dtype=tf.int32) + # Pass the real x only to one of the func calls. + return control_flow_ops.merge([ + func(control_flow_ops.switch(x, tf.equal(sel, case))[1], case) + for case in range(num_cases)])[0] + + +def distort_color(image, color_ordering=0, fast_mode=True, scope=None): + """Distort the color of a Tensor image. + + Each color distortion is non-commutative and thus ordering of the color ops + matters. Ideally we would randomly permute the ordering of the color ops. + Rather then adding that level of complication, we select a distinct ordering + of color ops for each preprocessing thread. + + Args: + image: 3-D Tensor containing single image in [0, 1]. + color_ordering: Python int, a type of distortion (valid values: 0-3). + fast_mode: Avoids slower ops (random_hue and random_contrast) + scope: Optional scope for name_scope. + Returns: + 3-D Tensor color-distorted image on range [0, 1] + Raises: + ValueError: if color_ordering not in [0, 3] + """ + with tf.name_scope(scope, 'distort_color', [image]): + if fast_mode: + if color_ordering == 0: + image = tf.image.random_brightness(image, max_delta=32. / 255.) + image = tf.image.random_saturation(image, lower=0.5, upper=1.5) + else: + image = tf.image.random_saturation(image, lower=0.5, upper=1.5) + image = tf.image.random_brightness(image, max_delta=32. / 255.) + else: + if color_ordering == 0: + image = tf.image.random_brightness(image, max_delta=32. / 255.) + image = tf.image.random_saturation(image, lower=0.5, upper=1.5) + image = tf.image.random_hue(image, max_delta=0.2) + image = tf.image.random_contrast(image, lower=0.5, upper=1.5) + elif color_ordering == 1: + image = tf.image.random_saturation(image, lower=0.5, upper=1.5) + image = tf.image.random_brightness(image, max_delta=32. / 255.) + image = tf.image.random_contrast(image, lower=0.5, upper=1.5) + image = tf.image.random_hue(image, max_delta=0.2) + elif color_ordering == 2: + image = tf.image.random_contrast(image, lower=0.5, upper=1.5) + image = tf.image.random_hue(image, max_delta=0.2) + image = tf.image.random_brightness(image, max_delta=32. / 255.) + image = tf.image.random_saturation(image, lower=0.5, upper=1.5) + elif color_ordering == 3: + image = tf.image.random_hue(image, max_delta=0.2) + image = tf.image.random_saturation(image, lower=0.5, upper=1.5) + image = tf.image.random_contrast(image, lower=0.5, upper=1.5) + image = tf.image.random_brightness(image, max_delta=32. / 255.) + else: + raise ValueError('color_ordering must be in [0, 3]') + # The random_* ops do not necessarily clamp. + return tf.clip_by_value(image, 0.0, 1.0) + + +def distorted_bounding_box_crop(image, + labels, + bboxes, + min_object_covered=0.3, + aspect_ratio_range=(0.9, 1.1), + area_range=(0.1, 1.0), + max_attempts=200, + clip_bboxes=True, + scope=None): + """Generates cropped_image using a one of the bboxes randomly distorted. + + See `tf.image.sample_distorted_bounding_box` for more documentation. + + Args: + image: 3-D Tensor of image (it will be converted to floats in [0, 1]). + bbox: 3-D float Tensor of bounding boxes arranged [1, num_boxes, coords] + where each coordinate is [0, 1) and the coordinates are arranged + as [ymin, xmin, ymax, xmax]. If num_boxes is 0 then it would use the whole + image. + min_object_covered: An optional `float`. Defaults to `0.1`. The cropped + area of the image must contain at least this fraction of any bounding box + supplied. + aspect_ratio_range: An optional list of `floats`. The cropped area of the + image must have an aspect ratio = width / height within this range. + area_range: An optional list of `floats`. The cropped area of the image + must contain a fraction of the supplied image within in this range. + max_attempts: An optional `int`. Number of attempts at generating a cropped + region of the image of the specified constraints. After `max_attempts` + failures, return the entire image. + scope: Optional scope for name_scope. + Returns: + A tuple, a 3-D Tensor cropped_image and the distorted bbox + """ + with tf.name_scope(scope, 'distorted_bounding_box_crop', [image, bboxes]): + # Each bounding box has shape [1, num_boxes, box coords] and + # the coordinates are ordered [ymin, xmin, ymax, xmax]. + bbox_begin, bbox_size, distort_bbox = tf.image.sample_distorted_bounding_box( + tf.shape(image), + bounding_boxes=tf.expand_dims(bboxes, 0), + min_object_covered=min_object_covered, + aspect_ratio_range=aspect_ratio_range, + area_range=area_range, + max_attempts=max_attempts, + use_image_if_no_bounding_boxes=True) + distort_bbox = distort_bbox[0, 0] + + # Crop the image to the specified bounding box. + cropped_image = tf.slice(image, bbox_begin, bbox_size) + # Restore the shape since the dynamic slice loses 3rd dimension. + cropped_image.set_shape([None, None, 3]) + + # Update bounding boxes: resize and filter out. + bboxes = tfe.bboxes_resize(distort_bbox, bboxes) + labels, bboxes = tfe.bboxes_filter_overlap(labels, bboxes, + threshold=BBOX_CROP_OVERLAP, + assign_negative=False) + return cropped_image, labels, bboxes, distort_bbox + + +def preprocess_for_train(image, labels, bboxes, + out_shape = (300, 300), data_format='NHWC', + scope='ssd_preprocessing_train'): + """Preprocesses the given image for training. + + Note that the actual resizing scale is sampled from + [`resize_size_min`, `resize_size_max`]. + + Args: + image: A `Tensor` representing an image of arbitrary size. + output_height: The height of the image after preprocessing. + output_width: The width of the image after preprocessing. + resize_side_min: The lower bound for the smallest side of the image for + aspect-preserving resizing. + resize_side_max: The upper bound for the smallest side of the image for + aspect-preserving resizing. + + Returns: + A preprocessed image. + """ + fast_mode = False + with tf.name_scope(scope, 'ssd_preprocessing_train', [image, labels, bboxes]): + if image.get_shape().ndims != 3: + raise ValueError('Input must be of size [height, width, C>0]') + # Convert to float scaled [0, 1]. + if image.dtype != tf.float32: + image = tf.image.convert_image_dtype(image, dtype=tf.float32) + tf_summary_image(image, bboxes, 'image_with_bboxes') + + # # Remove DontCare labels. + # labels, bboxes = ssd_common.tf_bboxes_filter_labels(out_label, + # labels, + # bboxes) + + # Distort image and bounding boxes. + dst_image = image + dst_image, labels, bboxes, distort_bbox = \ + distorted_bounding_box_crop(image, labels, bboxes, + min_object_covered=MIN_OBJECT_COVERED, + aspect_ratio_range=CROP_RATIO_RANGE) + # Resize image to output size. + dst_image = tf_image.resize_image(dst_image, out_shape, + method=tf.image.ResizeMethod.BILINEAR, + align_corners=False) + tf_summary_image(dst_image, bboxes, 'image_shape_distorted') + + # Randomly flip the image horizontally. + dst_image, bboxes = tf_image.random_flip_left_right(dst_image, bboxes) + + # Randomly distort the colors. There are 4 ways to do it. + dst_image = apply_with_random_selector( + dst_image, + lambda x, ordering: distort_color(x, ordering, fast_mode), + num_cases=4) + tf_summary_image(dst_image, bboxes, 'image_color_distorted') + + # Rescale to VGG input scale. + image = dst_image * 255. + image = tf_image_whitened(image, [_R_MEAN, _G_MEAN, _B_MEAN]) + # Image data format. + if data_format == 'NCHW': + image = tf.transpose(image, perm=(2, 0, 1)) + return image, labels, bboxes + + +def preprocess_for_eval(image, labels, bboxes, + out_shape=EVAL_SIZE, data_format='NHWC', + difficults=None, resize=Resize.WARP_RESIZE, + scope='ssd_preprocessing_train'): + """Preprocess an image for evaluation. + + Args: + image: A `Tensor` representing an image of arbitrary size. + out_shape: Output shape after pre-processing (if resize != None) + resize: Resize strategy. + + Returns: + A preprocessed image. + """ + with tf.name_scope(scope): + if image.get_shape().ndims != 3: + raise ValueError('Input must be of size [height, width, C>0]') + + image = tf.cast(image, tf.float32) + image = tf_image_whitened(image, [_R_MEAN, _G_MEAN, _B_MEAN]) + + # Add image rectangle to bboxes. + bbox_img = tf.constant([[0., 0., 1., 1.]]) + if bboxes is None: + bboxes = bbox_img + else: + bboxes = tf.concat([bbox_img, bboxes], axis=0) + + if resize == Resize.NONE: + # No resizing... + pass + elif resize == Resize.CENTRAL_CROP: + # Central cropping of the image. + image, bboxes = tf_image.resize_image_bboxes_with_crop_or_pad( + image, bboxes, out_shape[0], out_shape[1]) + elif resize == Resize.PAD_AND_RESIZE: + # Resize image first: find the correct factor... + shape = tf.shape(image) + factor = tf.minimum(tf.to_double(1.0), + tf.minimum(tf.to_double(out_shape[0] / shape[0]), + tf.to_double(out_shape[1] / shape[1]))) + resize_shape = factor * tf.to_double(shape[0:2]) + resize_shape = tf.cast(tf.floor(resize_shape), tf.int32) + + image = tf_image.resize_image(image, resize_shape, + method=tf.image.ResizeMethod.BILINEAR, + align_corners=False) + # Pad to expected size. + image, bboxes = tf_image.resize_image_bboxes_with_crop_or_pad( + image, bboxes, out_shape[0], out_shape[1]) + elif resize == Resize.WARP_RESIZE: + # Warp resize of the image. + image = tf_image.resize_image(image, out_shape, + method=tf.image.ResizeMethod.BILINEAR, + align_corners=False) + + # Split back bounding boxes. + bbox_img = bboxes[0] + bboxes = bboxes[1:] + # Remove difficult boxes. + if difficults is not None: + mask = tf.logical_not(tf.cast(difficults, tf.bool)) + labels = tf.boolean_mask(labels, mask) + bboxes = tf.boolean_mask(bboxes, mask) + # Image data format. + if data_format == 'NCHW': + image = tf.transpose(image, perm=(2, 0, 1)) + return image, labels, bboxes, bbox_img + +def preprocess_image(image, + labels, + bboxes, + out_shape, + data_format, + is_training=False, + **kwargs): + """Pre-process an given image. + + Args: + image: A `Tensor` representing an image of arbitrary size. + output_height: The height of the image after preprocessing. + output_width: The width of the image after preprocessing. + is_training: `True` if we're preprocessing the image for training and + `False` otherwise. + resize_side_min: The lower bound for the smallest side of the image for + aspect-preserving resizing. If `is_training` is `False`, then this value + is used for rescaling. + resize_side_max: The upper bound for the smallest side of the image for + aspect-preserving resizing. If `is_training` is `False`, this value is + ignored. Otherwise, the resize side is sampled from + [resize_size_min, resize_size_max]. + + Returns: + A preprocessed image. + """ + if is_training: + return preprocess_for_train(image, labels, bboxes, + out_shape=out_shape, + data_format=data_format) + else: + return preprocess_for_eval(image, labels, bboxes, + out_shape=out_shape, + data_format=data_format, + **kwargs) diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py new file mode 100644 index 00000000..a9626266 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py @@ -0,0 +1,306 @@ +# Copyright 2015 The TensorFlow Authors and Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Custom image operations. +Most of the following methods extend TensorFlow image library, and part of +the code is shameless copy-paste of the former! +""" +import tensorflow as tf + +from tensorflow.python.framework import constant_op +from tensorflow.python.framework import dtypes +from tensorflow.python.framework import ops +from tensorflow.python.framework import tensor_shape +from tensorflow.python.framework import tensor_util +from tensorflow.python.ops import array_ops +from tensorflow.python.ops import check_ops +from tensorflow.python.ops import clip_ops +from tensorflow.python.ops import control_flow_ops +from tensorflow.python.ops import gen_image_ops +from tensorflow.python.ops import gen_nn_ops +from tensorflow.python.ops import string_ops +from tensorflow.python.ops import math_ops +from tensorflow.python.ops import random_ops +from tensorflow.python.ops import variables + + +# =========================================================================== # +# Modification of TensorFlow image routines. +# =========================================================================== # +def _assert(cond, ex_type, msg): + """A polymorphic assert, works with tensors and boolean expressions. + If `cond` is not a tensor, behave like an ordinary assert statement, except + that a empty list is returned. If `cond` is a tensor, return a list + containing a single TensorFlow assert op. + Args: + cond: Something evaluates to a boolean value. May be a tensor. + ex_type: The exception class to use. + msg: The error message. + Returns: + A list, containing at most one assert op. + """ + if _is_tensor(cond): + return [control_flow_ops.Assert(cond, [msg])] + else: + if not cond: + raise ex_type(msg) + else: + return [] + + +def _is_tensor(x): + """Returns `True` if `x` is a symbolic tensor-like object. + Args: + x: A python object to check. + Returns: + `True` if `x` is a `tf.Tensor` or `tf.Variable`, otherwise `False`. + """ + return isinstance(x, (ops.Tensor, variables.Variable)) + + +def _ImageDimensions(image): + """Returns the dimensions of an image tensor. + Args: + image: A 3-D Tensor of shape `[height, width, channels]`. + Returns: + A list of `[height, width, channels]` corresponding to the dimensions of the + input image. Dimensions that are statically known are python integers, + otherwise they are integer scalar tensors. + """ + if image.get_shape().is_fully_defined(): + return image.get_shape().as_list() + else: + static_shape = image.get_shape().with_rank(3).as_list() + dynamic_shape = array_ops.unstack(array_ops.shape(image), 3) + return [s if s is not None else d + for s, d in zip(static_shape, dynamic_shape)] + + +def _Check3DImage(image, require_static=True): + """Assert that we are working with properly shaped image. + Args: + image: 3-D Tensor of shape [height, width, channels] + require_static: If `True`, requires that all dimensions of `image` are + known and non-zero. + Raises: + ValueError: if `image.shape` is not a 3-vector. + Returns: + An empty list, if `image` has fully defined dimensions. Otherwise, a list + containing an assert op is returned. + """ + try: + image_shape = image.get_shape().with_rank(3) + except ValueError: + raise ValueError("'image' must be three-dimensional.") + if require_static and not image_shape.is_fully_defined(): + raise ValueError("'image' must be fully defined.") + if any(x == 0 for x in image_shape): + raise ValueError("all dims of 'image.shape' must be > 0: %s" % + image_shape) + if not image_shape.is_fully_defined(): + return [check_ops.assert_positive(array_ops.shape(image), + ["all dims of 'image.shape' " + "must be > 0."])] + else: + return [] + + +def fix_image_flip_shape(image, result): + """Set the shape to 3 dimensional if we don't know anything else. + Args: + image: original image size + result: flipped or transformed image + Returns: + An image whose shape is at least None,None,None. + """ + image_shape = image.get_shape() + if image_shape == tensor_shape.unknown_shape(): + result.set_shape([None, None, None]) + else: + result.set_shape(image_shape) + return result + + +# =========================================================================== # +# Image + BBoxes methods: cropping, resizing, flipping, ... +# =========================================================================== # +def bboxes_crop_or_pad(bboxes, + height, width, + offset_y, offset_x, + target_height, target_width): + """Adapt bounding boxes to crop or pad operations. + Coordinates are always supposed to be relative to the image. + + Arguments: + bboxes: Tensor Nx4 with bboxes coordinates [y_min, x_min, y_max, x_max]; + height, width: Original image dimension; + offset_y, offset_x: Offset to apply, + negative if cropping, positive if padding; + target_height, target_width: Target dimension after cropping / padding. + """ + with tf.name_scope('bboxes_crop_or_pad'): + # Rescale bounding boxes in pixels. + scale = tf.cast(tf.stack([height, width, height, width]), bboxes.dtype) + bboxes = bboxes * scale + # Add offset. + offset = tf.cast(tf.stack([offset_y, offset_x, offset_y, offset_x]), bboxes.dtype) + bboxes = bboxes + offset + # Rescale to target dimension. + scale = tf.cast(tf.stack([target_height, target_width, + target_height, target_width]), bboxes.dtype) + bboxes = bboxes / scale + return bboxes + + +def resize_image_bboxes_with_crop_or_pad(image, bboxes, + target_height, target_width): + """Crops and/or pads an image to a target width and height. + Resizes an image to a target width and height by either centrally + cropping the image or padding it evenly with zeros. + + If `width` or `height` is greater than the specified `target_width` or + `target_height` respectively, this op centrally crops along that dimension. + If `width` or `height` is smaller than the specified `target_width` or + `target_height` respectively, this op centrally pads with 0 along that + dimension. + Args: + image: 3-D tensor of shape `[height, width, channels]` + target_height: Target height. + target_width: Target width. + Raises: + ValueError: if `target_height` or `target_width` are zero or negative. + Returns: + Cropped and/or padded image of shape + `[target_height, target_width, channels]` + """ + with tf.name_scope('resize_with_crop_or_pad'): + image = ops.convert_to_tensor(image, name='image') + + assert_ops = [] + assert_ops += _Check3DImage(image, require_static=False) + assert_ops += _assert(target_width > 0, ValueError, + 'target_width must be > 0.') + assert_ops += _assert(target_height > 0, ValueError, + 'target_height must be > 0.') + + image = control_flow_ops.with_dependencies(assert_ops, image) + # `crop_to_bounding_box` and `pad_to_bounding_box` have their own checks. + # Make sure our checks come first, so that error messages are clearer. + if _is_tensor(target_height): + target_height = control_flow_ops.with_dependencies( + assert_ops, target_height) + if _is_tensor(target_width): + target_width = control_flow_ops.with_dependencies(assert_ops, target_width) + + def max_(x, y): + if _is_tensor(x) or _is_tensor(y): + return math_ops.maximum(x, y) + else: + return max(x, y) + + def min_(x, y): + if _is_tensor(x) or _is_tensor(y): + return math_ops.minimum(x, y) + else: + return min(x, y) + + def equal_(x, y): + if _is_tensor(x) or _is_tensor(y): + return math_ops.equal(x, y) + else: + return x == y + + height, width, _ = _ImageDimensions(image) + width_diff = target_width - width + offset_crop_width = max_(-width_diff // 2, 0) + offset_pad_width = max_(width_diff // 2, 0) + + height_diff = target_height - height + offset_crop_height = max_(-height_diff // 2, 0) + offset_pad_height = max_(height_diff // 2, 0) + + # Maybe crop if needed. + height_crop = min_(target_height, height) + width_crop = min_(target_width, width) + cropped = tf.image.crop_to_bounding_box(image, offset_crop_height, offset_crop_width, + height_crop, width_crop) + bboxes = bboxes_crop_or_pad(bboxes, + height, width, + -offset_crop_height, -offset_crop_width, + height_crop, width_crop) + # Maybe pad if needed. + resized = tf.image.pad_to_bounding_box(cropped, offset_pad_height, offset_pad_width, + target_height, target_width) + bboxes = bboxes_crop_or_pad(bboxes, + height_crop, width_crop, + offset_pad_height, offset_pad_width, + target_height, target_width) + + # In theory all the checks below are redundant. + if resized.get_shape().ndims is None: + raise ValueError('resized contains no shape.') + + resized_height, resized_width, _ = _ImageDimensions(resized) + + assert_ops = [] + assert_ops += _assert(equal_(resized_height, target_height), ValueError, + 'resized height is not correct.') + assert_ops += _assert(equal_(resized_width, target_width), ValueError, + 'resized width is not correct.') + + resized = control_flow_ops.with_dependencies(assert_ops, resized) + return resized, bboxes + + +def resize_image(image, size, + method=tf.image.ResizeMethod.BILINEAR, + align_corners=False): + """Resize an image and bounding boxes. + """ + # Resize image. + with tf.name_scope('resize_image'): + height, width, channels = _ImageDimensions(image) + image = tf.expand_dims(image, 0) + image = tf.image.resize_images(image, size, + method, align_corners) + image = tf.reshape(image, tf.stack([size[0], size[1], channels])) + return image + + +def random_flip_left_right(image, bboxes, seed=None): + """Random flip left-right of an image and its bounding boxes. + """ + def flip_bboxes(bboxes): + """Flip bounding boxes coordinates. + """ + bboxes = tf.stack([bboxes[:, 0], 1 - bboxes[:, 3], + bboxes[:, 2], 1 - bboxes[:, 1]], axis=-1) + return bboxes + + # Random flip. Tensorflow implementation. + with tf.name_scope('random_flip_left_right'): + image = ops.convert_to_tensor(image, name='image') + _Check3DImage(image, require_static=False) + uniform_random = random_ops.random_uniform([], 0, 1.0, seed=seed) + mirror_cond = math_ops.less(uniform_random, .5) + # Flip image. + result = control_flow_ops.cond(mirror_cond, + lambda: array_ops.reverse_v2(image, [1]), + lambda: image) + # Flip bboxes. + bboxes = control_flow_ops.cond(mirror_cond, + lambda: flip_bboxes(bboxes), + lambda: bboxes) + return fix_image_flip_shape(image, result), bboxes + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py new file mode 100644 index 00000000..6771ed54 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py @@ -0,0 +1,159 @@ +import tensorflow as tf +import numpy as np + +import os, sys, time + +from anchors import generate_anchors +from model import ssd_common, ssd_vgg_300 +from datautil.parser import get_parser_func +from datautil.ssd_vgg_preprocessing import preprocess_for_eval, preprocess_for_train +from tfutil import endpoints, tf_utils +import tfextended as tfe +from finetune.train_eval_base import TrainerBase + +class EvalVggSsd(TrainerBase): + ''' + Run fine-tuning + Have training and validation recordset files + ''' + + def __init__(self, ckpt_dir, validation_recordset_files, steps_to_save = 1000, num_steps = 1000, num_classes = 21, print_steps = 10): + + ''' + ckpt_dir - directory of checkpoint metagraph + train_recordset_files - list of files represetnting the recordset for training + validation_recordset_files - list of files representing validation recordset + ''' + super().__init__(ckpt_dir, validation_recordset_files, steps_to_save, num_steps, num_classes, print_steps, 1, is_training=False) + self.eval_classes = num_classes + + def get_eval_ops(self, b_labels, b_bboxes, predictions, localizations): + ''' + Create evaluation operation + ''' + b_difficults = tf.zeros(tf.shape(b_labels), dtype=tf.int64) + + # Performing post-processing on CPU: loop-intensive, usually more efficient. + with tf.device('/device:CPU:0'): + # Detected objects from SSD output. + detected_localizations = self.ssd_net.bboxes_decode(localizations, self.anchors) + + rscores, rbboxes = \ + self.ssd_net.detected_bboxes(predictions, detected_localizations, + select_threshold=0.01, + nms_threshold=0.45, + clipping_bbox=None, + top_k=400, + keep_top_k=20) + + # Compute TP and FP statistics. + num_gbboxes, tp, fp, rscores = \ + tfe.bboxes_matching_batch(rscores.keys(), rscores, rbboxes, + b_labels, b_bboxes, b_difficults, + matching_threshold=0.5) + + # =================================================================== # + # Evaluation metrics. + # =================================================================== # + dict_metrics = {} + metrics_scope = 'ssd_metrics_scope' + + # First add all losses. + for loss in tf.get_collection(tf.GraphKeys.LOSSES): + dict_metrics[loss.op.name] = tf.metrics.mean(loss, name=metrics_scope) + # Extra losses as well. + for loss in tf.get_collection('EXTRA_LOSSES'): + dict_metrics[loss.op.name] = tf.metrics.mean(loss, name=metrics_scope) + + # Add metrics to summaries and Print on screen. + for name, metric in dict_metrics.items(): + # summary_name = 'eval/%s' % name + summary_name = name + tf.summary.scalar(summary_name, metric[0]) + + # FP and TP metrics. + tp_fp_metric = tfe.streaming_tp_fp_arrays(num_gbboxes, tp, fp, rscores, name=metrics_scope) + + for c in tp_fp_metric[0].keys(): + dict_metrics['tp_fp_%s' % c] = (tp_fp_metric[0][c], + tp_fp_metric[1][c]) + + # Add to summaries precision/recall values. + aps_voc12 = {} + # TODO: We cut it short by the actual number of classes we have + for c in list(tp_fp_metric[0].keys())[:self.eval_classes - 1]: + # Precison and recall values. + prec, rec = tfe.precision_recall(*tp_fp_metric[0][c]) + + # Average precision VOC12. + v = tfe.average_precision_voc12(prec, rec) + summary_name = 'AP_VOC12/%s' % c + tf.summary.scalar(summary_name, v) + + aps_voc12[c] = v + + # Mean average precision VOC12. + summary_name = 'AP_VOC12/mAP' + mAP = tf.add_n(list(aps_voc12.values())) / len(aps_voc12) + tf.summary.scalar(summary_name, mAP) + + names_to_values, names_to_updates = tf.contrib.metrics.aggregate_metric_map(dict_metrics) + + # Split into values and updates ops. + return (names_to_values, names_to_updates, mAP) + + def eval(self): + + tf.logging.set_verbosity(tf.logging.INFO) + + # shorthand + sess = self.sess + + sess.run(self.iterator.initializer) + batch_data = self.iterator.get_next() + + # image, classes, scores, ground_truths are neatly packed into a flat list + # this is how we will slice it to extract the data we need: + # we will convert the flat list into a list of lists, where each sub-list + # is as long as each slice dimension + slice_shape = [1] * 3 + + b_image, b_labels, b_bboxes = tf_utils.reshape_list(batch_data, slice_shape) + + # network endpoints + predictions, localizations, _, _ = self.get_output_tensors(b_image) + + # branch to create evaluation operation + _, names_to_updates, mAP = \ + self.get_eval_ops(b_labels, b_bboxes, predictions, localizations) + + eval_update_ops = tf_utils.reshape_list(list(names_to_updates.values())) + + # summaries + summary_op = tf.summary.merge_all() + saver = tf.train.Saver() + + eval_writer = tf.summary.FileWriter(self.ckpt_dir + '/eval') + + # initialize globals + sess.run(tf.global_variables_initializer()) + + saver.restore(self.sess, self.ckpt_file) + sess.run(tf.local_variables_initializer()) + + tf.logging.info(f"Starting evaluation for {self.num_steps} steps") + cur_step = self.latest_ckpt_step + + for step in range(self.num_steps): + print(f"Evaluation step: {step + 1}", end='\r', flush=True) + _, summary = sess.run([eval_update_ops, summary_op]) + + if (step + 1) % self.print_steps == 0 or step == self.num_steps: + eval_writer.add_summary(summary, cur_step + step + 1) + + summary_final, mAP_val = sess.run([summary_op, mAP]) + + print(f"\nmAP: {mAP_val:.4f}") + + if (step + 1) % self.print_steps != 0: + eval_writer.add_summary(summary_final, self.num_steps + cur_step) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py new file mode 100644 index 00000000..d56bafea --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py @@ -0,0 +1,95 @@ +import tensorflow as tf + +import os, time + +from anchors import generate_anchors +from model import np_methods +from tfutil import endpoints, tf_utils +from datautil.ssd_vgg_preprocessing import preprocess_for_eval +import tfextended as tfe +from azureml.accel.models import SsdVgg + +class InferVggSsd: + ''' + Run fine-tuning + Have training and validation recordset files + ''' + + def __init__(self, ckpt_dir, ckpt_file=None, gpu=True): + + ''' + ckpt_dir - directory of checkpoint metagraph + ''' + + if gpu: + gpu_options = tf.GPUOptions(allow_growth=True) + config = tf.ConfigProto(log_device_placement=False, gpu_options=gpu_options) + else: + config = tf.ConfigProto(log_device_placement=False, device_count={'GPU': 0}) + + self.sess = tf.Session(config=config) + + ssd_net_graph = SsdVgg(ckpt_dir) + self.ckpt_dir = ssd_net_graph.model_path + + self.img_input = tf.placeholder(tf.uint8, shape=(None, None, 3)) + + # Evaluation pre-processing: resize to SSD net shape. + image_pre, _, _, self.bbox_img = preprocess_for_eval( + self.img_input, None, None, generate_anchors.img_shape, "NHWC") + self.image_4d = tf.expand_dims(image_pre, 0) + + # import the graph + ssd_net_graph.import_graph_def(self.image_4d, is_training=False) + + graph = tf.get_default_graph() + self.localizations = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.localizations_names] + self.predictions = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.predictions_names] + + # Restore SSD model. + self.sess.run(tf.global_variables_initializer()) + + if ckpt_file is None: + ssd_net_graph.restore_weights(self.sess) + else: + saver = tf.train.Saver() + saver.restore(self.sess, os.path.join(self.ckpt_dir, ckpt_file)) + + # SSD default anchor boxes. + self.ssd_anchors = generate_anchors.ssd_anchors_all_layers() + + + def close(self): + self.sess.close() + tf.reset_default_graph() + + def process_image(self, img, select_threshold=0.4, nms_threshold=.45, net_shape=(300, 300)): + # Run SSD network. + rpredictions, rlocalisations, rbbox_img = \ + self.sess.run([self.predictions, self.localizations, self.bbox_img], + feed_dict={self.img_input: img}) + # Get classes and bboxes from the net outputs. + rclasses, rscores, rbboxes = np_methods.ssd_bboxes_select( + rpredictions, rlocalisations, self.ssd_anchors, + select_threshold=select_threshold, img_shape=net_shape, num_classes=21, decode=True) + + rbboxes = np_methods.bboxes_clip(rbbox_img, rbboxes) + rclasses, rscores, rbboxes = np_methods.bboxes_sort(rclasses, rscores, rbboxes, top_k=400) + rclasses, rscores, rbboxes = np_methods.bboxes_nms(rclasses, rscores, rbboxes, nms_threshold=nms_threshold) + return rclasses, rscores, rbboxes + + def infer(self, img, visualize): + rclasses, rscores, rbboxes = self.process_image(img) + + if visualize: + from tfutil import visualization + visualization.plt_bboxes(img, rclasses, rscores, rbboxes) + + return rclasses, rscores, rbboxes + + def infer_file(self, im_file, visualize=False): + import cv2 + + img = cv2.imread(im_file) + img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) + return self.infer(img, visualize) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/metrics.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/metrics.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py new file mode 100644 index 00000000..2a172046 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py @@ -0,0 +1,57 @@ +import tensorflow as tf + +import os, time + +from azureml.accel.models import SsdVgg +import azureml.accel.models.utils as utils + +class SaverVggSsd: + ''' + Run fine-tuning + Have training and validation recordset files + ''' + + def __init__(self, ckpt_dir): + + ''' + ckpt_dir - directory of checkpoint metagraph + ''' + + config = tf.ConfigProto(log_device_placement=False, device_count={'GPU': 0}) + + self.sess = tf.Session(config=config) + + ssd_net_graph = SsdVgg(ckpt_dir, is_frozen=True) + self.ckpt_dir = ssd_net_graph.model_path + + self.in_images = tf.placeholder(tf.string) + self.image_tensors = utils.preprocess_array(self.in_images, output_width=300, output_height=300, + preserve_aspect_ratio=False) + + self.output_tensors = ssd_net_graph.import_graph_def(self.image_tensors, is_training=False) + + self.output_names = ssd_net_graph.output_tensor_list + self.input_name_str = self.in_images.name + + # Restore SSD model. + ssd_net_graph.restore_weights(self.sess) + + + def __enter__(self): + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.close() + + def close(self): + self.sess.close() + tf.reset_default_graph() + + def save_for_deployment(self, saved_path): + + output_map = {'out_{}'.format(i): output for i, output in enumerate(self.output_tensors)} + + tf.saved_model.simple_save(self.sess, + saved_path, + inputs={"images": self.in_images}, + outputs=output_map) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py new file mode 100644 index 00000000..b9b4e402 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py @@ -0,0 +1,144 @@ +import tensorflow as tf +import numpy as np + +import os, sys, time, re + +from anchors import generate_anchors +from model import ssd_common, ssd_vgg_300 +from datautil.parser import get_parser_func +from datautil.ssd_vgg_preprocessing import preprocess_for_eval, preprocess_for_train +from tfutil import endpoints, tf_utils +import tfextended as tfe +from finetune.train_eval_base import TrainerBase + +class TrainVggSsd(TrainerBase): + ''' + Run fine-tuning + Have training and validation recordset files + ''' + + def __init__(self, ckpt_dir, train_recordset_files, + steps_to_save = 1000, num_steps = 1000, num_classes = 21, + print_steps = 10, batch_size = 2, + learning_rate = 1e-4, learning_rate_decay_steps=None, learning_rate_decay_value = None, + adam_beta1 = 0.9, adam_beta2 = 0.999, adam_epsilon = 1e-8): + + ''' + ckpt_dir - directory of checkpoint metagraph + train_recordset_files - list of files represetnting the recordset for training + validation_recordset_files - list of files representing validation recordset + ''' + + super().__init__(ckpt_dir, train_recordset_files, steps_to_save, num_steps, num_classes, print_steps, batch_size) + + # optimizer parameters + self.learning_rate = learning_rate + self.learning_rate_decay_steps = learning_rate_decay_steps + self.learning_rate_decay_value = learning_rate_decay_value + + if self.learning_rate <= 0 \ + or (self.learning_rate_decay_value is not None and self.learning_rate_decay_value <= 0) \ + or (self.learning_rate_decay_steps is not None and self.learning_rate_decay_steps <= 0) \ + or (self.learning_rate_decay_steps is None and self.learning_rate_decay_value is not None) \ + or (self.learning_rate_decay_steps is not None and self.learning_rate_decay_value is None): + raise ValueError("learning rate, learning rate steps, learning rate decay must be positive, \ + learning decay steps and value must be both present or both absent") + + self.adam_beta1 = adam_beta1 + self.adam_beta2 = adam_beta2 + self.adam_epsilon = adam_epsilon + + def get_optimizer(self, learning_rate): + optimizer = tf.train.AdamOptimizer( + learning_rate, + beta1=self.adam_beta1, + beta2=self.adam_beta2, + epsilon=self.adam_epsilon) + return optimizer + + def get_learning_rate(self, global_step): + ''' + Configure learning rate based on decay specifications + ''' + if self.learning_rate_decay_steps is None: + return tf.constant(self.learning_rate, name = 'fixed_learning_rate') + else: + return tf.train.exponential_decay(self.learning_rate, global_step, \ + self.learning_rate_decay_steps, self.learning_rate_decay_value, \ + staircase=True, name="exponential_decay_learning_rate") + + def train(self): + + tf.logging.set_verbosity(tf.logging.INFO) + + # shorthand + sess = self.sess + + batch_data = self.iterator.get_next() + + # image, classes, scores, ground_truths are neatly packed into a flat list + # this is how we will slice it to extract the data we need: + # we will convert the flat list into a list of lists, where each sub-list + # is as long as each slice dimension + slice_shape = [1] + [len(self.anchors)] * 3 + + b_image, b_classes, b_localizations, b_scores = tf_utils.reshape_list(batch_data, slice_shape) + # network endpoints + _, localizations, logits, bw_saver = self.get_output_tensors(b_image) + + variables_to_train = tf.trainable_variables() + sess.run(tf.initialize_variables(variables_to_train)) + + # add losses + total_loss = self.ssd_net.losses(logits, localizations, b_classes, b_localizations, b_scores) + tf.summary.scalar("total_loss", total_loss) + + global_step = tf.train.get_or_create_global_step() + learning_rate = self.get_learning_rate(global_step) + + # configure learning rate now that we have the global step + # add optimizer + optimizer = self.get_optimizer(learning_rate) + + tf.summary.scalar("learning_rate", learning_rate) + + grads_and_vars = optimizer.compute_gradients(total_loss, var_list=variables_to_train) + grad_updates = optimizer.apply_gradients(grads_and_vars, global_step=global_step) + + # initialize all the variables we should initialize + # weights will be restored right after + sess.run(tf.global_variables_initializer()) + + # after the first restore, we want global step in our checkpoint + saver = tf.train.Saver(variables_to_train + [global_step]) + if self.latest_ckpt_step == 0: + bw_saver.restore(sess, self.ckpt_file) + else: + saver.restore(sess, self.ckpt_file) + self.ckpt_file = os.path.join(self.ckpt_dir, self.ckpt_prefix) + + # summaries + train_summary_op = tf.summary.merge_all() + train_writer = tf.summary.FileWriter(self.ckpt_dir + '/train', tf.get_default_graph()) + + tf.logging.info(f"Starting training for {self.num_steps} steps") + + sess.run(self.iterator.initializer) + + # training loop + start = time.time() + + for _ in range(self.num_steps): + + loss, _, cur_step, summary = sess.run([total_loss, grad_updates, global_step, train_summary_op]) + cur_step += 1 + + if cur_step % self.print_steps == 0: + + print(f"{cur_step}: loss: {loss:.3f}, avg per step: {(time.time() - start) / self.print_steps:.3f} sec", end='\r', flush=True) + train_writer.add_summary(summary, cur_step + 1) + start = time.time() + + if cur_step % self.steps_to_save == 0: + saver.save(sess, self.ckpt_file, global_step=global_step) + print("\n") \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py new file mode 100644 index 00000000..340bd3e1 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py @@ -0,0 +1,125 @@ +import tensorflow as tf +import numpy as np + +import os, sys, time, glob, re + +from anchors import generate_anchors +from model import ssd_common, ssd_vgg_300 +from datautil.parser import get_parser_func +from datautil.ssd_vgg_preprocessing import preprocess_for_eval, preprocess_for_train +from tfutil import endpoints, tf_utils +import tfextended as tfe +from azureml.accel.models import SsdVgg + +slim = tf.contrib.slim + +class TrainerBase: + ''' + Run fine-tuning + Have training and validation recordset files + ''' + + def __init__(self, ckpt_dir, recordset_files, + steps_to_save = 1000, num_steps = 1000, num_classes = 21, print_steps = 10, batch_size=2, is_training=True): + + ''' + ckpt_dir - directory of checkpoint metagraph + recordset_files - list of files represetnting the recordset for training + validation_recordset_files - list of files representing validation recordset + ''' + + self.is_training = is_training + + # This will pull the model with its weights + # And seed the checkpoint + self.ssd_net_graph = SsdVgg(ckpt_dir) + self.ckpt_dir = self.ssd_net_graph.model_path + self.ckpt_file = tf.train.latest_checkpoint(self.ssd_net_graph.model_path) + + try: + self.latest_ckpt_step = int(re.findall("-[0-9]+$", self.ckpt_file)[0][1:]) + except: + self.latest_ckpt_step = 0 + + self.recordset = recordset_files + self.ckpt_prefix = os.path.split(self.ssd_net_graph.model_ref + "_bw")[1] + + self.pb_graph_path = os.path.join(self.ckpt_dir, self.ckpt_prefix + ".graph.pb") + #if self.is_training: + self.graph_file = os.path.join(self.ckpt_dir, self.ckpt_prefix + ".meta") + #else: + # self.graph_file = self.ckpt_file + ".meta" + + # anchors + self.anchors = generate_anchors.ssd_anchors_all_layers() + + # shuffle + self.n_shuffle = 1000 + self.num_steps = num_steps + + # num of classes + # REVIEW: this has to be 21! + self.num_classes = 21 + + # initialize data pipeline + self.batch_size = batch_size + self.iterator = None + self.prep_dataset_and_iterator() + + self.steps_to_save = steps_to_save + + self.print_steps = print_steps + # for losses etc + self.ssd_net = ssd_vgg_300.SSDNet() + + # input placeholder + self.input_tensor_name = self.ssd_net_graph.input_tensor_list[0] + + + def __enter__(self): + gpu_options = tf.GPUOptions(allow_growth=True) + config = tf.ConfigProto(log_device_placement=False, gpu_options=gpu_options) + + self.sess = tf.Session(config=config) + + return self + + def __exit__(self, exc_type, exc_val, exc_tb): + self.sess.close() + tf.reset_default_graph() + + def prep_dataset_and_iterator(self): + ''' + Create datasets for training or validation + ''' + + var_scope = "training" if self.is_training else "eval" + + parse_func = get_parser_func(self.anchors, self.num_classes, self.is_training, var_scope) + + with tf.variable_scope(var_scope): + # data pipeline + dataset = tf.data.TFRecordDataset(self.recordset) + if self.is_training: + dataset = dataset.shuffle(self.n_shuffle) + dataset = dataset.map(parse_func) + dataset = dataset.repeat() + dataset = dataset.batch(self.batch_size) + dataset = dataset.prefetch(1) + + self.iterator = dataset.make_initializable_iterator() + + def get_output_tensors(self, image): + + is_training = tf.constant(self.is_training, dtype=tf.bool, shape=()) + input_map = {self.input_tensor_name: image, "is_training": is_training} + + saver = tf.train.import_meta_graph(self.graph_file, input_map=input_map) + graph = tf.get_default_graph() + + logits = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.logit_names] + localizations = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.localizations_names] + predictions = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.predictions_names] + + return predictions, localizations, logits, saver + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py new file mode 100644 index 00000000..4939c872 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py @@ -0,0 +1,164 @@ +# Copyright 2015 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Implement some custom layers, not provided by TensorFlow. + +Trying to follow as much as possible the style/standards used in +tf.contrib.layers +""" +import tensorflow as tf + +from tensorflow.contrib.framework.python.ops import add_arg_scope +from tensorflow.contrib.layers.python.layers import initializers +from tensorflow.contrib.framework.python.ops import variables +from tensorflow.contrib.layers.python.layers import utils +from tensorflow.python.ops import nn +from tensorflow.python.ops import init_ops +from tensorflow.python.ops import variable_scope + + +def abs_smooth(x): + """Smoothed absolute function. Useful to compute an L1 smooth error. + + Define as: + x^2 / 2 if abs(x) < 1 + abs(x) - 0.5 if abs(x) > 1 + We use here a differentiable definition using min(x) and abs(x). Clearly + not optimal, but good enough for our purpose! + """ + absx = tf.abs(x) + minx = tf.minimum(absx, 1) + r = 0.5 * ((absx - 1) * minx + absx) + return r + + +@add_arg_scope +def l2_normalization( + inputs, + scaling=False, + scale_initializer=init_ops.ones_initializer(), + reuse=None, + variables_collections=None, + outputs_collections=None, + data_format='NHWC', + trainable=True, + scope=None): + """Implement L2 normalization on every feature (i.e. spatial normalization). + + Should be extended in some near future to other dimensions, providing a more + flexible normalization framework. + + Args: + inputs: a 4-D tensor with dimensions [batch_size, height, width, channels]. + scaling: whether or not to add a post scaling operation along the dimensions + which have been normalized. + scale_initializer: An initializer for the weights. + reuse: whether or not the layer and its variables should be reused. To be + able to reuse the layer scope must be given. + variables_collections: optional list of collections for all the variables or + a dictionary containing a different list of collection per variable. + outputs_collections: collection to add the outputs. + data_format: NHWC or NCHW data format. + trainable: If `True` also add variables to the graph collection + `GraphKeys.TRAINABLE_VARIABLES` (see tf.Variable). + scope: Optional scope for `variable_scope`. + Returns: + A `Tensor` representing the output of the operation. + """ + + with variable_scope.variable_scope( + scope, 'L2Normalization', [inputs], reuse=reuse) as sc: + inputs_shape = inputs.get_shape() + inputs_rank = inputs_shape.ndims + dtype = inputs.dtype.base_dtype + if data_format == 'NHWC': + # norm_dim = tf.range(1, inputs_rank-1) + norm_dim = tf.range(inputs_rank-1, inputs_rank) + params_shape = inputs_shape[-1:] + elif data_format == 'NCHW': + # norm_dim = tf.range(2, inputs_rank) + norm_dim = tf.range(1, 2) + params_shape = (inputs_shape[1]) + + # Normalize along spatial dimensions. + outputs = nn.l2_normalize(inputs, norm_dim, epsilon=1e-12) + # Additional scaling. + if scaling: + scale_collections = utils.get_variable_collections( + variables_collections, 'scale') + scale = variables.model_variable('gamma', + shape=params_shape, + dtype=dtype, + initializer=scale_initializer, + collections=scale_collections, + trainable=trainable) + if data_format == 'NHWC': + outputs = tf.multiply(outputs, scale) + elif data_format == 'NCHW': + scale = tf.expand_dims(scale, axis=-1) + scale = tf.expand_dims(scale, axis=-1) + outputs = tf.multiply(outputs, scale) + # outputs = tf.transpose(outputs, perm=(0, 2, 3, 1)) + + return utils.collect_named_outputs(outputs_collections, + sc.original_name_scope, outputs) + + +@add_arg_scope +def pad2d(inputs, + pad=(0, 0), + mode='CONSTANT', + data_format='NHWC', + trainable=True, + scope=None): + """2D Padding layer, adding a symmetric padding to H and W dimensions. + + Aims to mimic padding in Caffe and MXNet, helping the port of models to + TensorFlow. Tries to follow the naming convention of `tf.contrib.layers`. + + Args: + inputs: 4D input Tensor; + pad: 2-Tuple with padding values for H and W dimensions; + mode: Padding mode. C.f. `tf.pad` + data_format: NHWC or NCHW data format. + """ + with tf.name_scope(scope, 'pad2d', [inputs]): + # Padding shape. + if data_format == 'NHWC': + paddings = [[0, 0], [pad[0], pad[0]], [pad[1], pad[1]], [0, 0]] + elif data_format == 'NCHW': + paddings = [[0, 0], [0, 0], [pad[0], pad[0]], [pad[1], pad[1]]] + net = tf.pad(inputs, paddings, mode=mode) + return net + + +@add_arg_scope +def channel_to_last(inputs, + data_format='NHWC', + scope=None): + """Move the channel axis to the last dimension. Allows to + provide a single output format whatever the input data format. + + Args: + inputs: Input Tensor; + data_format: NHWC or NCHW. + Return: + Input in NHWC format. + """ + with tf.name_scope(scope, 'channel_to_last', [inputs]): + if data_format == 'NHWC': + net = inputs + elif data_format == 'NCHW': + net = tf.transpose(inputs, perm=(0, 2, 3, 1)) + return net diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py new file mode 100644 index 00000000..7a021aa4 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py @@ -0,0 +1,252 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Additional Numpy methods. Big mess of many things! +""" +import numpy as np + + +# =========================================================================== # +# Numpy implementations of SSD boxes functions. +# =========================================================================== # +def ssd_bboxes_decode(feat_localizations, + anchor_bboxes, + prior_scaling=[0.1, 0.1, 0.2, 0.2]): + """Compute the relative bounding boxes from the layer features and + reference anchor bounding boxes. + + Return: + numpy array Nx4: ymin, xmin, ymax, xmax + """ + # Reshape for easier broadcasting. + l_shape = feat_localizations.shape + feat_localizations = np.reshape(feat_localizations, + (-1, l_shape[-2], l_shape[-1])) + yref, xref, href, wref = anchor_bboxes + xref = np.reshape(xref, [-1, 1]) + yref = np.reshape(yref, [-1, 1]) + + # Compute center, height and width + cx = feat_localizations[:, :, 0] * wref * prior_scaling[0] + xref + cy = feat_localizations[:, :, 1] * href * prior_scaling[1] + yref + w = wref * np.exp(feat_localizations[:, :, 2] * prior_scaling[2]) + h = href * np.exp(feat_localizations[:, :, 3] * prior_scaling[3]) + # bboxes: ymin, xmin, xmax, ymax. + bboxes = np.zeros_like(feat_localizations) + bboxes[:, :, 0] = cy - h / 2. + bboxes[:, :, 1] = cx - w / 2. + bboxes[:, :, 2] = cy + h / 2. + bboxes[:, :, 3] = cx + w / 2. + # Back to original shape. + bboxes = np.reshape(bboxes, l_shape) + return bboxes + + +def ssd_bboxes_select_layer(predictions_layer, + localizations_layer, + anchors_layer, + select_threshold=0.5, + img_shape=(300, 300), + num_classes=21, + decode=True): + """Extract classes, scores and bounding boxes from features in one layer. + + Return: + classes, scores, bboxes: Numpy arrays... + """ + # First decode localizations features if necessary. + if decode: + localizations_layer = ssd_bboxes_decode(localizations_layer, anchors_layer) + + # Reshape features to: Batches x N x N_labels | 4. + p_shape = predictions_layer.shape + batch_size = p_shape[0] if len(p_shape) == 5 else 1 + predictions_layer = np.reshape(predictions_layer, + (batch_size, -1, p_shape[-1])) + l_shape = localizations_layer.shape + localizations_layer = np.reshape(localizations_layer, + (batch_size, -1, l_shape[-1])) + + # Boxes selection: use threshold or score > no-label criteria. + if select_threshold is None or select_threshold == 0: + # Class prediction and scores: assign 0. to 0-class + classes = np.argmax(predictions_layer, axis=2) + scores = np.amax(predictions_layer, axis=2) + mask = (classes > 0) + classes = classes[mask] + scores = scores[mask] + bboxes = localizations_layer[mask] + else: + sub_predictions = predictions_layer[:, :, 1:] + idxes = np.where(sub_predictions > select_threshold) + classes = idxes[-1]+1 + scores = sub_predictions[idxes] + bboxes = localizations_layer[idxes[:-1]] + + return classes, scores, bboxes + + +def ssd_bboxes_select(predictions_net, + localizations_net, + anchors_net, + select_threshold=0.5, + img_shape=(300, 300), + num_classes=21, + decode=True): + """Extract classes, scores and bounding boxes from network output layers. + + Return: + classes, scores, bboxes: Numpy arrays... + """ + l_classes = [] + l_scores = [] + l_bboxes = [] + # l_layers = [] + # l_idxes = [] + for i in range(len(predictions_net)): + classes, scores, bboxes = ssd_bboxes_select_layer( + predictions_net[i], localizations_net[i], anchors_net[i], + select_threshold, img_shape, num_classes, decode) + l_classes.append(classes) + l_scores.append(scores) + l_bboxes.append(bboxes) + # Debug information. + # l_layers.append(i) + # l_idxes.append((i, idxes)) + + classes = np.concatenate(l_classes, 0) + scores = np.concatenate(l_scores, 0) + bboxes = np.concatenate(l_bboxes, 0) + return classes, scores, bboxes + + +# =========================================================================== # +# Common functions for bboxes handling and selection. +# =========================================================================== # +def bboxes_sort(classes, scores, bboxes, top_k=400): + """Sort bounding boxes by decreasing order and keep only the top_k + """ + # if priority_inside: + # inside = (bboxes[:, 0] > margin) & (bboxes[:, 1] > margin) & \ + # (bboxes[:, 2] < 1-margin) & (bboxes[:, 3] < 1-margin) + # idxes = np.argsort(-scores) + # inside = inside[idxes] + # idxes = np.concatenate([idxes[inside], idxes[~inside]]) + idxes = np.argsort(-scores) + classes = classes[idxes][:top_k] + scores = scores[idxes][:top_k] + bboxes = bboxes[idxes][:top_k] + return classes, scores, bboxes + + +def bboxes_clip(bbox_ref, bboxes): + """Clip bounding boxes with respect to reference bbox. + """ + bboxes = np.copy(bboxes) + bboxes = np.transpose(bboxes) + bbox_ref = np.transpose(bbox_ref) + bboxes[0] = np.maximum(bboxes[0], bbox_ref[0]) + bboxes[1] = np.maximum(bboxes[1], bbox_ref[1]) + bboxes[2] = np.minimum(bboxes[2], bbox_ref[2]) + bboxes[3] = np.minimum(bboxes[3], bbox_ref[3]) + bboxes = np.transpose(bboxes) + return bboxes + + +def bboxes_resize(bbox_ref, bboxes): + """Resize bounding boxes based on a reference bounding box, + assuming that the latter is [0, 0, 1, 1] after transform. + """ + bboxes = np.copy(bboxes) + # Translate. + bboxes[:, 0] -= bbox_ref[0] + bboxes[:, 1] -= bbox_ref[1] + bboxes[:, 2] -= bbox_ref[0] + bboxes[:, 3] -= bbox_ref[1] + # Resize. + resize = [bbox_ref[2] - bbox_ref[0], bbox_ref[3] - bbox_ref[1]] + bboxes[:, 0] /= resize[0] + bboxes[:, 1] /= resize[1] + bboxes[:, 2] /= resize[0] + bboxes[:, 3] /= resize[1] + return bboxes + + +def bboxes_jaccard(bboxes1, bboxes2): + """Computing jaccard index between bboxes1 and bboxes2. + Note: bboxes1 and bboxes2 can be multi-dimensional, but should broacastable. + """ + bboxes1 = np.transpose(bboxes1) + bboxes2 = np.transpose(bboxes2) + # Intersection bbox and volume. + int_ymin = np.maximum(bboxes1[0], bboxes2[0]) + int_xmin = np.maximum(bboxes1[1], bboxes2[1]) + int_ymax = np.minimum(bboxes1[2], bboxes2[2]) + int_xmax = np.minimum(bboxes1[3], bboxes2[3]) + + int_h = np.maximum(int_ymax - int_ymin, 0.) + int_w = np.maximum(int_xmax - int_xmin, 0.) + int_vol = int_h * int_w + # Union volume. + vol1 = (bboxes1[2] - bboxes1[0]) * (bboxes1[3] - bboxes1[1]) + vol2 = (bboxes2[2] - bboxes2[0]) * (bboxes2[3] - bboxes2[1]) + jaccard = int_vol / (vol1 + vol2 - int_vol) + return jaccard + + +def bboxes_intersection(bboxes_ref, bboxes2): + """Computing jaccard index between bboxes1 and bboxes2. + Note: bboxes1 and bboxes2 can be multi-dimensional, but should broacastable. + """ + bboxes_ref = np.transpose(bboxes_ref) + bboxes2 = np.transpose(bboxes2) + # Intersection bbox and volume. + int_ymin = np.maximum(bboxes_ref[0], bboxes2[0]) + int_xmin = np.maximum(bboxes_ref[1], bboxes2[1]) + int_ymax = np.minimum(bboxes_ref[2], bboxes2[2]) + int_xmax = np.minimum(bboxes_ref[3], bboxes2[3]) + + int_h = np.maximum(int_ymax - int_ymin, 0.) + int_w = np.maximum(int_xmax - int_xmin, 0.) + int_vol = int_h * int_w + # Union volume. + vol = (bboxes_ref[2] - bboxes_ref[0]) * (bboxes_ref[3] - bboxes_ref[1]) + score = int_vol / vol + return score + + +def bboxes_nms(classes, scores, bboxes, nms_threshold=0.45): + """Apply non-maximum selection to bounding boxes. + """ + keep_bboxes = np.ones(scores.shape, dtype=np.bool) + for i in range(scores.size-1): + if keep_bboxes[i]: + # Computer overlap with bboxes which are following. + overlap = bboxes_jaccard(bboxes[i], bboxes[(i+1):]) + # Overlap threshold for keeping + checking part of the same class + keep_overlap = np.logical_or(overlap < nms_threshold, classes[(i+1):] != classes[i]) + keep_bboxes[(i+1):] = np.logical_and(keep_bboxes[(i+1):], keep_overlap) + + idxes = np.where(keep_bboxes) + return classes[idxes], scores[idxes], bboxes[idxes] + + +def bboxes_nms_fast(classes, scores, bboxes, threshold=0.45): + """Apply non-maximum selection to bounding boxes. + """ + pass + + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py new file mode 100644 index 00000000..80896452 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py @@ -0,0 +1,408 @@ +# Copyright 2015 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Shared function between different SSD implementations. +""" +import numpy as np +import tensorflow as tf +import tfextended as tfe + + +# =========================================================================== # +# TensorFlow implementation of boxes SSD encoding / decoding. +# =========================================================================== # +def tf_ssd_bboxes_encode_layer(labels, + bboxes, + anchors_layer, + num_classes, + ignore_threshold=0.5, + prior_scaling=[0.1, 0.1, 0.2, 0.2], + dtype=tf.float32): + """Encode groundtruth labels and bounding boxes using SSD anchors from + one layer. + + Arguments: + labels: 1D Tensor(int64) containing groundtruth labels; + bboxes: Nx4 Tensor(float) with bboxes relative coordinates; + anchors_layer: Numpy array with layer anchors; + matching_threshold: Threshold for positive match with groundtruth bboxes; + prior_scaling: Scaling of encoded coordinates. + + Return: + (target_labels, target_localizations, target_scores): Target Tensors. + """ + # Anchors coordinates and volume. + yref, xref, href, wref = anchors_layer + ymin = yref - href / 2. + xmin = xref - wref / 2. + ymax = yref + href / 2. + xmax = xref + wref / 2. + vol_anchors = (xmax - xmin) * (ymax - ymin) + + # Initialize tensors... + shape = (yref.shape[0], yref.shape[1], href.size) + feat_labels = tf.zeros(shape, dtype=tf.int64) + feat_scores = tf.zeros(shape, dtype=dtype) + + feat_ymin = tf.zeros(shape, dtype=dtype) + feat_xmin = tf.zeros(shape, dtype=dtype) + feat_ymax = tf.ones(shape, dtype=dtype) + feat_xmax = tf.ones(shape, dtype=dtype) + + def jaccard_with_anchors(bbox): + """Compute jaccard score between a box and the anchors. + """ + int_ymin = tf.maximum(ymin, bbox[0]) + int_xmin = tf.maximum(xmin, bbox[1]) + int_ymax = tf.minimum(ymax, bbox[2]) + int_xmax = tf.minimum(xmax, bbox[3]) + h = tf.maximum(int_ymax - int_ymin, 0.) + w = tf.maximum(int_xmax - int_xmin, 0.) + # Volumes. + inter_vol = h * w + union_vol = vol_anchors - inter_vol \ + + (bbox[2] - bbox[0]) * (bbox[3] - bbox[1]) + jaccard = tf.divide(inter_vol, union_vol) + return jaccard + + def intersection_with_anchors(bbox): + """Compute intersection between score a box and the anchors. + """ + int_ymin = tf.maximum(ymin, bbox[0]) + int_xmin = tf.maximum(xmin, bbox[1]) + int_ymax = tf.minimum(ymax, bbox[2]) + int_xmax = tf.minimum(xmax, bbox[3]) + h = tf.maximum(int_ymax - int_ymin, 0.) + w = tf.maximum(int_xmax - int_xmin, 0.) + inter_vol = h * w + scores = tf.divide(inter_vol, vol_anchors) + return scores + + def condition(i, feat_labels, feat_scores, + feat_ymin, feat_xmin, feat_ymax, feat_xmax): + """Condition: check label index. + """ + r = tf.less(i, tf.shape(labels)) + return r[0] + + def body(i, feat_labels, feat_scores, + feat_ymin, feat_xmin, feat_ymax, feat_xmax): + """Body: update feature labels, scores and bboxes. + Follow the original SSD paper for that purpose: + - assign values when jaccard > 0.5; + - only update if beat the score of other bboxes. + """ + # Jaccard score. + label = labels[i] + bbox = bboxes[i] + jaccard = jaccard_with_anchors(bbox) + # Mask: check threshold + scores + no annotations + num_classes. + mask = tf.greater(jaccard, feat_scores) + # mask = tf.logical_and(mask, tf.greater(jaccard, matching_threshold)) + mask = tf.logical_and(mask, feat_scores > -0.5) + mask = tf.logical_and(mask, label < num_classes) + imask = tf.cast(mask, tf.int64) + fmask = tf.cast(mask, dtype) + # Update values using mask. + feat_labels = imask * label + (1 - imask) * feat_labels + feat_scores = tf.where(mask, jaccard, feat_scores) + + feat_ymin = fmask * bbox[0] + (1 - fmask) * feat_ymin + feat_xmin = fmask * bbox[1] + (1 - fmask) * feat_xmin + feat_ymax = fmask * bbox[2] + (1 - fmask) * feat_ymax + feat_xmax = fmask * bbox[3] + (1 - fmask) * feat_xmax + + # Check no annotation label: ignore these anchors... + # interscts = intersection_with_anchors(bbox) + # mask = tf.logical_and(interscts > ignore_threshold, + # label == no_annotation_label) + # # Replace scores by -1. + # feat_scores = tf.where(mask, -tf.cast(mask, dtype), feat_scores) + + return [i+1, feat_labels, feat_scores, + feat_ymin, feat_xmin, feat_ymax, feat_xmax] + # Main loop definition. + i = 0 + [i, feat_labels, feat_scores, + feat_ymin, feat_xmin, + feat_ymax, feat_xmax] = tf.while_loop(condition, body, + [i, feat_labels, feat_scores, + feat_ymin, feat_xmin, + feat_ymax, feat_xmax]) + # Transform to center / size. + feat_cy = (feat_ymax + feat_ymin) / 2. + feat_cx = (feat_xmax + feat_xmin) / 2. + feat_h = feat_ymax - feat_ymin + feat_w = feat_xmax - feat_xmin + # Encode features. + feat_cy = (feat_cy - yref) / href / prior_scaling[0] + feat_cx = (feat_cx - xref) / wref / prior_scaling[1] + feat_h = tf.log(feat_h / href) / prior_scaling[2] + feat_w = tf.log(feat_w / wref) / prior_scaling[3] + # Use SSD ordering: x / y / w / h instead of ours. + feat_localizations = tf.stack([feat_cx, feat_cy, feat_w, feat_h], axis=-1) + return feat_labels, feat_localizations, feat_scores + + +def tf_ssd_bboxes_encode(labels, + bboxes, + anchors, + num_classes, + ignore_threshold=0.5, + prior_scaling=[0.1, 0.1, 0.2, 0.2], + dtype=tf.float32, + scope='ssd_bboxes_encode'): + """Encode groundtruth labels and bounding boxes using SSD net anchors. + Encoding boxes for all feature layers. + + Arguments: + labels: 1D Tensor(int64) containing groundtruth labels; + bboxes: Nx4 Tensor(float) with bboxes relative coordinates; + anchors: List of Numpy array with layer anchors; + matching_threshold: Threshold for positive match with groundtruth bboxes; + prior_scaling: Scaling of encoded coordinates. + + Return: + (target_labels, target_localizations, target_scores): + Each element is a list of target Tensors. + """ + with tf.name_scope(scope): + target_labels = [] + target_localizations = [] + target_scores = [] + for i, anchors_layer in enumerate(anchors): + with tf.name_scope('bboxes_encode_block_%i' % i): + t_labels, t_loc, t_scores = \ + tf_ssd_bboxes_encode_layer(labels, bboxes, anchors_layer, + num_classes, + ignore_threshold, + prior_scaling, dtype) + target_labels.append(t_labels) + target_localizations.append(t_loc) + target_scores.append(t_scores) + return target_labels, target_localizations, target_scores + + +def tf_ssd_bboxes_decode_layer(feat_localizations, + anchors_layer, + prior_scaling=[0.1, 0.1, 0.2, 0.2]): + """Compute the relative bounding boxes from the layer features and + reference anchor bounding boxes. + + Arguments: + feat_localizations: Tensor containing localization features. + anchors: List of numpy array containing anchor boxes. + + Return: + Tensor Nx4: ymin, xmin, ymax, xmax + """ + yref, xref, href, wref = anchors_layer + + # Compute center, height and width + cx = feat_localizations[:, :, :, :, 0] * wref * prior_scaling[0] + xref + cy = feat_localizations[:, :, :, :, 1] * href * prior_scaling[1] + yref + w = wref * tf.exp(feat_localizations[:, :, :, :, 2] * prior_scaling[2]) + h = href * tf.exp(feat_localizations[:, :, :, :, 3] * prior_scaling[3]) + # Boxes coordinates. + ymin = cy - h / 2. + xmin = cx - w / 2. + ymax = cy + h / 2. + xmax = cx + w / 2. + bboxes = tf.stack([ymin, xmin, ymax, xmax], axis=-1) + return bboxes + + +def tf_ssd_bboxes_decode(feat_localizations, + anchors, + prior_scaling=[0.1, 0.1, 0.2, 0.2], + scope='ssd_bboxes_decode'): + """Compute the relative bounding boxes from the SSD net features and + reference anchors bounding boxes. + + Arguments: + feat_localizations: List of Tensors containing localization features. + anchors: List of numpy array containing anchor boxes. + + Return: + List of Tensors Nx4: ymin, xmin, ymax, xmax + """ + with tf.name_scope(scope): + bboxes = [] + for i, anchors_layer in enumerate(anchors): + bboxes.append( + tf_ssd_bboxes_decode_layer(feat_localizations[i], + anchors_layer, + prior_scaling)) + return bboxes + + +# =========================================================================== # +# SSD boxes selection. +# =========================================================================== # +def tf_ssd_bboxes_select_layer(predictions_layer, localizations_layer, + select_threshold=None, + num_classes=21, + ignore_class=0, + scope=None): + """Extract classes, scores and bounding boxes from features in one layer. + Batch-compatible: inputs are supposed to have batch-type shapes. + + Args: + predictions_layer: A SSD prediction layer; + localizations_layer: A SSD localization layer; + select_threshold: Classification threshold for selecting a box. All boxes + under the threshold are set to 'zero'. If None, no threshold applied. + Return: + d_scores, d_bboxes: Dictionary of scores and bboxes Tensors of + size Batches X N x 1 | 4. Each key corresponding to a class. + """ + select_threshold = 0.0 if select_threshold is None else select_threshold + with tf.name_scope(scope, 'ssd_bboxes_select_layer', + [predictions_layer, localizations_layer]): + # Reshape features: Batches x N x N_labels | 4 + p_shape = tfe.get_shape(predictions_layer) + predictions_layer = tf.reshape(predictions_layer, + tf.stack([p_shape[0], -1, p_shape[-1]])) + l_shape = tfe.get_shape(localizations_layer) + localizations_layer = tf.reshape(localizations_layer, + tf.stack([l_shape[0], -1, l_shape[-1]])) + + d_scores = {} + d_bboxes = {} + for c in range(0, num_classes): + if c != ignore_class: + # Remove boxes under the threshold. + scores = predictions_layer[:, :, c] + fmask = tf.cast(tf.greater_equal(scores, select_threshold), scores.dtype) + scores = scores * fmask + bboxes = localizations_layer * tf.expand_dims(fmask, axis=-1) + # Append to dictionary. + d_scores[c] = scores + d_bboxes[c] = bboxes + + return d_scores, d_bboxes + + +def tf_ssd_bboxes_select(predictions_net, localizations_net, + select_threshold=None, + num_classes=21, + ignore_class=0, + scope=None): + """Extract classes, scores and bounding boxes from network output layers. + Batch-compatible: inputs are supposed to have batch-type shapes. + + Args: + predictions_net: List of SSD prediction layers; + localizations_net: List of localization layers; + select_threshold: Classification threshold for selecting a box. All boxes + under the threshold are set to 'zero'. If None, no threshold applied. + Return: + d_scores, d_bboxes: Dictionary of scores and bboxes Tensors of + size Batches X N x 1 | 4. Each key corresponding to a class. + """ + with tf.name_scope(scope, 'ssd_bboxes_select', + [predictions_net, localizations_net]): + l_scores = [] + l_bboxes = [] + for i in range(len(predictions_net)): + scores, bboxes = tf_ssd_bboxes_select_layer(predictions_net[i], + localizations_net[i], + select_threshold, + num_classes, + ignore_class) + l_scores.append(scores) + l_bboxes.append(bboxes) + # Concat results. + d_scores = {} + d_bboxes = {} + for c in l_scores[0].keys(): + ls = [s[c] for s in l_scores] + lb = [b[c] for b in l_bboxes] + d_scores[c] = tf.concat(ls, axis=1) + d_bboxes[c] = tf.concat(lb, axis=1) + return d_scores, d_bboxes + + +def tf_ssd_bboxes_select_layer_all_classes(predictions_layer, localizations_layer, + select_threshold=None): + """Extract classes, scores and bounding boxes from features in one layer. + Batch-compatible: inputs are supposed to have batch-type shapes. + + Args: + predictions_layer: A SSD prediction layer; + localizations_layer: A SSD localization layer; + select_threshold: Classification threshold for selecting a box. If None, + select boxes whose classification score is higher than 'no class'. + Return: + classes, scores, bboxes: Input Tensors. + """ + # Reshape features: Batches x N x N_labels | 4 + p_shape = tfe.get_shape(predictions_layer) + predictions_layer = tf.reshape(predictions_layer, + tf.stack([p_shape[0], -1, p_shape[-1]])) + l_shape = tfe.get_shape(localizations_layer) + localizations_layer = tf.reshape(localizations_layer, + tf.stack([l_shape[0], -1, l_shape[-1]])) + # Boxes selection: use threshold or score > no-label criteria. + if select_threshold is None or select_threshold == 0: + # Class prediction and scores: assign 0. to 0-class + classes = tf.argmax(predictions_layer, axis=2) + scores = tf.reduce_max(predictions_layer, axis=2) + scores = scores * tf.cast(classes > 0, scores.dtype) + else: + sub_predictions = predictions_layer[:, :, 1:] + classes = tf.argmax(sub_predictions, axis=2) + 1 + scores = tf.reduce_max(sub_predictions, axis=2) + # Only keep predictions higher than threshold. + mask = tf.greater(scores, select_threshold) + classes = classes * tf.cast(mask, classes.dtype) + scores = scores * tf.cast(mask, scores.dtype) + # Assume localization layer already decoded. + bboxes = localizations_layer + return classes, scores, bboxes + + +def tf_ssd_bboxes_select_all_classes(predictions_net, localizations_net, + select_threshold=None, + scope=None): + """Extract classes, scores and bounding boxes from network output layers. + Batch-compatible: inputs are supposed to have batch-type shapes. + + Args: + predictions_net: List of SSD prediction layers; + localizations_net: List of localization layers; + select_threshold: Classification threshold for selecting a box. If None, + select boxes whose classification score is higher than 'no class'. + Return: + classes, scores, bboxes: Tensors. + """ + with tf.name_scope(scope, 'ssd_bboxes_select', + [predictions_net, localizations_net]): + l_classes = [] + l_scores = [] + l_bboxes = [] + for i in range(len(predictions_net)): + classes, scores, bboxes = \ + tf_ssd_bboxes_select_layer_all_classes(predictions_net[i], + localizations_net[i], + select_threshold) + l_classes.append(classes) + l_scores.append(scores) + l_bboxes.append(bboxes) + + classes = tf.concat(l_classes, axis=1) + scores = tf.concat(l_scores, axis=1) + bboxes = tf.concat(l_bboxes, axis=1) + return classes, scores, bboxes + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py new file mode 100644 index 00000000..0b5d63ef --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py @@ -0,0 +1,660 @@ +# Copyright 2016 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""Definition of 300 VGG-based SSD network. + +This model was initially introduced in: +SSD: Single Shot MultiBox Detector +Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, +Cheng-Yang Fu, Alexander C. Berg +https://arxiv.org/abs/1512.02325 + +Two variants of the model are defined: the 300x300 and 512x512 models, the +latter obtaining a slightly better accuracy on Pascal VOC. + +Usage: + with slim.arg_scope(ssd_vgg.ssd_vgg()): + outputs, end_points = ssd_vgg.ssd_vgg(inputs) + +This network port of the original Caffe model. The padding in TF and Caffe +is slightly different, and can lead to severe accuracy drop if not taken care +in a correct way! + +In Caffe, the output size of convolution and pooling layers are computing as +following: h_o = (h_i + 2 * pad_h - kernel_h) / stride_h + 1 + +Nevertheless, there is a subtle difference between both for stride > 1. In +the case of convolution: + top_size = floor((bottom_size + 2*pad - kernel_size) / stride) + 1 +whereas for pooling: + top_size = ceil((bottom_size + 2*pad - kernel_size) / stride) + 1 +Hence implicitely allowing some additional padding even if pad = 0. This +behaviour explains why pooling with stride and kernel of size 2 are behaving +the same way in TensorFlow and Caffe. + +Nevertheless, this is not the case anymore for other kernel sizes, hence +motivating the use of special padding layer for controlling these side-effects. + +@@ssd_vgg_300 +""" +import math +from collections import namedtuple + +import numpy as np +import tensorflow as tf + +import tfextended as tfe +from model import custom_layers, ssd_common + +slim = tf.contrib.slim + + +# =========================================================================== # +# SSD class definition. +# =========================================================================== # +SSDParams = namedtuple('SSDParameters', ['img_shape', + 'num_classes', + 'no_annotation_label', + 'feat_layers', + 'feat_shapes', + 'anchor_size_bounds', + 'anchor_sizes', + 'anchor_ratios', + 'anchor_steps', + 'anchor_offset', + 'normalizations', + 'prior_scaling' + ]) + + +class SSDNet(object): + """Implementation of the SSD VGG-based 300 network. + + The default features layers with 300x300 image input are: + conv4 ==> 38 x 38 + conv7 ==> 19 x 19 + conv8 ==> 10 x 10 + conv9 ==> 5 x 5 + conv10 ==> 3 x 3 + conv11 ==> 1 x 1 + The default image size used to train this network is 300x300. + """ + default_params = SSDParams( + img_shape=(300, 300), + num_classes=21, + no_annotation_label=21, + feat_layers=['block4', 'block7', 'block8', 'block9', 'block10', 'block11'], + feat_shapes=[(37, 37), (19, 19), (10, 10), (5, 5), (3, 3), (1, 1)], + anchor_size_bounds=[0.15, 0.90], + # anchor_size_bounds=[0.20, 0.90], + anchor_sizes=[(21., 45.), + (45., 99.), + (99., 153.), + (153., 207.), + (207., 261.), + (261., 315.)], + # anchor_sizes=[(30., 60.), + # (60., 111.), + # (111., 162.), + # (162., 213.), + # (213., 264.), + # (264., 315.)], + anchor_ratios=[[2, .5], + [2, .5, 3, 1./3], + [2, .5, 3, 1./3], + [2, .5, 3, 1./3], + [2, .5], + [2, .5]], + anchor_steps=[8, 16, 32, 64, 100, 300], + anchor_offset=0.5, + normalizations=[20, -1, -1, -1, -1, -1], + prior_scaling=[0.1, 0.1, 0.2, 0.2] + ) + + def __init__(self, params=None): + """Init the SSD net with some parameters. Use the default ones + if none provided. + """ + if isinstance(params, SSDParams): + self.params = params + else: + self.params = SSDNet.default_params + + # ======================================================================= # + def net(self, inputs, + is_training=True, + update_feat_shapes=True, + dropout_keep_prob=0.5, + prediction_fn=slim.softmax, + reuse=None, + scope='ssd_300_vgg'): + """SSD network definition. + """ + r = ssd_net(inputs, + num_classes=self.params.num_classes, + feat_layers=self.params.feat_layers, + anchor_sizes=self.params.anchor_sizes, + anchor_ratios=self.params.anchor_ratios, + normalizations=self.params.normalizations, + is_training=is_training, + dropout_keep_prob=dropout_keep_prob, + prediction_fn=prediction_fn, + reuse=reuse, + scope=scope) + # Update feature shapes (try at least!) + if update_feat_shapes: + shapes = ssd_feat_shapes_from_net(r[0], self.params.feat_shapes) + self.params = self.params._replace(feat_shapes=shapes) + return r + + def arg_scope(self, weight_decay=0.0005, data_format='NHWC'): + """Network arg_scope. + """ + return ssd_arg_scope(weight_decay, data_format=data_format) + + def arg_scope_caffe(self, caffe_scope): + """Caffe arg_scope used for weights importing. + """ + return ssd_arg_scope_caffe(caffe_scope) + + # ======================================================================= # + def update_feature_shapes(self, predictions): + """Update feature shapes from predictions collection (Tensor or Numpy + array). + """ + shapes = ssd_feat_shapes_from_net(predictions, self.params.feat_shapes) + self.params = self.params._replace(feat_shapes=shapes) + + def anchors(self, img_shape, dtype=np.float32): + """Compute the default anchor boxes, given an image shape. + """ + return ssd_anchors_all_layers(img_shape, + self.params.feat_shapes, + self.params.anchor_sizes, + self.params.anchor_ratios, + self.params.anchor_steps, + self.params.anchor_offset, + dtype) + + def bboxes_encode(self, labels, bboxes, anchors, + scope=None): + """Encode labels and bounding boxes. + """ + return ssd_common.tf_ssd_bboxes_encode( + labels, bboxes, anchors, + self.params.num_classes, + ignore_threshold=0.5, + prior_scaling=self.params.prior_scaling, + scope=scope) + + def bboxes_decode(self, feat_localizations, anchors, + scope='ssd_bboxes_decode'): + """Encode labels and bounding boxes. + """ + return ssd_common.tf_ssd_bboxes_decode( + feat_localizations, anchors, + prior_scaling=self.params.prior_scaling, + scope=scope) + + def detected_bboxes(self, predictions, localisations, + select_threshold=None, nms_threshold=0.5, + clipping_bbox=None, top_k=400, keep_top_k=200): + """Get the detected bounding boxes from the SSD network output. + """ + # Select top_k bboxes from predictions, and clip + rscores, rbboxes = \ + ssd_common.tf_ssd_bboxes_select(predictions, localisations, + select_threshold=select_threshold, + num_classes=self.params.num_classes) + rscores, rbboxes = \ + tfe.bboxes_sort(rscores, rbboxes, top_k=top_k) + # Apply NMS algorithm. + rscores, rbboxes = \ + tfe.bboxes_nms_batch(rscores, rbboxes, + nms_threshold=nms_threshold, + keep_top_k=keep_top_k) + if clipping_bbox is not None: + rbboxes = tfe.bboxes_clip(clipping_bbox, rbboxes) + return rscores, rbboxes + + def losses(self, logits, localisations, + gclasses, glocalisations, gscores, + match_threshold=0.5, + negative_ratio=3., + alpha=1., + label_smoothing=0., + scope='ssd_losses'): + """Define the SSD network losses. + """ + return ssd_losses(logits, localisations, + gclasses, glocalisations, gscores, + match_threshold=match_threshold, + negative_ratio=negative_ratio, + alpha=alpha, + label_smoothing=label_smoothing, + scope=scope) + + +# =========================================================================== # +# SSD tools... +# =========================================================================== # +def ssd_size_bounds_to_values(size_bounds, + n_feat_layers, + img_shape=(300, 300)): + """Compute the reference sizes of the anchor boxes from relative bounds. + The absolute values are measured in pixels, based on the network + default size (300 pixels). + + This function follows the computation performed in the original + implementation of SSD in Caffe. + + Return: + list of list containing the absolute sizes at each scale. For each scale, + the ratios only apply to the first value. + """ + assert img_shape[0] == img_shape[1] + + img_size = img_shape[0] + min_ratio = int(size_bounds[0] * 100) + max_ratio = int(size_bounds[1] * 100) + step = int(math.floor((max_ratio - min_ratio) / (n_feat_layers - 2))) + # Start with the following smallest sizes. + sizes = [[img_size * size_bounds[0] / 2, img_size * size_bounds[0]]] + for ratio in range(min_ratio, max_ratio + 1, step): + sizes.append((img_size * ratio / 100., + img_size * (ratio + step) / 100.)) + return sizes + + +def ssd_feat_shapes_from_net(predictions, default_shapes=None): + """Try to obtain the feature shapes from the prediction layers. The latter + can be either a Tensor or Numpy ndarray. + + Return: + list of feature shapes. Default values if predictions shape not fully + determined. + """ + feat_shapes = [] + for l in predictions: + # Get the shape, from either a np array or a tensor. + if isinstance(l, np.ndarray): + shape = l.shape + else: + shape = l.get_shape().as_list() + shape = shape[1:4] + # Problem: undetermined shape... + if None in shape: + return default_shapes + else: + feat_shapes.append(shape) + return feat_shapes + + +def ssd_anchor_one_layer(img_shape, + feat_shape, + sizes, + ratios, + step, + offset=0.5, + dtype=np.float32): + """Computer SSD default anchor boxes for one feature layer. + + Determine the relative position grid of the centers, and the relative + width and height. + + Arguments: + feat_shape: Feature shape, used for computing relative position grids; + size: Absolute reference sizes; + ratios: Ratios to use on these features; + img_shape: Image shape, used for computing height, width relatively to the + former; + offset: Grid offset. + + Return: + y, x, h, w: Relative x and y grids, and height and width. + """ + # Compute the position grid: simple way. + # y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] + # y = (y.astype(dtype) + offset) / feat_shape[0] + # x = (x.astype(dtype) + offset) / feat_shape[1] + # Weird SSD-Caffe computation using steps values... + y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] + y = (y.astype(dtype) + offset) * step / img_shape[0] + x = (x.astype(dtype) + offset) * step / img_shape[1] + + # Expand dims to support easy broadcasting. + y = np.expand_dims(y, axis=-1) + x = np.expand_dims(x, axis=-1) + + # Compute relative height and width. + # Tries to follow the original implementation of SSD for the order. + num_anchors = len(sizes) + len(ratios) + h = np.zeros((num_anchors, ), dtype=dtype) + w = np.zeros((num_anchors, ), dtype=dtype) + # Add first anchor boxes with ratio=1. + h[0] = sizes[0] / img_shape[0] + w[0] = sizes[0] / img_shape[1] + di = 1 + if len(sizes) > 1: + h[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[0] + w[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[1] + di += 1 + for i, r in enumerate(ratios): + h[i+di] = sizes[0] / img_shape[0] / math.sqrt(r) + w[i+di] = sizes[0] / img_shape[1] * math.sqrt(r) + return y, x, h, w + + +def ssd_anchors_all_layers(img_shape, + layers_shape, + anchor_sizes, + anchor_ratios, + anchor_steps, + offset=0.5, + dtype=np.float32): + """Compute anchor boxes for all feature layers. + """ + layers_anchors = [] + for i, s in enumerate(layers_shape): + anchor_bboxes = ssd_anchor_one_layer(img_shape, s, + anchor_sizes[i], + anchor_ratios[i], + anchor_steps[i], + offset=offset, dtype=dtype) + layers_anchors.append(anchor_bboxes) + return layers_anchors + + +# =========================================================================== # +# Functional definition of VGG-based SSD 300. +# =========================================================================== # +def tensor_shape(x, rank=3): + """Returns the dimensions of a tensor. + Args: + image: A N-D Tensor of shape. + Returns: + A list of dimensions. Dimensions that are statically known are python + integers,otherwise they are integer scalar tensors. + """ + if x.get_shape().is_fully_defined(): + return x.get_shape().as_list() + else: + static_shape = x.get_shape().with_rank(rank).as_list() + dynamic_shape = tf.unstack(tf.shape(x), rank) + return [s if s is not None else d + for s, d in zip(static_shape, dynamic_shape)] + + +def ssd_multibox_layer(inputs, + num_classes, + sizes, + ratios=[1], + normalization=-1, + bn_normalization=False): + """Construct a multibox layer, return a class and localization predictions. + """ + net = inputs + if normalization > 0: + net = custom_layers.l2_normalization(net, scaling=True) + # Number of anchors. + num_anchors = len(sizes) + len(ratios) + + # Location. + num_loc_pred = num_anchors * 4 + loc_pred = slim.conv2d(net, num_loc_pred, [3, 3], activation_fn=None, + scope='conv_loc') + loc_pred = custom_layers.channel_to_last(loc_pred) + loc_pred = tf.reshape(loc_pred, + tensor_shape(loc_pred, 4)[:-1]+[num_anchors, 4]) + # Class prediction. + num_cls_pred = num_anchors * num_classes + cls_pred = slim.conv2d(net, num_cls_pred, [3, 3], activation_fn=None, + scope='conv_cls') + cls_pred = custom_layers.channel_to_last(cls_pred) + cls_pred = tf.reshape(cls_pred, + tensor_shape(cls_pred, 4)[:-1]+[num_anchors, num_classes]) + return cls_pred, loc_pred + + +def ssd_net(inputs, + num_classes=SSDNet.default_params.num_classes, + feat_layers=SSDNet.default_params.feat_layers, + anchor_sizes=SSDNet.default_params.anchor_sizes, + anchor_ratios=SSDNet.default_params.anchor_ratios, + normalizations=SSDNet.default_params.normalizations, + is_training=True, + dropout_keep_prob=0.5, + prediction_fn=slim.softmax, + reuse=None, + scope='ssd_300_vgg'): + """SSD net definition. + """ + # if data_format == 'NCHW': + # inputs = tf.transpose(inputs, perm=(0, 3, 1, 2)) + + # End_points collect relevant activations for external use. + end_points = {} + with tf.variable_scope(scope, 'ssd_300_vgg', [inputs], reuse=reuse): + # Original VGG-16 blocks. + net = slim.repeat(inputs, 2, slim.conv2d, 64, [3, 3], scope='conv1') + end_points['block1'] = net + net = slim.max_pool2d(net, [2, 2], scope='pool1') + # Block 2. + net = slim.repeat(net, 2, slim.conv2d, 128, [3, 3], scope='conv2') + end_points['block2'] = net + net = slim.max_pool2d(net, [2, 2], scope='pool2') + # Block 3. + net = slim.repeat(net, 3, slim.conv2d, 256, [3, 3], scope='conv3') + end_points['block3'] = net + net = slim.max_pool2d(net, [2, 2], scope='pool3') + # Block 4. + net = slim.repeat(net, 3, slim.conv2d, 512, [3, 3], scope='conv4') + end_points['block4'] = net + net = slim.max_pool2d(net, [2, 2], scope='pool4') + # Block 5. + net = slim.repeat(net, 3, slim.conv2d, 512, [3, 3], scope='conv5') + end_points['block5'] = net + net = slim.max_pool2d(net, [3, 3], stride=1, scope='pool5') + + # Additional SSD blocks. + # Block 6: let's dilate the hell out of it! + net = slim.conv2d(net, 1024, [3, 3], rate=6, scope='conv6') + end_points['block6'] = net + net = tf.layers.dropout(net, rate=dropout_keep_prob, training=is_training) + # Block 7: 1x1 conv. Because the fuck. + net = slim.conv2d(net, 1024, [1, 1], scope='conv7') + end_points['block7'] = net + net = tf.layers.dropout(net, rate=dropout_keep_prob, training=is_training) + + # Block 8/9/10/11: 1x1 and 3x3 convolutions stride 2 (except lasts). + end_point = 'block8' + with tf.variable_scope(end_point): + net = slim.conv2d(net, 256, [1, 1], scope='conv1x1') + net = custom_layers.pad2d(net, pad=(1, 1)) + net = slim.conv2d(net, 512, [3, 3], stride=2, scope='conv3x3', padding='VALID') + end_points[end_point] = net + end_point = 'block9' + with tf.variable_scope(end_point): + net = slim.conv2d(net, 128, [1, 1], scope='conv1x1') + net = custom_layers.pad2d(net, pad=(1, 1)) + net = slim.conv2d(net, 256, [3, 3], stride=2, scope='conv3x3', padding='VALID') + end_points[end_point] = net + end_point = 'block10' + with tf.variable_scope(end_point): + net = slim.conv2d(net, 128, [1, 1], scope='conv1x1') + net = slim.conv2d(net, 256, [3, 3], scope='conv3x3', padding='VALID') + end_points[end_point] = net + end_point = 'block11' + with tf.variable_scope(end_point): + net = slim.conv2d(net, 128, [1, 1], scope='conv1x1') + net = slim.conv2d(net, 256, [3, 3], scope='conv3x3', padding='VALID') + end_points[end_point] = net + + # Prediction and localisations layers. + predictions = [] + logits = [] + localisations = [] + for i, layer in enumerate(feat_layers): + with tf.variable_scope(layer + '_box'): + p, l = ssd_multibox_layer(end_points[layer], + num_classes, + anchor_sizes[i], + anchor_ratios[i], + normalizations[i]) + predictions.append(prediction_fn(p)) + logits.append(p) + localisations.append(l) + + return predictions, localisations, logits, end_points +ssd_net.default_image_size = 300 + + +def ssd_arg_scope(weight_decay=0.0005, data_format='NHWC'): + """Defines the VGG arg scope. + + Args: + weight_decay: The l2 regularization coefficient. + + Returns: + An arg_scope. + """ + with slim.arg_scope([slim.conv2d, slim.fully_connected], + activation_fn=tf.nn.relu, + weights_regularizer=slim.l2_regularizer(weight_decay), + weights_initializer=tf.contrib.layers.xavier_initializer(), + biases_initializer=tf.zeros_initializer()): + with slim.arg_scope([slim.conv2d, slim.max_pool2d], + padding='SAME', + data_format=data_format): + with slim.arg_scope([custom_layers.pad2d, + custom_layers.l2_normalization, + custom_layers.channel_to_last], + data_format=data_format) as sc: + return sc + + +# =========================================================================== # +# Caffe scope: importing weights at initialization. +# =========================================================================== # +def ssd_arg_scope_caffe(caffe_scope): + """Caffe scope definition. + + Args: + caffe_scope: Caffe scope object with loaded weights. + + Returns: + An arg_scope. + """ + # Default network arg scope. + with slim.arg_scope([slim.conv2d], + activation_fn=tf.nn.relu, + weights_initializer=caffe_scope.conv_weights_init(), + biases_initializer=caffe_scope.conv_biases_init()): + with slim.arg_scope([slim.fully_connected], + activation_fn=tf.nn.relu): + with slim.arg_scope([custom_layers.l2_normalization], + scale_initializer=caffe_scope.l2_norm_scale_init()): + with slim.arg_scope([slim.conv2d, slim.max_pool2d], + padding='SAME') as sc: + return sc + + +# =========================================================================== # +# SSD loss function. +# =========================================================================== # +def ssd_losses(logits, localisations, + gclasses, glocalisations, gscores, + match_threshold=0.5, + negative_ratio=3., + alpha=1., + label_smoothing=0., + device='/cpu:0', + scope=None): + with tf.name_scope(scope, 'ssd_losses'): + lshape = tfe.get_shape(logits[0], 5) + num_classes = lshape[-1] + batch_size = lshape[0] + + # Flatten out all vectors! + flogits = [] + fgclasses = [] + fgscores = [] + flocalisations = [] + fglocalisations = [] + for i in range(len(logits)): + flogits.append(tf.reshape(logits[i], [-1, num_classes])) + fgclasses.append(tf.reshape(gclasses[i], [-1])) + fgscores.append(tf.reshape(gscores[i], [-1])) + flocalisations.append(tf.reshape(localisations[i], [-1, 4])) + fglocalisations.append(tf.reshape(glocalisations[i], [-1, 4])) + # And concat the crap! + logits = tf.concat(flogits, axis=0) + gclasses = tf.concat(fgclasses, axis=0) + gscores = tf.concat(fgscores, axis=0) + localisations = tf.concat(flocalisations, axis=0) + glocalisations = tf.concat(fglocalisations, axis=0) + dtype = logits.dtype + + # Compute positive matching mask... + pmask = gscores > match_threshold + fpmask = tf.cast(pmask, dtype) + n_positives = tf.reduce_sum(fpmask) + + # Hard negative mining... + no_classes = tf.cast(pmask, tf.int32) + predictions = slim.softmax(logits) + nmask = tf.logical_and(tf.logical_not(pmask), + gscores > -0.5) + fnmask = tf.cast(nmask, dtype) + nvalues = tf.where(nmask, + predictions[:, 0], + 1. - fnmask) + nvalues_flat = tf.reshape(nvalues, [-1]) + # Number of negative entries to select. + max_neg_entries = tf.cast(tf.reduce_sum(fnmask), tf.int32) + n_neg = tf.cast(negative_ratio * n_positives, tf.int32) + batch_size + n_neg = tf.minimum(n_neg, max_neg_entries) + + val, idxes = tf.nn.top_k(-nvalues_flat, k=n_neg) + max_hard_pred = -val[-1] + # Final negative mask. + nmask = tf.logical_and(nmask, nvalues < max_hard_pred) + fnmask = tf.cast(nmask, dtype) + + batch_float = tf.cast(batch_size, tf.float32) + + # Add cross-entropy loss. + with tf.name_scope('cross_entropy_pos'): + cross_entropy_pos_loss = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits, + labels=gclasses) + cross_entropy_pos_loss = tf.divide(tf.reduce_sum(cross_entropy_pos_loss * fpmask), batch_float, name='value') + tf.losses.add_loss(cross_entropy_pos_loss) + + with tf.name_scope('cross_entropy_neg'): + cross_entropy_neg_loss = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits, + labels=no_classes) + cross_entropy_neg_loss = tf.divide(tf.reduce_sum(cross_entropy_neg_loss * fnmask), batch_float, name='value') + tf.losses.add_loss(cross_entropy_neg_loss) + + # Add localization loss: smooth L1, L2, ... + with tf.name_scope('localization'): + # Weights Tensor: positive mask + random negative. + weights = tf.expand_dims(alpha * fpmask, axis=-1) + localization_loss = custom_layers.abs_smooth(localisations - glocalisations) + localization_loss = tf.divide(tf.reduce_sum(localization_loss * weights), batch_float, name='value') + tf.losses.add_loss(localization_loss) + + regularization_losses = tf.get_collection(tf.GraphKeys.REGULARIZATION_LOSSES) + all_losses = [cross_entropy_neg_loss, cross_entropy_pos_loss, localization_loss] + (regularization_losses if regularization_losses else []) + return tf.add_n(all_losses) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py new file mode 100644 index 00000000..3ba75b6a --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py @@ -0,0 +1,24 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""TF Extended: additional metrics. +""" + +# pylint: disable=unused-import,line-too-long,g-importing-member,wildcard-import +from tfextended.metrics import * +from tfextended.tensors import * +from tfextended.bboxes import * +from tfextended.image import * +from tfextended.math import * + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py new file mode 100644 index 00000000..0689b295 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py @@ -0,0 +1,508 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""TF Extended: additional bounding boxes methods. +""" +import numpy as np +import tensorflow as tf + +from tfextended import tensors as tfe_tensors +from tfextended import math as tfe_math + + +# =========================================================================== # +# Standard boxes algorithms. +# =========================================================================== # +def bboxes_sort_all_classes(classes, scores, bboxes, top_k=400, scope=None): + """Sort bounding boxes by decreasing order and keep only the top_k. + Assume the input Tensors mix-up objects with different classes. + Assume a batch-type input. + + Args: + classes: Batch x N Tensor containing integer classes. + scores: Batch x N Tensor containing float scores. + bboxes: Batch x N x 4 Tensor containing boxes coordinates. + top_k: Top_k boxes to keep. + Return: + classes, scores, bboxes: Sorted tensors of shape Batch x Top_k. + """ + with tf.name_scope(scope, 'bboxes_sort', [classes, scores, bboxes]): + scores, idxes = tf.nn.top_k(scores, k=top_k, sorted=True) + + # Trick to be able to use tf.gather: map for each element in the batch. + def fn_gather(classes, bboxes, idxes): + cl = tf.gather(classes, idxes) + bb = tf.gather(bboxes, idxes) + return [cl, bb] + r = tf.map_fn(lambda x: fn_gather(x[0], x[1], x[2]), + [classes, bboxes, idxes], + dtype=[classes.dtype, bboxes.dtype], + parallel_iterations=10, + back_prop=False, + swap_memory=False, + infer_shape=True) + classes = r[0] + bboxes = r[1] + return classes, scores, bboxes + + +def bboxes_sort(scores, bboxes, top_k=400, scope=None): + """Sort bounding boxes by decreasing order and keep only the top_k. + If inputs are dictionnaries, assume every key is a different class. + Assume a batch-type input. + + Args: + scores: Batch x N Tensor/Dictionary containing float scores. + bboxes: Batch x N x 4 Tensor/Dictionary containing boxes coordinates. + top_k: Top_k boxes to keep. + Return: + scores, bboxes: Sorted Tensors/Dictionaries of shape Batch x Top_k x 1|4. + """ + # Dictionaries as inputs. + if isinstance(scores, dict) or isinstance(bboxes, dict): + with tf.name_scope(scope, 'bboxes_sort_dict'): + d_scores = {} + d_bboxes = {} + for c in scores.keys(): + s, b = bboxes_sort(scores[c], bboxes[c], top_k=top_k) + d_scores[c] = s + d_bboxes[c] = b + return d_scores, d_bboxes + + # Tensors inputs. + with tf.name_scope(scope, 'bboxes_sort', [scores, bboxes]): + # Sort scores... + scores, idxes = tf.nn.top_k(scores, k=top_k, sorted=True) + + # Trick to be able to use tf.gather: map for each element in the first dim. + def fn_gather(bboxes, idxes): + bb = tf.gather(bboxes, idxes) + return [bb] + r = tf.map_fn(lambda x: fn_gather(x[0], x[1]), + [bboxes, idxes], + dtype=[bboxes.dtype], + parallel_iterations=10, + back_prop=False, + swap_memory=False, + infer_shape=True) + bboxes = r[0] + return scores, bboxes + + +def bboxes_clip(bbox_ref, bboxes, scope=None): + """Clip bounding boxes to a reference box. + Batch-compatible if the first dimension of `bbox_ref` and `bboxes` + can be broadcasted. + + Args: + bbox_ref: Reference bounding box. Nx4 or 4 shaped-Tensor; + bboxes: Bounding boxes to clip. Nx4 or 4 shaped-Tensor or dictionary. + Return: + Clipped bboxes. + """ + # Bboxes is dictionary. + if isinstance(bboxes, dict): + with tf.name_scope(scope, 'bboxes_clip_dict'): + d_bboxes = {} + for c in bboxes.keys(): + d_bboxes[c] = bboxes_clip(bbox_ref, bboxes[c]) + return d_bboxes + + # Tensors inputs. + with tf.name_scope(scope, 'bboxes_clip'): + # Easier with transposed bboxes. Especially for broadcasting. + bbox_ref = tf.transpose(bbox_ref) + bboxes = tf.transpose(bboxes) + # Intersection bboxes and reference bbox. + ymin = tf.maximum(bboxes[0], bbox_ref[0]) + xmin = tf.maximum(bboxes[1], bbox_ref[1]) + ymax = tf.minimum(bboxes[2], bbox_ref[2]) + xmax = tf.minimum(bboxes[3], bbox_ref[3]) + # Double check! Empty boxes when no-intersection. + ymin = tf.minimum(ymin, ymax) + xmin = tf.minimum(xmin, xmax) + bboxes = tf.transpose(tf.stack([ymin, xmin, ymax, xmax], axis=0)) + return bboxes + + +def bboxes_resize(bbox_ref, bboxes, name=None): + """Resize bounding boxes based on a reference bounding box, + assuming that the latter is [0, 0, 1, 1] after transform. Useful for + updating a collection of boxes after cropping an image. + """ + # Bboxes is dictionary. + if isinstance(bboxes, dict): + with tf.name_scope(name, 'bboxes_resize_dict'): + d_bboxes = {} + for c in bboxes.keys(): + d_bboxes[c] = bboxes_resize(bbox_ref, bboxes[c]) + return d_bboxes + + # Tensors inputs. + with tf.name_scope(name, 'bboxes_resize'): + # Translate. + v = tf.stack([bbox_ref[0], bbox_ref[1], bbox_ref[0], bbox_ref[1]]) + bboxes = bboxes - v + # Scale. + s = tf.stack([bbox_ref[2] - bbox_ref[0], + bbox_ref[3] - bbox_ref[1], + bbox_ref[2] - bbox_ref[0], + bbox_ref[3] - bbox_ref[1]]) + bboxes = bboxes / s + return bboxes + + +def bboxes_nms(scores, bboxes, nms_threshold=0.5, keep_top_k=200, scope=None): + """Apply non-maximum selection to bounding boxes. In comparison to TF + implementation, use classes information for matching. + Should only be used on single-entries. Use batch version otherwise. + + Args: + scores: N Tensor containing float scores. + bboxes: N x 4 Tensor containing boxes coordinates. + nms_threshold: Matching threshold in NMS algorithm; + keep_top_k: Number of total object to keep after NMS. + Return: + classes, scores, bboxes Tensors, sorted by score. + Padded with zero if necessary. + """ + with tf.name_scope(scope, 'bboxes_nms_single', [scores, bboxes]): + # Apply NMS algorithm. + idxes = tf.image.non_max_suppression(bboxes, scores, + keep_top_k, nms_threshold) + scores = tf.gather(scores, idxes) + bboxes = tf.gather(bboxes, idxes) + # Pad results. + scores = tfe_tensors.pad_axis(scores, 0, keep_top_k, axis=0) + bboxes = tfe_tensors.pad_axis(bboxes, 0, keep_top_k, axis=0) + return scores, bboxes + + +def bboxes_nms_batch(scores, bboxes, nms_threshold=0.5, keep_top_k=200, + scope=None): + """Apply non-maximum selection to bounding boxes. In comparison to TF + implementation, use classes information for matching. + Use only on batched-inputs. Use zero-padding in order to batch output + results. + + Args: + scores: Batch x N Tensor/Dictionary containing float scores. + bboxes: Batch x N x 4 Tensor/Dictionary containing boxes coordinates. + nms_threshold: Matching threshold in NMS algorithm; + keep_top_k: Number of total object to keep after NMS. + Return: + scores, bboxes Tensors/Dictionaries, sorted by score. + Padded with zero if necessary. + """ + # Dictionaries as inputs. + if isinstance(scores, dict) or isinstance(bboxes, dict): + with tf.name_scope(scope, 'bboxes_nms_batch_dict'): + d_scores = {} + d_bboxes = {} + for c in scores.keys(): + s, b = bboxes_nms_batch(scores[c], bboxes[c], + nms_threshold=nms_threshold, + keep_top_k=keep_top_k) + d_scores[c] = s + d_bboxes[c] = b + return d_scores, d_bboxes + + # Tensors inputs. + with tf.name_scope(scope, 'bboxes_nms_batch'): + r = tf.map_fn(lambda x: bboxes_nms(x[0], x[1], + nms_threshold, keep_top_k), + (scores, bboxes), + dtype=(scores.dtype, bboxes.dtype), + parallel_iterations=10, + back_prop=False, + swap_memory=False, + infer_shape=True) + scores, bboxes = r + return scores, bboxes + + +# def bboxes_fast_nms(classes, scores, bboxes, +# nms_threshold=0.5, eta=3., num_classes=21, +# pad_output=True, scope=None): +# with tf.name_scope(scope, 'bboxes_fast_nms', +# [classes, scores, bboxes]): + +# nms_classes = tf.zeros((0,), dtype=classes.dtype) +# nms_scores = tf.zeros((0,), dtype=scores.dtype) +# nms_bboxes = tf.zeros((0, 4), dtype=bboxes.dtype) + + +def bboxes_matching(label, scores, bboxes, + glabels, gbboxes, gdifficults, + matching_threshold=0.5, scope=None): + """Matching a collection of detected boxes with groundtruth values. + Does not accept batched-inputs. + The algorithm goes as follows: for every detected box, check + if one grountruth box is matching. If none, then considered as False Positive. + If the grountruth box is already matched with another one, it also counts + as a False Positive. We refer the Pascal VOC documentation for the details. + + Args: + rclasses, rscores, rbboxes: N(x4) Tensors. Detected objects, sorted by score; + glabels, gbboxes: Groundtruth bounding boxes. May be zero padded, hence + zero-class objects are ignored. + matching_threshold: Threshold for a positive match. + Return: Tuple of: + n_gbboxes: Scalar Tensor with number of groundtruth boxes (may difer from + size because of zero padding). + tp_match: (N,)-shaped boolean Tensor containing with True Positives. + fp_match: (N,)-shaped boolean Tensor containing with False Positives. + """ + with tf.name_scope(scope, 'bboxes_matching_single', + [scores, bboxes, glabels, gbboxes]): + rsize = tf.size(scores) + rshape = tf.shape(scores) + rlabel = tf.cast(label, glabels.dtype) + # Number of groundtruth boxes. + gdifficults = tf.cast(gdifficults, tf.bool) + n_gbboxes = tf.count_nonzero(tf.logical_and(tf.equal(glabels, label), + tf.logical_not(gdifficults))) + # Grountruth matching arrays. + gmatch = tf.zeros(tf.shape(glabels), dtype=tf.bool) + grange = tf.range(tf.size(glabels), dtype=tf.int32) + # True/False positive matching TensorArrays. + sdtype = tf.bool + ta_tp_bool = tf.TensorArray(sdtype, size=rsize, dynamic_size=False, infer_shape=True) + ta_fp_bool = tf.TensorArray(sdtype, size=rsize, dynamic_size=False, infer_shape=True) + + # Loop over returned objects. + def m_condition(i, ta_tp, ta_fp, gmatch): + r = tf.less(i, rsize) + return r + + def m_body(i, ta_tp, ta_fp, gmatch): + # Jaccard score with groundtruth bboxes. + rbbox = bboxes[i] + jaccard = bboxes_jaccard(rbbox, gbboxes) + jaccard = jaccard * tf.cast(tf.equal(glabels, rlabel), dtype=jaccard.dtype) + + # Best fit, checking it's above threshold. + idxmax = tf.cast(tf.argmax(jaccard, axis=0), tf.int32) + jcdmax = jaccard[idxmax] + match = jcdmax > matching_threshold + existing_match = gmatch[idxmax] + not_difficult = tf.logical_not(gdifficults[idxmax]) + + # TP: match & no previous match and FP: previous match | no match. + # If difficult: no record, i.e FP=False and TP=False. + tp = tf.logical_and(not_difficult, + tf.logical_and(match, tf.logical_not(existing_match))) + ta_tp = ta_tp.write(i, tp) + fp = tf.logical_and(not_difficult, + tf.logical_or(existing_match, tf.logical_not(match))) + ta_fp = ta_fp.write(i, fp) + # Update grountruth match. + mask = tf.logical_and(tf.equal(grange, idxmax), + tf.logical_and(not_difficult, match)) + gmatch = tf.logical_or(gmatch, mask) + + return [i+1, ta_tp, ta_fp, gmatch] + # Main loop definition. + i = 0 + [i, ta_tp_bool, ta_fp_bool, gmatch] = \ + tf.while_loop(m_condition, m_body, + [i, ta_tp_bool, ta_fp_bool, gmatch], + parallel_iterations=1, + back_prop=False) + # TensorArrays to Tensors and reshape. + tp_match = tf.reshape(ta_tp_bool.stack(), rshape) + fp_match = tf.reshape(ta_fp_bool.stack(), rshape) + + # Some debugging information... + # tp_match = tf.Print(tp_match, + # [n_gbboxes, + # tf.reduce_sum(tf.cast(tp_match, tf.int64)), + # tf.reduce_sum(tf.cast(fp_match, tf.int64)), + # tf.reduce_sum(tf.cast(gmatch, tf.int64))], + # 'Matching (NG, TP, FP, GM): ') + return n_gbboxes, tp_match, fp_match + + +def bboxes_matching_batch(labels, scores, bboxes, + glabels, gbboxes, gdifficults, + matching_threshold=0.5, scope=None): + """Matching a collection of detected boxes with groundtruth values. + Batched-inputs version. + + Args: + rclasses, rscores, rbboxes: BxN(x4) Tensors. Detected objects, sorted by score; + glabels, gbboxes: Groundtruth bounding boxes. May be zero padded, hence + zero-class objects are ignored. + matching_threshold: Threshold for a positive match. + Return: Tuple or Dictionaries with: + n_gbboxes: Scalar Tensor with number of groundtruth boxes (may difer from + size because of zero padding). + tp: (B, N)-shaped boolean Tensor containing with True Positives. + fp: (B, N)-shaped boolean Tensor containing with False Positives. + """ + # Dictionaries as inputs. + if isinstance(scores, dict) or isinstance(bboxes, dict): + with tf.name_scope(scope, 'bboxes_matching_batch_dict'): + d_n_gbboxes = {} + d_tp = {} + d_fp = {} + for c in labels: + n, tp, fp, _ = bboxes_matching_batch(c, scores[c], bboxes[c], + glabels, gbboxes, gdifficults, + matching_threshold) + d_n_gbboxes[c] = n + d_tp[c] = tp + d_fp[c] = fp + return d_n_gbboxes, d_tp, d_fp, scores + + with tf.name_scope(scope, 'bboxes_matching_batch', + [scores, bboxes, glabels, gbboxes]): + r = tf.map_fn(lambda x: bboxes_matching(labels, x[0], x[1], + x[2], x[3], x[4], + matching_threshold), + (scores, bboxes, glabels, gbboxes, gdifficults), + dtype=(tf.int64, tf.bool, tf.bool), + parallel_iterations=10, + back_prop=False, + swap_memory=True, + infer_shape=True) + return r[0], r[1], r[2], scores + + +# =========================================================================== # +# Some filteting methods. +# =========================================================================== # +def bboxes_filter_center(labels, bboxes, margins=[0., 0., 0., 0.], + scope=None): + """Filter out bounding boxes whose center are not in + the rectangle [0, 0, 1, 1] + margins. The margin Tensor + can be used to enforce or loosen this condition. + + Return: + labels, bboxes: Filtered elements. + """ + with tf.name_scope(scope, 'bboxes_filter', [labels, bboxes]): + cy = (bboxes[:, 0] + bboxes[:, 2]) / 2. + cx = (bboxes[:, 1] + bboxes[:, 3]) / 2. + mask = tf.greater(cy, margins[0]) + mask = tf.logical_and(mask, tf.greater(cx, margins[1])) + mask = tf.logical_and(mask, tf.less(cx, 1. + margins[2])) + mask = tf.logical_and(mask, tf.less(cx, 1. + margins[3])) + # Boolean masking... + labels = tf.boolean_mask(labels, mask) + bboxes = tf.boolean_mask(bboxes, mask) + return labels, bboxes + + +def bboxes_filter_overlap(labels, bboxes, + threshold=0.5, assign_negative=False, + scope=None): + """Filter out bounding boxes based on (relative )overlap with reference + box [0, 0, 1, 1]. Remove completely bounding boxes, or assign negative + labels to the one outside (useful for latter processing...). + + Return: + labels, bboxes: Filtered (or newly assigned) elements. + """ + with tf.name_scope(scope, 'bboxes_filter', [labels, bboxes]): + scores = bboxes_intersection(tf.constant([0, 0, 1, 1], bboxes.dtype), + bboxes) + mask = scores > threshold + if assign_negative: + labels = tf.where(mask, labels, -labels) + # bboxes = tf.where(mask, bboxes, bboxes) + else: + labels = tf.boolean_mask(labels, mask) + bboxes = tf.boolean_mask(bboxes, mask) + return labels, bboxes + + +def bboxes_filter_labels(labels, bboxes, + out_labels=[], num_classes=np.inf, + scope=None): + """Filter out labels from a collection. Typically used to get + of DontCare elements. Also remove elements based on the number of classes. + + Return: + labels, bboxes: Filtered elements. + """ + with tf.name_scope(scope, 'bboxes_filter_labels', [labels, bboxes]): + mask = tf.greater_equal(labels, num_classes) + for l in labels: + mask = tf.logical_and(mask, tf.not_equal(labels, l)) + labels = tf.boolean_mask(labels, mask) + bboxes = tf.boolean_mask(bboxes, mask) + return labels, bboxes + + +# =========================================================================== # +# Standard boxes computation. +# =========================================================================== # +def bboxes_jaccard(bbox_ref, bboxes, name=None): + """Compute jaccard score between a reference box and a collection + of bounding boxes. + + Args: + bbox_ref: (N, 4) or (4,) Tensor with reference bounding box(es). + bboxes: (N, 4) Tensor, collection of bounding boxes. + Return: + (N,) Tensor with Jaccard scores. + """ + with tf.name_scope(name, 'bboxes_jaccard'): + # Should be more efficient to first transpose. + bboxes = tf.transpose(bboxes) + bbox_ref = tf.transpose(bbox_ref) + # Intersection bbox and volume. + int_ymin = tf.maximum(bboxes[0], bbox_ref[0]) + int_xmin = tf.maximum(bboxes[1], bbox_ref[1]) + int_ymax = tf.minimum(bboxes[2], bbox_ref[2]) + int_xmax = tf.minimum(bboxes[3], bbox_ref[3]) + h = tf.maximum(int_ymax - int_ymin, 0.) + w = tf.maximum(int_xmax - int_xmin, 0.) + # Volumes. + inter_vol = h * w + union_vol = -inter_vol \ + + (bboxes[2] - bboxes[0]) * (bboxes[3] - bboxes[1]) \ + + (bbox_ref[2] - bbox_ref[0]) * (bbox_ref[3] - bbox_ref[1]) + jaccard = tfe_math.safe_divide(inter_vol, union_vol, 'jaccard') + return jaccard + + +def bboxes_intersection(bbox_ref, bboxes, name=None): + """Compute relative intersection between a reference box and a + collection of bounding boxes. Namely, compute the quotient between + intersection area and box area. + + Args: + bbox_ref: (N, 4) or (4,) Tensor with reference bounding box(es). + bboxes: (N, 4) Tensor, collection of bounding boxes. + Return: + (N,) Tensor with relative intersection. + """ + with tf.name_scope(name, 'bboxes_intersection'): + # Should be more efficient to first transpose. + bboxes = tf.transpose(bboxes) + bbox_ref = tf.transpose(bbox_ref) + # Intersection bbox and volume. + int_ymin = tf.maximum(bboxes[0], bbox_ref[0]) + int_xmin = tf.maximum(bboxes[1], bbox_ref[1]) + int_ymax = tf.minimum(bboxes[2], bbox_ref[2]) + int_xmax = tf.minimum(bboxes[3], bbox_ref[3]) + h = tf.maximum(int_ymax - int_ymin, 0.) + w = tf.maximum(int_xmax - int_xmin, 0.) + # Volumes. + inter_vol = h * w + bboxes_vol = (bboxes[2] - bboxes[0]) * (bboxes[3] - bboxes[1]) + scores = tfe_math.safe_divide(inter_vol, bboxes_vol, 'intersection') + return scores diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/image.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/image.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py new file mode 100644 index 00000000..2e5359c5 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py @@ -0,0 +1,63 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""TF Extended: additional math functions. +""" +import tensorflow as tf + +from tensorflow.python.framework import ops + +def safe_divide(numerator, denominator, name): + """Divides two values, returning 0 if the denominator is <= 0. + Args: + numerator: A real `Tensor`. + denominator: A real `Tensor`, with dtype matching `numerator`. + name: Name for the returned op. + Returns: + 0 if `denominator` <= 0, else `numerator` / `denominator` + """ + return tf.where( + tf.greater(denominator, 0), + tf.divide(numerator, denominator), + tf.zeros_like(numerator), + name=name) + + +def cummax(x, reverse=False, name=None): + """Compute the cumulative maximum of the tensor `x` along `axis`. This + operation is similar to the more classic `cumsum`. Only support 1D Tensor + for now. + + Args: + x: A `Tensor`. Must be one of the following types: `float32`, `float64`, + `int64`, `int32`, `uint8`, `uint16`, `int16`, `int8`, `complex64`, + `complex128`, `qint8`, `quint8`, `qint32`, `half`. + axis: A `Tensor` of type `int32` (default: 0). + reverse: A `bool` (default: False). + name: A name for the operation (optional). + Returns: + A `Tensor`. Has the same type as `x`. + """ + with ops.name_scope(name, "Cummax", [x]) as name: + x = ops.convert_to_tensor(x, name="x") + # Not very optimal: should directly integrate reverse into tf.scan. + if reverse: + x = tf.reverse(x, axis=[0]) + # 'Accumlating' maximum: ensure it is always increasing. + cmax = tf.scan(tf.maximum, x, + initializer=None, parallel_iterations=1, + back_prop=False, swap_memory=False) + if reverse: + cmax = tf.reverse(cmax, axis=[0]) + return cmax diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py new file mode 100644 index 00000000..42895291 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py @@ -0,0 +1,397 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""TF Extended: additional metrics. +""" +import tensorflow as tf +import numpy as np + +from tensorflow.contrib.framework.python.ops import variables as contrib_variables +from tensorflow.python.framework import dtypes +from tensorflow.python.framework import ops +from tensorflow.python.ops import array_ops +from tensorflow.python.ops import math_ops +from tensorflow.python.ops import nn +from tensorflow.python.ops import state_ops +from tensorflow.python.ops import variable_scope +from tensorflow.python.ops import variables + +from tfextended import math as tfe_math + + +# =========================================================================== # +# TensorFlow utils +# =========================================================================== # +def _create_local(name, shape, collections=None, validate_shape=False, + dtype=dtypes.float32): + """Creates a new local variable. + Args: + name: The name of the new or existing variable. + shape: Shape of the new or existing variable. + collections: A list of collection names to which the Variable will be added. + validate_shape: Whether to validate the shape of the variable. + dtype: Data type of the variables. + Returns: + The created variable. + """ + # Make sure local variables are added to tf.GraphKeys.LOCAL_VARIABLES + collections = list(collections or []) + collections += [ops.GraphKeys.LOCAL_VARIABLES] + return tf.Variable( + initial_value=array_ops.zeros(shape, dtype=dtype), + name=name, + trainable=False, + collections=collections, + validate_shape=validate_shape) + + +def _safe_div(numerator, denominator, name): + """Divides two values, returning 0 if the denominator is <= 0. + Args: + numerator: A real `Tensor`. + denominator: A real `Tensor`, with dtype matching `numerator`. + name: Name for the returned op. + Returns: + 0 if `denominator` <= 0, else `numerator` / `denominator` + """ + return tf.where( + tf.math.greater(denominator, 0), + tf.math.divide(numerator, denominator), + tf.zeros_like(numerator), + name=name) + + +def _broadcast_weights(weights, values): + """Broadcast `weights` to the same shape as `values`. + This returns a version of `weights` following the same broadcast rules as + `mul(weights, values)`. When computing a weighted average, use this function + to broadcast `weights` before summing them; e.g., + `reduce_sum(w * v) / reduce_sum(_broadcast_weights(w, v))`. + Args: + weights: `Tensor` whose shape is broadcastable to `values`. + values: `Tensor` of any shape. + Returns: + `weights` broadcast to `values` shape. + """ + weights_shape = weights.get_shape() + values_shape = values.get_shape() + if(weights_shape.is_fully_defined() and + values_shape.is_fully_defined() and + weights_shape.is_compatible_with(values_shape)): + return weights + return tf.math.multiply( + weights, array_ops.ones_like(values), name='broadcast_weights') + + +# =========================================================================== # +# TF Extended metrics: TP and FP arrays. +# =========================================================================== # +def precision_recall(num_gbboxes, num_detections, tp, fp, scores, + dtype=tf.float64, scope=None): + """Compute precision and recall from scores, true positives and false + positives booleans arrays + """ + # Input dictionaries: dict outputs as streaming metrics. + if isinstance(scores, dict): + d_precision = {} + d_recall = {} + for c in num_gbboxes.keys(): + scope = 'precision_recall_%s' % c + p, r = precision_recall(num_gbboxes[c], num_detections[c], + tp[c], fp[c], scores[c], + dtype, scope) + d_precision[c] = p + d_recall[c] = r + return d_precision, d_recall + + # Sort by score. + with tf.name_scope(scope, 'precision_recall', + [num_gbboxes, num_detections, tp, fp, scores]): + # Sort detections by score. + scores, idxes = tf.nn.top_k(scores, k=num_detections, sorted=True) + tp = tf.gather(tp, idxes) + fp = tf.gather(fp, idxes) + # Computer recall and precision. + tp = tf.cumsum(tf.cast(tp, dtype), axis=0) + fp = tf.cumsum(tf.cast(fp, dtype), axis=0) + recall = _safe_div(tp, tf.cast(num_gbboxes, dtype), 'recall') + precision = _safe_div(tp, tp + fp, 'precision') + return tf.tuple([precision, recall]) + + +def streaming_tp_fp_arrays(num_gbboxes, tp, fp, scores, + remove_zero_scores=True, + metrics_collections=None, + updates_collections=None, + name=None): + """Streaming computation of True and False Positive arrays. This metrics + also keeps track of scores and number of grountruth objects. + """ + # Input dictionaries: dict outputs as streaming metrics. + if isinstance(scores, dict) or isinstance(fp, dict): + d_values = {} + d_update_ops = {} + for c in num_gbboxes.keys(): + scope = 'streaming_tp_fp_%s' % c + v, up = streaming_tp_fp_arrays(num_gbboxes[c], tp[c], fp[c], scores[c], + remove_zero_scores, + metrics_collections, + updates_collections, + name=scope) + d_values[c] = v + d_update_ops[c] = up + return d_values, d_update_ops + + # Input Tensors... + with variable_scope.variable_scope(name, 'streaming_tp_fp', + [num_gbboxes, tp, fp, scores]): + num_gbboxes = tf.cast(num_gbboxes, dtype=tf.int64) + scores = tf.cast(scores, dtype=tf.float32) + stype = tf.bool + tp = tf.cast(tp, stype) + fp = tf.cast(fp, stype) + # Reshape TP and FP tensors and clean away 0 class values. + scores = tf.reshape(scores, [-1]) + tp = tf.reshape(tp, [-1]) + fp = tf.reshape(fp, [-1]) + # Remove TP and FP both false. + mask = tf.logical_or(tp, fp) + if remove_zero_scores: + rm_threshold = 1e-4 + mask = tf.logical_and(mask, tf.greater(scores, rm_threshold)) + scores = tf.boolean_mask(scores, mask) + tp = tf.boolean_mask(tp, mask) + fp = tf.boolean_mask(fp, mask) + + # Local variables accumlating information over batches. + v_nobjects = _create_local('v_num_gbboxes', shape=[], dtype=tf.int64) + v_ndetections = _create_local('v_num_detections', shape=[], dtype=tf.int32) + v_scores = _create_local('v_scores', shape=[0, ]) + v_tp = _create_local('v_tp', shape=[0, ], dtype=stype) + v_fp = _create_local('v_fp', shape=[0, ], dtype=stype) + + # Update operations. + nobjects_op = state_ops.assign_add(v_nobjects, + tf.reduce_sum(num_gbboxes)) + ndetections_op = state_ops.assign_add(v_ndetections, + tf.size(scores, out_type=tf.int32)) + scores_op = state_ops.assign(v_scores, tf.concat([v_scores, scores], axis=0), + validate_shape=False) + tp_op = state_ops.assign(v_tp, tf.concat([v_tp, tp], axis=0), + validate_shape=False) + fp_op = state_ops.assign(v_fp, tf.concat([v_fp, fp], axis=0), + validate_shape=False) + + # Value and update ops. + val = (v_nobjects, v_ndetections, v_tp, v_fp, v_scores) + with ops.control_dependencies([nobjects_op, ndetections_op, + scores_op, tp_op, fp_op]): + update_op = (nobjects_op, ndetections_op, tp_op, fp_op, scores_op) + + if metrics_collections: + ops.add_to_collections(metrics_collections, val) + if updates_collections: + ops.add_to_collections(updates_collections, update_op) + return val, update_op + + +# =========================================================================== # +# Average precision computations. +# =========================================================================== # +def average_precision_voc12(precision, recall, name=None): + """Compute (interpolated) average precision from precision and recall Tensors. + + The implementation follows Pascal 2012 and ILSVRC guidelines. + See also: https://sanchom.wordpress.com/tag/average-precision/ + """ + with tf.name_scope(name, 'average_precision_voc12', [precision, recall]): + # Convert to float64 to decrease error on Riemann sums. + precision = tf.cast(precision, dtype=tf.float64) + recall = tf.cast(recall, dtype=tf.float64) + + # Add bounds values to precision and recall. + precision = tf.concat([[0.], precision, [0.]], axis=0) + recall = tf.concat([[0.], recall, [1.]], axis=0) + # Ensures precision is increasing in reverse order. + precision = tfe_math.cummax(precision, reverse=True) + + # Riemann sums for estimating the integral. + # mean_pre = (precision[1:] + precision[:-1]) / 2. + mean_pre = precision[1:] + diff_rec = recall[1:] - recall[:-1] + ap = tf.reduce_sum(mean_pre * diff_rec) + return ap + + +def average_precision_voc07(precision, recall, name=None): + """Compute (interpolated) average precision from precision and recall Tensors. + + The implementation follows Pascal 2007 guidelines. + See also: https://sanchom.wordpress.com/tag/average-precision/ + """ + with tf.name_scope(name, 'average_precision_voc07', [precision, recall]): + # Convert to float64 to decrease error on cumulated sums. + precision = tf.cast(precision, dtype=tf.float64) + recall = tf.cast(recall, dtype=tf.float64) + # Add zero-limit value to avoid any boundary problem... + precision = tf.concat([precision, [0.]], axis=0) + recall = tf.concat([recall, [np.inf]], axis=0) + + # Split the integral into 10 bins. + l_aps = [] + for t in np.arange(0., 1.1, 0.1): + mask = tf.greater_equal(recall, t) + v = tf.reduce_max(tf.boolean_mask(precision, mask)) + l_aps.append(v / 11.) + ap = tf.add_n(l_aps) + return ap + + +def precision_recall_values(xvals, precision, recall, name=None): + """Compute values on the precision/recall curve. + + Args: + x: Python list of floats; + precision: 1D Tensor decreasing. + recall: 1D Tensor increasing. + Return: + list of precision values. + """ + with ops.name_scope(name, "precision_recall_values", + [precision, recall]) as name: + # Add bounds values to precision and recall. + precision = tf.concat([[0.], precision, [0.]], axis=0) + recall = tf.concat([[0.], recall, [1.]], axis=0) + precision = tfe_math.cummax(precision, reverse=True) + + prec_values = [] + for x in xvals: + mask = tf.less_equal(recall, x) + val = tf.reduce_min(tf.boolean_mask(precision, mask)) + prec_values.append(val) + return tf.tuple(prec_values) + + +# =========================================================================== # +# TF Extended metrics: old stuff! +# =========================================================================== # +def _precision_recall(n_gbboxes, n_detections, scores, tp, fp, scope=None): + """Compute precision and recall from scores, true positives and false + positives booleans arrays + """ + # Sort by score. + with tf.name_scope(scope, 'prec_rec', [n_gbboxes, scores, tp, fp]): + # Sort detections by score. + scores, idxes = tf.nn.top_k(scores, k=n_detections, sorted=True) + tp = tf.gather(tp, idxes) + fp = tf.gather(fp, idxes) + # Computer recall and precision. + dtype = tf.float64 + tp = tf.cumsum(tf.cast(tp, dtype), axis=0) + fp = tf.cumsum(tf.cast(fp, dtype), axis=0) + recall = _safe_div(tp, tf.cast(n_gbboxes, dtype), 'recall') + precision = _safe_div(tp, tp + fp, 'precision') + + return tf.tuple([precision, recall]) + + +def streaming_precision_recall_arrays(n_gbboxes, rclasses, rscores, + tp_tensor, fp_tensor, + remove_zero_labels=True, + metrics_collections=None, + updates_collections=None, + name=None): + """Streaming computation of precision / recall arrays. This metrics + keeps tracks of boolean True positives and False positives arrays. + """ + with variable_scope.variable_scope(name, 'stream_precision_recall', + [n_gbboxes, rclasses, tp_tensor, fp_tensor]): + n_gbboxes = tf.cast(n_gbboxes, tf.int64) + rclasses = tf.cast(rclasses, tf.int64) + rscores = tf.cast(rscores, tf.float) + + stype = tf.int32 + tp_tensor = tf.cast(tp_tensor, stype) + fp_tensor = tf.cast(fp_tensor, stype) + + # Reshape TP and FP tensors and clean away 0 class values. + rclasses = tf.reshape(rclasses, [-1]) + rscores = tf.reshape(rscores, [-1]) + tp_tensor = tf.reshape(tp_tensor, [-1]) + fp_tensor = tf.reshape(fp_tensor, [-1]) + if remove_zero_labels: + mask = tf.greater(rclasses, 0) + rclasses = tf.boolean_mask(rclasses, mask) + rscores = tf.boolean_mask(rscores, mask) + tp_tensor = tf.boolean_mask(tp_tensor, mask) + fp_tensor = tf.boolean_mask(fp_tensor, mask) + + # Local variables accumlating information over batches. + v_nobjects = _create_local('v_nobjects', shape=[], dtype=tf.int64) + v_ndetections = _create_local('v_ndetections', shape=[], dtype=tf.int32) + v_scores = _create_local('v_scores', shape=[0, ]) + v_tp = _create_local('v_tp', shape=[0, ], dtype=stype) + v_fp = _create_local('v_fp', shape=[0, ], dtype=stype) + + # Update operations. + nobjects_op = state_ops.assign_add(v_nobjects, + tf.reduce_sum(n_gbboxes)) + ndetections_op = state_ops.assign_add(v_ndetections, + tf.size(rscores, out_type=tf.int32)) + scores_op = state_ops.assign(v_scores, tf.concat([v_scores, rscores], axis=0), + validate_shape=False) + tp_op = state_ops.assign(v_tp, tf.concat([v_tp, tp_tensor], axis=0), + validate_shape=False) + fp_op = state_ops.assign(v_fp, tf.concat([v_fp, fp_tensor], axis=0), + validate_shape=False) + + # Precision and recall computations. + # r = _precision_recall(nobjects_op, scores_op, tp_op, fp_op, 'value') + r = _precision_recall(v_nobjects, v_ndetections, v_scores, + v_tp, v_fp, 'value') + + with ops.control_dependencies([nobjects_op, ndetections_op, + scores_op, tp_op, fp_op]): + update_op = _precision_recall(nobjects_op, ndetections_op, + scores_op, tp_op, fp_op, 'update_op') + + # update_op = tf.Print(update_op, + # [tf.reduce_sum(tf.cast(mask, tf.int64)), + # tf.reduce_sum(tf.cast(mask2, tf.int64)), + # tf.reduce_min(rscores), + # tf.reduce_sum(n_gbboxes)], + # 'Metric: ') + # Some debugging stuff! + # update_op = tf.Print(update_op, + # [tf.shape(tp_op), + # tf.reduce_sum(tf.cast(tp_op, tf.int64), axis=0)], + # 'TP and FP shape: ') + # update_op[0] = tf.Print(update_op, + # [nobjects_op], + # '# Groundtruth bboxes: ') + # update_op = tf.Print(update_op, + # [update_op[0][0], + # update_op[0][-1], + # tf.reduce_min(update_op[0]), + # tf.reduce_max(update_op[0]), + # tf.reduce_min(update_op[1]), + # tf.reduce_max(update_op[1])], + # 'Precision and recall :') + + if metrics_collections: + ops.add_to_collections(metrics_collections, r) + if updates_collections: + ops.add_to_collections(updates_collections, update_op) + return r, update_op + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py new file mode 100644 index 00000000..f2d561bc --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py @@ -0,0 +1,95 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +"""TF Extended: additional tensors operations. +""" +import tensorflow as tf + +from tensorflow.contrib.framework.python.ops import variables as contrib_variables +from tensorflow.contrib.metrics.python.ops import set_ops +from tensorflow.python.framework import dtypes +from tensorflow.python.framework import ops +from tensorflow.python.framework import sparse_tensor +from tensorflow.python.ops import array_ops +from tensorflow.python.ops import check_ops +from tensorflow.python.ops import control_flow_ops +from tensorflow.python.ops import math_ops +from tensorflow.python.ops import nn +from tensorflow.python.ops import state_ops +from tensorflow.python.ops import variable_scope +from tensorflow.python.ops import variables + + +def get_shape(x, rank=None): + """Returns the dimensions of a Tensor as list of integers or scale tensors. + + Args: + x: N-d Tensor; + rank: Rank of the Tensor. If None, will try to guess it. + Returns: + A list of `[d1, d2, ..., dN]` corresponding to the dimensions of the + input tensor. Dimensions that are statically known are python integers, + otherwise they are integer scalar tensors. + """ + if x.get_shape().is_fully_defined(): + return x.get_shape().as_list() + else: + static_shape = x.get_shape() + if rank is None: + static_shape = static_shape.as_list() + rank = len(static_shape) + else: + static_shape = x.get_shape().with_rank(rank).as_list() + dynamic_shape = tf.unstack(tf.shape(x), rank) + return [s if s is not None else d + for s, d in zip(static_shape, dynamic_shape)] + + +def pad_axis(x, offset, size, axis=0, name=None): + """Pad a tensor on an axis, with a given offset and output size. + The tensor is padded with zero (i.e. CONSTANT mode). Note that the if the + `size` is smaller than existing size + `offset`, the output tensor + was the latter dimension. + + Args: + x: Tensor to pad; + offset: Offset to add on the dimension chosen; + size: Final size of the dimension. + Return: + Padded tensor whose dimension on `axis` is `size`, or greater if + the input vector was larger. + """ + with tf.name_scope(name, 'pad_axis'): + shape = get_shape(x) + rank = len(shape) + # Padding description. + new_size = tf.maximum(size-offset-shape[axis], 0) + pad1 = tf.stack([0]*axis + [offset] + [0]*(rank-axis-1)) + pad2 = tf.stack([0]*axis + [new_size] + [0]*(rank-axis-1)) + paddings = tf.stack([pad1, pad2], axis=1) + x = tf.pad(x, paddings, mode='CONSTANT') + # Reshape, to get fully defined shape if possible. + # TODO: fix with tf.slice + shape[axis] = size + x = tf.reshape(x, tf.stack(shape)) + return x + + +# def select_at_index(idx, val, t): +# """Return a tensor. +# """ +# idx = tf.expand_dims(tf.expand_dims(idx, 0), 0) +# val = tf.expand_dims(val, 0) +# t = t + tf.scatter_nd(idx, val, tf.shape(t)) +# return t diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py new file mode 100644 index 00000000..c6a46df4 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py @@ -0,0 +1,20 @@ +''' +Endpoint names to look for in the graph +''' + +from anchors import generate_anchors + +feat_layers = generate_anchors.feat_layers +sub_feats = [''] +localizations_names = [f'ssd_300_vgg/{feature}_box/Reshape:0' for feature in feat_layers] + +predictions_names = ['ssd_300_vgg/softmax/Reshape_1:0'] \ + + [f'ssd_300_vgg/softmax_{n}/Reshape_1:0' for n in range(1, len(feat_layers))] + +logit_names = [f'ssd_300_vgg/{feature}_box/Reshape_1:0' for feature in feat_layers] + +endpoint_names = ['ssd_300_vgg/conv1/conv1_2/Relu:0'] \ + + [f'ssd_300_vgg/conv{n}/conv{n}_3/Relu:0' for n in range(4, 6)] \ + + [f'ssd_300_vgg/conv{n}/conv{n}_{n}/Relu:0' for n in range(2, 4)] \ + + [f'ssd_300_vgg/conv{n}/Relu:0' for n in range(6, 8)] \ + + [f'ssd_300_vgg/{feature}/conv3x3/Relu:0' for feature in feat_layers if feature != 'block4' and feature != 'block7'] \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py new file mode 100644 index 00000000..a17fa3c1 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py @@ -0,0 +1,158 @@ +# Copyright 2016 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================= +"""Diverse TensorFlow utils, for training, evaluation and so on! +""" +import os + +import tensorflow as tf + +# =========================================================================== # +# General tools. +# =========================================================================== # +def reshape_list(l, shape=None): + """Reshape list of (list): 1D to 2D or the other way around. + + Args: + l: List or List of list. + shape: 1D or 2D shape. + Return + Reshaped list. + """ + r = [] + if shape is None: + # Flatten everything. + for a in l: + if isinstance(a, (list, tuple)): + r = r + list(a) + else: + r.append(a) + else: + # Reshape to list of list. + i = 0 + for s in shape: + if s == 1: + r.append(l[i]) + else: + r.append(l[i:i+s]) + i += s + return r + +def configure_learning_rate(flags, num_samples_per_epoch, global_step): + """Configures the learning rate. + + Args: + num_samples_per_epoch: The number of samples in each epoch of training. + global_step: The global_step tensor. + Returns: + A `Tensor` representing the learning rate. + """ + decay_steps = int(num_samples_per_epoch / flags.batch_size * + flags.num_epochs_per_decay) + + if flags.learning_rate_decay_type == 'exponential': + return tf.train.exponential_decay(flags.learning_rate, + global_step, + decay_steps, + flags.learning_rate_decay_factor, + staircase=True, + name='exponential_decay_learning_rate') + elif flags.learning_rate_decay_type == 'fixed': + return tf.constant(flags.learning_rate, name='fixed_learning_rate') + elif flags.learning_rate_decay_type == 'polynomial': + return tf.train.polynomial_decay(flags.learning_rate, + global_step, + decay_steps, + flags.end_learning_rate, + power=1.0, + cycle=False, + name='polynomial_decay_learning_rate') + else: + raise ValueError('learning_rate_decay_type [%s] was not recognized', + flags.learning_rate_decay_type) + + +def configure_optimizer(flags, learning_rate): + """Configures the optimizer used for training. + + Args: + learning_rate: A scalar or `Tensor` learning rate. + Returns: + An instance of an optimizer. + """ + if flags.optimizer == 'adadelta': + optimizer = tf.train.AdadeltaOptimizer( + learning_rate, + rho=flags.adadelta_rho, + epsilon=flags.opt_epsilon) + elif flags.optimizer == 'adagrad': + optimizer = tf.train.AdagradOptimizer( + learning_rate, + initial_accumulator_value=flags.adagrad_initial_accumulator_value) + elif flags.optimizer == 'adam': + optimizer = tf.train.AdamOptimizer( + learning_rate, + beta1=flags.adam_beta1, + beta2=flags.adam_beta2, + epsilon=flags.opt_epsilon) + elif flags.optimizer == 'ftrl': + optimizer = tf.train.FtrlOptimizer( + learning_rate, + learning_rate_power=flags.ftrl_learning_rate_power, + initial_accumulator_value=flags.ftrl_initial_accumulator_value, + l1_regularization_strength=flags.ftrl_l1, + l2_regularization_strength=flags.ftrl_l2) + elif flags.optimizer == 'momentum': + optimizer = tf.train.MomentumOptimizer( + learning_rate, + momentum=flags.momentum, + name='Momentum') + elif flags.optimizer == 'rmsprop': + optimizer = tf.train.RMSPropOptimizer( + learning_rate, + decay=flags.rmsprop_decay, + momentum=flags.rmsprop_momentum, + epsilon=flags.opt_epsilon) + elif flags.optimizer == 'sgd': + optimizer = tf.train.GradientDescentOptimizer(learning_rate) + else: + raise ValueError('Optimizer [%s] was not recognized', flags.optimizer) + return optimizer + + +def update_model_scope(var, ckpt_scope, new_scope): + return var.op.name.replace(new_scope,'vgg_16') + + +def get_variables_to_train(flags): + """Returns a list of variables to train. + + Returns: + A list of variables to train by the optimizer. + """ + if flags.trainable_scopes is None: + return tf.trainable_variables() + else: + scopes = [scope.strip() for scope in flags.trainable_scopes.split(',')] + + variables_to_train = [] + for scope in scopes: + variables = tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, scope) + variables_to_train.extend(variables) + return variables_to_train + + +# =========================================================================== # +# Evaluation utils. +# =========================================================================== # diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py new file mode 100644 index 00000000..227655d2 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py @@ -0,0 +1,114 @@ +# Copyright 2017 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== +import cv2 +import random + +import matplotlib.pyplot as plt +import matplotlib.image as mpimg +import matplotlib.cm as mpcm + + +# =========================================================================== # +# Some colormaps. +# =========================================================================== # +def colors_subselect(colors, num_classes=21): + dt = len(colors) // num_classes + sub_colors = [] + for i in range(num_classes): + color = colors[i*dt] + if isinstance(color[0], float): + sub_colors.append([int(c * 255) for c in color]) + else: + sub_colors.append([c for c in color]) + return sub_colors + +colors_plasma = colors_subselect(mpcm.plasma.colors, num_classes=21) +colors_tableau = [(255, 255, 255), (31, 119, 180), (174, 199, 232), (255, 127, 14), (255, 187, 120), + (44, 160, 44), (152, 223, 138), (214, 39, 40), (255, 152, 150), + (148, 103, 189), (197, 176, 213), (140, 86, 75), (196, 156, 148), + (227, 119, 194), (247, 182, 210), (127, 127, 127), (199, 199, 199), + (188, 189, 34), (219, 219, 141), (23, 190, 207), (158, 218, 229)] + + +# =========================================================================== # +# OpenCV drawing. +# =========================================================================== # +def draw_lines(img, lines, color=[255, 0, 0], thickness=2): + """Draw a collection of lines on an image. + """ + for line in lines: + for x1, y1, x2, y2 in line: + cv2.line(img, (x1, y1), (x2, y2), color, thickness) + + +def draw_rectangle(img, p1, p2, color=[255, 0, 0], thickness=2): + cv2.rectangle(img, p1[::-1], p2[::-1], color, thickness) + + +def draw_bbox(img, bbox, shape, label, color=[255, 0, 0], thickness=2): + p1 = (int(bbox[0] * shape[0]), int(bbox[1] * shape[1])) + p2 = (int(bbox[2] * shape[0]), int(bbox[3] * shape[1])) + cv2.rectangle(img, p1[::-1], p2[::-1], color, thickness) + p1 = (p1[0]+15, p1[1]) + cv2.putText(img, str(label), p1[::-1], cv2.FONT_HERSHEY_DUPLEX, 0.5, color, 1) + + +def bboxes_draw_on_img(img, classes, scores, bboxes, colors, thickness=2): + shape = img.shape + for i in range(bboxes.shape[0]): + bbox = bboxes[i] + color = colors[classes[i]] + # Draw bounding box... + p1 = (int(bbox[0] * shape[0]), int(bbox[1] * shape[1])) + p2 = (int(bbox[2] * shape[0]), int(bbox[3] * shape[1])) + cv2.rectangle(img, p1[::-1], p2[::-1], color, thickness) + # Draw text... + s = '%s/%.3f' % (classes[i], scores[i]) + p1 = (p1[0]-5, p1[1]) + cv2.putText(img, s, p1[::-1], cv2.FONT_HERSHEY_DUPLEX, 0.4, color, 1) + + +# =========================================================================== # +# Matplotlib show... +# =========================================================================== # +def plt_bboxes(img, classes, scores, bboxes, figsize=(10,10), linewidth=1.5): + """Visualize bounding boxes. Largely inspired by SSD-MXNET! + """ + fig = plt.figure(figsize=figsize) + plt.imshow(img) + height = img.shape[0] + width = img.shape[1] + colors = dict() + for i in range(classes.shape[0]): + cls_id = int(classes[i]) + if cls_id >= 0: + score = scores[i] + if cls_id not in colors: + colors[cls_id] = (random.random(), random.random(), random.random()) + ymin = int(bboxes[i, 0] * height) + xmin = int(bboxes[i, 1] * width) + ymax = int(bboxes[i, 2] * height) + xmax = int(bboxes[i, 3] * width) + rect = plt.Rectangle((xmin, ymin), xmax - xmin, + ymax - ymin, fill=False, + edgecolor=colors[cls_id], + linewidth=linewidth) + plt.gca().add_patch(rect) + class_name = str(cls_id) + plt.gca().text(xmin, ymin - 2, + '{:s} | {:.3f}'.format(class_name, score), + bbox=dict(facecolor=colors[cls_id], alpha=0.5), + fontsize=12, color='white') + plt.show() From b025816c9264875a4698a0cdf173ccc79b9a0be8 Mon Sep 17 00:00:00 2001 From: fierval Date: Tue, 2 Jul 2019 17:32:56 -0700 Subject: [PATCH 002/248] remove config.json --- .../Finetune VGG SSD-checkpoint.ipynb | 423 ------------------ .../notebooks/Deploy Accelerated.ipynb | 377 +--------------- .../finetune-ssd-vgg/notebooks/config.json | 5 - 3 files changed, 23 insertions(+), 782 deletions(-) delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb deleted file mode 100644 index 075b4ce9..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/.ipynb_checkpoints/Finetune VGG SSD-checkpoint.ipynb +++ /dev/null @@ -1,423 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Finetuning VGG-SSD Object Detection Model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prerequisits for Local Training\n", - "\n", - "* CUDA 10.0, cuDNN 7.4\n", - "* Recent Anaconda environment\n", - "* Tensorflow 1.12+" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# install supported FPGA ML models, including VGG SSD\n", - "# skip if already installed\n", - "!pip install azureml-accel-models\n", - "!pip install -U --ignore-installed tensorflow-gpu==1.13.1" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2\n", - "import os, sys, glob\n", - "import tensorflow as tf\n", - "\n", - "# Tensorflow Finetuning Package\n", - "sys.path.insert(0, os.path.abspath('../tfssd/'))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Import Training / Validation Data\n", - "\n", - "Images are .jpg files and annotations - .xml files in PASCAL VOC format.\n", - "Each image file has a matching annotations file\n", - "\n", - "In this notebook we are looking for gaps on the shelves stocked with different products:" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "import matplotlib.pyplot as plt\n", - "import cv2\n", - "plt.rcParams['figure.figsize'] = 10, 10\n", - "img = cv2.imread('sample.jpg')\n", - "\n", - "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", - "plt.imshow(img)" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "779 images found and 779 matching annotations found.\n" - ] - } - ], - "source": [ - "from dataprep import dataset_utils, pascalvoc_to_tfrecords\n", - "\n", - "data_dir = r'x:\\data\\grocery\\source'\n", - "data_dir_images = os.path.join(data_dir, \"JPEGImages\")\n", - "data_dir_annotations = os.path.join(data_dir, \"Annotations\")\n", - "classes = [\"stockout\"]\n", - "\n", - "images = glob.glob(os.path.join(data_dir_images, \"*.jpg\"))\n", - "annotations = glob.glob(os.path.join(data_dir_annotations, \"*.xml\"))\n", - "\n", - "# check for image and annotations files matching each other\n", - "images, annotations = dataset_utils.check_labelmatch(images, annotations)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Split Into Training and Validation and Create TFRecord Datasets" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - ">> Converting image 1/623WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\dataprep\\pascalvoc_to_tfrecords.py:78: FastGFile.__init__ (from tensorflow.python.platform.gfile) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use tf.gfile.GFile.\n", - ">> Converting image 623/623\n", - "Finished converting the Pascal VOC dataset!\n", - ">> Converting image 156/156\n", - "Finished converting the Pascal VOC dataset!\n", - "['test_0000.tfrecord', 'test_0001.tfrecord', 'train_0000.tfrecord', 'train_0001.tfrecord', 'train_0002.tfrecord', 'train_0003.tfrecord', 'train_0004.tfrecord', 'train_0005.tfrecord', 'train_0006.tfrecord']\n" - ] - } - ], - "source": [ - "from sklearn.model_selection import train_test_split\n", - "\n", - "train_images, test_images, \\\n", - " train_annotations, test_annotations = train_test_split(images, annotations, test_size = .2, random_state = 40)\n", - "\n", - "data_output_dir = os.path.join(data_dir, \"../tfrec\")\n", - "\n", - "pascalvoc_to_tfrecords.run(data_output_dir, classes, train_images, train_annotations, \"train\")\n", - "pascalvoc_to_tfrecords.run(data_output_dir, classes, test_images, test_annotations, \"test\")\n", - "\n", - "print(os.listdir(data_output_dir))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Setup and Run Training/Validation Loops" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Setup Training Data, Import the Model" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "from finetune.train import TrainVggSsd\n", - "from finetune.eval import EvalVggSsd\n", - "\n", - "root_dir = r'x:\\grocery\\azml_ssd_vgg'\n", - "# this is the directory where the original model to be\n", - "# fine-tuned will be delivered and models saved as the training loop runs\n", - "ckpt_dir = root_dir\n", - "\n", - "# get .tfrecord files created in the previous step\n", - "train_files = glob.glob(os.path.join(data_output_dir, \"train_*.tfrecord\"))\n", - "validation_files = glob.glob(os.path.join(data_output_dir, \"test_*.tfrecord\"))\n", - "\n", - "# run for these epochs\n", - "n_epochs = 6" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Training Parameters" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "# steps per training epoch\n", - "num_train_steps=3000\n", - "# batch size. \n", - "batch_size = 2\n", - "# steps to save as a checkpoint\n", - "steps_to_save=3000\n", - "# using Adam optimizer. These are the configurable parameters\n", - "learning_rate = 1e-4\n", - "learning_rate_decay_steps=3000\n", - "learning_rate_decay_value=0.96" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Validation Parameters" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "num_eval_steps=156\n", - "# number of classes. Includes the \"none\" (background) class\n", - "# cannot be more than 21\n", - "num_classes=2" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Run Training Loop" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\datautil\\ssd_vgg_preprocessing.py:213: sample_distorted_bounding_box (from tensorflow.python.ops.image_ops_impl) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "`seed2` arg is deprecated.Use sample_distorted_bounding_box_v2 instead.\n", - "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\ops\\control_flow_ops.py:423: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Colocations handled automatically by placer.\n", - "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\util\\tf_should_use.py:193: initialize_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.\n", - "Instructions for updating:\n", - "Use `tf.variables_initializer` instead.\n", - "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\training\\saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use standard file APIs to check for files with this prefix.\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "3000: loss: 44.949, avg per step: 0.048 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8393\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "6000: loss: 16.735, avg per step: 0.054 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8477\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "9000: loss: 17.331, avg per step: 0.048 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8689\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "12000: loss: 28.185, avg per step: 0.048 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8711\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "15000: loss: 38.361, avg per step: 0.051 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8753\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "18000: loss: 43.066, avg per step: 0.051 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8769\n" - ] - } - ], - "source": [ - "for _ in range(n_epochs):\n", - "\n", - " with TrainVggSsd(ckpt_dir, train_files, \n", - " num_steps=num_train_steps, \n", - " steps_to_save=steps_to_save, \n", - " batch_size = batch_size,\n", - " learning_rate=learning_rate,\n", - " learning_rate_decay_steps=learning_rate_decay_steps, \n", - " learning_rate_decay_value=learning_rate_decay_value) as trainer:\n", - " trainer.train()\n", - "\n", - " with EvalVggSsd(ckpt_dir, validation_files, \n", - " num_steps=num_eval_steps, \n", - " num_classes=num_classes) as evaluator:\n", - " evaluator.eval() " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Visualize Training Results" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n" - ] - } - ], - "source": [ - "import matplotlib.pyplot as plt\n", - "from finetune.inference import InferVggSsd\n", - "\n", - "plt.rcParams[\"figure.figsize\"] = 15, 15\n", - "path = 'X:/data/grocery/dataset/test/JPEGImages'\n", - "image_names = sorted(os.listdir(path))\n", - "infer = InferVggSsd(ckpt_dir, gpu=False)" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "

" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 695 ms\n" - ] - } - ], - "source": [ - "%%time\n", - "classes, scores, boxes = infer.infer_file(os.path.join(path, image_names[-21]), visualize=True)" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "metadata": {}, - "outputs": [], - "source": [ - "infer.close()" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.7" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb index 93313f7a..0345cbb5 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb @@ -9,7 +9,7 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -36,20 +36,9 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "brainwave\n", - "MSRBrainwave\n", - "westus2\n", - "93177b32-3f08-4530-a61e-d1775d2480ad\n" - ] - } - ], + "outputs": [], "source": [ "from azureml.core import Workspace\n", "\n", @@ -66,20 +55,9 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "True" - ] - }, - "execution_count": 4, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "from azureml.core.model import Model\n", "from azureml.core.image import Image\n", @@ -96,156 +74,9 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/ops/tensor_array_ops.py:162: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Colocations handled automatically by placer.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/ops/tensor_array_ops.py:162: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Colocations handled automatically by placer.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/azureml/accel/models/utils.py:55: to_float (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use tf.cast instead.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/azureml/accel/models/utils.py:55: to_float (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use tf.cast instead.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use standard file APIs to check for files with this prefix.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/training/saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use standard file APIs to check for files with this prefix.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "INFO:tensorflow:Restoring parameters from /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/vggssd/1.1.3/ssd_vgg_bw-18000\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO - Restoring parameters from /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/vggssd/1.1.3/ssd_vgg_bw-18000\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From /data/home/boris/git/neal/Brainwave-Open-Source/tfssd/finetune/model_saver.py:60: simple_save (from tensorflow.python.saved_model.simple_save) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.simple_save.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "WARNING - From /data/home/boris/git/neal/Brainwave-Open-Source/tfssd/finetune/model_saver.py:60: simple_save (from tensorflow.python.saved_model.simple_save) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.simple_save.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/saved_model/signature_def_utils_impl.py:205: build_tensor_info (from tensorflow.python.saved_model.utils_impl) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.utils.build_tensor_info or tf.compat.v1.saved_model.build_tensor_info.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "WARNING - From /data/anaconda/envs/bw/lib/python3.6/site-packages/tensorflow/python/saved_model/signature_def_utils_impl.py:205: build_tensor_info (from tensorflow.python.saved_model.utils_impl) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "This function will only be available through the v1 compatibility library as tf.compat.v1.saved_model.utils.build_tensor_info or tf.compat.v1.saved_model.build_tensor_info.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "INFO:tensorflow:Assets added to graph.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO - Assets added to graph.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "INFO:tensorflow:No assets to write.\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO - No assets to write.\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "INFO:tensorflow:SavedModel written to: /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/ssdvgg/saved_model.pb\n" - ] - }, - { - "name": "stderr", - "output_type": "stream", - "text": [ - "INFO - SavedModel written to: /datadrive/Dropbox/neal/kroger/azml_ssd_vgg/ssdvgg/saved_model.pb\n" - ] - } - ], + "outputs": [], "source": [ "with SaverVggSsd(model_ckpt_dir) as saver:\n", " saver.save_for_deployment(model_save_path)\n", @@ -254,118 +85,11 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": { "scrolled": false }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Registering model ssdvgg\n", - "Successfully registered: \tssdvgg\tNone\t8\t\n", - "\n", - "Running..............\n", - "Succeeded\n", - "Operation c0325e8b-db6e-4c55-8467-f95e66756447 completed, operation state \"Succeeded\"\n", - "sas url to download model conversion logs https://brainwave2118624577.blob.core.windows.net/azureml/LocalUpload/e1dfae56cd184146bd84bf7f81b9f310/conversion_log?sv=2018-03-28&sr=b&sig=iSjWt3MJ3po%2FcmmvbMevqr0TmaGVzXLveJMdOECwg1k%3D&st=2019-06-28T22%3A50%3A07Z&se=2019-06-29T07%3A00%3A07Z&sp=r\n", - "[2019-06-28 22:58:57Z]: Starting model conversion process\n", - "[2019-06-28 22:58:57Z]: Downloading model for conversion\n", - "[2019-06-28 22:59:01Z]: Converting model\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,064 [INFO ] Parsing conversion options\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,064 [DEBUG] Options: {'toolVersion': '1.0', 'toolName': 'fpga', 'input_node_names': 'Placeholder:0', 'output_node_names': 'ssd_300_vgg/block4_box/Reshape_1:0,ssd_300_vgg/block7_box/Reshape_1:0,ssd_300_vgg/block8_box/Reshape_1:0,ssd_300_vgg/block9_box/Reshape_1:0,ssd_300_vgg/block10_box/Reshape_1:0,ssd_300_vgg/block11_box/Reshape_1:0,ssd_300_vgg/block4_box/Reshape:0,ssd_300_vgg/block7_box/Reshape:0,ssd_300_vgg/block8_box/Reshape:0,ssd_300_vgg/block9_box/Reshape:0,ssd_300_vgg/block10_box/Reshape:0,ssd_300_vgg/block11_box/Reshape:0', 'require_fpga_conversion': 'True', 'sourceModelFlavor': 'tf', 'targetModelFlavor': 'accelonnx', 'unpack': 'true'}\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] Begin splitting graph ...\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] input path => /tmp/4tij54cf.rue/input\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] output path => /tmp/tmpdw6oebvf\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [INFO ] Splitting requires FPGA only\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,065 [DEBUG] Descending into /tmp/4tij54cf.rue/input/ssdvgg\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,066 [INFO ] Found model dir /tmp/4tij54cf.rue/input/ssdvgg\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,066 [INFO ] Trying to load input directory with SavedModelLoader\n", - "[2019-06-28 22:59:04Z]: converter err: 2019-06-28 22:59:04.083268: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,380 [INFO ] Restoring parameters from /tmp/4tij54cf.rue/input/ssdvgg/variables/variables\n", - "[2019-06-28 22:59:04Z]: converter err: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", - "[2019-06-28 22:59:04Z]: converter err: from ._conv import register_converters as _register_converters\n", - "[2019-06-28 22:59:04Z]: converter err: INFO:tensorflow:Restoring parameters from /tmp/4tij54cf.rue/input/ssdvgg/variables/variables\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,589 [INFO ] Attempt splitting into ONNX FPGA Graph\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,590 [INFO ] Splitting into 3 stage pipeline\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,591 [INFO ] Found brainwave model of type BrainwaveModel.Ssd_Vgg\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,621 [INFO ] Adding stage TensorFlow Placeholder:0 --> brainwave_ssd_vgg_1_Version_0.1_input_1\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,622 [INFO ] Adding stage Brainwave brainwave_ssd_vgg_1_Version_0.1_input_1 --> ssd_300_vgg/conv4/conv4_3/Relu\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,622 [INFO ] Adding stage TensorFlow ssd_300_vgg/conv4/conv4_3/Relu --> ssd_300_vgg/block4_box/Reshape_1:0,ssd_300_vgg/block7_box/Reshape_1:0,ssd_300_vgg/block8_box/Reshape_1:0,ssd_300_vgg/block9_box/Reshape_1:0,ssd_300_vgg/block10_box/Reshape_1:0,ssd_300_vgg/block11_box/Reshape_1:0,ssd_300_vgg/block4_box/Reshape:0,ssd_300_vgg/block7_box/Reshape:0,ssd_300_vgg/block8_box/Reshape:0,ssd_300_vgg/block9_box/Reshape:0,ssd_300_vgg/block10_box/Reshape:0,ssd_300_vgg/block11_box/Reshape:0\n", - "[2019-06-28 22:59:04Z]: converter err: INFO:tensorflow:Froze 0 variables.\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,642 [INFO ] Froze 0 variables.\n", - "[2019-06-28 22:59:04Z]: converter err: 2019-06-28 22:59:04.705279: W tensorflow/core/graph/graph_constructor.cc:1265] Importing a graph with a lower producer version 26 into an existing graph with producer version 27. Shape inference will have run different parts of the graph with different producer versions.\n", - "[2019-06-28 22:59:04Z]: converter std: Converted 0 variables to const ops.\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,847 [INFO ] There are 71 variable names in original BW graph\n", - "[2019-06-28 22:59:04Z]: converter std: 2019-06-28 22:59:04,847 [INFO ] Found 71 matching variables in existing session\n", - "[2019-06-28 22:59:05Z]: converter err: INFO:tensorflow:Restoring parameters from /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,276 [INFO ] Restoring parameters from /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg\n", - "[2019-06-28 22:59:05Z]: converter err: INFO:tensorflow:Froze 20 variables.\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,486 [INFO ] Froze 20 variables.\n", - "[2019-06-28 22:59:05Z]: converter std: Converted 20 variables to const ops.\n", - "[2019-06-28 22:59:05Z]: converter err: INFO:tensorflow:Froze 51 variables.\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,671 [INFO ] Froze 51 variables.\n", - "[2019-06-28 22:59:05Z]: converter std: Converted 51 variables to const ops.\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,851 [INFO ] Parse manifest file generated by splitter\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,852 [INFO ] Processing tensorflow stage\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,852 [INFO ] Processing brainwave stage\n", - "[2019-06-28 22:59:05Z]: converter std: 2019-06-28 22:59:05,852 [INFO ] Invoking python3 /converter/external/brainwave/tensorflow_params_to_caffe.py -n VGG -c /data/models/ssd_vgg/model.prototxt -t /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg -o /tmp/tmpc1hitvmk/model_caffe.out -p ssd_300_vgg\n", - "[2019-06-28 22:59:10Z]: converter std: 2019-06-28 22:59:10,280 [INFO ] Brainwave compiler output:\n", - "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.369659] Execution started.\n", - "[2019-06-28 22:59:10Z]: converter std: 2019-06-28 22:59:08.391148: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", - "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.397032] Importing tensorflow graph... Done.\n", - "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.669752] Restoring variables... Done.\n", - "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:08.840631] Converting to Caffe... Done.\n", - "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:09.844696] Serializing protocol buffer output... Done.\n", - "[2019-06-28 22:59:10Z]: converter std: [2019-06-28 22:59:10.037971] Execution finished. Execution took 1.668296 seconds\n", - "[2019-06-28 22:59:10Z]: converter std: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", - "[2019-06-28 22:59:10Z]: converter std: from ._conv import register_converters as _register_converters\n", - "[2019-06-28 22:59:10Z]: converter std: 2019-06-28 22:59:10,281 [INFO ] Invoking python3 /converter/external/brainwave/generate_firmware.py --output_format=code -i /data/models/ssd_vgg/model.prototxt -mp /tmp/tmpc1hitvmk/model_caffe.out -if /tmp/tmpc1hitvmk/subgraph.graphir -o /tmp/tmpc1hitvmk/firmware.c -off --v3_isa --double_buffer_parameters --back_propagate_strides --prefetch_matrices --super_prefetch_MRF --super_prefetch_MRF_lookahead=2 --spatial_pool_interleave=3 --use_genericConvolution --use_expander --min_zeros=226 --ivrf_size=12999 --asvrf1_size=5100 --merge_large_layers --allow_interleaved_output\n", - "[2019-06-28 22:59:33Z]: converter std: 2019-06-28 22:59:33,517 [INFO ] Brainslice firmware generator output:\n", - "[2019-06-28 22:59:33Z]: converter std: error:\n", - "[2019-06-28 22:59:33Z]: converter std: WARNING: Logging before InitGoogleLogging() is written to STDERR\n", - "[2019-06-28 22:59:33Z]: converter std: W0628 22:59:17.475265 416 upgrade_proto.cpp:72] Note that future Caffe releases will only support input layers and not input fields.\n", - "[2019-06-28 22:59:33Z]: converter std: 2019-06-28 22:59:32.348985: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", - "[2019-06-28 22:59:33Z]: converter std: /converter/external/brainwave/output_printer.py:4200: SyntaxWarning: assertion is always true, perhaps remove parentheses?\n", - "[2019-06-28 22:59:33Z]: converter std: assert(len(sp)==2, \"Shape is expected as 2D\")\n", - "[2019-06-28 22:59:33Z]: converter std: /converter/external/brainwave/output_printer.py:4222: SyntaxWarning: assertion is always true, perhaps remove parentheses?\n", - "[2019-06-28 22:59:33Z]: converter std: assert(len(sp)==1, \"Shape is expected as 1D\")\n", - "[2019-06-28 22:59:33Z]: converter std: /converter/external/brainwave/output_printer.py:4284: SyntaxWarning: assertion is always true, perhaps remove parentheses?\n", - "[2019-06-28 22:59:33Z]: converter std: assert(len(outputVal[1])==1, \"Shape is expected as 1D\")\n", - "[2019-06-28 22:59:33Z]: converter std: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", - "[2019-06-28 22:59:33Z]: converter std: from ._conv import register_converters as _register_converters\n", - "[2019-06-28 22:59:33Z]: converter std: 2019-06-28 22:59:33,518 [INFO ] Invoking python3 /converter/external/tf2onnx/tf2onnx/convert.py --input /tmp/tmpdw6oebvf/bw_checkpoints/ssd_vgg.frozen.pb --inputs brainwave_ssd_vgg_1_Version_0.1_input_1:0 --output /tmp/tmpc1hitvmk/ssd_vgg.onnx --outputs ssd_300_vgg/conv4/conv4_3/Relu:0 --continue_on_error --custom-rewriter BrainSlice --rewriter-config /data/models/ssd_vgg/converter.json --weight-path /tmp/tmpc1hitvmk --firmware-path /data/firmware/brainslice-v3-3.0.4/ssd_vgg\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,679 [INFO ] Onnx converter output:\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35.115539: I tensorflow/tools/graph_transforms/transform_graph.cc:317] Applying fold_batch_norms\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35.143892: I tensorflow/tools/graph_transforms/transform_graph.cc:317] Applying fold_old_batch_norms\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35.248886: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA\n", - "[2019-06-28 22:59:35Z]: converter std: /usr/lib/python3/dist-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.\n", - "[2019-06-28 22:59:35Z]: converter std: from ._conv import register_converters as _register_converters\n", - "[2019-06-28 22:59:35Z]: converter std: /usr/lib/python3.6/re.py:212: FutureWarning: split() requires a non-empty pattern match.\n", - "[2019-06-28 22:59:35Z]: converter std: return _compile(pattern, flags).split(string, maxsplit)\n", - "[2019-06-28 22:59:35Z]: converter std: INFO:tf2onnx.optimizer.transpose_optimizer: 0 transpose op(s) left, ops diff after transpose optimization: Counter({'Const': 0, 'Placeholder': 0, 'Pad': 0, 'BrainSlice': 0, 'Relu': 0, 'Identity': 0})\n", - "[2019-06-28 22:59:35Z]: converter std: using tensorflow=1.12.0, onnx=1.3.0, opset=7, tfonnx=0.4.0.fork/6bf11d\n", - "[2019-06-28 22:59:35Z]: converter std: Complete successfully, the onnx model is generated at /tmp/tmpc1hitvmk/ssd_vgg.onnx\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,679 [INFO ] Moving /tmp/tmpc1hitvmk/ssd_vgg.onnx ==> /tmp/4tij54cf.rue/output/ssd_vgg.onnx\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,755 [INFO ] Renaming the file /tmp/4tij54cf.rue/output/brainwave.cab ==> /tmp/4tij54cf.rue/output/brainwave.cab\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,755 [INFO ] Processing tensorflow stage\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,860 [INFO ] Saving conversion status\n", - "[2019-06-28 22:59:35Z]: converter std: 2019-06-28 22:59:35,860 [INFO ] Conversion completed\n", - "[2019-06-28 22:59:36Z]: Uploading conversion results\n", - "[2019-06-28 22:59:47Z]: Conversion completed with result Success\n" - ] - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "Successfully converted: ssdvgg.8.accelonnx aml://asset/73aa8bf040694c34b2c40d0d9b602f9c 1 ssdvgg.8.accelonnx:1 2019-06-28 23:00:06.480438+00:00 \n", - "\n" - ] - } - ], + "outputs": [], "source": [ "registered_model = Model.register(workspace = ws,\n", " model_path = model_save_path,\n", @@ -386,22 +110,9 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Creating image\n", - "Running..............\n", - "Succeeded\n", - "Image creation operation finished for image ssdvgg-image:3, operation \"Succeeded\"\n", - "Created AccelContainerImage: ssdvgg-image Succeeded brainwave56a8d7eb.azurecr.io/ssdvgg-image:3\n", - "\n" - ] - } - ], + "outputs": [], "source": [ "# Package into AccelContainerImage\n", "image_config = AccelContainerImage.image_configuration()\n", @@ -424,7 +135,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -445,20 +156,9 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Creating....................................................................................................................................................................................................\n", - "SucceededProvisioning operation finished, operation \"Succeeded\"\n", - "Succeeded\n", - "None\n" - ] - } - ], + "outputs": [], "source": [ "aks_target.wait_for_completion(show_output=True)\n", "print(aks_target.provisioning_state)\n", @@ -474,19 +174,9 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Creating service\n", - "Running................................\n", - "SucceededAKS service creation operation finished, operation \"Succeeded\"\n" - ] - } - ], + "outputs": [], "source": [ "from azureml.core.webservice import Webservice, AksWebservice\n", "\n", @@ -508,7 +198,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -518,17 +208,9 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "address=52.247.236.16, port=80, ssl=False, name=my-aks-service\n" - ] - } - ], + "outputs": [], "source": [ "address = aks_service.scoring_uri\n", "ssl_enabled = address.startswith(\"https\")\n", @@ -539,7 +221,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -553,7 +235,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -563,22 +245,9 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import glob\n", "\n", diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json deleted file mode 100644 index 01a6b095..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/config.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "subscription_id": "93177b32-3f08-4530-a61e-d1775d2480ad", - "resource_group": "MSRBrainwave", - "workspace_name": "brainwave" -} \ No newline at end of file From c41f449208cf786b36dfac1833b5cd50cb76c53f Mon Sep 17 00:00:00 2001 From: Trevor Bye Date: Thu, 18 Jul 2019 10:27:21 -0700 Subject: [PATCH 003/248] adding new notebook --- tutorials/imgs/experiment_main.png | Bin 0 -> 64013 bytes tutorials/imgs/flow2.png | Bin 0 -> 106278 bytes tutorials/imgs/model_download.png | Bin 0 -> 19356 bytes .../tutorial-1st-experiment-sdk-train.ipynb | 385 ++++++++++++++++++ 4 files changed, 385 insertions(+) create mode 100644 tutorials/imgs/experiment_main.png create mode 100644 tutorials/imgs/flow2.png create mode 100644 tutorials/imgs/model_download.png create mode 100644 tutorials/tutorial-1st-experiment-sdk-train.ipynb diff --git a/tutorials/imgs/experiment_main.png b/tutorials/imgs/experiment_main.png new file mode 100644 index 0000000000000000000000000000000000000000..bb3e51af7a2143483e9c9e53e5d3c2efa2d0b2ec GIT binary patch literal 64013 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 W1s&R&$TP{JiU0yHtrSs6NB`MH@KPQC literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml new file mode 100644 index 00000000..ac9cfdb3 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml @@ -0,0 +1,38 @@ + + runfourftbackdropvalidation + 1556331893.711867.jpg + F:\runfourftbackdropvalidation\1556331893.711867.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 156 + 87 + 205 + 166 + + + + stockout + Unspecified + 0 + 0 + + 25 + 107 + 62 + 175 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.jpg new file mode 100644 index 0000000000000000000000000000000000000000..950ad85a77cf895f5e2506788e83c5d662d02c18 GIT binary patch literal 36901 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 VpD?DCUs@=j1Q8EfD58)b|Jh8YD8m2% literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml new file mode 100644 index 00000000..835cdf12 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml @@ -0,0 +1,50 @@ + + runfourftbackdropvalidation + 1556331899.4232247.jpg + F:\runfourftbackdropvalidation\1556331899.4232247.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 248 + 79 + 299 + 160 + + + + stockout + Unspecified + 0 + 0 + + 158 + 84 + 201 + 163 + + + + stockout + Unspecified + 0 + 0 + + 25 + 98 + 67 + 175 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.jpg new file mode 100644 index 0000000000000000000000000000000000000000..d94691ec311e2f2db53d235e722075fd6dc47d2e GIT binary patch literal 36101 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 AAOHXW literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml new file mode 100644 index 00000000..240d4a3b --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml @@ -0,0 +1,62 @@ + + runfourftbackdropvalidation + 1556331908.5590174.jpg + F:\runfourftbackdropvalidation\1556331908.5590174.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 363 + 78 + 433 + 165 + + + + stockout + Unspecified + 0 + 0 + + 249 + 79 + 306 + 163 + + + + stockout + Unspecified + 0 + 0 + + 156 + 81 + 204 + 164 + + + + stockout + Unspecified + 0 + 0 + + 24 + 102 + 66 + 177 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7f250a14456c51711d708b204330bbbbb85c517f GIT binary patch literal 35340 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 + runfourftbackdropvalidation + 1556331915.4019358.jpg + F:\runfourftbackdropvalidation\1556331915.4019358.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 363 + 70 + 432 + 163 + + + + stockout + Unspecified + 0 + 0 + + 248 + 78 + 307 + 162 + + + + stockout + Unspecified + 0 + 0 + + 157 + 87 + 201 + 162 + + + + stockout + Unspecified + 0 + 0 + + 22 + 105 + 62 + 175 + + + + stockout + Unspecified + 0 + 0 + + 309 + 177 + 374 + 246 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ce7dab2497cb4ad3a6a34db843425501e4d69cf7 GIT binary patch literal 34798 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 + runfourftbackdropvalidation + 1556331924.4523242.jpg + F:\runfourftbackdropvalidation\1556331924.4523242.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 362 + 70 + 435 + 162 + + + + stockout + Unspecified + 0 + 0 + + 252 + 80 + 304 + 160 + + + + stockout + Unspecified + 0 + 0 + + 152 + 81 + 205 + 162 + + + + stockout + Unspecified + 0 + 0 + + 23 + 99 + 67 + 175 + + + + stockout + Unspecified + 0 + 0 + + 180 + 179 + 248 + 249 + + + + stockout + Unspecified + 0 + 0 + + 309 + 177 + 373 + 245 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c0240b27b56a74db76f8e251502fbf308c9a492b GIT binary patch literal 29760 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

^)o?^3 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 yQ$Qme41t + runfourftbackdropvalidation + 1556331925.6244981.jpg + F:/runfourftbackdropvalidation/1556331925.6244981.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 365 + 67 + 432 + 163 + + + + stockout + Unspecified + 0 + 0 + + 252 + 72 + 300 + 160 + + + + stockout + Unspecified + 0 + 0 + + 31 + 94 + 70 + 172 + + + + stockout + Unspecified + 0 + 0 + + 310 + 175 + 379 + 246 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7bba24af4fd1875628172aa5d63243a13f98601d GIT binary patch literal 34495 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 CR42{= literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml new file mode 100644 index 00000000..bef6629f --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml @@ -0,0 +1,146 @@ + + runfourftbackdropvalidation + 1556331967.5599852.jpg + F:\runfourftbackdropvalidation\1556331967.5599852.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 368 + 71 + 432 + 164 + + + + stockout + Unspecified + 0 + 0 + + 253 + 76 + 301 + 160 + + + + stockout + Unspecified + 0 + 0 + + 157 + 81 + 203 + 162 + + + + stockout + Unspecified + 0 + 0 + + 309 + 177 + 373 + 247 + + + + stockout + Unspecified + 0 + 0 + + 180 + 180 + 246 + 246 + + + + stockout + Unspecified + 0 + 0 + + 59 + 185 + 115 + 254 + + + + stockout + Unspecified + 0 + 0 + + 127 + 262 + 194 + 311 + + + + stockout + Unspecified + 0 + 0 + + 228 + 262 + 285 + 306 + + + + stockout + Unspecified + 0 + 0 + + 336 + 260 + 386 + 306 + + + + stockout + Unspecified + 0 + 0 + + 324 + 319 + 368 + 354 + + + + stockout + Unspecified + 0 + 0 + + 25 + 103 + 64 + 176 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.jpg new file mode 100644 index 0000000000000000000000000000000000000000..25023982284d4fb7af116aab376b9c41156d3b7e GIT binary patch literal 32772 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 literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml new file mode 100644 index 00000000..570ced67 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml @@ -0,0 +1,158 @@ + + runfourftbackdropvalidation + 1556331976.6628668.jpg + F:\runfourftbackdropvalidation\1556331976.6628668.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 368 + 66 + 427 + 163 + + + + stockout + Unspecified + 0 + 0 + + 250 + 81 + 307 + 161 + + + + stockout + Unspecified + 0 + 0 + + 159 + 83 + 205 + 164 + + + + stockout + Unspecified + 0 + 0 + + 24 + 103 + 64 + 173 + + + + stockout + Unspecified + 0 + 0 + + 56 + 188 + 122 + 254 + + + + stockout + Unspecified + 0 + 0 + + 172 + 180 + 249 + 247 + + + + stockout + Unspecified + 0 + 0 + + 309 + 177 + 375 + 246 + + + + stockout + Unspecified + 0 + 0 + + 336 + 258 + 389 + 306 + + + + stockout + Unspecified + 0 + 0 + + 330 + 318 + 368 + 354 + + + + stockout + Unspecified + 0 + 0 + + 132 + 264 + 197 + 310 + + + + stockout + Unspecified + 0 + 0 + + 229 + 258 + 285 + 307 + + + + stockout + Unspecified + 0 + 0 + + 227 + 321 + 284 + 356 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.jpg new file mode 100644 index 0000000000000000000000000000000000000000..866cfda44c7c4d14c7b11c7940f1e91a8047f89c GIT binary patch literal 32023 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 W5Gd|xtgGuq6aa!HJ?Nr}0RP!O;htas literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml new file mode 100644 index 00000000..1d047093 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml @@ -0,0 +1,146 @@ + + Converted JPG with xml runfourftbackdropvalidation + 1556331980.031822.jpg + C:\Users\ZachPerkel\Desktop\Kroger_Olympus\Converted JPG with xml runfourftbackdropvalidation\1556331980.031822.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 367 + 70 + 429 + 164 + + + + stockout + Unspecified + 0 + 0 + + 252 + 81 + 307 + 160 + + + + stockout + Unspecified + 0 + 0 + + 153 + 84 + 206 + 163 + + + + stockout + Unspecified + 0 + 0 + + 23 + 94 + 64 + 176 + + + + stockout + Unspecified + 0 + 0 + + 180 + 181 + 246 + 246 + + + + stockout + Unspecified + 0 + 0 + + 309 + 178 + 375 + 246 + + + + stockout + Unspecified + 0 + 0 + + 337 + 259 + 388 + 306 + + + + stockout + Unspecified + 0 + 0 + + 231 + 260 + 284 + 310 + + + + stockout + Unspecified + 0 + 0 + + 228 + 320 + 284 + 357 + + + + stockout + Unspecified + 0 + 0 + + 330 + 319 + 368 + 354 + + + + stockout + Unspecified + 0 + 0 + + 67 + 187 + 114 + 250 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c7ab33020cc96bfaeefdd8aafc7764c0ed84dd50 GIT binary patch literal 32280 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 Z05k!Qybscmm2uXJC;_4+qKYX2|Jnb~AxZ!M literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml new file mode 100644 index 00000000..02a2952c --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml @@ -0,0 +1,170 @@ + + runfourftbackdropvalidation + 1556331991.2960002.jpg + F:\runfourftbackdropvalidation\1556331991.2960002.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 251 + 77 + 303 + 163 + + + + stockout + Unspecified + 0 + 0 + + 367 + 68 + 425 + 164 + + + + stockout + Unspecified + 0 + 0 + + 152 + 83 + 203 + 164 + + + + stockout + Unspecified + 0 + 0 + + 24 + 98 + 62 + 175 + + + + stockout + Unspecified + 0 + 0 + + 182 + 179 + 245 + 245 + + + + stockout + Unspecified + 0 + 0 + + 307 + 175 + 376 + 247 + + + + stockout + Unspecified + 0 + 0 + + 58 + 184 + 119 + 255 + + + + stockout + Unspecified + 0 + 0 + + 132 + 265 + 197 + 311 + + + + stockout + Unspecified + 0 + 0 + + 227 + 262 + 281 + 309 + + + + stockout + Unspecified + 0 + 0 + + 336 + 258 + 389 + 309 + + + + stockout + Unspecified + 0 + 0 + + 322 + 318 + 372 + 354 + + + + stockout + Unspecified + 0 + 0 + + 226 + 320 + 290 + 360 + + + + stockout + Unspecified + 0 + 0 + + 111 + 326 + 187 + 364 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b9fec1b631c981e861a8f093a408092a2d8d3faf GIT binary patch literal 32917 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 literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml new file mode 100644 index 00000000..61ba9454 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml @@ -0,0 +1,158 @@ + + runfourftbackdropvalidation + 1556332002.5715525.jpg + F:\runfourftbackdropvalidation\1556332002.5715525.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 153 + 81 + 202 + 165 + + + + stockout + Unspecified + 0 + 0 + + 252 + 73 + 305 + 161 + + + + stockout + Unspecified + 0 + 0 + + 368 + 69 + 434 + 165 + + + + stockout + Unspecified + 0 + 0 + + 308 + 177 + 372 + 246 + + + + stockout + Unspecified + 0 + 0 + + 178 + 179 + 245 + 247 + + + + stockout + Unspecified + 0 + 0 + + 60 + 182 + 115 + 256 + + + + stockout + Unspecified + 0 + 0 + + 133 + 264 + 194 + 308 + + + + stockout + Unspecified + 0 + 0 + + 228 + 261 + 282 + 309 + + + + stockout + Unspecified + 0 + 0 + + 338 + 258 + 389 + 307 + + + + stockout + Unspecified + 0 + 0 + + 326 + 318 + 372 + 354 + + + + stockout + Unspecified + 0 + 0 + + 226 + 321 + 286 + 358 + + + + stockout + Unspecified + 0 + 0 + + 115 + 325 + 181 + 364 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0bf52db42b931b476f9b73422d7c26e07e69e35b GIT binary patch literal 33654 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

&{Sd1_!EK#IxN+V=Bf^wAN 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 + runfourftbackdropvalidation + 1556332004.8638506.jpg + F:\runfourftbackdropvalidation\1556332004.8638506.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 157 + 85 + 203 + 162 + + + + stockout + Unspecified + 0 + 0 + + 252 + 71 + 305 + 160 + + + + stockout + Unspecified + 0 + 0 + + 363 + 66 + 434 + 166 + + + + stockout + Unspecified + 0 + 0 + + 310 + 175 + 373 + 245 + + + + stockout + Unspecified + 0 + 0 + + 183 + 177 + 247 + 246 + + + + stockout + Unspecified + 0 + 0 + + 62 + 188 + 113 + 240 + + + + stockout + Unspecified + 0 + 0 + + 230 + 259 + 281 + 308 + + + + stockout + Unspecified + 0 + 0 + + 337 + 258 + 386 + 305 + + + + stockout + Unspecified + 0 + 0 + + 323 + 316 + 373 + 353 + + + + stockout + Unspecified + 0 + 0 + + 227 + 318 + 289 + 357 + + + + stockout + Unspecified + 0 + 0 + + 150 + 262 + 197 + 311 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.jpg new file mode 100644 index 0000000000000000000000000000000000000000..56c61bb9e3e0d027a34746d157783c9ec4f82dba GIT binary patch literal 33354 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 uBKeiZqDFomt_Om?DvV8sKbizOZ~(9SuBa + runfourftbackdropvalidation + 1556332011.6702049.jpg + F:\runfourftbackdropvalidation\1556332011.6702049.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 157 + 83 + 202 + 162 + + + + stockout + Unspecified + 0 + 0 + + 253 + 79 + 302 + 160 + + + + stockout + Unspecified + 0 + 0 + + 361 + 66 + 430 + 162 + + + + stockout + Unspecified + 0 + 0 + + 310 + 175 + 374 + 246 + + + + stockout + Unspecified + 0 + 0 + + 176 + 178 + 246 + 247 + + + + stockout + Unspecified + 0 + 0 + + 59 + 187 + 116 + 256 + + + + stockout + Unspecified + 0 + 0 + + 127 + 262 + 197 + 311 + + + + stockout + Unspecified + 0 + 0 + + 227 + 260 + 281 + 308 + + + + stockout + Unspecified + 0 + 0 + + 332 + 256 + 384 + 307 + + + + stockout + Unspecified + 0 + 0 + + 317 + 317 + 374 + 353 + + + + stockout + Unspecified + 0 + 0 + + 229 + 314 + 289 + 356 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f061a283ada7416780b049f73803e7c02572c423 GIT binary patch literal 33260 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 + runfourftbackdropvalidation + 1556332026.4848802.jpg + F:\runfourftbackdropvalidation\1556332026.4848802.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 153 + 83 + 205 + 165 + + + + stockout + Unspecified + 0 + 0 + + 250 + 78 + 305 + 160 + + + + stockout + Unspecified + 0 + 0 + + 360 + 68 + 436 + 166 + + + + stockout + Unspecified + 0 + 0 + + 307 + 177 + 375 + 246 + + + + stockout + Unspecified + 0 + 0 + + 178 + 178 + 246 + 250 + + + + stockout + Unspecified + 0 + 0 + + 50 + 185 + 114 + 255 + + + + stockout + Unspecified + 0 + 0 + + 133 + 263 + 197 + 313 + + + + stockout + Unspecified + 0 + 0 + + 229 + 260 + 281 + 307 + + + + stockout + Unspecified + 0 + 0 + + 337 + 259 + 390 + 306 + + + + stockout + Unspecified + 0 + 0 + + 228 + 321 + 285 + 358 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e04fd48d2f9d189079bf8c116994dd13b6a64ced GIT binary patch literal 32806 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 Z3P_@gViX~z+Cid + runfourftbackdropvalidation + 1556332027.6408842.jpg + F:\runfourftbackdropvalidation\1556332027.6408842.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 155 + 84 + 203 + 164 + + + + stockout + Unspecified + 0 + 0 + + 251 + 72 + 303 + 163 + + + + stockout + Unspecified + 0 + 0 + + 361 + 66 + 435 + 165 + + + + stockout + Unspecified + 0 + 0 + + 308 + 179 + 375 + 242 + + + + stockout + Unspecified + 0 + 0 + + 178 + 175 + 246 + 243 + + + + stockout + Unspecified + 0 + 0 + + 59 + 187 + 115 + 255 + + + + stockout + Unspecified + 0 + 0 + + 133 + 264 + 197 + 311 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7455cf530ca9687bd611da4d16505e1b288b0541 GIT binary patch literal 33510 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 $MGK_AH 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 F|JgSkQ>Fj_ literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml new file mode 100644 index 00000000..df588de5 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml @@ -0,0 +1,122 @@ + + runfourftbackdropvalidation + 1556332033.268194.jpg + F:\runfourftbackdropvalidation\1556332033.268194.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 360 + 68 + 436 + 166 + + + + stockout + Unspecified + 0 + 0 + + 250 + 71 + 307 + 164 + + + + stockout + Unspecified + 0 + 0 + + 154 + 83 + 204 + 162 + + + + stockout + Unspecified + 0 + 0 + + 56 + 187 + 115 + 256 + + + + stockout + Unspecified + 0 + 0 + + 178 + 180 + 247 + 248 + + + + stockout + Unspecified + 0 + 0 + + 308 + 177 + 372 + 245 + + + + stockout + Unspecified + 0 + 0 + + 336 + 259 + 388 + 308 + + + + stockout + Unspecified + 0 + 0 + + 227 + 258 + 282 + 309 + + + + stockout + Unspecified + 0 + 0 + + 130 + 263 + 195 + 310 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.jpg new file mode 100644 index 0000000000000000000000000000000000000000..102df8339c4581ea370f8d575fa46503e27d7b7c GIT binary patch literal 33839 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 YD4+(6cQlNn)`} literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml new file mode 100644 index 00000000..655a33df --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml @@ -0,0 +1,110 @@ + + runfourftbackdropvalidation + 1556332040.04427.jpg + F:\runfourftbackdropvalidation\1556332040.04427.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 155 + 83 + 203 + 165 + + + + stockout + Unspecified + 0 + 0 + + 252 + 71 + 301 + 160 + + + + stockout + Unspecified + 0 + 0 + + 361 + 66 + 436 + 164 + + + + stockout + Unspecified + 0 + 0 + + 308 + 177 + 375 + 246 + + + + stockout + Unspecified + 0 + 0 + + 337 + 256 + 391 + 307 + + + + stockout + Unspecified + 0 + 0 + + 175 + 179 + 246 + 246 + + + + stockout + Unspecified + 0 + 0 + + 229 + 261 + 285 + 307 + + + + stockout + Unspecified + 0 + 0 + + 131 + 265 + 199 + 311 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9f340035f231690f5fa011965ab63a4533fff7d5 GIT binary patch literal 29172 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 literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml new file mode 100644 index 00000000..c7ad36bf --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml @@ -0,0 +1,86 @@ + + Converted JPG with xml runfourftbackdropvalidation + 1556332044.550062.jpg + C:\Users\ZachPerkel\Desktop\Kroger_Olympus\Converted JPG with xml runfourftbackdropvalidation\1556332044.550062.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 250 + 72 + 305 + 160 + + + + stockout + Unspecified + 0 + 0 + + 357 + 68 + 435 + 164 + + + + stockout + Unspecified + 0 + 0 + + 308 + 177 + 376 + 244 + + + + stockout + Unspecified + 0 + 0 + + 174 + 179 + 246 + 245 + + + + stockout + Unspecified + 0 + 0 + + 228 + 260 + 283 + 310 + + + + stockout + Unspecified + 0 + 0 + + 337 + 258 + 388 + 309 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.jpg new file mode 100644 index 0000000000000000000000000000000000000000..58e4ab74ef77ae3377fdff4100465e542e5d875c GIT binary patch literal 32948 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 %| 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 KMHEz)fB)Heg$6_b literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml new file mode 100644 index 00000000..f20381e8 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml @@ -0,0 +1,86 @@ + + runfourftbackdropvalidation + 1556332045.6620882.jpg + F:\runfourftbackdropvalidation\1556332045.6620882.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 252 + 71 + 303 + 160 + + + + stockout + Unspecified + 0 + 0 + + 363 + 65 + 429 + 160 + + + + stockout + Unspecified + 0 + 0 + + 310 + 175 + 378 + 248 + + + + stockout + Unspecified + 0 + 0 + + 174 + 174 + 246 + 248 + + + + stockout + Unspecified + 0 + 0 + + 132 + 264 + 196 + 312 + + + + stockout + Unspecified + 0 + 0 + + 228 + 260 + 283 + 310 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.jpg new file mode 100644 index 0000000000000000000000000000000000000000..88009346dc3532266be10360805a0f8266086d5b GIT binary patch literal 34314 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 + runfourftbackdropvalidation + 1556332051.3751378.jpg + F:\runfourftbackdropvalidation\1556332051.3751378.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 251 + 78 + 304 + 160 + + + + stockout + Unspecified + 0 + 0 + + 361 + 70 + 435 + 168 + + + + stockout + Unspecified + 0 + 0 + + 309 + 177 + 375 + 246 + + + + stockout + Unspecified + 0 + 0 + + 179 + 177 + 246 + 248 + + + + stockout + Unspecified + 0 + 0 + + 134 + 262 + 195 + 311 + + + + stockout + Unspecified + 0 + 0 + + 232 + 260 + 285 + 309 + + + + stockout + Unspecified + 0 + 0 + + 337 + 260 + 388 + 308 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb index 0345cbb5..1c2eaf5f 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Deploy Vgg Ssd Model" + "## Deploy SSD-VGG Model as Web Service on FPGA" ] }, { @@ -18,6 +18,7 @@ "\n", "import os, sys\n", "import tensorflow as tf\n", + "import azureml\n", "\n", "import warnings\n", "warnings.filterwarnings('ignore')\n", @@ -31,7 +32,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Restore the AzureML workspace" + "### Restore AzureML workspace & register Model" ] }, { @@ -42,17 +43,10 @@ "source": [ "from azureml.core import Workspace\n", "\n", - "ws = Workspace.from_config(path=\"./config.json\")\n", + "ws = Workspace.from_config()\n", "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create Accellerated Container Image" - ] - }, { "cell_type": "code", "execution_count": null, @@ -63,9 +57,11 @@ "from azureml.core.image import Image\n", "from azureml.accel import AccelOnnxConverter\n", "from azureml.accel import AccelContainerImage\n", + "from os.path import expanduser\n", "\n", - "model_ckpt_dir = r'/datadrive/Dropbox/neal/kroger/azml_ssd_vgg/'\n", - "model_name = r'ssdvgg'\n", + "\n", + "model_ckpt_dir = expanduser(\"~/azml_ssd_vgg\")\n", + "model_name = r'ssdvgg-fpga'\n", "model_save_path = os.path.join(model_ckpt_dir, model_name)\n", "\n", "# model_save_path should NOT exist prior to saving the model\n", @@ -86,43 +82,74 @@ { "cell_type": "code", "execution_count": null, - "metadata": { - "scrolled": false - }, + "metadata": {}, "outputs": [], "source": [ + "# Register model\n", "registered_model = Model.register(workspace = ws,\n", " model_path = model_save_path,\n", " model_name = model_name)\n", - "print(\"Successfully registered: \", registered_model.name, registered_model.description, registered_model.version, '\\n', sep = '\\t')\n", + "\n", + "print(\"Successfully registered: \", registered_model.name, registered_model.description, registered_model.version, '\\n', sep = '\\t')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Convert inference model to ONNX format" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "scrolled": true + }, + "outputs": [], + "source": [ + "#Convert the TensorFlow graph to the Open Neural Network Exchange format (ONNX). \n", "\n", "input_tensor = saver.input_name_str\n", "output_tensors_str = \",\".join(saver.output_names)\n", "\n", "# Convert model\n", "convert_request = AccelOnnxConverter.convert_tf_model(ws, registered_model, input_tensor, output_tensors_str)\n", + "\n", "# If it fails, you can run wait_for_completion again with show_output=True.\n", "convert_request.wait_for_completion(show_output=True)\n", "converted_model = convert_request.result\n", + "\n", "print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", " converted_model.id, converted_model.created_time, '\\n')" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Docker Image" + ] + }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "# Package into AccelContainerImage\n", + "\n", "image_config = AccelContainerImage.image_configuration()\n", + "\n", "# Image name must be lowercase\n", "image_name = \"{}-image\".format(model_name)\n", + "\n", "image = Image.create(name = image_name,\n", " models = [converted_model],\n", " image_config = image_config, \n", " workspace = ws)\n", "image.wait_for_creation(show_output=True)\n", + "\n", + "# List the images by tag and get the detailed logs for any debugging.\n", "print(\"Created AccelContainerImage: {} {} {}\\n\".format(image.name, image.creation_state, image.image_location))" ] }, @@ -130,7 +157,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Deploy to AKS Cluster" + "### Deploy to the cloud" ] }, { @@ -139,6 +166,8 @@ "metadata": {}, "outputs": [], "source": [ + "#Create a new Azure Kubernetes Service\n", + "\n", "from azureml.core.compute import AksCompute, ComputeTarget\n", "\n", "# Uses the specific FPGA enabled VM (sku: Standard_PB6s)\n", @@ -147,7 +176,8 @@ " agent_count = 1, \n", " location = \"westus2\")\n", "\n", - "aks_name = 'aks-pb6-obj2'\n", + "aks_name = 'aks-pb6-obj'\n", + "\n", "# Create the cluster\n", "aks_target = ComputeTarget.create(workspace = ws, \n", " name = aks_name, \n", @@ -160,18 +190,12 @@ "metadata": {}, "outputs": [], "source": [ + "# Monitor deployment\n", "aks_target.wait_for_completion(show_output=True)\n", "print(aks_target.provisioning_state)\n", "print(aks_target.provisioning_errors)" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Deploy AccelContainerImage to AKS ComputeTarget" - ] - }, { "cell_type": "code", "execution_count": null, @@ -186,14 +210,21 @@ " num_replicas=1,\n", " auth_enabled = False)\n", "\n", - "aks_service_name ='my-aks-service'\n", + "aks_service_name ='fpga-aks-service'\n", "\n", "aks_service = Webservice.deploy_from_image(workspace = ws,\n", " name = aks_service_name,\n", " image = image,\n", " deployment_config = aks_config,\n", " deployment_target = aks_target)\n", - "aks_service.wait_for_deployment(show_output = True)" + "aks_service.wait_for_deployment(show_output = True)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Test the cloud service " ] }, { @@ -203,15 +234,8 @@ "outputs": [], "source": [ "# Using the grpc client in AzureML Accelerated Models SDK\n", - "from azureml.accel import PredictionClient" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ + "from azureml.accel import PredictionClient\n", + "\n", "address = aks_service.scoring_uri\n", "ssl_enabled = address.startswith(\"https\")\n", "address = address[address.find('/')+2:].strip('/')\n", @@ -225,7 +249,6 @@ "metadata": {}, "outputs": [], "source": [ - "\n", "# Initialize AzureML Accelerated Models client\n", "client = PredictionClient(address=address,\n", " port=port,\n", @@ -243,6 +266,13 @@ "output_tensors = saver.output_names" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Visualize prediction using the deployed model" + ] + }, { "cell_type": "code", "execution_count": null, @@ -250,39 +280,76 @@ "outputs": [], "source": [ "import glob\n", + "import matplotlib as plt\n", + "import cv2\n", + "\n", + "# Select an example image to test. \n", + "# Default directory is the image_dir created in the Finetune VGG SSD notebook.\n", + "\n", + "image_dir = expanduser(\"~/azml_ssd_vgg/JPEGImages\")\n", "\n", - "image_dir = r'/datadrive/Dropbox/neal/data/kroger/dataset/test/JPEGImages/'\n", "im_files = glob.glob(os.path.join(image_dir, '*.jpg'))\n", - "im_file = im_files[-21]\n", + "\n", + "im_file = im_files[0]\n", + "\n", "\n", "import azureml.accel._external.ssdvgg_utils as ssdvgg_utils\n", "\n", - "result = client.score_file(path=im_file, input_name=saver.input_name_str, outputs=output_tensors)\n", + "result = client.score_file(path=im_file, \n", + " input_name=saver.input_name_str, \n", + " outputs=output_tensors)\n", + "\n", "classes, scores, bboxes = ssdvgg_utils.postprocess(result, select_threshold=0.5)\n", "\n", "plt.rcParams['figure.figsize'] = 15, 15\n", "img = cv2.imread(im_file)\n", "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", - "visualization.plt_bboxes(img, classes, scores, bboxes)\n" + "visualization.plt_bboxes(img, classes, scores, bboxes)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Clean up image (optional)" ] }, { "cell_type": "code", "execution_count": null, - "metadata": { - "scrolled": false - }, + "metadata": {}, "outputs": [], "source": [ - "result" + "#Delete your web service, image, and model (must be done in this order since there are dependencies).\n", + "\n", + "#aks_service.delete()\n", + "#aks_target.delete()\n", + "#image.delete()\n", + "#registered_model.delete()\n", + "#converted_model.delete()" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { + "authors": [ + { + "name": "v-borisk" + }, + { + "name": "v-zaper" + } + ], "kernelspec": { - "display_name": "Python 3", + "display_name": "python 3.6 brain", "language": "python", - "name": "python3" + "name": "brain" }, "language_info": { "codemirror_mode": { @@ -294,7 +361,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.7" + "version": "3.6.8" } }, "nbformat": 4, diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb index 075b4ce9..6b4baeff 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb @@ -11,11 +11,31 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Prerequisits for Local Training\n", + "### Prerequisites for Local Training\n", "\n", "* CUDA 10.0, cuDNN 7.4\n", "* Recent Anaconda environment\n", - "* Tensorflow 1.12+" + "* Matplotlib\n", + "* OpenCV-Python cv2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "scrolled": false + }, + "outputs": [], + "source": [ + "# install supported FPGA ML models, including VGG SSD\n", + "# skip if already installed\n", + "!pip install azureml-accel-models\n", + "\n", + "# Install Tensorflow. You may select to install Tensorflow for CPU or GPU. \n", + "# Instructions are here: https://pypi.org/project/azureml-accel-models/\n", + "\n", + "!pip install azureml-accel-models[gpu]\n", + "#!pip install azureml-accel-models[cpu]\n" ] }, { @@ -23,23 +43,13 @@ "execution_count": null, "metadata": {}, "outputs": [], - "source": [ - "# install supported FPGA ML models, including VGG SSD\n", - "# skip if already installed\n", - "!pip install azureml-accel-models\n", - "!pip install -U --ignore-installed tensorflow-gpu==1.13.1" - ] - }, - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], "source": [ "%load_ext autoreload\n", "%autoreload 2\n", "import os, sys, glob\n", "import tensorflow as tf\n", + "import warnings\n", + "warnings.filterwarnings('ignore')\n", "\n", "# Tensorflow Finetuning Package\n", "sys.path.insert(0, os.path.abspath('../tfssd/'))" @@ -59,56 +69,62 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import cv2\n", + "%matplotlib inline\n", + "\n", "plt.rcParams['figure.figsize'] = 10, 10\n", "img = cv2.imread('sample.jpg')\n", "\n", "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", - "plt.imshow(img)" + "plt.imshow(img)\n" ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "779 images found and 779 matching annotations found.\n" - ] - } - ], + "outputs": [], "source": [ "from dataprep import dataset_utils, pascalvoc_to_tfrecords\n", + "from importlib import reload\n", + "reload(dataset_utils)\n", + "\n", + "# Create directory for data files and model checkpoints. \n", + "\n", + "from os.path import expanduser\n", + "\n", + "data_dir = expanduser(\"~/azml_ssd_vgg\")\n", + "\n", + "dataset_utils.create_dir(data_dir) " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#Verify that annotations and images are in the correct folders\n", "\n", - "data_dir = r'x:\\data\\grocery\\source'\n", "data_dir_images = os.path.join(data_dir, \"JPEGImages\")\n", "data_dir_annotations = os.path.join(data_dir, \"Annotations\")\n", "classes = [\"stockout\"]\n", "\n", - "images = glob.glob(os.path.join(data_dir_images, \"*.jpg\"))\n", - "annotations = glob.glob(os.path.join(data_dir_annotations, \"*.xml\"))\n", + "if not os.listdir(data_dir_images) or not os.listdir(data_dir_annotations):\n", + " print('JPEGImages or Annotations folder is empty. Please copy your images and annotations to these folders and rerun cell.')\n", "\n", - "# check for image and annotations files matching each other\n", - "images, annotations = dataset_utils.check_labelmatch(images, annotations)\n" + "else:\n", + " images = glob.glob(os.path.join(data_dir_images, \"*.jpg\"))\n", + " annotations = glob.glob(os.path.join(data_dir_annotations, \"*.xml\"))\n", + " \n", + " # check for image and annotations files matching each other\n", + " \n", + " images, annotations = dataset_utils.check_labelmatch(images, annotations)" ] }, { @@ -120,31 +136,16 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - ">> Converting image 1/623WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\dataprep\\pascalvoc_to_tfrecords.py:78: FastGFile.__init__ (from tensorflow.python.platform.gfile) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use tf.gfile.GFile.\n", - ">> Converting image 623/623\n", - "Finished converting the Pascal VOC dataset!\n", - ">> Converting image 156/156\n", - "Finished converting the Pascal VOC dataset!\n", - "['test_0000.tfrecord', 'test_0001.tfrecord', 'train_0000.tfrecord', 'train_0001.tfrecord', 'train_0002.tfrecord', 'train_0003.tfrecord', 'train_0004.tfrecord', 'train_0005.tfrecord', 'train_0006.tfrecord']\n" - ] - } - ], + "outputs": [], "source": [ "from sklearn.model_selection import train_test_split\n", "\n", "train_images, test_images, \\\n", " train_annotations, test_annotations = train_test_split(images, annotations, test_size = .2, random_state = 40)\n", "\n", - "data_output_dir = os.path.join(data_dir, \"../tfrec\")\n", + "data_output_dir = os.path.join(data_dir, \"TFreccords\")\n", "\n", "pascalvoc_to_tfrecords.run(data_output_dir, classes, train_images, train_annotations, \"train\")\n", "pascalvoc_to_tfrecords.run(data_output_dir, classes, test_images, test_annotations, \"test\")\n", @@ -156,7 +157,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Setup and Run Training/Validation Loops" + "## Set up and Run Training/Validation Loops" ] }, { @@ -168,24 +169,20 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from finetune.train import TrainVggSsd\n", "from finetune.eval import EvalVggSsd\n", "\n", - "root_dir = r'x:\\grocery\\azml_ssd_vgg'\n", + "ckpt_dir = data_dir\n", "# this is the directory where the original model to be\n", "# fine-tuned will be delivered and models saved as the training loop runs\n", - "ckpt_dir = root_dir\n", "\n", "# get .tfrecord files created in the previous step\n", "train_files = glob.glob(os.path.join(data_output_dir, \"train_*.tfrecord\"))\n", - "validation_files = glob.glob(os.path.join(data_output_dir, \"test_*.tfrecord\"))\n", - "\n", - "# run for these epochs\n", - "n_epochs = 6" + "validation_files = glob.glob(os.path.join(data_output_dir, \"test_*.tfrecord\"))\n" ] }, { @@ -197,10 +194,12 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ + "# run for these epochs\n", + "n_epochs = 6\n", "# steps per training epoch\n", "num_train_steps=3000\n", "# batch size. \n", @@ -222,7 +221,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -241,76 +240,9 @@ }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "WARNING:tensorflow:From C:\\git\\neal\\AzureFork\\MachineLearningNotebooks\\how-to-use-azureml\\deployment\\accelerated-models\\finetune-ssd-vgg\\tfssd\\datautil\\ssd_vgg_preprocessing.py:213: sample_distorted_bounding_box (from tensorflow.python.ops.image_ops_impl) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "`seed2` arg is deprecated.Use sample_distorted_bounding_box_v2 instead.\n", - "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\ops\\control_flow_ops.py:423: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Colocations handled automatically by placer.\n", - "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\util\\tf_should_use.py:193: initialize_variables (from tensorflow.python.ops.variables) is deprecated and will be removed after 2017-03-02.\n", - "Instructions for updating:\n", - "Use `tf.variables_initializer` instead.\n", - "WARNING:tensorflow:From C:\\Anaconda3\\envs\\brain\\lib\\site-packages\\tensorflow\\python\\training\\saver.py:1266: checkpoint_exists (from tensorflow.python.training.checkpoint_management) is deprecated and will be removed in a future version.\n", - "Instructions for updating:\n", - "Use standard file APIs to check for files with this prefix.\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "3000: loss: 44.949, avg per step: 0.048 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8393\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-3000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "6000: loss: 16.735, avg per step: 0.054 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8477\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-6000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "9000: loss: 17.331, avg per step: 0.048 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8689\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-9000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "12000: loss: 28.185, avg per step: 0.048 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8711\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-12000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "15000: loss: 38.361, avg per step: 0.051 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8753\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-15000\n", - "INFO:tensorflow:Starting training for 3000 steps\n", - "18000: loss: 43.066, avg per step: 0.051 secc\n", - "\n", - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n", - "INFO:tensorflow:Starting evaluation for 156 steps\n", - "Evaluation step: 156\n", - "mAP: 0.8769\n" - ] - } - ], + "outputs": [], "source": [ "for _ in range(n_epochs):\n", "\n", @@ -333,77 +265,53 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Visualize Training Results" + "## Visualize Test Results" ] }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "INFO:tensorflow:Restoring parameters from x:\\grocery\\azml_ssd_vgg\\vggssd\\1.1.3\\ssd_vgg_bw-18000\n" - ] - } - ], + "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "from finetune.inference import InferVggSsd\n", "\n", "plt.rcParams[\"figure.figsize\"] = 15, 15\n", - "path = 'X:/data/grocery/dataset/test/JPEGImages'\n", - "image_names = sorted(os.listdir(path))\n", "infer = InferVggSsd(ckpt_dir, gpu=False)" ] }, { "cell_type": "code", - "execution_count": 15, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "

" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - }, - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Wall time: 695 ms\n" - ] - } - ], + "outputs": [], "source": [ "%%time\n", - "classes, scores, boxes = infer.infer_file(os.path.join(path, image_names[-21]), visualize=True)" + "classes, scores, boxes = infer.infer_file(test_images[5], visualize=True)" ] }, { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "metadata": {}, "outputs": [], - "source": [ - "infer.close()" - ] + "source": [] } ], "metadata": { + "authors": [ + { + "name": "v-borisk" + }, + { + "name": "v-zaper" + } + ], "kernelspec": { - "display_name": "Python 3", + "display_name": "python 3.6 brain", "language": "python", - "name": "python3" + "name": "brain" }, "language_info": { "codemirror_mode": { @@ -415,7 +323,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.7" + "version": "3.6.8" } }, "nbformat": 4, diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py index 5d1cee2b..d6a46056 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py @@ -46,14 +46,19 @@ def create_dir(path): try: path_annotations = path + '/Annotations' path_images = path + '/JPEGImages' + path_tfrec = path + '/TFreccords' os.makedirs(path_annotations) os.makedirs(path_images) + os.makedirs(path_tfrec) except OSError: - print("Creation of folders in directory %s failed. Folder may already exist." % path) + print("Creation of folders in directory %s failed. Folders may already exist." % path) else: - print("Successfully created images and annotations folders at %s" % path) + print("Successfully created Annotations, JPEGImages, and TFreccords folders at %s" % path) + + print('Please copy your annotation and image files to the Annotations and JPEGImages folders before moving to the next step') + def move_images(data_dir, train_images, train_annotations, test_images, test_annotations): From 7822fd4c1331ec4ac8d4f8b5fc86dde4453e2cb4 Mon Sep 17 00:00:00 2001 From: fierval Date: Tue, 23 Jul 2019 14:49:20 -0700 Subject: [PATCH 005/248] notice + attribution for anchors --- .../finetune-ssd-vgg/NOTICE.txt | 219 ++++++++++++++++++ .../notebooks/Finetune VGG SSD.ipynb | 1 + .../tfssd/anchors/generate_anchors.py | 15 ++ 3 files changed, 235 insertions(+) create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/NOTICE.txt diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/NOTICE.txt b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/NOTICE.txt new file mode 100644 index 00000000..96973939 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/NOTICE.txt @@ -0,0 +1,219 @@ + +NOTICES AND INFORMATION +Do Not Translate or Localize + +This Azure Machine Learning service example notebooks repository includes material from the projects listed below. + + +1. SSD-Tensorflow (https://github.com/balancap/ssd-tensorflow) + + +%% SSD-Tensorflow NOTICES AND INFORMATION BEGIN HERE +========================================= + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +========================================= +END OF SSD-Tensorflow NOTICES AND INFORMATION + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb index 6b4baeff..b8b7bd1e 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb @@ -15,6 +15,7 @@ "\n", "* CUDA 10.0, cuDNN 7.4\n", "* Recent Anaconda environment\n", + "* Tensorflow 1.12+\n", "* Matplotlib\n", "* OpenCV-Python cv2" ] diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py index 740fb3c5..f53914e9 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py @@ -1,3 +1,18 @@ +# Copyright 2015 Paul Balanca. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# ============================================================================== + import numpy as np import math from model.ssd_vgg_300 import SSDNet, SSDParams From d842731a3b2e971a31df9035bcef56f53dff3f34 Mon Sep 17 00:00:00 2001 From: fierval Date: Tue, 23 Jul 2019 14:58:51 -0700 Subject: [PATCH 006/248] remove tf prereq item --- .../finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb | 1 - 1 file changed, 1 deletion(-) diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb index b8b7bd1e..6b4baeff 100644 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb @@ -15,7 +15,6 @@ "\n", "* CUDA 10.0, cuDNN 7.4\n", "* Recent Anaconda environment\n", - "* Tensorflow 1.12+\n", "* Matplotlib\n", "* OpenCV-Python cv2" ] From 159948db6710c336a4b57756f352a1d67909b915 Mon Sep 17 00:00:00 2001 From: fierval Date: Wed, 24 Jul 2019 08:50:41 -0700 Subject: [PATCH 007/248] moving notice.txt --- .../accelerated-models/{finetune-ssd-vgg => }/NOTICE.txt | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename how-to-use-azureml/deployment/accelerated-models/{finetune-ssd-vgg => }/NOTICE.txt (100%) diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/NOTICE.txt b/how-to-use-azureml/deployment/accelerated-models/NOTICE.txt similarity index 100% rename from how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/NOTICE.txt rename to how-to-use-azureml/deployment/accelerated-models/NOTICE.txt From 31dfc3dc555f64bd558e3a2b357b3ff3ad0ab755 Mon Sep 17 00:00:00 2001 From: Paula Ledgerwood Date: Wed, 24 Jul 2019 14:08:00 -0700 Subject: [PATCH 008/248] Revert "Finetune SSD VGG" --- .../deployment/accelerated-models/NOTICE.txt | 219 ------ .../examples/1556331885.7651057.jpg | Bin 37618 -> 0 bytes .../examples/1556331885.7651057.xml | 26 - .../examples/1556331892.593489.jpg | Bin 37128 -> 0 bytes .../examples/1556331892.593489.xml | 38 - .../examples/1556331893.711867.jpg | Bin 35657 -> 0 bytes .../examples/1556331893.711867.xml | 38 - .../examples/1556331899.4232247.jpg | Bin 36901 -> 0 bytes .../examples/1556331899.4232247.xml | 50 -- .../examples/1556331908.5590174.jpg | Bin 36101 -> 0 bytes .../examples/1556331908.5590174.xml | 62 -- .../examples/1556331915.4019358.jpg | Bin 35340 -> 0 bytes .../examples/1556331915.4019358.xml | 74 -- .../examples/1556331924.4523242.jpg | Bin 34798 -> 0 bytes .../examples/1556331924.4523242.xml | 86 --- .../examples/1556331925.6244981.jpg | Bin 29760 -> 0 bytes .../examples/1556331925.6244981.xml | 62 -- .../examples/1556331930.159372.jpg | Bin 34495 -> 0 bytes .../examples/1556331930.159372.xml | 98 --- .../examples/1556331932.4657435.jpg | Bin 33623 -> 0 bytes .../examples/1556331932.4657435.xml | 98 --- .../examples/1556331939.207552.jpg | Bin 34096 -> 0 bytes .../examples/1556331939.207552.xml | 110 --- .../examples/1556331946.024382.jpg | Bin 33883 -> 0 bytes .../examples/1556331946.024382.xml | 122 ---- .../examples/1556331947.1424165.jpg | Bin 28950 -> 0 bytes .../examples/1556331947.1424165.xml | 98 --- .../examples/1556331958.545843.jpg | Bin 33152 -> 0 bytes .../examples/1556331958.545843.xml | 134 ---- .../examples/1556331964.128358.jpg | Bin 31099 -> 0 bytes .../examples/1556331964.128358.xml | 134 ---- .../examples/1556331967.5599852.jpg | Bin 32884 -> 0 bytes .../examples/1556331967.5599852.xml | 146 ---- .../examples/1556331976.6628668.jpg | Bin 32772 -> 0 bytes .../examples/1556331976.6628668.xml | 158 ----- .../examples/1556331980.031822.jpg | Bin 32023 -> 0 bytes .../examples/1556331980.031822.xml | 146 ---- .../examples/1556331991.2960002.jpg | Bin 32280 -> 0 bytes .../examples/1556331991.2960002.xml | 170 ----- .../examples/1556332002.5715525.jpg | Bin 32917 -> 0 bytes .../examples/1556332002.5715525.xml | 158 ----- .../examples/1556332004.8638506.jpg | Bin 33654 -> 0 bytes .../examples/1556332004.8638506.xml | 146 ---- .../examples/1556332011.6702049.jpg | Bin 33354 -> 0 bytes .../examples/1556332011.6702049.xml | 146 ---- .../examples/1556332026.4848802.jpg | Bin 33260 -> 0 bytes .../examples/1556332026.4848802.xml | 134 ---- .../examples/1556332027.6408842.jpg | Bin 32806 -> 0 bytes .../examples/1556332027.6408842.xml | 98 --- .../examples/1556332033.268194.jpg | Bin 33510 -> 0 bytes .../examples/1556332033.268194.xml | 122 ---- .../examples/1556332040.04427.jpg | Bin 33839 -> 0 bytes .../examples/1556332040.04427.xml | 110 --- .../examples/1556332044.550062.jpg | Bin 29172 -> 0 bytes .../examples/1556332044.550062.xml | 86 --- .../examples/1556332045.6620882.jpg | Bin 32948 -> 0 bytes .../examples/1556332045.6620882.xml | 86 --- .../examples/1556332051.3751378.jpg | Bin 34314 -> 0 bytes .../examples/1556332051.3751378.xml | 98 --- .../notebooks/Deploy Accelerated.ipynb | 369 ---------- .../notebooks/Finetune VGG SSD.ipynb | 331 --------- .../finetune-ssd-vgg/notebooks/sample.jpg | Bin 84889 -> 0 bytes .../finetune-ssd-vgg/notebooks/sample.xml | 26 - .../finetune-ssd-vgg/tfssd/__init__.py | 0 .../tfssd/anchors/.__init__.py | 0 .../tfssd/anchors/generate_anchors.py | 107 --- .../tfssd/dataprep/dataset_utils.py | 119 ---- .../tfssd/dataprep/pascalvoc_common.py | 112 --- .../tfssd/dataprep/pascalvoc_to_tfrecords.py | 223 ------ .../tfssd/datautil/__init__.py | 0 .../finetune-ssd-vgg/tfssd/datautil/parser.py | 65 -- .../tfssd/datautil/ssd_vgg_preprocessing.py | 397 ----------- .../tfssd/datautil/tf_image.py | 306 -------- .../tfssd/finetune/__init__.py | 0 .../finetune-ssd-vgg/tfssd/finetune/eval.py | 159 ----- .../tfssd/finetune/inference.py | 95 --- .../tfssd/finetune/metrics.py | 0 .../tfssd/finetune/model_saver.py | 57 -- .../finetune-ssd-vgg/tfssd/finetune/train.py | 144 ---- .../tfssd/finetune/train_eval_base.py | 125 ---- .../finetune-ssd-vgg/tfssd/model/__init__.py | 0 .../tfssd/model/custom_layers.py | 164 ----- .../tfssd/model/np_methods.py | 252 ------- .../tfssd/model/ssd_common.py | 408 ----------- .../tfssd/model/ssd_vgg_300.py | 660 ------------------ .../tfssd/tfextended/__init__.py | 24 - .../tfssd/tfextended/bboxes.py | 508 -------------- .../tfssd/tfextended/image.py | 0 .../finetune-ssd-vgg/tfssd/tfextended/math.py | 63 -- .../tfssd/tfextended/metrics.py | 397 ----------- .../tfssd/tfextended/tensors.py | 95 --- .../finetune-ssd-vgg/tfssd/tfutil/__init__.py | 0 .../tfssd/tfutil/endpoints.py | 20 - .../finetune-ssd-vgg/tfssd/tfutil/tf_utils.py | 158 ----- .../tfssd/tfutil/visualization.py | 114 --- 95 files changed, 8751 deletions(-) delete mode 100644 how-to-use-azureml/deployment/accelerated-models/NOTICE.txt delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.jpg delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/.__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/metrics.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/image.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/__init__.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py delete mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py diff --git a/how-to-use-azureml/deployment/accelerated-models/NOTICE.txt b/how-to-use-azureml/deployment/accelerated-models/NOTICE.txt deleted file mode 100644 index 96973939..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/NOTICE.txt +++ /dev/null @@ -1,219 +0,0 @@ - -NOTICES AND INFORMATION -Do Not Translate or Localize - -This Azure Machine Learning service example notebooks repository includes material from the projects listed below. - - -1. SSD-Tensorflow (https://github.com/balancap/ssd-tensorflow) - - -%% SSD-Tensorflow NOTICES AND INFORMATION BEGIN HERE -========================================= - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - -========================================= -END OF SSD-Tensorflow NOTICES AND INFORMATION - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.jpg deleted file mode 100644 index db68228adf6b2e3174140c84c2d8cece970c6161..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37618 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 GfB)GQddiak diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml deleted file mode 100644 index f9042633..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml +++ /dev/null @@ -1,26 +0,0 @@ - - runfourftbackdropvalidation - 1556331885.7651057.jpg - F:\runfourftbackdropvalidation\1556331885.7651057.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 19 - 108 - 62 - 177 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.jpg deleted file mode 100644 index f9648fa22379189de8414aa05c60dab3022b77c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37128 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 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml deleted file mode 100644 index 3355d325..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml +++ /dev/null @@ -1,38 +0,0 @@ - - runfourftbackdropvalidation - 1556331892.593489.jpg - F:\runfourftbackdropvalidation\1556331892.593489.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 155 - 85 - 204 - 165 - - - - stockout - Unspecified - 0 - 0 - - 24 - 101 - 59 - 175 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.jpg deleted file mode 100644 index 46a1ac003a36f7c9a94926a96598f8ca34f34d35..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35657 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 W1s&R&$TP{JiU0yHtrSs6NB`MH@KPQC diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml deleted file mode 100644 index ac9cfdb3..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml +++ /dev/null @@ -1,38 +0,0 @@ - - runfourftbackdropvalidation - 1556331893.711867.jpg - F:\runfourftbackdropvalidation\1556331893.711867.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 156 - 87 - 205 - 166 - - - - stockout - Unspecified - 0 - 0 - - 25 - 107 - 62 - 175 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.jpg deleted file mode 100644 index 950ad85a77cf895f5e2506788e83c5d662d02c18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36901 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 VpD?DCUs@=j1Q8EfD58)b|Jh8YD8m2% diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml deleted file mode 100644 index 835cdf12..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml +++ /dev/null @@ -1,50 +0,0 @@ - - runfourftbackdropvalidation - 1556331899.4232247.jpg - F:\runfourftbackdropvalidation\1556331899.4232247.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 248 - 79 - 299 - 160 - - - - stockout - Unspecified - 0 - 0 - - 158 - 84 - 201 - 163 - - - - stockout - Unspecified - 0 - 0 - - 25 - 98 - 67 - 175 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.jpg deleted file mode 100644 index d94691ec311e2f2db53d235e722075fd6dc47d2e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36101 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 AAOHXW diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml deleted file mode 100644 index 240d4a3b..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml +++ /dev/null @@ -1,62 +0,0 @@ - - runfourftbackdropvalidation - 1556331908.5590174.jpg - F:\runfourftbackdropvalidation\1556331908.5590174.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 363 - 78 - 433 - 165 - - - - stockout - Unspecified - 0 - 0 - - 249 - 79 - 306 - 163 - - - - stockout - Unspecified - 0 - 0 - - 156 - 81 - 204 - 164 - - - - stockout - Unspecified - 0 - 0 - - 24 - 102 - 66 - 177 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.jpg deleted file mode 100644 index 7f250a14456c51711d708b204330bbbbb85c517f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35340 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 - runfourftbackdropvalidation - 1556331915.4019358.jpg - F:\runfourftbackdropvalidation\1556331915.4019358.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 363 - 70 - 432 - 163 - - - - stockout - Unspecified - 0 - 0 - - 248 - 78 - 307 - 162 - - - - stockout - Unspecified - 0 - 0 - - 157 - 87 - 201 - 162 - - - - stockout - Unspecified - 0 - 0 - - 22 - 105 - 62 - 175 - - - - stockout - Unspecified - 0 - 0 - - 309 - 177 - 374 - 246 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.jpg deleted file mode 100644 index ce7dab2497cb4ad3a6a34db843425501e4d69cf7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34798 zcmbTdbx<5%^!7QpyTjmvOK^7`B)D4$J_L6U?mD;!cY?bmxCeIv46eb0emB4O-P*0% zzjpU_bys!uty}lg-F5oh^F00E>VG=`TxA6%1ppiz008%I1N^rEkOiP3BcmWAp`xIm zprN6nV-jLvVqjpB;S=BxQj$|sQIZ3JG$2kU8aj4*Adp#*g`JC=kB^U!^FTO#lj-xp#{?N{C{r$4FK>^;e6nR5a8$l@OW?tcyRv>0jU4Y6AA8r zHNgMb;NTGuk&sbP(amB&-Isg$537?i*8ks=zGYXw6 zAx}t35h}e*;}0UOxj!IY3%5`-bYc=xGI9n+CT12^K7Ii~Az=|&Ie7&|u#&R2j;@}* zfuWJ5m9>qn9mL+%=F-|>Hg z{Xe+y{&B%0A|fE7{0|o#y!XEy0S^(0mKzygS`+27D*+u(2r8jWN>SqvG{p(X)2G_bIQz95$p9YzM(;cXb(U zkva!()XENrTNLgg7g~d!h%v3o&#vn^Rdj)Q4zi4e2=eWdfH&3>2p6Bf*Zy*)=r|fh z`;uW3}ik?vNSk$N%3*kPEBvMroJF=rw+dtAa$k{pVT)ua&7@w zQc0^`**rZ4inEleJd{4oIkr(AD^7Q}OXNe`MjIAhmj(iYHc2IZ21)=_fbtz+geOK*d&pYe!Yl@Av`<20}a@ zDBpzdzbRq)uzxdMzzq1I@F)(kHf96o7}7=1n^-mN+hp7r(6stG4cO7sZm@Nqgq+P9 zc`Q^Lix0A-5D9W6coUP(BHVnlXv|(Rx@D!J`ON zEyY^P?|!9G9%kk;9d29_+E;Q~WHkC~bj_Uq0XVwCPNdL)WxIyD2G)Y-^oKx?(K>dm zo<@ZupUuwIpg(6HLzNgp1#^faR;@oI*zv_u=)rXa z0&bdbAJ1^1_rp6$&6K+blvy%XY|V3t$nFlzT)Y z)r1=kyfkrvpyVE@kr7#HiM6AMM)J5T7i)rwwQ>b5IP&uQ?m}!ycr)#$#84YbxnOxm z&;IiknBzx6tbKaOBic~)fLQ4s6G627^xfuLr)NJ6#NtDlnF47kJnmcMtJ$KxV8$0s zX93CPC!e*XECIix`DC=0TelDy3TO5!(C*`PJdRq6Wd6}lB8?#x-|j?Gpli}{Xj5*4 z%PGf@1C`{S%`A#|1ZHz?G#P^?Jn?Pv_YWh;;@s0(a7|?GGPHQfCTQMyxP8SLmR#t| zCwNa!*e>w@0TS@pr+)eJR983L$})O0Q=*jNqq&nsq;vgs9JuL+DW!$F)5tzpDFhDe zDbOEW{hbp9H*|(_gL;UxTyq?LdP#BQ@LLQVLS zrb4GCM7!I(NX=yFyYfLE6Pc#)pM5@_cM@s$w%qKIJfMwk+aPgfg)Mkx%@wqca-ISA zVSqxMv&eyYOeZ~+!T7K&WnaEWIr!pY-*i|>^LIxL-Wb)I4f-+q74u{y$^uo(sv#9p z2GJS;0wX+(syu(9)8u45pyVJ#UDPdMzSt3ae01{g{*)rN)qeQ`kh92?&cca~Oj#e0+-`K;X0vC_oe`WDP=lm0~N4L#eY@zB(6Sgd@BTCv^8v6eF2i%g9Q)*yr^V6?vD2%E|K0$WPM8 zzBLySZdrraHClU=%H_UMWaShw-SJCX-|pdaEX{l>8zvYJZYMPLG1&^zG|f5DB-DBq z!Bd|^la7oP*5SD{bUs*O`;bL^}tI@ZTj@*euqMn5}k+TZy}l0q+X-{xYQpsic+TD6h% zbWtEL@e!6sGz7Y7mtp$w7(pji63X$rhdN;`hNjMiT72-lX7A=MvHr{Gd~JAhTSp>l zT?&!p%lpnaJJ9U#ha0oi=@Ugci6B~VxPi&{4=gsby?9}|z z+z`E&On4^ZXYj*+0C5({z=z}@S?7kMJb}yK%NZ^(c#ck#zr8HYil74hbY2B5so54= zw?{Kbv<4I-j44Z*$8z$bdr=GZKfpZsSMHlr-1>L4vw{0zfkRN1JP6wJ1u;}=;zfGY z=ANo$<9D+{m8*{?F+r!5`=h%0cRm2vVYeq%N!4|8My%se00VAD66Z|a7fM#FuiYox zg4;Q|vXSGsG$gP*vS-ax%=Nj^yTAt#ZZ@dp=^%%ctSHoQA2H}cNbK>)!#A0p#7I6J zZ+!=D?SaSgF(-rp`b2sPZv0FO^mwYYW@l76<%l20qwTIAJCzDH>w0Q1OOvuA6?+kg z8)xO%ZCRugTgW;~p~31H zmby%hdwUX(>yom8RisD4ugq{Z;WOI!Js&A9k*E>g7FHKN(6wdY+!aNqgxwr?!OFpp zWu1{2-L|p2L^}>nh}Rd>_;KE?U%BWv(#9$E?cM`LG!UHSYcrtyH^U%|C}(bI1QZ(B zdOrKFT-y#esFcEMNVnTF>{%0d{n4gb@ny_Ne1|o)Gf?22k~wtW)EG3!9>tcfXByAF z0Xb0$_Jy67@BT|i$cS`aQLAscJNGrq2y0B2pxoqk5}G>$kg66fv}aCnI78@Fj_5Vw6&+YcujJ;|*tQ%0$G0?Cjn=u<*LafpUNIpXc3r$> z3tn@wN|fz6Uq$`-KyBoq#QGFzn4vN6B!euFbP0R@1uw^-@ea|xrR-LeFCS`VQ=T8I z$8d^g9$6Yy_Hdn~n7UD&XB#tw)94mDNs*DKQxR>cKi+p#Ak`T-54@E^ZJhYdtHgM` znh>iXa6L_vDDBQy;AH6uM^6uj<6iLA&+7HFi7(qpQO1WlL2z>Diu3Vl5i9EQySO|f zJn8R?4=ma7spI@i-3H8lgG!P z0TJ%@e|^^Wrkr^~sI}qhe%Gp~8vR;_h2A?vaOHCCv|iL9JfdWFv>gctauaJ1nVLv} zni9D+!HW?54QfduO#Id2)?*>K`9ncAK5!c{i)Wi~v-3?z!^hlp<)-o=S_Q;u`a^+1 z7hCZ9SK?hTVVI1F;J?!>!xCr0M5U}u3(Udqv5LY|^XOADv$OdZ#VwS&vX2k!Tv207-@O+7xz z+^fRoqJb>)Y?Gl)JOKmOuT?Se9k+ec%BwW=kMM3gT*|58_ zj|IXuG2!^6h2GdCuA@OL3#CmXds}V7pCdPtg~?v8r9vj7jqTZ#Yw|mH+8axgyQHQF z0%AMy!WQ2kPI?-pax%jEPNbyM0`4E6s_^1FAul7eigf@S+C+gg`bOPNqM&O&l@IAo z^J!nx10BQ&@t zaHZ~s`M0;X7kqtS?Pz%q>yQmBHm4IJHaV493A*u zJDvg&Ek-bcYuFX|I(i2j32Ole;*Sc$&eS^adK83zHVF_w$bcS2k=BWHD3qDM{DRU3 zN{{rMN!VXhZz_7S z)?yGwgv*lBQ^El~D)|*|Jq;Ut67;x7EB*u2Clmh56{eZbepCr~l%j<##C{~qO4CXS z3$-gV@671qjrUBbQjae(S0E+dUA~m?Ezix0(w2@@tn$&;YhUK~tux6#q~@W)(GrOd z#5pn6zwj(SB^O(_&ie>q7*q^s94Q+R8iWrNo?X;WIrf`?!F=6%SxTN8bw8;6Y-ZAFp6|MuBJ~puY9*n;T9d}APbpa@ z!sHzmkn*HO1S%!3Lv$n}E#onDWRlIzwq5*&A83e`~ zaHlNgHIiM;+5`Ltk%k*XtqqH;*C#gjaXuM=L6N7cd=#LF5Cn5}9*KTs2OQKKW4i__ zd<ijh+eo&=ij zI8K9FYJiSTw4_k+G78t3-FWjtBL@s;oLoY79@6geJ+F-SG?`z>P-gV+8LOTMB~*6< zD*A2ECHdwWso-zxN(ex_X(cq7N;)_lAY8mfE@q<=sIk-`mjW`e1AHVr-pY@*+d|L7 zymR(bMZGA$-NiW=CthZ2(}08Zi3?YZ9Lh}=$#w(t=4sPQvp%BADg4BBGgS1Wf052` z78^Xc95OQ$ZG2y%!Dr01^u2a49|Zs}DXT2-U*Elc_j#pB{lraE1bOaNO%oS_8`sZ95C>)U-PQ}=O%qETf#6c8OtMY34Y&621b;0utp3lG2iSwa`F)>z#Co1G|o-hovjm`3i&=IulVn@9q}~# z{qe4J0JWVYqEFiM;D*P&S=<#Y->^s&qu%<&pX3UM`1t<-%JOu=uce)O1257^VFg}ROEv|+FaC@($8U|qTZ})o zUFQX*TiD9FC123#C*(;?1;ZVyI~sx%(dOlkEp_08I`&X4=(%C(Sx~ed(6VO*a`rVaH$ECO1*PudGwe&23H13$+WVj;Sv4 z4%S(pVY-G22HnU~1~d-H7f{hemJq(a&&+hzfCi3~yzhS(tZq$<@JL^KSCjiq z3zi6+colxi6!DPxs@B9XREf|mR1(rFX%n6ND)9J;6fPl3C817)Z*j0#&h{K-gS-56a>4-OUfXb* z>uh(M{lRcN30M85mA~$^Jbv+v`D$cT0Svyk|EE#*Vh{Icw~ zPfdlYN4IrNQ)BTZ2Vy~F)0U^18C`mSof{}bxy z31S0KP(__w=pgLhu7ju4su66Y#?WA<275xV&&8GvskL13&uqMJjXWvAj__i8Q=sS9|o|2_k0${EhvPOy+-S3ArTWu z;OV~2=H{KSjl{c5DxWBU5n8SvR8C&^WWYd(tr7(!@e`Y6=%_QMxbTG(Kxug9ia%&- z4(VpfRV`Q3sq6L7GDW z8jR|#5^f@eVPm@IDV3Q*P-;1B9)~;}nr2Sp%o~B1vuOO_QXB(-a z+P4{OJ9nUJ8RaD_Lbbe!k+6Y{-Hk9y35kvDm&l3b2iIu+50x zK54*T#;f9X+@g+Y`3?)>Vl2~Yn2co$o$CC%U(<99o7`EsQ^~kM#cqHn;zP;QhAW{3 zBSU(>58x-P@%iZP8?sY~^ST&LD`^<<#;fq9-3Q#>RRV$*|Mv8k$<&drWy)68P(D0S zHqR74beS9W>k+ysYb9H(Uk|X`^5D-YddKpOkA&OQ)Xe*?IkGe)p*Rc^S(Dj~H}@}{ z6_;r$74wx)u=rba%QF_vn!m)vlW5mIrE{|iAtqS)U6KckzReRkcx#%+>{2!OBB&4$w~en zr@k2<*>qznaXCfK{UnW3LcT$`<|}f>OvQE8~mL7J}|vH(KsXf$IMO%zBBh zEQ}M1TwIWUaVOcs=rU%FTVpS0C?uOijvOc9nB9NdN?#ba-S81NY>*gQ$!%o3Oo^)> z8L6Z@Sl3NDi*bP`MU_Y<(*rxT@2jv9YA+e^@q-?8n|Ku{Nfo^W>amwbnMnB!9WTs$ z%3=>Me>DfxkzeXN%Ty%Zb;dSMy(%_zcPuzE#?n2^*?Ppy%nt&S&U9LGnfXo42FKwp zS~jdv`i#R~Z%un1lh>w+>dQOYJCX+v;cf~aqnzJceU^({8MA9mHl%LpHzwvv8->YC z?qJ_x$}245?0$X6+kY~pAJWYX>alTzrj=tbHZxW+kMpJWSuS!80?6v@*L$ZLw!uxt z($rJuSr%KJSEd$)+@;!NCIY{VJI?KBEP5PWSxamTe))z;dQdx?v3kn!_Jrh4tZz!<39YoDRnzS%quuzj06n!#>0_jFX4eIH;J8aUX$vmZMl6{WdU?zAKr_+NQues8nbk}R!wk;zqr$RNv_Z!4v)(SqFCI^DMsdAY0kPOtrKni?yX_CN6IfQkp?wcoaU&o}9!Z_BJ}A z{O;dbZARV6WB2e=YMP_*hWcRt8SkF#wYnneA~KWcJ>GfwROL%lr@ZiQa_$*yf4?C9 z&Nu<>u~>Iez+@6Y>PKI6R&Zl8RA%23u&_GTtWa4!mq9x& zMB_CK4}|iHg}^o%+p3tZaEuJ5BGj`J)`UinA%LtYQl2Mc3G0oF*;YCQ`N=U`TYU{; zPOgqwWdNO0&=kH>I~Wd&-3Ku!z$PMsd|?bCwgac&HptWu@-8w0b=eJtE5m}Ojxf$< zpANGzj7METc;7Q=-p&9Oh)@ODAVL6a-_!^g!iQ)c+Brs9rDt%|a;uA>pzos9ak7EZ zi`NE%N-|B}jEw@|1FMb=ny)Bi+DL#0ivL#W!KAY^?L3Nj5cEq_HRjBz8=Q<-#sSB8 zH@GV~D({Ss194u5KjQZtXUQHb6rk+1R+c^c!~hpNxONQg@MucXIM6E=R){krMWAg??CWN5yWR&VcjS8zf}o?}q{M-h^&+Vz+#31ho+C`6yXdKWvRk(l#RoHLB=Y?xBdG+k5E?D%dl0Yf8rXWeDS0aAf4Bo8 zOjIVZH#@i{63ptj4iB-r^8UO!(s+8tpnyC_s>NndBtM?WaO)s3D=OP&5TD70qTcW@_9~AT+Ktax*;C@uYMr=94ee(OZ ztRs5zpdo!1Z;S#}fg;{P_*A$oi^j?}SwV0&$f@+9c!wMMsYT{=mtKKUj-}gYlv?fX zJ7FC=dlQk|%-vf45zx)gyR3kD8*HYS641U`WJM$Bz(uLJoXaEQ#IdbFr(=2WIeOEN zO7xu%&}}eQOK|{1La7|)PtJyY<*N>-sXYEy75wpVW}ExwcZqvMFU~svn~#E$UYf@$ z4$UJpf`x_7-k4dixT#xeNAw3|%4r|LV^94!XJCu}07?YDO;!r}lPLT2l0HdhA}zVD2X(_o+5F5NC(Mdp?WYhv5=I0Qz zJ-u6Cx0K~gy9-Lac;MM&tCwbZ^>EK5FHaMULQ3dA0Qo%LbfMouD<5A9@TF1$}G zAAE^wNl4gS9a7~FxoBK|s0*W9*Y2M?el)r5Hb&sAafUQJWs=_H7Lh&Peb@Tsc-N03 zkJVP>2+CCR%8f*tQ*V6zl4sEJxBhOU+rm1LC0!F}{(WVm&hOI$>o`Ki2FNo-$?NmD z_86H&cHOtV<#Hkd)dGWy*V(><=$Rcs+iQL^9VJV2Yjd~>XfV;|?fS1J6jsnp#RIy4 z+HWo$e1FqZ#+Xb01CRs-rP-m*=FG62>4ffm5+-`Y1tYfix9WEPsZaN*r&dSbht3Z_ z_Tz8j89AeI3JxbvhqZ?yN$t!1B>LSZKS1_Fs5~os*q-}~874TQ>jz^YTk>k0)8YFW z(2Ckm;d*fFZ2x3VHp-F?Jhh7Q&BTl9eQE2HeWr+0il^V-4ANghooSuZw>5Qq=@nT&l*0g3b$k=^|4OT^NY4kC?egMH zbjME?KJ36TH*f>Pt9gJS@I7MUM$r2pKt*1DX%VeKxAH9~S&3IgQjd|u|HJ~!xP$x8 zpDnU!GXcZxLA&`|+}r6fn|%hPTQlnRh$9!13bEN_K)8)(J+)M#x{-=Hd#@EGj}?55 zPB`T!QHh)7(q<6ew9CuUdi?G-`QQ>Yx+xuW!XL}oTo9*YLQ{qdaI_T(zF!vY4 zUTe{KcBwuO7(vJX0I(=pUj`d7{Hhdo zhb6X%=5U6cyz-=dA&1mgbDDG7GZPQ4=b9v-KD50;jyV9}i`0q6{V>hK-ev3W3EzNW zq7LT|qKS|>(}T7K$#gpm<|uji5QmWF7VQHPZl)-w##(jzO^zX7lWS;izqS#1__CjK zw8xvw7hkb0**CaD*>KGzZ@86u);tTLeI*@cEAzqEcmBF+hM}&HKN`UY-MY6NVIx3Z zPlVM%Bd><}K$ zmJ6>hS{K>hk}EL;u+hj&UKZjBl<Tzq-TpJ^=rH-?uu; z^oT9>htN0FU7wzDx+L1vE6-7hvJmUU>3m}=F{T%kn?#cf>=A5 z%-7_hJRgS;~WwVugs@H#!mdagyNn_D8vmlnf%rx&N<$EcoT>$ej$9_fDy! z--H{%byiwRTe#)qR)Mu#Xj=tatUVfhT!95buBci91O+%oy5S&r)Or3mCjsm%aRnAQ zu?vKaMqfz}DcV7=v&BF*-eJL!g~9K94%HXz(m3Ys1z+Lx145U_+G}$2C#9?q_Xv{w68Ijxo7GIuAnHdJNQjC19np( z_Qll$6ia-&>1>Tj;-pi!KwYQ)z}TIztul6WOJJVCMI^-pviwb$U_J>PYe$u(P7gMP z%1C&XLz!q2j;Oh2%Xzh*;^?lDmGEnxxx-pnNRug)#hYzSM8>xM${c1MdLgSrGI()no38x09Tu30oTlYll@d>Q*^cN|= z4=B1|m5&#ioLj?!?!jtEVk{tldt!Dquk4oWIDwO=-MC{Iz4uBZA?8!z87g{*^`-bJ zS9h)p&A+6p)b62KiTr!k0Gog?TS3%%Fze~UC(gKlbqkb!R${`P_#>3CQMD!h^E$^e zwKWX7jan1TfKjs13Vv;ahE%QCVWjbB<1LOsq<1kZ%lm3G#zi?zV=33%Y$GknHM7F1 zHx?yRc!)TdKDn5cc~?RB^*=xzm{B43|gubi&32NYX#x~x3H{S1Kpk{Yvm2n2`nnXB|$+-6_>#tDH{COhtLShu_D8P_-f-!A4Xp~A zH&XL`g1Ya8@g^H z7DrSYe`(ORn>y=YQ*CN!r}vQBfj7>qhu(dAYZ>-Y=(l+iON3`2A*L#nuZgM$`c>r8 z15L)xE18%!4hRr=JnSeTl(LXhEldj*qCO&8J{Dx7{1clT;GU5QfF0DdQZ!38{oNF2Bm9FEbm>Yd5?{0Dp4vwC;63N<=;WSLFZxPKWtdL zqs_wK$*PNA^z^X1;zE&;ZA}3FmaS&(%g(!Dli3&hq%>TexPac?lr#POab{A!;MLHXy&Rv|t2fN*+k8=JDB4)+}6WUsKJ-i@A_&cy3cqEAR* zFCw}G@+K|!G&zNsXZ9}Hl;}9eXfH?mnv)Z17k=nTrx6_&P7z9bue$3OtQO&!|(1`2~GRSt^=b+WBu2RG~6To!dG&dJYbbK z^@;4v*r{Bd4oS~3lm`C%Be5AX+3_>AO;PeCdSc=4*6d2|@^Z?ySLiG^5o@Qkm|TDk z5H@SIl2`(C({{Oq82|cy*ebmMqg?h8%NG}N=?8UmaH?gc#Rf|%8%w$AyzDQj_*$X0 zb}wbYS&n=$=%^_AkbNoezC?Y5fbz7=mys%8xjt#%--n;j@%E)S4Tm9S6hW*Y&CZo$ z8ny-G+4#dF8QXO-@eEv|uj+Ia6A5hIoMy^I6x!T=58LiAIA}@LSmfM|=o`C1jwI_~ z>#ma6I&&Z4>1=6g!j#HU@D?5rqLef`SjPQElFYcf5a^+;khTNaI(c9rrtLHYeRzza zw;PpMEmes#;N!K5h0eO{OkGejhrLv+R47j)F9}>`2l5CHtEKc@%D46`5Ny#4z1o*y zkhl4k9a@i>OJS`I> zL_y+=P$8|MRB6^Y^|%sneLE#D^Gpr?-4mRdPZdy`$_ zmh>uROU5ryo<44mM(*qq9F?Ipvd7=uH=dlobkVZCMSVJWd%)%82Mv zs;kVeC>A(3Gc*m!lIdop%!m}$SzHsY$Vz@udnV=m!qq$FGSofTfq8L%W}2AU$M#a= z7Np@8wL+gW(mG#9!}({pgD159$aU7TaIh6(JfR-Lg{`}%B~emmb;i<7XU)&(7 zyxF0(9kuwZud-XkQSWhFusyGm`UNv%g~x#`Q&J?)AK-g6U+9ZfbJ7I<7w#9r(Wh@J z)5o|j?m;NCyIN&7SfqWlP4gTr{Sxa3RK7q84}<6dAr#-&**3NUJc16?EErUv0Hw}r zImd?2-(PsH1S)h{>kI%SUnFsiK3y4eJ0)&oJt$7e5krL#L@5g)E{vyG{HT*~}Ck2=px zkD_=2L@ScOB(Lvj#mEgWi@RW!rEeIq>LVG6cW`RY6jk(V4n#U(z0Hvq@p{S_WAr!s z%{ekCV}mH)>pTo*?0Nc3f(wF=`1AI%dqwiPfB}9c3bL#;n{}xp0y(kUdhK0Zy79#E z8I=9Ae(T99agkaA_%0%r5=*nwE{^rfYN`o0z&lb{iUI$x^S(@xExv*FGTOJaN)<>WaQO=ksV+us$H$dXKZnbGawlf>g|iyYBz4B zP+>|%`ZJyIS;GF_E(j=ehi9CC(DjmyB?hXxVtI|BLQKB0VPPU2kb8pyuLegnQo_tc z$!kQ<;-nm;sVPdW>_3J&z>hwj35buSptnFydGsi5L-Z*vl42<`5eQh52&q2Llg*1QudQAK z!O8UAA>~)z+jC;I^u$g}o@CGY-iRBE;e}3_*A-|8L-WGnm zF#YsNd)kkXpml9p_teTKOfkxE0T!umw~Zz^vI9i8x|naQ6~iJokz09;{c}$z7AbiY zdrl^{#9g?D=&n=Zb@Qunlmgpdz~@z{K3#K|tg1y8xv&J%iT0UbEMK)ySo@CeLQQ3I zOK@u8Dje_U#4Wp0(pK0Qtmr?$*`i=IZ68#Ls15853M=S!*E&hcmtLcX$6?9P5D`!W z`YmJEcGjx%cFr7MOMex+2m~!m5{9G()J`6xBoF5FgDMm;T&<@&(=EG$-Rk3A^Zde+ zrj{cLqxibHjD$*UbyqRK14wtUKYO(pasDi?*+$E&9f-vhpgW2LV|{PR$)?i`fntS% zL)2wlvcG_x8zJg4--D~TfUS=e!KNsnC!Ti1g0-4=7K5_(_FgS`hC!p*!d=&R_hV_` zijWp2&!&85*S;sBpWkw9CJ#n-=#Brh$>!<8rs;V1WA|n#O2b90g&9X;Khk|q#7^uE zc%U$=BH(#`rVJEaLRNH(0K}x~rC6{18^5;2-)(4E*8R^o?@OL{DLf{bQpODVEUvjA zm~iLI$&;cSt@Me{xP5}P>_0%P<>FoLnVlo$uFr&Eb_B-pru$Xw{)N~Y`_={>&FV`} z>PgPrqJ!lENA1AtP7c@9Mo3MuMg}KE5&7CdsrWBwDdNMxTm*HEIL- zeDKhBZ_M8hN&1B_t=(`fM$#6a;P5%05Eo_B@>sljk+a?Fqw9xhhT7dlKPN<+VqB;< zxyaa)l%fm|%K;B7o9S_zGzEh}36hP>~gaYlW@yxt1y&f`iR2bGIPte{Y7ykn6KvFIH?E8|rt* z?L+YEbYh1W0#)`XQ|wy7_4im=mJDf9By%Q9WEmMQ7%4>}Tfu?{L8alQ61^Bt34Asw zReyxkcwh-QQgz(1qZq36$xQr=t!CBh)YI+L_RRS_-^9$eRYI??n41F5<466j<-^#` zbONy8C|$KnEtr&^{;hB@cEAx5+ZjuYZ@X`?346ADUXd?>;2RptR&Pf1^2$et9fURj ziT}CD1Zw$mz2q@IVQrpyK{wY{%X(-UZGGKSQ}g^%hrNQRV-5J&gsc@3<&wUzdF?Nf zM@*kvswZ3!^9(%ofd~Er_`vICwhIwRxWvSCv>VF4Es@ql|Q|x?d(Y)m?6l`M1xRx$X1R=vM6VxD38jW zl9K1HL-obgOLnj|WOa3i+K))eqnprUgW`+-SJrpq(04lz6`e`E0>3{fy&tQ-kf+5y zWZ({$u7QULTlbU{Yx+M;E|+&DV#Ls82wTU>lLDbQjYMiH%ok;tR6BhjSb@a?m35M3e=8b zYuHU(v}8;}cQI<_hQFQ9kJp-$LIb-NKge9^KiOH41DYH8(o z89C9|WYN=5+>Py|m}rd9aR_9k;7M(?;#5>-xgI%ydr#9bnawyd>#DR{N$j;p<0mnc z^d@_rA1r4LHs&v*DhNU50zcIDMm&o18_cM@RFNWYwa*vq=_Brj!V12aFNeVlD|=P8~?mm6vuat>zNPW(HNKiW-4yyR(CC2;x(gQ>VL_ zRqdg{DD< zpP>OQoPY0$hGy#_yuZy9A5xq+l@GVwWZCfkdAw?ZSg$DzMg`Kp*fa6U#~f@56c==i z`rY0o%6b*s@+c5^=jIQ6D7r6$a76lXR@h~Fk>pr3a#XF8rMd_7+eKSpi|gO+b(nHq zbJoqHqz}*h()XEN3?lk<@;p8D%rP_-8>O1gNt4Eclm_IIjJhGp{cd2qc6RtYPkUg- z+!Hd_vHqt2N4U;zx}q{xPxXCJ7IxQmhH|s4hzNg^ zCc6AXSR$soMr^1(z#BU6bWN|?6_ZtewY3_3_vvw;mnQd*|Ut2cdAhV-pf zcSI6poGGLqh^B?MjdSX1KY!}Y-DJ;kP~bzMX9{&+I9cvh;LzLt$U1+B?DMUI6}{GX zojdefpyHW{i3IxM+CTW@)=IRPcC6GhNZkf^nYiYcLyrR?jOp-XI&m zn8evU+%XN5_V;x{xaSLLDAWup?@_jscNC_K0oY1HqcABf;bSC9VJ3j*cv*aDN>R+~ zuxs+!jAFf?w&S)iEf(ga2trGT`9R7BeJm;IW9A>B2V=NKC0La z*kXECyrbr#401b8Uz=#Xb(`+udU2sj&Yzhz){b)+GJ`rs6kfG?UZ#hqXCvLy<;`rE z7M2H)sxsR9KLFA|Ex*}fHxk>&<{mJ^^{dUHfZkZtqzrijV96B;@aZ>^%l)PcFd#=N zeeOF}e!-m|Sb>`vNvBEjP@&@kk7~6A$C_OoRE+)B91;Hj*8a6<=#7-k#lJr&3<%45 zR1;`djta4bldxHFpU#)DXg#!91-q2iVn#cdl2n1f7&xtrZvLK|j#(jCEZ#(n94-2JCwANQOp0UM-RlmOyd=`p_Xyr{i3= zj&zi}TMbmMO{*JuNKj7Ja+zg4L8eb^m-aJS$fIoWl^Gesc0cFR zfi!r9>^rq}iFpceao^Uub%GRuSIZqM7RDJ@Rh{k?gpsk0!31H4TGo|9+)3$*hH{H)?&NIS!vTMNnSn)4fN zX}y1O zA^w=8`QK6>JK3CduZQg|41y%W$T1?chvxc@m27FSi&&s_4-`2OhD?M9s2`PeiGQc6 zg^NVGVm)C%KUSxWTIER*XkZT8r&av|nq05AdpUJyDHfX&jKv0We}*H?T^dc!-OFb_ z2RtS-T@Ut_vg?6kX&67>nVb3w8sl4&2Ysx5>kAxyB-L{FWA=U7lMa=9z%bK8DH#CB zs!8V@7mp{l<+Gd2d&hlM^xS3_lMG4uo4^LW`>^B5qukPC&ywC8Y{>BVH z*4&@_Zqz80simo)1pDMJz^TU3kGef6Hagrh`N$&L0>{T*B_Irou`NIW?K z82cC_(5+qUXiUWxQ0+8o0Kr|u2B4De&&)?Ulrf0TN{I)}_038=JqRE1CU?jp>8mLf^L6GCDb(ORik^p3gak@e~_z2*3^CHw;xwgOflG} zCid9}{d7@7NsP`drjQr=MotH7Sr7E6+w4P;eQ-y$n}1r-YmF^fgQ?j8?=Yy_QqfT0 z>eg8Q0Is>Hr&+YaR`b$j&tA79p!3-bk<`=7m=FhTnK)qS;n1#(WWXa4|w(;Hs! z@W?vFu_ODSpXo;;4r4A|F3NcJvg!%}+)Od~V4t9RwQeA`Ir}B#(tpoMLT&@oC9_f= z6L@Jp_N^DtM#uV74~x7qy){hp{4lxxlVEVbt1q}WWwc?9g^^`Y*JtF`pzk#ZXj z%0_*A)luUg3YH{lEAITl#S$v$H9`BHtQ z_cMzhn2Z(ainUQxXr ztQ@*zt7S=Fp{gz8Ukl_0lJp->vYJ2PHSn=G`$gKH`t>wj1=hxcF0uaV{{W3rJ~8mYmNJXn3mV0LZ0JegQfc3kz z8UFxFfsS%MaA{*`_e+WVz|Wp>#V}jK#DA&!v3z24sbmw zk(+tsC*?lmRn(FjQJACvo}g9@vt^;scycRyoni^61(w}fW{rOH;BW`yitXQ1nod_t zX3r!^BCbjN{{W?Vj+cHdHJfXOZHgajoN=`9YrLDrx*fDzR@V0Eqxo?X3>aA?zC#ZLJ{{RXQ>n)t!+oxh8hd<1p=~z*GK{ru(wtgIzNb*9o_X?do zfIrfkH;lYRDIaIj^q2>4Gjoyo5n6MiEY5`3-^ACm4W;$NoD@oHt7x3ljf|DBhYRv&p5~_(5f;aixcXM8fOj8w;o!L!klf#A0R)4XiFH43u850%gFh0Ko!~pklR7We@btZ zySIG5olA3YR@zOgmd6!VJ4mIqS2sZm4nvMX$mvxW+=)#`LQxo8=Kv3zr)olgDGbY= zdX6gN0dET;G;@@QpPv|hdQ&A_{i-n0sbma?InF@H`igw4J)&Jm5*^Wk8Gi~>0|Ub- z^`}_L2vBAFxI7Qitd_GMF%op|SV^?)W44_r&OF@3FDZkAxNtgp(g?_N$ic@Rm2-Ww zGOhxya>cufNu;)7h7vMJ7#@@+`k!PSsp3bHPvF<`J69E|s_eoa<;fwduU4}4Rt ztgfUUW6l8dCbW$<4y;ku_;5#eCFYuC11e>J=cljqt=k<5t-%u9w1K(joPK>PkJ0g` zYBu+X`(;8Q7UyZ_JSneQ!xV4bCQss{|r4`B89hHhVsO4#b zRT6CiG|vMI+uz=tqz+Uwe}!VE(=JH0l^_s72hx!Bs>;h7`GbW$R~2O7;DePt4Ru0X z$ic+S*WfehK!LfUlr}!RR|Bm?LMx8bDH-k9iuC72k~c>FCFAQ{4~Sqbr`)RNa!G;g zY1qzJW}csG6T+TjGC1IjaaR>#j%!ej8=p8}DC7~z&$SjY!K!_dNG=3X+(M#3)q{b9 zf@?_VmUc4<7UD#da2iZ8KZPz{rcs2PiLS1Nt=svNDx&`Y%P%h^A7U!HYXN}Y7SLOt zkn$>o@r9I@W{{Kjn~&0xX-%qml3N#x_?R4;X`OynHZ3ph?qg3m8VLy}VH{Nn^m(MZ zmRV(iB6GODbHz_%6dH;*+2_kI%F*BkU&H#+Y7!-k5!$@!=3;*DI~R_%S6xiyPW=pt zVq0aJWSL|Lgeg(_)e&ryp9wyNW3!wq2v- zK^rwoX>4gmmZVpZi&s`#cAnMdG?|=eB4HG!1{K@Shv$wFcl;?>_F!f`1Ff- z=UMm2WK*9^{b-HRy+saEO`s9i1Fc9SIp>p8Y{@4BlS(5w;rr&+?9W6|XuFgo>(T?@Hoke6arPima9_6r2O!By_D=V=tAnHy&C z0}uy7e-C5%Rmn9ACv;c@vBkC3u#7g6K2{j?G|PQNERejkSV-?zaB(DnY9t((M0)5$@UnFNu6`Qz$2sFAD{nq~#H zovp)10^3OQ73dqSOmt`i{MM8D1OOgswo{8OR@&u>SmS@3{{XOh{{WwA)tRlu%lQ}3 zGP7kH%przP8O=e}Qf?a~CQS<5sQ&;&x<=3OC+AH5#k5dZi)Tng zw%*ufp*+`p;Val|wLxsH`>T}+ zpGNF|ooUN>+_*NSW_GuMp2d|i955r(6+~M*VWVsxV^^ed71W?05(v*VSsbrSgYI)) zbys$J6q6zzY%X^=Vn#4}W~BRM%E4m6BLI`rH5{kr8!Fvl*htEf5tGNS>0D5@FRKKMm2&?8D+BjP=zY7_ zp};z*rDn*Gm)^ikywYe+a^x-&IvS{jgVQI zSde_!2kYxwy2RMJcUMFXfF|y&*yozbx3{@sB%LL5(`xpk(5PLzwq4U@N$t9Yl0TG& z;O&8$BD$m&~{!6pV<+Bz;Y7h?I2fD@fm|l~okPsNfhN-fbEvYu6kBt$t-LlTe3G`Z4H7?ZaR9^ zgJ-CDyv-vLhEMf_kUP+(ud6irr9{2hk7%AfQhz&d%)zpHoQ}VZUn1Cr>~eBOIIMKj zE?t!G-tr8B&IWxdw9#B7s)l{7lBDs+t!FqYk4YU=CsPkislezD*%7i7vX1-?XpSp? zDDNJbiPUT~` z9OVB1o+@-s2fbzK4v00VvBR0 zOs!ScrdqN|cTr8EfIRj{_aEL$%xY^p7^gTAZEtak&=$xPNhDxCI#WK~8f5~aeieg} zY6)yso+Du}-l357B9YZ$lusKHj6W*2>~8H`5x4=t^s1JgTUt8E*kRBbo0?d&DNBoA zG!L13)2we^Cr6F2>O(KoQz4!uvS?N>nDr*9q;CV{WP#0f;i{`RvzHM{O{R}+f_QZ+ zOM9V$WsDqyj(d;Jk?auUB+R7tZflnCPN(MDOQ)7UyM58Gu6tKl7^!Ti>5_BP+PP}- zUdKcn?Q*cQDo@Rv9;|6m4A)HokR}&)LF@R{mohO2%g@cgJdehPbGcN(61$S1n&)td zuR9UdZB&%T3GQ-gxzr; z9zei|ah3Ub%};utXtI$AVf;frv;pOXJGO>6;b|q@2n4YQzpZpeYAVK4jrKV>t$dwc zH)2XV08iGsG)K3RTWHC783L|54r?;xBscN2fT}AN;B)v=oqBoZSzyzfCxN-hCbqg{ zr6zSYaYLu+Z12K11ovmDiQF-P-k(4)brUrCS_sEs`OpGUia9+ong>0> zph1o*DH9EvmmFsxuU)|LN6O2S%AVqYAR{W>zEk|Gl7Y6|-QxpnryOU!b_3*pn1H>> z>5Akd`7iGm9EnKC@9$Gl+6|*zKk-sEmrNpZi8lm-7@oNl;LQYnWJ4_#so8jmSDJhC%4 zmm?AgATS_~#~p~~tIF*fH||}I-MoR1%CE%>Gy!D=0VI?|gZa~zD5E8UF5|)6a&h&o z)-Ku}W58Wr=5C7~+e~f2-f}B(6W^MG+#_v8z#wM;Rn%M$aqU_;^J*y5r+R~ z5hBW4oP=$y>zbKDuR+k%mNOo-A8Harcton%Odd$bPikqA1YT}N+-EcZ5ynZuppX9m zT{YxE7noT{BZ^jaPrPxs;AW7~PgIOOv`vqiHsk0){{ZV&7O8tBqem^XZIWCjag&U5 z#dMe3TG7y)HVI#Ra%+m!B{JVev9{kSH*>(rsFShPMm*Xv4z+k?Xyz8BRPZH_BvKC& z-C!cw!u@&z1!c}!M^$19u_TV1)TAmek{Otufw~I8)YQ6^;n=)_Y-HLOMpDFOP^t~CJv04Utg>?*nYWZdm#U&^(N zdx}*O97JdXGyL7asbKS_aIr*ic*zwtoxQEP@1N&!&ML&3oS4PDVFoKitYGSzT3VeW zP=e{@@3pXfYrkm_E0EVZA-(}&$Ze}N0QIib~vb& zCoP#&>KDwrw>C!BJr6uk((hGPb|FqdJ$S1^(q~du7WsWf4LNMC2o2yCXZ$J0OLgk;5BM4Wv@AG#M01*jymH*z$1KYSnn+e*kWZy$KyM>Q zNM%tJY*z=62=uPyEFg|(<(gPz5wI$yh5_tqC~Yh)qbneSM=s9J!FLkPo|xx~)lwg| zRyei3)a{fsD6IM6k2HekQU!JCBl*S`w{4R)rhr6jx|GTB!plCk^K)f(SO9PkRgRa zsULPWCp6}32OygzI6Qvi6nilCvAyha&vSEd#6DLig(Cz10IyH9lxg~^$z;;p0mCDv zH{-4c^{$x9Y+YOI1hDAdPy~G`%X$&REsVgfLank(0(+?mN4=ZCoKGiB;)g>^XDXD(l9^kq5l914A*BnVTV5K#+Zjh@vvryFa?M^ zy??@-fCX$1T+}=7zq@Wv(Z9q}f5gD|w;xE){{R(0iDOvAI7slk{J87*Qbz0cVDZH2 zn>Q*E^JCKzcsas z0UhgI!ja1< zMof|we(?I#&#N>@Beu40EPs2hYqUxBX!DB_+jOVX3*SNlTTYbk&{Hiftf&H5KCw$rZfAy)SOJF*`;y?P-dpb*@4b^+I zGfIM2v$kT3w8xU=xdyb>C068TBkvjwgxhiFTqqp?bAd>7`Lal!fBWpwWzf@JqT!5< zy+B@}v(}MJh1+s~xfnjQpV`x%MAH-RBY%Z8wA-Kg>v9KtF`!_Z@Wta)!NQd}&(@ft zQisfq5&7UYN3|i-t^xl5UvrcG*%% z=V&dEc7stJHsk(#T>9j>rZ%52!1L~Z@8SOd3I>^JO9oI=cJsBl`=Ir%66;ENr@3h& zyAugnP@-jaj)(HDzxzILIG*H@{@MQk3SY6^FH5Vh`|SS!g+!IjBT>ZQ?li0AbrC@{ z$OcYR6%f<)MBG-=MJKM|{HxGD&3oGF=l=RX;YZmoGn038f8byJYL8}(eYxh+X?lSN zbSynv2BL-*f#ebZBqs!8wR&*3xefuip9JE#EpBI*UA-=TWs_%2bf%z@GOXIMT~9S( zP6bv&Qv+6WmQe9hDXQvfWi-H-G*fd$0CRKeMNT3GnxIH7ubXtNQ4e+)tqEn*^z|te zL7aE%S+n2Gaoj5U3dKPoN}+Z+tu*-dDhXsA%~zXHmgA4OzJjwQxsD~v5KUB)`dJPm zz!hd!ay44!D2L9&-2D0By@E!f7j5kzEx4X?IThn;9E!(|MRwjB@g?q;rOyq7cII|$pEMrdN|e$y znJqW=IPRqY~$%Fe6omqh&6mq-2tKfqLjPm#DSaNqAp{{Z7$b4#c`OKTd2 zf7zIi<%(!qwjVyHe&hYQ+x%&JScfUve`IbMXk>4zvHrA&N`^2?#}W_rkNBG6jgr6m z#+Cm7-jJG4?CWvX5OeBtQ|;GaP}54e6O^B0yBRq z@^!b^`%GYCjAFE`NVc9iN-HRAGM?hD$XW`Z%QhD6}0CjDervCtht40HeFB{PL zSpH_PBaS3(h>Ookjo5<0BTVP59K*9Z1LDmzecLP3{{R7B@uWU1w#V-D+qU*%tNg1L z7u_2c5s4IVxa(OL_xiJ2$PzChK;^;?lyemtZJh}Yp)DmghjG*s%7bEZWPs*Du ziH=>4IUfGh0E5R`yIRKE?acBnb}haD{7!0k{9CC_aU5T2F|!VHZoe<-P-%9M-D%4V zv8yW0Bw@RZH)HKuR$5?&X(YI1mQnJf`wAPELE0l%Th-(rF0YU{IJQCkDe0(dG9UR3 zNIk?U$LUu^lsMyp268IA(HO2)DDC8AILwQV^pvC~krLi&paA;K(IjW0gZza#XVjgs z{j+)xUZSPA(@d8uAd)k&a5pY#qQ+F0<1udJKYTxp@$;u?$xiv$KJ&UuAmXh~~WF zUl#bA&y`PzH5FBnlmR9>AEkPXObFi4n7{|GehqlLMrF8mIU%GZ{${6~(lIw}JVW9u zi?|}2#5$hWaHsdjjQ$nbc^aA*SJp4e4y@Ch{v1~&9jsBLZzM{@5rQkO*$k1!;sQp{ zIc~KMqDG$1<#rb_nG#KJP;PiWX{y_<*hWSEqah>a#lZj{eroKqydmBw(E?=T4{FD` zzE+XHes-`8o!H4EnxAcQl@l*izSL~zcz?97xAn)`Ndxt)p{VMClz(eqx6Q~m41cXz z)Z9;Vl^}pI^{leT&xjxIf%?@cTvDfFqg%VeM(g{$pIKY{YPH4H^E8EZ3$cNL`{UR1 ztHRudJbTq0pxwfR<8w2902BTdcQIvaJAV>tHvWC36$LU=7yW&0(ri@&$ZP{*bm@-I5xcA6qc59Rt(b(u7| zG)vg#m4cXvk1LPfe-G=&<4LqLijPy&Rg{fR><~c*&F|YZJkK=GEUmsrId;x+YNUIJ zT=l@K3UWmPEGZQ#oYX2RWuOT`#Y(232BcHZwE#<+DoEkpfSxFz4l?>D)8}|@KKdMe zed{t?sbvI22p#LZ@pg*Zg{Rvf8M%RSMn3ZTR{$132#-IFBu61glFgRuSFPX;f;lx- zNS#k0gH|mjXxLM4LgNzLmQA>4?{=rc?-Ys;tzR&UuP$RI(T?)2LKmPz-WZAWg zZ)WCCHKhu;F@m?3e7^A5E2(^@t!<{@6A2BFBPn(CwxB4;Xh zS5pKQ_X!=+{pMb9JNK?K+ft1F?nAYQA6n@=J$SMStoNP<=Zantmt zA1xQ0k9=`V0JCy=?UO{Djf})5LC39Zpp33bv<6^79PmM<&m5o9qG!qwrzD=Z%`#ck zCUC?7jAE059m^*TzyKU%8o==k0AE8o;4Fv<0Amb4{dKu+fW^CZH)D@#sjNaJvM-F7 zpLgNk`c$Q6CUaL-;Ic{wUbOeNKVY1%-Vw78z*X2H^J3U}tBGxxSq~wUu0IOZ>`L5z znL6KC#Wv6#M$>`brZ5oQ4r)Cb+}qejrAmza#18efBx}hXG1S&tnB6i!^R|E$dz7-M-C0AZ^jIVVylib2oqKI+RxaTLB9nnD?fFP1w2N>jC!omN@bR zXE+_}rF}Yc6D&+tPvJP=8m-~=jvutMx}hKexZ~EfF5zp7V->yH!rOt|ublq?v+bJE z7_${LJw;rxo<$=YottvEuoa^&lqPI$!OuDE>qVu7)K^i;Zc3mh%!s*@c=YF{KdoH2 z+ZC+RuphgKoSbH=!Z_UmMUK+p8}7$^;Qlz~wi&KX{OA;UL4H=obI1PxTlK7M5*K*y zqwBg*!vmh3e@fQ=(S{XRu3eGTW0Y=xDx^r%xMi^OW{mmaN!S4yIpU-He2Hr#I$~(p zWpj+Fr%9?<7SG!Dw|uLAg*CNX2-huop!CVe{*|J)R7-wh&8ZmR5~OSMzRaO16)XS&Nq;y^1h&9ICkFvU63}I#t4m%3yIN57c@NM1ht0m>Eun1g( z<*^`-#}!TdF(hnM+**P<{{H|VewEQl;?ED7h^F zW1fEub*koTVs60rO7N&)AU)KHct52@bK#A8`sCbAJ&BZnxl93p(}DG^v99QFTSSSf zTeN5}2`qn*q#h~J6D74M$n;cW{V6#%G(N&7(X@LzDen?FP_sxAxnq&j+NyYm&NlWj zwZV8<%aPrP2=fnpxr{)b80&r?8i_3d7 z5?st9O!YLwbp{XbPc^(X%T)lSy~ryeNLv4MQNara1~xIw2} zxZG4{>qQm=*Pl_bi|^jsfrFgMTpqaV?+?fu~l-8xo$u^1#6A1!SChU!P!sJ~KbdGvWCvsKFZpweuplatNwAR56AI?`n%{s$Q@*&$YqcvzG5U4w21J@OVu57JiJtWhZ;lhF`^3Q4`D+$S_ zNuUF4(1&(+CDue&jQp+xDF@c0X_gX686;z#ne9|GIfS-eNj$^A z9@VYoCKT?;JpC$trJaM6qRS)6ym^7Zz!5MB`5v`r%6E-&iY zzABvVB@sg|&^Desp7h80(bI3r%0>-Is zrxm)FLU;s@f}oW!r|K(W(%ktfF^)1b>su#vaxBv_ccrvt!oGA;B#m@YNdc_T7e#G64K+qtV&+N^MH@(4f|kOxuzG@PxWykOe7&_f(? z!d58U5!9aarN+fXVUnP>O>-@-v&n=;ZNoWZjiRNrzj-X!OEL*#8_|gS<2^pKl#tyy z8?&Oz4%SQn4=QkaR|}-Ot;(ePi)4eps5$=t^;bhKu&hfj?^~jU6_s$JR(ZU?DcFL3 zzvE54L)l5AqPVtL;2ThKy=s6-nlraub2LG{CCo%#Q)X0u5DGU>j;LIqpV( zO4S_AS=ds%t{1S#^fc)$<9m6A-{5Y43Qz8mqudPf`c%ji0x^I=;;D$iMcEUpIY8$b z3_(15Q=`0VQmUDnHX|c(J4ISsb!ZC6xd-n3YMfU}k_$VFWRC!aayr&+$!d*Ypw*bN z2(HfY#E#sIaJ4(y+QT6Q%c&R~cc-7T!hptP^(s0sq-Q0tcPK6hVa9!{H(Gtm_E79b zmTG0mQmO|mr<#P@yq5}OW|BDa!A}|DrD-?ZDy)l@cJCyY5yj=Y{F_5(lhoFUh`5V5$4rW$ZwfxEA>GO_>C^o2TAG7276sLI%3BHO zM{`?ESs5qJ%$TMtdn}!D{XMGtO%n~QN)ym9tj)em(Y^`W)PH)Xn^d;X?;22Z-9h8) zTryW@V)s!@LmSM_(HRbS0A{ozTY-mIglc#Nh^&EseJi-OE)bjzi;g>HfoZAC0m~0v z&S@%Qa$Ae6O5z#geV~QU%5z-pqr5iFItC1<3P8>?T|m&Lnlc&p1J`J)ns*q1Kjc=hrqL6cXtSZ*&3c9ln|+VB9%$&}>FZoyi(`F0*)3Fl>LPw@ch3X)*QeX5 zh;%@_FbXh0uQ~XI9l^Yc%|VsRncK@5z~dSG>!vE(m>hkyalA;TGrYGF6HBoDp`j!b zyYC?6)1phL!BJ@|65n_)AbVBYhqjRwZLBAO$KH2bmOs*}<3lC1y0=a9NIbtlIjX8r zpmy7U4l+ktnZ?ip3p}KD+G;ekxS858o>XU?%%_7u?u_}_UDhBva!;*XNgMzJwgAUk zj!PLW+&i76q`*v3QPqI zDjC#cbx*h2n$d!Wst-{}L{%ydXsF|nRWN9+c?|iEjAZttcG{%lwKy;p6~o~^wa*P? zjbs*lsegL3Ti&6!07Nh_DpE5}dxS*IF5^fCG>z7?W`UYADKJGhcQgooGfB3M!jxpw zKwQ%vGtF(?mWN7s;+cHbK#41y0h3J1CJcI7 zf)8IiIQ=Q&TZZ{XqHh#4PMW#5)>(rOhl55WW&;NVWal+; zJU z@l#vaSs`F8i7I$$PIFWJmiPg>;gos=03Xtr(Mkpy^eF!Tcnp6kzEnf2B3V-w?yaP|10uDE;oW5FXb!s9RLf0r|DdeZ#k&YOa927M{;+h}%|S&m)Q-M@I*H$CK3T zss~l@;cxj1+n@Jl%^}u2HV%KZ5s385e=078X5NLL_(#y3HQZ%-;f66ye-1`m$Znx? z+i|MRuJ~~>4apng0L@FNVP4XCvAMKhmMWJ&hBR+_2sp`S`rI0QTL|nEErq zKX-L#N#K(uKzvi-z<4t;_JOnd)BgbBEAa5(M|6Mfi2k&c6n8DTNoXamm-b7vo#udm zNiH9)Xw4R%F(zAsAnlgvSyOn&!`A8MHMQo^=@S0{jYgh0(A_t#pQw@T3V)4Tl4e$L zWy_5(PL(#pd$qm!;-Xy>N{j;2ha;So%~5}d8aO0JrC*W{LaM*xO#c9dhh%>4jdDor zWl(>WN{o6B+DV(KZKWfI88{t*!Tc&{&YugpjZY_$u;cvmT=MwsAMWTfbL(=W{{UsC zP2=AwOMhbL2mXGC{{RzDluk!T8q`{SpM1p!%e*Pw*E!8ATth3P5ir`>QLy@Bn&nr= z_cCdlX7gQ zGcdt$y+`L<)yIu|LvJS6(zJwbzcjKRR&2mNDZM1dIKPt-K)}JsP3kyItt%Rq) zAb*W88)KYl&4cQz{xyOB00}Oz&48MIPhk@Q`n6WP@lLH{V>Hr>Fz7x|sCoTO7eI9k z&~;rb5%nMadO%>v{{V?vW89DMuR33d8tjd?{S`syh^gboy7LY$AyMif29vP$H+*yU zaidwrwyOk&<14oqBOK=+g>ecxp7nQ9*EJ1Z2;#nyH(1+pvM$q_raIIyp~9Xrd(tSU z0nc1i43I8IT2X;b$6uJzg~xgZKO&AWc%;X@E)Qy5MD-}hp&X1+Q_B|TCkBe>_Jneq z`$-=41;9I%N$XYyam7J`_gj4{I!ks`*>M0=3Oy-$QYiPO$G&PCyDcjXJom;abCJ@5 zwC;dX85<~N>VFDq#s{hVYEUwIQjw0-fQ!o+&q{dd){GO5Dcemj8q1U*XE@;cS4|g- zVYju0B(Qk|Xaf@aa^25L=E72x$52Z8R^!LFu*B}Vb*}?I zGZXxXtXUTWoK{|}c4?Olk)5PfDG8&a(Y_&Sy1cWm_I95d#-QYHJ%8X{)u}IwHB|(K zvO(;p{7rFQ1V=F6$_W6vu6pzpqHbc28|Y=S63rvYwnhVtjt{mfu4gA>Vow-qpz(QZ zo|uV$tyO;+YK*`gRz1g$mL;qU9}P`+ZqpAlVx~!MH*uaRmbz-mEu2oCUiS;XA9x>s zUX-q8s=bl8-XqnV;k8M)^Z-?L@dl+ltr}{#rNGJB_^p||HD_-w!EbXY$5)h$(nq3O zM0dxhMi`7_%Gt#QU6>bo&Z};y_ZN5DU+$APQBXsyTwLTEyR2utrnh`gWgI$1nM-w6 zX*LiJc*n15=It$Z!R8P_SqkGh^r5jSzH1t*=CbZHPQxGb(Z9x_lG(vid1Pb^eqGWq z{lp`!$Q;yjGq#KrwQRzQ-%bu!`wMaJ`^G=cr)1OO z8-|3TeRc}zJh08U>7iQ(CNaUPHwfN%`#$KC7~1RC^Qux-EzxdX>oGpnWxM3j?ZWz$ z8LO7bZF3g!WT=I)lNbV=Vgoy{$JEkKCB%Aci4=qkfg0n0-ngv!wKS=QQH{}nZIv}? zqbh(2G1IZ>T|`}gj~UF^GZK+QDlbV{sWL93*I;j#zNb*n#TggAe) zz!VH))YKAQO5l%`Ks;@#Qfe-<2(gzwqK58Iv`K6~UPzlonM_clt_UbOHO$(@Ah<>c zE4U4S^&Yj<7{1iLTaohv)7G(Nw3gdah1Md-qXoaa?@-apT3pQ3wz62z+{6Puc}5jx z-pokmd+Qrwe}qQ8s%r;^No07Ndi~Z?KU%jWZGaVuf#@iVUgjw&7O!iWBaAu7Bz6_mODuA%lKE=De6jJKdzz)FKb5=(w9&mHxq;} z8ZTainxTDdd3$9lylz~ag#(J{;k&St{ZgJglrrw$gT+`HIprKS#fWfB>4z#!)v;c#@ zH6kN1019d*TNR@M2=GYFCdQErR&Ly$m7x}&861jLlz$COmjnO^tlKq=5PxPzMOs^h z+eIA3@*^xtHfE!@=2GW0NUDq0oo&iw3h7!!vx(~@iv@?h0zvOa4h=UInW`V2I+{S{ zj1$_7W3?a@NruidL6q`9qZ#c+);$)04>7SonX%H8D}Q#EVW0;2ujxkjr))HyS*9jI zGcoH}`r{F&5Pyk)t;bGztRE7cmay~uME;b~Ea*H1ZT|oi?2{G$09kOv6YK?Cjr8?` z;Tj#+Eh~cH@&-;ZTK);K5O_~dR_fv0{wBE-A^!k`mg3nMrNd6~fOzL8imM#ersA|Z z)2cwKXG>=bjk^N;ye>BWHBJfs($@BAY@uP97_eSb2O}rxnyA(n@WcD-l}mMP+Y2AO zYF#7Av6fx;2*zSM4wN$(%6HW4@1|5&nh6oNw!m?a4=4FnbXOBaB9U;+81ko~`VYpV zmsqp0x02RtIp&Q{?cjw2j>olR+4!m}tG7!H7Fn7BmM=1l4#)H~TT^EvOU91&dNrwy z_iVTT?p?s}dgi$+U-XM7CvM=yh*6HX?OHn4sj2vm)oo(1wnGc~xHIl20Qy%y;k&20 z)g?y?0f>SJs5q+VO24$Z+gjU`0__<%$fiXlq*F78g=Fa5^Pfu8vWLncdkk&nxt()E znCcfTX?3xg{LvGD01eGVw$ST=rf;PyxG_=N0-=*wzCrRj6dat?HtTRB#P;PGcL z<;?ptc^>Cn;lShbq!V245sS!^u{?27bXb_hb1Y$uWn6MM8gg1l2KHiPZltg2Rg}4u zBkGtXh$VeJc&56mL=W1YS3OsnXcS*_Ud99GvVq7_PB^UxgDOfdvkzLz@cdp>*KSp? z5M&O$>!yY_EQk@xu*o>+F~(}rIVvki!c+#~q=*>Gj9_34)77Tj8M4wI8_a)`@)e;q zi$G+RSdMcFO{c^iW$P+M~LjVFZX=knBj>xWbXr zk||Z0z|QsT21y>(THWNnc?GuMbF_vZG4`j;aTe`uonVFu7%@cTj`^(^p<)P3fOtOj zEEYx>&zJ^6j)#zH!m9%q;4XRRwH6uAT_f6Emhu6Gco^e3>PNj~rL}~&M44k$+(~R; zk80_)nH^w?5}}Z`?0Ny~`PUh7B1bz$n^Cv(n$4>eqM5rb%rM4dfxc7xN4-~BH2Bju zURek4Zau4za>DY{CY6(`1)~CY&vp_p5OzBxa@x zwHGeM6K>c7o#b(j^>m;eDZ6>87}#x80Nj&WHulBWl0KD9Ne8W2S%%Th4I-mrSzr;4 z7oTd2%|$qD(lpWooy3o=RGLPSx#JX?G`)=hGUKSCu_To5;F0*zO2qRTR}b>ztxFab zF;ylzoC>r709RbT1ahy4mw2SjMoILi4EL-}Q2gV)I5kJf=}!yqKn@NET3;|zc8vPs zlL`(GS^#)@P}wvpXVRBp2Z2Bdo@sMH`cuFJecAx6CtTMv;%PTD5&r;nS&!mzT||I3 zJw2A9>!R0BxsB(6cdhv0s936`Ub1(nq=C>l{7Kg{`?)$$Xk#{wQ9^{u48?& zEk{d&az05E7D0eRRW*j)T}!*L2RjKI)gczi@^+>k{TQQ!S zr0GyinWoqFuN1LdPZCDzR~!0qTrQ7zG)+O}=0S#ufIKq#*G%3SydlJzg`{EnfOx1+ zgWzxV+TEz*`|3ZPG%i*#HArm&-Nyt--4o{In(-o+?=9q}9{kdWQ82MNc{HXr`gqKK6gRR;)?mV*J$Wm(N zvC!lN)&03SisfZRBGH0Lj?TYKW&{{W)ZDYc&ola|$) zzLxL(K&+e%RM%8sN3YEa>|143?tzXf_LHlN%~c~7o?NVl54%5wB>Ja?GD=+B$)3X4 z{{T}}V%9WRE|O^Cy(K>BSO7oHnvI7i2DCfKkuF^_~ZK4ipFu5F2=X~B2k=zvE=p1KjBON z00^zFFhoH|UbTq+II`m!HT&oL*9a;j<4blwFNfv&z0#lLDOx3aSse=aUd%`HG=G5U zPhSmKjAC#<;5E!28FF^$QU3tIr_b^Nkod~$_;hO#^^uJhh`pqa#vMM!$(fSncd)=Y z;8em$@R_=gE7zaB$NvDTxNrDObs@rO`g)J}5vHFO>wN8xPfz<{ns-Q++tr=R&u{y{ z^M(vK11AF>!m>u6r-U*6uIZJIa8-}=u3`LBuaW+`*$1lIsHjhgb@m5tr;qnxQBRo) z$5eE?U=NXZaSZ%l++I z@ckTrN?gb}Pfad-#$jtXW*BU(M#fE`C8Uf2$j$)!$wzdS?Fs8eHfs&sQ=^L*~T@dX)~*v!Zyg?@)Wg zr1^iH38W*r{m9RLDtVAyU!F= zW|@l~D66qIHv;aTp4Dg`m^4vZ)Y%!tR+a@oF(&@`98nwZAZ4liC#vpsqMN5+@MObmtf+@sjK9uP6kjs-028trz6}^MFT7)fFFAwg-P~E`_V-q zp+3zY_i02iukcYt03+K+Amw^gene - runfourftbackdropvalidation - 1556331924.4523242.jpg - F:\runfourftbackdropvalidation\1556331924.4523242.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 362 - 70 - 435 - 162 - - - - stockout - Unspecified - 0 - 0 - - 252 - 80 - 304 - 160 - - - - stockout - Unspecified - 0 - 0 - - 152 - 81 - 205 - 162 - - - - stockout - Unspecified - 0 - 0 - - 23 - 99 - 67 - 175 - - - - stockout - Unspecified - 0 - 0 - - 180 - 179 - 248 - 249 - - - - stockout - Unspecified - 0 - 0 - - 309 - 177 - 373 - 245 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.jpg deleted file mode 100644 index c0240b27b56a74db76f8e251502fbf308c9a492b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29760 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

^)o?^3 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 yQ$Qme41t - runfourftbackdropvalidation - 1556331925.6244981.jpg - F:/runfourftbackdropvalidation/1556331925.6244981.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 365 - 67 - 432 - 163 - - - - stockout - Unspecified - 0 - 0 - - 252 - 72 - 300 - 160 - - - - stockout - Unspecified - 0 - 0 - - 31 - 94 - 70 - 172 - - - - stockout - Unspecified - 0 - 0 - - 310 - 175 - 379 - 246 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.jpg deleted file mode 100644 index 7bba24af4fd1875628172aa5d63243a13f98601d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34495 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 CR42{= diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml deleted file mode 100644 index bef6629f..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml +++ /dev/null @@ -1,146 +0,0 @@ - - runfourftbackdropvalidation - 1556331967.5599852.jpg - F:\runfourftbackdropvalidation\1556331967.5599852.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 368 - 71 - 432 - 164 - - - - stockout - Unspecified - 0 - 0 - - 253 - 76 - 301 - 160 - - - - stockout - Unspecified - 0 - 0 - - 157 - 81 - 203 - 162 - - - - stockout - Unspecified - 0 - 0 - - 309 - 177 - 373 - 247 - - - - stockout - Unspecified - 0 - 0 - - 180 - 180 - 246 - 246 - - - - stockout - Unspecified - 0 - 0 - - 59 - 185 - 115 - 254 - - - - stockout - Unspecified - 0 - 0 - - 127 - 262 - 194 - 311 - - - - stockout - Unspecified - 0 - 0 - - 228 - 262 - 285 - 306 - - - - stockout - Unspecified - 0 - 0 - - 336 - 260 - 386 - 306 - - - - stockout - Unspecified - 0 - 0 - - 324 - 319 - 368 - 354 - - - - stockout - Unspecified - 0 - 0 - - 25 - 103 - 64 - 176 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.jpg deleted file mode 100644 index 25023982284d4fb7af116aab376b9c41156d3b7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32772 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 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml deleted file mode 100644 index 570ced67..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml +++ /dev/null @@ -1,158 +0,0 @@ - - runfourftbackdropvalidation - 1556331976.6628668.jpg - F:\runfourftbackdropvalidation\1556331976.6628668.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 368 - 66 - 427 - 163 - - - - stockout - Unspecified - 0 - 0 - - 250 - 81 - 307 - 161 - - - - stockout - Unspecified - 0 - 0 - - 159 - 83 - 205 - 164 - - - - stockout - Unspecified - 0 - 0 - - 24 - 103 - 64 - 173 - - - - stockout - Unspecified - 0 - 0 - - 56 - 188 - 122 - 254 - - - - stockout - Unspecified - 0 - 0 - - 172 - 180 - 249 - 247 - - - - stockout - Unspecified - 0 - 0 - - 309 - 177 - 375 - 246 - - - - stockout - Unspecified - 0 - 0 - - 336 - 258 - 389 - 306 - - - - stockout - Unspecified - 0 - 0 - - 330 - 318 - 368 - 354 - - - - stockout - Unspecified - 0 - 0 - - 132 - 264 - 197 - 310 - - - - stockout - Unspecified - 0 - 0 - - 229 - 258 - 285 - 307 - - - - stockout - Unspecified - 0 - 0 - - 227 - 321 - 284 - 356 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.jpg deleted file mode 100644 index 866cfda44c7c4d14c7b11c7940f1e91a8047f89c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32023 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 W5Gd|xtgGuq6aa!HJ?Nr}0RP!O;htas diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml deleted file mode 100644 index 1d047093..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml +++ /dev/null @@ -1,146 +0,0 @@ - - Converted JPG with xml runfourftbackdropvalidation - 1556331980.031822.jpg - C:\Users\ZachPerkel\Desktop\Kroger_Olympus\Converted JPG with xml runfourftbackdropvalidation\1556331980.031822.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 367 - 70 - 429 - 164 - - - - stockout - Unspecified - 0 - 0 - - 252 - 81 - 307 - 160 - - - - stockout - Unspecified - 0 - 0 - - 153 - 84 - 206 - 163 - - - - stockout - Unspecified - 0 - 0 - - 23 - 94 - 64 - 176 - - - - stockout - Unspecified - 0 - 0 - - 180 - 181 - 246 - 246 - - - - stockout - Unspecified - 0 - 0 - - 309 - 178 - 375 - 246 - - - - stockout - Unspecified - 0 - 0 - - 337 - 259 - 388 - 306 - - - - stockout - Unspecified - 0 - 0 - - 231 - 260 - 284 - 310 - - - - stockout - Unspecified - 0 - 0 - - 228 - 320 - 284 - 357 - - - - stockout - Unspecified - 0 - 0 - - 330 - 319 - 368 - 354 - - - - stockout - Unspecified - 0 - 0 - - 67 - 187 - 114 - 250 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.jpg deleted file mode 100644 index c7ab33020cc96bfaeefdd8aafc7764c0ed84dd50..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32280 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 Z05k!Qybscmm2uXJC;_4+qKYX2|Jnb~AxZ!M diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml deleted file mode 100644 index 02a2952c..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml +++ /dev/null @@ -1,170 +0,0 @@ - - runfourftbackdropvalidation - 1556331991.2960002.jpg - F:\runfourftbackdropvalidation\1556331991.2960002.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 251 - 77 - 303 - 163 - - - - stockout - Unspecified - 0 - 0 - - 367 - 68 - 425 - 164 - - - - stockout - Unspecified - 0 - 0 - - 152 - 83 - 203 - 164 - - - - stockout - Unspecified - 0 - 0 - - 24 - 98 - 62 - 175 - - - - stockout - Unspecified - 0 - 0 - - 182 - 179 - 245 - 245 - - - - stockout - Unspecified - 0 - 0 - - 307 - 175 - 376 - 247 - - - - stockout - Unspecified - 0 - 0 - - 58 - 184 - 119 - 255 - - - - stockout - Unspecified - 0 - 0 - - 132 - 265 - 197 - 311 - - - - stockout - Unspecified - 0 - 0 - - 227 - 262 - 281 - 309 - - - - stockout - Unspecified - 0 - 0 - - 336 - 258 - 389 - 309 - - - - stockout - Unspecified - 0 - 0 - - 322 - 318 - 372 - 354 - - - - stockout - Unspecified - 0 - 0 - - 226 - 320 - 290 - 360 - - - - stockout - Unspecified - 0 - 0 - - 111 - 326 - 187 - 364 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.jpg deleted file mode 100644 index b9fec1b631c981e861a8f093a408092a2d8d3faf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32917 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 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml deleted file mode 100644 index 61ba9454..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml +++ /dev/null @@ -1,158 +0,0 @@ - - runfourftbackdropvalidation - 1556332002.5715525.jpg - F:\runfourftbackdropvalidation\1556332002.5715525.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 153 - 81 - 202 - 165 - - - - stockout - Unspecified - 0 - 0 - - 252 - 73 - 305 - 161 - - - - stockout - Unspecified - 0 - 0 - - 368 - 69 - 434 - 165 - - - - stockout - Unspecified - 0 - 0 - - 308 - 177 - 372 - 246 - - - - stockout - Unspecified - 0 - 0 - - 178 - 179 - 245 - 247 - - - - stockout - Unspecified - 0 - 0 - - 60 - 182 - 115 - 256 - - - - stockout - Unspecified - 0 - 0 - - 133 - 264 - 194 - 308 - - - - stockout - Unspecified - 0 - 0 - - 228 - 261 - 282 - 309 - - - - stockout - Unspecified - 0 - 0 - - 338 - 258 - 389 - 307 - - - - stockout - Unspecified - 0 - 0 - - 326 - 318 - 372 - 354 - - - - stockout - Unspecified - 0 - 0 - - 226 - 321 - 286 - 358 - - - - stockout - Unspecified - 0 - 0 - - 115 - 325 - 181 - 364 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.jpg deleted file mode 100644 index 0bf52db42b931b476f9b73422d7c26e07e69e35b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33654 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

&{Sd1_!EK#IxN+V=Bf^wAN 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 - runfourftbackdropvalidation - 1556332004.8638506.jpg - F:\runfourftbackdropvalidation\1556332004.8638506.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 157 - 85 - 203 - 162 - - - - stockout - Unspecified - 0 - 0 - - 252 - 71 - 305 - 160 - - - - stockout - Unspecified - 0 - 0 - - 363 - 66 - 434 - 166 - - - - stockout - Unspecified - 0 - 0 - - 310 - 175 - 373 - 245 - - - - stockout - Unspecified - 0 - 0 - - 183 - 177 - 247 - 246 - - - - stockout - Unspecified - 0 - 0 - - 62 - 188 - 113 - 240 - - - - stockout - Unspecified - 0 - 0 - - 230 - 259 - 281 - 308 - - - - stockout - Unspecified - 0 - 0 - - 337 - 258 - 386 - 305 - - - - stockout - Unspecified - 0 - 0 - - 323 - 316 - 373 - 353 - - - - stockout - Unspecified - 0 - 0 - - 227 - 318 - 289 - 357 - - - - stockout - Unspecified - 0 - 0 - - 150 - 262 - 197 - 311 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.jpg deleted file mode 100644 index 56c61bb9e3e0d027a34746d157783c9ec4f82dba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33354 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 uBKeiZqDFomt_Om?DvV8sKbizOZ~(9SuBa - runfourftbackdropvalidation - 1556332011.6702049.jpg - F:\runfourftbackdropvalidation\1556332011.6702049.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 157 - 83 - 202 - 162 - - - - stockout - Unspecified - 0 - 0 - - 253 - 79 - 302 - 160 - - - - stockout - Unspecified - 0 - 0 - - 361 - 66 - 430 - 162 - - - - stockout - Unspecified - 0 - 0 - - 310 - 175 - 374 - 246 - - - - stockout - Unspecified - 0 - 0 - - 176 - 178 - 246 - 247 - - - - stockout - Unspecified - 0 - 0 - - 59 - 187 - 116 - 256 - - - - stockout - Unspecified - 0 - 0 - - 127 - 262 - 197 - 311 - - - - stockout - Unspecified - 0 - 0 - - 227 - 260 - 281 - 308 - - - - stockout - Unspecified - 0 - 0 - - 332 - 256 - 384 - 307 - - - - stockout - Unspecified - 0 - 0 - - 317 - 317 - 374 - 353 - - - - stockout - Unspecified - 0 - 0 - - 229 - 314 - 289 - 356 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.jpg deleted file mode 100644 index f061a283ada7416780b049f73803e7c02572c423..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33260 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 - runfourftbackdropvalidation - 1556332026.4848802.jpg - F:\runfourftbackdropvalidation\1556332026.4848802.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 153 - 83 - 205 - 165 - - - - stockout - Unspecified - 0 - 0 - - 250 - 78 - 305 - 160 - - - - stockout - Unspecified - 0 - 0 - - 360 - 68 - 436 - 166 - - - - stockout - Unspecified - 0 - 0 - - 307 - 177 - 375 - 246 - - - - stockout - Unspecified - 0 - 0 - - 178 - 178 - 246 - 250 - - - - stockout - Unspecified - 0 - 0 - - 50 - 185 - 114 - 255 - - - - stockout - Unspecified - 0 - 0 - - 133 - 263 - 197 - 313 - - - - stockout - Unspecified - 0 - 0 - - 229 - 260 - 281 - 307 - - - - stockout - Unspecified - 0 - 0 - - 337 - 259 - 390 - 306 - - - - stockout - Unspecified - 0 - 0 - - 228 - 321 - 285 - 358 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.jpg deleted file mode 100644 index e04fd48d2f9d189079bf8c116994dd13b6a64ced..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32806 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 Z3P_@gViX~z+Cid - runfourftbackdropvalidation - 1556332027.6408842.jpg - F:\runfourftbackdropvalidation\1556332027.6408842.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 155 - 84 - 203 - 164 - - - - stockout - Unspecified - 0 - 0 - - 251 - 72 - 303 - 163 - - - - stockout - Unspecified - 0 - 0 - - 361 - 66 - 435 - 165 - - - - stockout - Unspecified - 0 - 0 - - 308 - 179 - 375 - 242 - - - - stockout - Unspecified - 0 - 0 - - 178 - 175 - 246 - 243 - - - - stockout - Unspecified - 0 - 0 - - 59 - 187 - 115 - 255 - - - - stockout - Unspecified - 0 - 0 - - 133 - 264 - 197 - 311 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.jpg deleted file mode 100644 index 7455cf530ca9687bd611da4d16505e1b288b0541..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33510 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 $MGK_AH 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 F|JgSkQ>Fj_ diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml deleted file mode 100644 index df588de5..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml +++ /dev/null @@ -1,122 +0,0 @@ - - runfourftbackdropvalidation - 1556332033.268194.jpg - F:\runfourftbackdropvalidation\1556332033.268194.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 360 - 68 - 436 - 166 - - - - stockout - Unspecified - 0 - 0 - - 250 - 71 - 307 - 164 - - - - stockout - Unspecified - 0 - 0 - - 154 - 83 - 204 - 162 - - - - stockout - Unspecified - 0 - 0 - - 56 - 187 - 115 - 256 - - - - stockout - Unspecified - 0 - 0 - - 178 - 180 - 247 - 248 - - - - stockout - Unspecified - 0 - 0 - - 308 - 177 - 372 - 245 - - - - stockout - Unspecified - 0 - 0 - - 336 - 259 - 388 - 308 - - - - stockout - Unspecified - 0 - 0 - - 227 - 258 - 282 - 309 - - - - stockout - Unspecified - 0 - 0 - - 130 - 263 - 195 - 310 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.jpg deleted file mode 100644 index 102df8339c4581ea370f8d575fa46503e27d7b7c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33839 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 YD4+(6cQlNn)`} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml deleted file mode 100644 index 655a33df..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml +++ /dev/null @@ -1,110 +0,0 @@ - - runfourftbackdropvalidation - 1556332040.04427.jpg - F:\runfourftbackdropvalidation\1556332040.04427.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 155 - 83 - 203 - 165 - - - - stockout - Unspecified - 0 - 0 - - 252 - 71 - 301 - 160 - - - - stockout - Unspecified - 0 - 0 - - 361 - 66 - 436 - 164 - - - - stockout - Unspecified - 0 - 0 - - 308 - 177 - 375 - 246 - - - - stockout - Unspecified - 0 - 0 - - 337 - 256 - 391 - 307 - - - - stockout - Unspecified - 0 - 0 - - 175 - 179 - 246 - 246 - - - - stockout - Unspecified - 0 - 0 - - 229 - 261 - 285 - 307 - - - - stockout - Unspecified - 0 - 0 - - 131 - 265 - 199 - 311 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.jpg deleted file mode 100644 index 9f340035f231690f5fa011965ab63a4533fff7d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29172 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 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml deleted file mode 100644 index c7ad36bf..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml +++ /dev/null @@ -1,86 +0,0 @@ - - Converted JPG with xml runfourftbackdropvalidation - 1556332044.550062.jpg - C:\Users\ZachPerkel\Desktop\Kroger_Olympus\Converted JPG with xml runfourftbackdropvalidation\1556332044.550062.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 250 - 72 - 305 - 160 - - - - stockout - Unspecified - 0 - 0 - - 357 - 68 - 435 - 164 - - - - stockout - Unspecified - 0 - 0 - - 308 - 177 - 376 - 244 - - - - stockout - Unspecified - 0 - 0 - - 174 - 179 - 246 - 245 - - - - stockout - Unspecified - 0 - 0 - - 228 - 260 - 283 - 310 - - - - stockout - Unspecified - 0 - 0 - - 337 - 258 - 388 - 309 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.jpg deleted file mode 100644 index 58e4ab74ef77ae3377fdff4100465e542e5d875c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32948 zcmbT6Wl&tf*X9RzhhT%w;1b;3-QC@tAOj&d0RjUI?(P!YNg&wZL4reYCkY;W^MBv1 z-KzbxyXRKl>Z(4~w|~`jpFVX?zb?OS0q|86lobF72mk=WzX$NT29O1yqoSgrqM)Op zp^L$imLW&Bw<_!z3&RPZ z%g6JdNf0nFFtD+($#8JUc<6w1Jpa%3+7BQ=M+ih1LPDSiAQB)T5g@z{0cifM69wVF z4Dde<0TBrq1r-e)0~70?LmNH-5djGa5g7>u1sVCDcgVkS05SmzAsx3gDv`D|8of6$ zPk2f(I!LBzfJA5Z517}+CjtZW4JjEp1p^}!GYcypzkr~Su!yXjyn>>VvWl*rzJZ~U zv5Bpny@R8Zvy1OLKmUM0NKj-{bj-)txOiAzmuVzxNOS;X(i){WsRX_kV-^ zA6x|gxDb(%k&w~;!-aqt@UI~eAfwQ6qY_GMqgi_s(es3(6U(F&Hw|Ebcy<1e*!aw1 zz5(-XGhF-!?Z3$W@4zDdzsUX<*#G8Q1z;l~{M$Sv0)Qmo)Fx5tUS7rA_HhU^M)+HS z3tNS0bpKZT;lgRNeI*jgMU2HZoZ5K^gp1 zV!Mrl1b6BMpV6kecS1(Jg4JC+vzZ%Nm_0PnZPW)S4}E^Q<$?$*pJ9g24!>k|Xv8*( zamXUAaXUp$x_zq_vtVa^mR=9`Ausi&Gg`nu zLX`!2PYI}o3IsCoz$;L}^z9^<%`sFE4I>v|78tEGw!rMCiT{_z>cJ zhrb55hHY)hGVa?v3LpQylHXb5qx&7@7C&&sB(;HX%ZK3v8g`{%$wf*oYDt+XC#)}T zRcCMd)>OTp?K^W--kU?lVP9~@Ci{lGxu=gy>gKRs#5qG0!bl6R>48fbHI8_p?Mo}! z9bg%OI|I|TQ8ktac9%c!9VCNMwYo5K|J06=UEh>n@dEPL@@MaJy<-NDBE+3R$zx=h zuGRJ&jW-Vz$O8;-3CFH*#(JD-xX6x^Oh9R4gi89m{^}!)V)1T-%IpNaO=S5Wr^tm@ zKeS5CDHD?KT$b5h(F!A_z95ECQTC?PcDF*nR<{*Hzh*Pi#oE^u)^Ber`t7+Ry(vZ+ zHTHE2cu!RdJZBD&b$ibS&etUC0bqCTtM_|YZEzXf08Syk8oMh->>2_kf=0JrWXK0F zNxt4qXZ7f>zAX)t0e7cLV)Nd@4hi3eAgrb7yLodqq<1j^$Zylb8>`2dzBo$;Ia(n? zqyvTTJ3_>n*8~e$c<92a2r9T_u@4J1(hvk!vlHTOE!hEC_mK~Wb2$jSZ&!&hV}4GE zPX8_pCF{RFl_gIc!YsxHr?A+@0KMa7m>x~IQY2>f8w1-fCpFQ;d*-tpcx9V@Sm}Jz z2Qff}Mo*Q)mUum4Wtyxy34aT*epyhnM-YonfUW-)Cw+4A7Uff5A+R;rU~Tqb?>xdG zj7v)2=V_qfqzbC%Ly*h?NysQnby_J6VF#4u!5f=8UZ_R_n0-bdFZ@{i1Jiz9o#% zA=x@-p!{0S-|EV^OZa(C?MJOHl2r3bG`EskJe(UARN&098^edX%mP(-+hs}@SEj?< z{ty z;H&rM&3L{?>31*tU)xg=Z>2<|X>T8WZgM?<2Ro{5X z%?6{QiE0h|gI>m{>m`(QwvVgv!F{7D z)n`kFIBa>~INt4I0wiaX>#%~vH4=ckyPEY8IeF4D^w$a^%IHO~7X8pUGXyQG=Y8|f zw+na{I6ONHspBc-FmB`s&6L~gv(3^R)vqmz_yy-FI&apgW-v$BwGc&(2ZD*4#hiV; zzUaA`I(rGP{S7toogn6w?UM))MM4>)9(wRq_T@A9Lw=x3Plqi)=Q~4A_HaXdT$VwG zC5xO2N53bkmiUs-jNhzuLAIdqtGpf7SKSPm0JBjj%w{~F@>)gTP+zx@>*FQYTzb&3 zH30(-a=lV}QQY^8_Q8PZF2I9L)^O&uvo%+*O3#;&U13XUxh7R`GM^wGX6Y|KOuVeG z8xm<6pZV-t}%Th&jVX>Br1cYKEvn&%$~cz>gWR< z2rXymJr=_fbEQQlls2#b#TAMP2*~*&osA@PIT2QxL3V`p?}W>?GQNe^jdg;sxps@M z`Ht+aY@srB(Ifuc1HkLs3RAHbsn5Q6scgJR)aM%*NLOS%w<{|lTZA^K5C5+Z|=?gd7y=vdI=4R zM;^3`*goJ%rKB%PfD#`zI4!>doUan5ZCCN-6vrvWrAxd1itp+B_^q&*k zf-y`LP6#?eMeRn(>|QnJ2pXt(Uw734hq&2QMlrdssD|<$?#jCeQ1I8IxqG5k`?m_d z<*iQ<5{&quApt@QTKh{3^A!;FxpbMep^YRcm**U^W+|Gmslw4 zhiqqdij0mBhE+3pU;0=BVL^5)Y+I^C>1xUBY88<>Yps9ETXc}rGo?ftFVn|r!n#A0 zn!|#A5N|*-*>;f^vg=}ak;g7^jM}LUAt#&S+mJ74B{#Z}#B_bL`lXhmuJBZ>PW#krS#$(B%L7#?7T@xsLdwBiX zVX@x+%iP;~_FvQ(WuM*=p)K<+*xjO5^UONE{|r{!hYK;CDw9PRK*g5+ztFu8yQ%C)PvQpUBYPdW12vV0p6pjHoH@DO`?kz13Ja zV#sjy1~+Eei8dz$*ybUPe%F0JMzQ^ULlc=~&YLePAUB+p6_ge*h7d|^B3D-{mdm0sm+-gA9zmdw`b`awq;sMRt` z*~HL0g1tgpc&vs-R+94*{$81gS%(rPb@NnB7wF+GE8DJw&h~B3%8#ZT%p=p>i(gnE z#>-5_n-^-LXFsMDjTnruG?$Dlh!||&nFvJH8BY*M7O}mqWO4lD|HBXz?fYbLkWDmx zU@1c113YtIxgv#zRL|ZQea#~dJM>sQ>1+8t1)#rw1=v$t>*ZC7YUrCjF{4kp**HG$ zD#(i9`aW;5&_bOe<0`L=;O0KzD%D55K|0@JNUWN=j^4ZpprP2r3?{SR3`k$e{G$0k$;ksAL>IJu`yn?Ryt`t3b`# z_v}^!IX1&6-QTWSzoZC7JX8$*=2mS-(+2{Y#&~`$LewPwTSWw&^)4PXMgI_yu?6 zu3SC^oEuy%^Faz#;9@h{&@e-mbKeJ(6Rs%@noUcz2K!OSohBlf@BXyv2_Bu;^SJ0Cr1aYi&3=??naDj!G*76__$) z!Sx4RqGo$cRHSQtVDF(!UOxB7B`q_LX*8kTt6~F$08uu)RyZ*nVJ|!nsEeROKs?_W zz^K)Qy@H8WbiNoJN4Nu#mCWW8tbQL3&7$g_*S9hq6Nnk{vsk^9GHmN=zRj|&=_0EyRJ^VXHai~2xfG!(tOF3|UTu2s z2h_4WHYp2-CuT4$dr55+^wkEro>q1e@ed_i6l<050eG5HSV<)(pTz`u zT^QM7bA4i$$0!aP5Re`gk_28DxG2Gy`0^>0x+HWdh}PNypP6ut}8<74><5v z=m-%peCgDJZK9A(N@d+Z-JOe}EpqO?kSG!xG?_jx*KvMNGS?2$gjrXep}Yjsu-b$h zphGuJyoh->V__9~gen`KE&x|TJ6Ya`wA+^{<~jh%Znn{z1U>5sL#!}`j)wesQFqj7 z?CSlx(BKdzL~uVuIOGV;KW%m^NNkM!o3hx#e(rwe&UY%*uhc6^ou3jMjJ$YxuP$-e}`MT3X^8zvrtuR?U?Dkw)6~&%YGWRIuo#S zry2gObC$kmNXRon9Fau^z7~EuE=CgdFt1MTKP-qyZZa;GCb##I6_WJQNq+J2{^YX-Ns>_q#T+Ah{p(K?~6Q(0mZQ{l$HP>Jzqn_IP1h zfKVmU+kE=0{!f5fM_9P1_VX;m_A3lQI2%%St|4d`xuW zKfT(K>S6trR8{4}#0Y!I#-##t8cto!1YfDx{M=xoi5o2jzu4=4mFPqw8>DJCv9cdf z!1*lpye&4i#nsy+v5uEC1XW3YG3dU`&{Q=L&MSu3XZg8V8T<@8d}J&QE#ta(w3Og} z`92+5xo_kve`d*%IE72e!4sl6c-xW0KC5~=3ye!*u^Yt<;muh|*(WHDeq)wjuIk=D z?fO=yvwfaF|E&&eVlw0A%P_|rTrsWBknQJ#P3s>i82%cW#~@N3?j&oJh%8f1j3A}{ z<<{0-u-5FG9AU8~^RUFou$3*x%^d5L^C%rra!eGSx8tfo7jx;0lv!MVVYC~{N8_53 zG0X_l7mD;^2_PP>L?obHK}1?sX%``veuiddphe($PQnDRy<*#NO5gkhFb2Oy>r=W^ zzV&72CQWs+PlV#_O5tt}gsokk??;39zB)+}h`}Tre@0Mt(BupFGKb}czMUi!$`uV6 zr8;(0wselseKUsiFB>tj?t6MFh05@#@e1IUnAQSBYivDTwQ=L{W&w1du?sxL2g6GSQo7 zl`O6<8cdn-Y1~V|gK*2LPzBiC>(rEyn2YP1Sh^T2ejwyjZ3*y3szZ^$nAyl*yE#{|Tt3;TEqR20O##v+Ar!oSFuM?B=X! zm0y0)Icl~vM=Rap5A<9H#S17Oie}?w^xN>1CRsRBa5+HDe_z7BSa>yr98+1F#xnR1 z6_M@U!_k(Y&((l!YR>n+xyJ(g2~sZ;h~U(%xq4=;HIw%501a0Oh!CWUGI|0r9f=vC zYINVo$fbC&6Ksd!JtQ%?3>q?eS%l^x&84I8+=cXoCESWsL#8S}H4j%M=@nqkrc^7Y zqs098zA2+`g&uK%_~DTz(7K_tFq% zJI>MBQ>SpVssE9g+!|d*q)@^!o6e9&(;bYh%YttHVSfKy^r`ngYnL485OH|UhL*Mm zvHz!*cox~^&&TOfQgCVZm63TB6K&Qgd2Xu=o1a_~3mD-kFLU&lWo!Gtd92*2SIVy_ zrwHyf8!LYEN;2Q_%^y6MaFO72A-C_wY>aS8itsY!0ao^{esA2hoGT}y-d$zTQ9|Ug z$p4iHmOn_&CHF>HlO<%e+fDS8h6WHnSzXQF&*2Xbz}X^|Fk4g}Zy}*QY=yl3Tq`u3 ztcaJ89d2B!W#e*AA-C&cqjb|rZ0-)S!-ilz8sS_qw-NC>9rEy9EQJLziQ8>brxbf* zS)V%I5%J4Vm8cWSlJ5 zmyc(}7zVJn{*mPzTiIs%)n!)w@2CnkF`fQqK50s&x2I!W%0{(>)p~B;HH{j)z~<>< z2UX&1IJ?WQxu~*tI8CgKhqVcZ#)*XdSj=^2*Sb%ZnKT}l=0UTp*PdhF`Qhh^$99*o zYTo>r>~SNMIy60icXQa)o1~#665f;CZ%4*D_+|UMVS6X1{AjX18c|Hi|*A1ovs|VF}8&gyZaU8t_ z_StEu9C_F&OMQM-!=G5x%LFD1Uaq5JSfU&9s&T}aN$$mP`&jLiriNf_4r<6<riW zOF4FLzx<2L-~s30@T=hY`b}YE7(Foq{Cxu!!OzWb?rp_vaDgq=vW_UHsCH9^F0wnWI7HD`)<&3<^lM@b+UjYv_04^b< zf}nXFrT2AezVbqE#U)L+LRcFj2EFAa(dObgqitggh#Ex-SXJ2t^a{%@K58b9?sx5^ z@IkDzL<2P787i3+OWpoZFo#*tKl(9-&5mV)eD_PB&1F$`c*J2xFu+UBF)AH zlJ|Z<2aQM*%Qiyo;SpDkxo*?pX&u%xK&T`|4hywuuyKVfF-)OEU+nC?58h|tgBmA6 zRCm^OL~Cdol!wsS6pKpF;TaI{}?Z% zT$O0%eUN|or-{T#Z3TS1Tm&g{rovNYaPIp`0=~o^52?qZL%st}h6L8?ggjBAh|)Fy zD{p3sngds2oAL{trp%E2f}@x&T9&;6GFki6pr`P8JYr*xqBDjefZdUXg%}_Q%MwuK zJm%6HBO5^LApWA$)|FTobiQizNBN2Q{*42*_X{wC-715uK}&+n5IJy1HBX?LIjn zkgrS4(c8zalUDLcX772(A)4p5r~aIa6`QB|{S9@~OFNDdG7@rZV@SXXmws>6d@J@H zQKgwIcidiCXg@|lG@e1hzCT&<%D!capcITn4C}3{jq%sQctSz3$=OJW4Q!Mi7+oqf z0k~a^j3^dE`pkqp_A91QY==`$6 zDar@U2A>KpQay83gzU{-K*NzHpL&2wZo_@Kd-Kdn1PH@#rFm{}DD);?2^EbsP zMP|?B1VLmJ;nTcXTJxjfTfi%T8E24a`MVBDTB$PxgQ>l2lI!wg~A_@uug6*m_eYeGt7pJ(j{9fuQXlRt7nn zjekDCFIMV5@>K>4oI^b3!f%s}WQJ1m!V4r>4PgY{Kpz3dWWun>X^~fe3IIFw80&4; zF1lhG`syI4@ak0EY3ZEalRGjNemR)fIkP$XnWkQ>EY#W9A5VxyYqVNN_uF=%0-6HWS}ol<4p>mKJQy^E$gk_GFWagU<>tQ^=!FSQ zLX9r*HkriltL*es0KE9c&1JOMb)rc@9qsG=iHIYOB@vk6-(CTU?B2~>5;`qNFg(d} zwxWe%@ifE5T6aH|e3FiBC{~C|{Y>tgS&?hm?!o6jw)X3}0u(KfIh=HAYo-Q>uH z0ErvUZ=$BcIft6krS#p?I*vPkK87jB7Xn9CbG;^5pP1g1zJpd%H_ zBpC{(g4BrS`+y?Z$pntcFUCJx7`c}uB0jPKtyQ)Vz6Bwz-OmFj8qsfmtz&G=Qyot$ z*`XIzdxTUM;a40cBHqwi*?Ipput*`PpRTMsG3a0uHCJihBVpSo-m0o+%BF?x>}cqq zoBz=)nz^of1>l6_J`!%8UzM?-*5*x^ij)B9PrNV-9yG03vpI#WU*~m zKeyF!mvaC6iBZftX64$ey}@x5k|2NHdtEJ3Vco&IU_aAXG6Je0h&HtD>r&1UDh#)V zKU&^6@oNelr<5HPk7!EHNDf)i5BhjgJfK^h<0xXca<6De}%-0afzB5*6zK;h#W!yzGDFS^gFo6>y@$_T4T@gh4 zzUzKGg9&g;!ocJ`S29lUZzBc3u34$Mo3f=#F7mPfU2OH+IaACc<3vWj5YdjPH0aJcKW`0gN$`6Eoc!w>3Sl;u8sl4hn7Ck8y9Y_rgK| zXRL32@Xc4rx~1MP>2Q+RB*u;U=2_vUJJsffVKQEgZjwJ8b>fe*TfA$mkV^@h>(h|7r#* zTPCqR%s(mRW9X!>&vln!Q=my1ceT8N-X&4L&*nxhF^jH&6;gsi3EP>=L9c+DT2JL1 z(H_-W_{t`euzZSlYk=jXmJT~RyU04*ZbJBsNwDb~v-;uhRB^Pg01+2+#YPgX(s|%~ z;@BXU;+A84GNtHf z?1ES^)7S2l&dq)&Xq+?7tr$_wqgnMuKqd1@iRii(-b*v)WRiZe zYcKwhUa%epe8;a~N$g4}L}>ACi_2;PGf&V40T|-ae8{VC_(tZ+6rOypXK6_~T?YAR8pR4sU z2jSR7$QtJ1rDaM8hc^r=cjl;*szOYZ3yk7mI*P!8w*HwA{&gOi#oNZZJi!#|Z=2aS zB%4k}k{|1^Lbjrno}4Yrwd$)qgCSKtJmtz91s~^$D`Y!yzH-i~Iu;j`dVwR*#hIDO zeCi7|P2@?+Q+m&P(9#?8?@u<6qtK1lSemN0jOmN z_0!}-6kz^}wIiMP_ik5rMuxs+F6~PcTJs(UMs@}`$kRM!hqQw8@!C!`jh=dLeP0;u zy5o%i*a`8as9a?kJl|t_gu_~IbM=j+bQ!*9m@4QHIt>& z_5G`c9nLq{wHg_ooqHf5P%0=%pHK>u4eV}aE%K6=r#}re^XoxqFo%+|XF3t{$6O9H z;~3g92fvuP>1lGsVfo++OPcKRVezFJK^koFu#sahd%~H16&{*yGA!0N*h8@#aNM2H z4Um2Vty0b;>y4V4Bh|y*i>K{0xz}id852jDtA={K{L6mJDXPQ0!+-c1*o|d*z!=%LMz7pt2mQ%!N|D!D zu3iB@s>gACG<_cyqyyeBQ+_0`NV7WI)(r;Kc`rDYBgu)hcAOUf40T|9{DUZ0iN-`r z-Aj#8{kfd$SXY=+xbJ(Xz3xj3`MqYF)`dh_`>`_u zGWq)0HP(ovh`O0`*$ttv3bS^C--w7_0c4c_6VAe19`lT}fzdksA@Y)BOR9(geU3tS zA!xG{jX&?LrPybFZzkL@7{YI@W3@S<9Jjn#{lsflFC&NeLVJ*qEMR zCWR4F>?P!S%9p}3YQHqHUK7nWH3sERUuXA4t0;hyViZ&7uZ;Sl&EjXf1@ zOpg*{wC($Q%FU(wpuBt?EJ$OYpc4I~^YW3b_ieuu zP*!TQ1-2v9SB&N(pFzD8q{Lknbr#O9)0I7ZhDSGI?Ze6!>G7(w4P$?m8p3bHy?@Vj z=35xQy>YGxK+(N(K0_le%FFJx4uQr?63zHghU84qJHV5snXZItf?`@euQk(~t=T1f z&BWh5Qn!&~kki7#>Ej+&c^v&3W|8)INzDGnHw z5nYtOGM@;z{Au1BEQPG$o#&g969qTRs`L*P%7h*;M_DDaNRPxxP3NJGUeDkII9d&Gc~@cYRN$j$W;Ig!qw@L$I-j zbsR{^s2W#!eM5*(NFI$vFIQ6+Ga#z(eq_b{UH zzxr@7UcwdA=P!oJ-_TO%rMNV0G)m!FlWn% zSsmx?@j|3ue-_ba>gl{H&rr?0a&Vs$@G^P@gw;@u$b(~Wu@!rRC7bd4Zv%t(oqFaK64?%8#q(fr?>E^jru!V7+Z71OBeo1sk z$h~Bq+6XzuFq>ym{G{!+Y2W27@J*(UEMDe;8E=(7&UypnP%>R~NYEx2-A0PsHp??p zjO&QG6Pu{D2Z&75t&j7hxWw3a^O@()c%EH9nKIf3s~v!p+IcfdQtlQytBaP5P801* z&D@pm_cv!_RhVNN!H5gH4C;M9J7v|xzu&42C!F34Zq@Pm%lcI-7#j4bPZ>-(nj?NY zkFLb7(%>bUat*Jk4y|WnOO$a75AW6o;FUX>o|>fhea)0iWd>0Wj~5S|NPJ8h %| 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 KMHEz)fB)Heg$6_b diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml deleted file mode 100644 index f20381e8..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml +++ /dev/null @@ -1,86 +0,0 @@ - - runfourftbackdropvalidation - 1556332045.6620882.jpg - F:\runfourftbackdropvalidation\1556332045.6620882.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 252 - 71 - 303 - 160 - - - - stockout - Unspecified - 0 - 0 - - 363 - 65 - 429 - 160 - - - - stockout - Unspecified - 0 - 0 - - 310 - 175 - 378 - 248 - - - - stockout - Unspecified - 0 - 0 - - 174 - 174 - 246 - 248 - - - - stockout - Unspecified - 0 - 0 - - 132 - 264 - 196 - 312 - - - - stockout - Unspecified - 0 - 0 - - 228 - 260 - 283 - 310 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.jpg deleted file mode 100644 index 88009346dc3532266be10360805a0f8266086d5b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34314 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 - runfourftbackdropvalidation - 1556332051.3751378.jpg - F:\runfourftbackdropvalidation\1556332051.3751378.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 251 - 78 - 304 - 160 - - - - stockout - Unspecified - 0 - 0 - - 361 - 70 - 435 - 168 - - - - stockout - Unspecified - 0 - 0 - - 309 - 177 - 375 - 246 - - - - stockout - Unspecified - 0 - 0 - - 179 - 177 - 246 - 248 - - - - stockout - Unspecified - 0 - 0 - - 134 - 262 - 195 - 311 - - - - stockout - Unspecified - 0 - 0 - - 232 - 260 - 285 - 309 - - - - stockout - Unspecified - 0 - 0 - - 337 - 260 - 388 - 308 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb deleted file mode 100644 index 1c2eaf5f..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Deploy Accelerated.ipynb +++ /dev/null @@ -1,369 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Deploy SSD-VGG Model as Web Service on FPGA" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2\n", - "\n", - "import os, sys\n", - "import tensorflow as tf\n", - "import azureml\n", - "\n", - "import warnings\n", - "warnings.filterwarnings('ignore')\n", - "\n", - "sys.path.insert(0, os.path.abspath(\"../tfssd\"))\n", - "from tfutil import endpoints\n", - "from finetune.model_saver import SaverVggSsd" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Restore AzureML workspace & register Model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Workspace\n", - "\n", - "ws = Workspace.from_config()\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.model import Model\n", - "from azureml.core.image import Image\n", - "from azureml.accel import AccelOnnxConverter\n", - "from azureml.accel import AccelContainerImage\n", - "from os.path import expanduser\n", - "\n", - "\n", - "model_ckpt_dir = expanduser(\"~/azml_ssd_vgg\")\n", - "model_name = r'ssdvgg-fpga'\n", - "model_save_path = os.path.join(model_ckpt_dir, model_name)\n", - "\n", - "# model_save_path should NOT exist prior to saving the model\n", - "not os.path.exists(model_save_path)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "with SaverVggSsd(model_ckpt_dir) as saver:\n", - " saver.save_for_deployment(model_save_path)\n", - " " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Register model\n", - "registered_model = Model.register(workspace = ws,\n", - " model_path = model_save_path,\n", - " model_name = model_name)\n", - "\n", - "print(\"Successfully registered: \", registered_model.name, registered_model.description, registered_model.version, '\\n', sep = '\\t')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Convert inference model to ONNX format" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "scrolled": true - }, - "outputs": [], - "source": [ - "#Convert the TensorFlow graph to the Open Neural Network Exchange format (ONNX). \n", - "\n", - "input_tensor = saver.input_name_str\n", - "output_tensors_str = \",\".join(saver.output_names)\n", - "\n", - "# Convert model\n", - "convert_request = AccelOnnxConverter.convert_tf_model(ws, registered_model, input_tensor, output_tensors_str)\n", - "\n", - "# If it fails, you can run wait_for_completion again with show_output=True.\n", - "convert_request.wait_for_completion(show_output=True)\n", - "converted_model = convert_request.result\n", - "\n", - "print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", - " converted_model.id, converted_model.created_time, '\\n')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create Docker Image" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "\n", - "image_config = AccelContainerImage.image_configuration()\n", - "\n", - "# Image name must be lowercase\n", - "image_name = \"{}-image\".format(model_name)\n", - "\n", - "image = Image.create(name = image_name,\n", - " models = [converted_model],\n", - " image_config = image_config, \n", - " workspace = ws)\n", - "image.wait_for_creation(show_output=True)\n", - "\n", - "# List the images by tag and get the detailed logs for any debugging.\n", - "print(\"Created AccelContainerImage: {} {} {}\\n\".format(image.name, image.creation_state, image.image_location))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Deploy to the cloud" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "#Create a new Azure Kubernetes Service\n", - "\n", - "from azureml.core.compute import AksCompute, ComputeTarget\n", - "\n", - "# Uses the specific FPGA enabled VM (sku: Standard_PB6s)\n", - "# Standard_PB6s are available in: eastus, westus2, westeurope, southeastasia\n", - "prov_config = AksCompute.provisioning_configuration(vm_size = \"Standard_PB6s\",\n", - " agent_count = 1, \n", - " location = \"westus2\")\n", - "\n", - "aks_name = 'aks-pb6-obj'\n", - "\n", - "# Create the cluster\n", - "aks_target = ComputeTarget.create(workspace = ws, \n", - " name = aks_name, \n", - " provisioning_configuration = prov_config)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Monitor deployment\n", - "aks_target.wait_for_completion(show_output=True)\n", - "print(aks_target.provisioning_state)\n", - "print(aks_target.provisioning_errors)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.webservice import Webservice, AksWebservice\n", - "\n", - "# Set the web service configuration (for creating a test service, we don't want autoscale enabled)\n", - "# Authentication is enabled by default, but for testing we specify False\n", - "aks_config = AksWebservice.deploy_configuration(autoscale_enabled=False,\n", - " num_replicas=1,\n", - " auth_enabled = False)\n", - "\n", - "aks_service_name ='fpga-aks-service'\n", - "\n", - "aks_service = Webservice.deploy_from_image(workspace = ws,\n", - " name = aks_service_name,\n", - " image = image,\n", - " deployment_config = aks_config,\n", - " deployment_target = aks_target)\n", - "aks_service.wait_for_deployment(show_output = True)\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Test the cloud service " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Using the grpc client in AzureML Accelerated Models SDK\n", - "from azureml.accel import PredictionClient\n", - "\n", - "address = aks_service.scoring_uri\n", - "ssl_enabled = address.startswith(\"https\")\n", - "address = address[address.find('/')+2:].strip('/')\n", - "port = 443 if ssl_enabled else 80\n", - "print(f\"address={address}, port={port}, ssl={ssl_enabled}, name={aks_service.name}\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Initialize AzureML Accelerated Models client\n", - "client = PredictionClient(address=address,\n", - " port=port,\n", - " use_ssl=ssl_enabled,\n", - " service_name=aks_service.name)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from tfutil import visualization\n", - "output_tensors = saver.output_names" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Visualize prediction using the deployed model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import glob\n", - "import matplotlib as plt\n", - "import cv2\n", - "\n", - "# Select an example image to test. \n", - "# Default directory is the image_dir created in the Finetune VGG SSD notebook.\n", - "\n", - "image_dir = expanduser(\"~/azml_ssd_vgg/JPEGImages\")\n", - "\n", - "im_files = glob.glob(os.path.join(image_dir, '*.jpg'))\n", - "\n", - "im_file = im_files[0]\n", - "\n", - "\n", - "import azureml.accel._external.ssdvgg_utils as ssdvgg_utils\n", - "\n", - "result = client.score_file(path=im_file, \n", - " input_name=saver.input_name_str, \n", - " outputs=output_tensors)\n", - "\n", - "classes, scores, bboxes = ssdvgg_utils.postprocess(result, select_threshold=0.5)\n", - "\n", - "plt.rcParams['figure.figsize'] = 15, 15\n", - "img = cv2.imread(im_file)\n", - "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", - "visualization.plt_bboxes(img, classes, scores, bboxes)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Clean up image (optional)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "#Delete your web service, image, and model (must be done in this order since there are dependencies).\n", - "\n", - "#aks_service.delete()\n", - "#aks_target.delete()\n", - "#image.delete()\n", - "#registered_model.delete()\n", - "#converted_model.delete()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "authors": [ - { - "name": "v-borisk" - }, - { - "name": "v-zaper" - } - ], - "kernelspec": { - "display_name": "python 3.6 brain", - "language": "python", - "name": "brain" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb deleted file mode 100644 index 6b4baeff..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/Finetune VGG SSD.ipynb +++ /dev/null @@ -1,331 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Finetuning VGG-SSD Object Detection Model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prerequisites for Local Training\n", - "\n", - "* CUDA 10.0, cuDNN 7.4\n", - "* Recent Anaconda environment\n", - "* Matplotlib\n", - "* OpenCV-Python cv2" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "scrolled": false - }, - "outputs": [], - "source": [ - "# install supported FPGA ML models, including VGG SSD\n", - "# skip if already installed\n", - "!pip install azureml-accel-models\n", - "\n", - "# Install Tensorflow. You may select to install Tensorflow for CPU or GPU. \n", - "# Instructions are here: https://pypi.org/project/azureml-accel-models/\n", - "\n", - "!pip install azureml-accel-models[gpu]\n", - "#!pip install azureml-accel-models[cpu]\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%load_ext autoreload\n", - "%autoreload 2\n", - "import os, sys, glob\n", - "import tensorflow as tf\n", - "import warnings\n", - "warnings.filterwarnings('ignore')\n", - "\n", - "# Tensorflow Finetuning Package\n", - "sys.path.insert(0, os.path.abspath('../tfssd/'))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Import Training / Validation Data\n", - "\n", - "Images are .jpg files and annotations - .xml files in PASCAL VOC format.\n", - "Each image file has a matching annotations file\n", - "\n", - "In this notebook we are looking for gaps on the shelves stocked with different products:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import matplotlib.pyplot as plt\n", - "import cv2\n", - "%matplotlib inline\n", - "\n", - "plt.rcParams['figure.figsize'] = 10, 10\n", - "img = cv2.imread('sample.jpg')\n", - "\n", - "img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)\n", - "plt.imshow(img)\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from dataprep import dataset_utils, pascalvoc_to_tfrecords\n", - "from importlib import reload\n", - "reload(dataset_utils)\n", - "\n", - "# Create directory for data files and model checkpoints. \n", - "\n", - "from os.path import expanduser\n", - "\n", - "data_dir = expanduser(\"~/azml_ssd_vgg\")\n", - "\n", - "dataset_utils.create_dir(data_dir) " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "#Verify that annotations and images are in the correct folders\n", - "\n", - "data_dir_images = os.path.join(data_dir, \"JPEGImages\")\n", - "data_dir_annotations = os.path.join(data_dir, \"Annotations\")\n", - "classes = [\"stockout\"]\n", - "\n", - "if not os.listdir(data_dir_images) or not os.listdir(data_dir_annotations):\n", - " print('JPEGImages or Annotations folder is empty. Please copy your images and annotations to these folders and rerun cell.')\n", - "\n", - "else:\n", - " images = glob.glob(os.path.join(data_dir_images, \"*.jpg\"))\n", - " annotations = glob.glob(os.path.join(data_dir_annotations, \"*.xml\"))\n", - " \n", - " # check for image and annotations files matching each other\n", - " \n", - " images, annotations = dataset_utils.check_labelmatch(images, annotations)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Split Into Training and Validation and Create TFRecord Datasets" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.model_selection import train_test_split\n", - "\n", - "train_images, test_images, \\\n", - " train_annotations, test_annotations = train_test_split(images, annotations, test_size = .2, random_state = 40)\n", - "\n", - "data_output_dir = os.path.join(data_dir, \"TFreccords\")\n", - "\n", - "pascalvoc_to_tfrecords.run(data_output_dir, classes, train_images, train_annotations, \"train\")\n", - "pascalvoc_to_tfrecords.run(data_output_dir, classes, test_images, test_annotations, \"test\")\n", - "\n", - "print(os.listdir(data_output_dir))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Set up and Run Training/Validation Loops" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Setup Training Data, Import the Model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from finetune.train import TrainVggSsd\n", - "from finetune.eval import EvalVggSsd\n", - "\n", - "ckpt_dir = data_dir\n", - "# this is the directory where the original model to be\n", - "# fine-tuned will be delivered and models saved as the training loop runs\n", - "\n", - "# get .tfrecord files created in the previous step\n", - "train_files = glob.glob(os.path.join(data_output_dir, \"train_*.tfrecord\"))\n", - "validation_files = glob.glob(os.path.join(data_output_dir, \"test_*.tfrecord\"))\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Training Parameters" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# run for these epochs\n", - "n_epochs = 6\n", - "# steps per training epoch\n", - "num_train_steps=3000\n", - "# batch size. \n", - "batch_size = 2\n", - "# steps to save as a checkpoint\n", - "steps_to_save=3000\n", - "# using Adam optimizer. These are the configurable parameters\n", - "learning_rate = 1e-4\n", - "learning_rate_decay_steps=3000\n", - "learning_rate_decay_value=0.96" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Validation Parameters" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "num_eval_steps=156\n", - "# number of classes. Includes the \"none\" (background) class\n", - "# cannot be more than 21\n", - "num_classes=2" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Run Training Loop" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "for _ in range(n_epochs):\n", - "\n", - " with TrainVggSsd(ckpt_dir, train_files, \n", - " num_steps=num_train_steps, \n", - " steps_to_save=steps_to_save, \n", - " batch_size = batch_size,\n", - " learning_rate=learning_rate,\n", - " learning_rate_decay_steps=learning_rate_decay_steps, \n", - " learning_rate_decay_value=learning_rate_decay_value) as trainer:\n", - " trainer.train()\n", - "\n", - " with EvalVggSsd(ckpt_dir, validation_files, \n", - " num_steps=num_eval_steps, \n", - " num_classes=num_classes) as evaluator:\n", - " evaluator.eval() " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Visualize Test Results" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import matplotlib.pyplot as plt\n", - "from finetune.inference import InferVggSsd\n", - "\n", - "plt.rcParams[\"figure.figsize\"] = 15, 15\n", - "infer = InferVggSsd(ckpt_dir, gpu=False)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%%time\n", - "classes, scores, boxes = infer.infer_file(test_images[5], visualize=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "authors": [ - { - "name": "v-borisk" - }, - { - "name": "v-zaper" - } - ], - "kernelspec": { - "display_name": "python 3.6 brain", - "language": "python", - "name": "brain" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.jpg deleted file mode 100644 index 9d0ab04daef7fc0c649b61d190257ebac44764b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84889 zcmbTdWl&sC^!GV~yJe8UVQ>o!1a}|Y9fG?J1c%@@!DeuR1&81e1_C6wJA~lD2_Zo6 zAAuyx|9Q4{tM=9Io?Exybl85EIitS?F1y|DWw&AAlSW_#4v*6UYj{AO~WS1OE*H zn4aDf8~DEr@P8T*0}~4y2Nw^YfbeO+2QmN#5EByv3lkd~3+rig#8W>2iyWJRMMweX znZ6w^D;xxkM!v&?D7N%d8qEJ<6Snt@!6%@irUBEkb8vET^N73<6%&_`R8m$^Ra1v) z7#bOyn3|beI5;{vySTc!`@aeZ3NK8sbpfa@EG#a4S^m1Ry0){sw|{VW^!@n9#pTuY&F$TP_rL##3kbmc z-&jxW{|5ViaFIW8VPIilV&VP|7Z4-p>Bc0-!e$Y|p-|ArwSzxng+}9n6p`;*`tc#c z2EQon{pJa%*hF^NFa8JZf06ya1B?0pMfQJz{oh<`03uA_)8b*01LOcBpbK?ub!<;( zE=pDepgLMhv8EPeC|?UGRgBif$S_>e69oMdR>zjsqav~| za-9wX{N+gi_PLY?3UW`!-^g_hAVgY=W}sZPFujlO0ioeak=9}%mi&$@_3imk$33ZJc4@2N)F zr%GP8#^M9hpz3=khDD6q>Ahrf=O)=prye9%SSVCK!3a>g__M~VL*p3THdT}s?iflG zC~*c?C;A8Y8JW>ka`hXyRb|b(e!#wOAI!#h6Lz>78}COW8S!0M(%equxm{g^`u5*#70jAmyV9#Vz>3{jg7 zoyE3}o1zOprnAp*7osRxlG!IzD8|$jQudCOW(X}+^bA}a{faFS{Mw$@M|F%oC?kX^>HY+PX7fDw-5K)VBVig90TF3X5_!`aX zJ-S-PAuBB8q$t=|qlmkyo7v<>J)fOC0JrSMMMZ3JR@ zdsE?v#wqHY%fuL%Kq8z{%zc}y?@pDm*=JpvM-e~w-j+ft1)(kw|Fxjs*)+i<>HdAp zP!MBTbet~lxNj=vNJ}%`lmh9fzEQ;j_Dp$za2$ssgTfCS(w7rWY{O@V=t~X-GAxb3 zgG>lorq)0Nb&TegNO_LSFji~pzkHh$T2=C5xFTa5BPZpf%Q;DT!S_7zL{9|^qZA&T z;|xJwra`KloC4$150yVnlLV3j6;e}EyyUVyAGZv%tenkdg)f8(jfS&#xHm z&pm{TLE%P$pWVow1-J0Mo7qf^DH;54Dd$ivfvQV6&Atms9*Zp-bysB>Q8UQ7wwugG z0d2}!kL7f@sRG1oTUmv~2ziU%i$ARX<6j$PKA4iW54IL$9s&(RXrc8_&HujJlZ-ef-5jI1XPAUXS9TbT}iy|hOeQvXKw=^ zC{!1Z_9-YpDOV+fBCWlB1?yu8Vo6Cm^Dj^uEF{oVzrf z93jxK>W#^miOlQI77maPs9nv7uX^>*d~C_hm~y3=CUPX4L(a;>0ukaHcokcCc@CKf zzAZN|@-th}ONxp4bK)p`07@ow-iNPk)(^F&jWNt+6vUj2dzT=k$1FU4JMXivd2k>0 zc=?UP|1R`MZbxb3J}9vHXLiq}>dnLZC|!;WtFzBxx*SgW1QX6q_av};wO&chiiF#( z>A3YX%1tv>4KDi2P)u#WEHa7F z>IU}VeNoj-mp~#MKlH1UK*AH zEdXNtox1sYm>MJV`>iqstJ9t7Zg~X720(d{Yn=X4ZuUjs@*1IL@OB5C9aigAckQgr z$wis?s-;sRCfgIwcb<0lUD9i_i`i+_7>P`dt#^q_w0eChvBR%S z#q`#vedvFRS-}p}@~$#du3*ws!*CIOqM~wfuxyD%puGR;s0As&(PZ6CG+t+A6;~;? z(AZ7H3HL6DMEv{Uby=TtW~}y%`*nf#80Ms7yMG%3dI*_NLp(40otA^lqEhUim zH{cf`K&t2^@~dNu5CnsU#Gjfu?%gPQ@#-|UvSMsZ#oa<|=IYy0Tkbvs2ZX*n2`0iy zkK11!uv>&wCvAB0f~5uvuS&5&y{;I!8N%{_%8FSFsPNKj5h4oqc_6|LVP)69&gOE~*izngyRQ9)vujBKkYA zS-MU)O6EuG7X|TY&mjlLm+W6Mt0(+qhS_`OtwyZHu(u2kt;kepfyD(1j`xRyn_j4419csCoCvCGhoV%E>VuBFh=UN$Vu=)475$lIZ_DGLbE0r{hyu?#THGJ z*{&ik7$W`K@Ld5nW|AY8>Y>=0FD6M@zLyt6X}%r*)z~6^hwqeJwgl~}w{wgTO_mqR zm@szM|6Cn|yXRN{a#^8-8Mm>QFe~xW;@Qkq6@~J9JjjIa>hl|h+VEdrtL9O*%8D<= zz&g5GzZXj6PV36p9)wa3<-ZArrvPMx3gm%omdW%JMC<^w+dm7E1+r7L->oqohF+Tk z9(xrYK1aPP&)V$g(V<{7p-@!&#`$j60rsNKO52B5r0#aMS5$N^%q}q$VD1oImEflQ z+Ma?naL>)Vl<8Py=)$~jab}&|%s*wj7+32`w<~SSYk@xr7)#`P8`IK10|m--y|cC<7x6S_ zloK+?6=z1A|8V|z(R&%J&53o-#}5Cs`;loVRA?e002X^bd<=)UsZ)#jND#{{U)^oPisW)Sp~|tjT)? zJ8OYRHeX}BT|p^Q3u824@SW8DhW*N9Vd;^?XcN;+Jj~z+Ol$Aw&nP~+*T-l6TiFd) zK}3HY>+B6aS^Qa^_2UM-Xg9F3oI1|8%5^$SjNdH@y zb)o!*ax~?~`sD5z@mW-8w#iU4081?JQYDCXoX~IQKV15oQv@JTkMb~YY%B?z;i))eTYk)8HXLG|mZbt{Vvwi0I)hgpSC zr$SV{WQrl`heTr|fA)C6H#elZv_+Js7~W{<{C6pEJj4X5bk;k;_-k`z55fwdzJR@?Zjfa>e-%U=t-6E>xvdrPMI& zRby#Wk5)AygYUP@P7E%ipUKLz_-&cl%IM6eS8MeD>PTfohV7bKu6sm>`L$-px6ViW z17!F9QaiAmt07k#fzvz&{{xV#M0r(YYI+c%1^*NWf>HcCJ#ELx{#gsB_FO36KY&|@ zWkjar5apdudQ4-4)MEXi$6Ili9DFb9ehzN=jYOGW>UW@Zx5|=JUjFxe4*7f9L$7a4 z%hQ{r4S{1{i6i__mUR|2hFH=4P?W4^^kRYHSB(2-|8wRA8Q6_tiqO>>7=armfsV%YSN9V47QzK<}#=? zP`A!fmXEu53si5t)9cjkE7sBdz;_8Fx~(NHY^#_tF;$fF6)G%zm=E*4&6yPmY_o0- z&=p`6j)8X<4@5D&ng%@^$KnV|g{j8^tkQR8HD0k-#E7Bfcod_HnftQX{De=myE4aO zLUOn{gjk%EM~)!P48qDjpFl{I`XpDNqJ&ji9>eduQXF$l_AiCPR+ca~wtQluIAKn4 zti2_Fn2+Drmu@&)uFBB7uhUE?xOa&nC%n-SF2rLAu3Dvs+_^-ZZ2tGoZ#_a7e)@kL zh2lB8TFxj|WRLRxAPJrKWnfqddwBa?AmEbn<+LLUolMppYoYh9=6>_W?yh=)Er_8~ zRXB4|dO<0Sa`@&;L0kSQA|I2RfRIGAIH3^jOE=pRQhmy(mpcha&ngTU76Gykk&R;+ zsMp+)n2^UN*a{zO_n?+(M%Qg9llRGMa?2&y>i+nN*A|biq~Av6lu&g###keWBbSd0i+R;SusLn@~n6uo?oJS zOcQTIe0)M&_^6TZ`#G=>N8tNb;r|vZ(Xdh!KJaoikgSJ3jByDt>G7&9fri!aU_`J^ zSHHvpF|+ zE;xMoVtvYSHC_hrD7ECvKjW=E7HgOFHlpNemfm|tVs<%-mewJNRfK?lfLD#nvrXs+ zURB7^={Ltqr?q)7(T3-C6!pnWBmt6fr%@osBT|6Pmn8$%IU$6CrwImERqSfkHuQ9n zDc6OMFtN;53K4naQJihf?=!h(oA0H&eV4pSlQPhyr??l=f%t5BC%{g zxH(m_58k7IBJYd}eIqMHRnVxj=R)>jHOK;X&Ld-K3S7H|D2l@s>ycWBdZ{|ozUQ;F zZ@TW9c~!-N%^P%qBs9&|qYR@W$6n6#;G$i91sL{M#71X1=bTS(QV0uxbl}X8DqcGNJ7>ehDvkgP z3tUY!l5Rf2m0R;Fq8-r4p)|c#2lAANy;%)coXv6KcG4GoPMEyIU(R%Ku;sZk-5X83D-1=2d*8#y0)AWtJJtHbx>! z5`4FZ01Sj_b|y{(A&sU5iM|X9O!|oL)!FaXTfuB3JJ3Q;Tu#olw^EAf6gqnObnZ9| z+EnuX>xm6m%Zn=(U8A|}XiQv6^Xq7|kPiIs+~0O{;M-!!g`=(NoPjfzDZ4*QUraW^ zLrHoM2oti$Z37pPjdXogwFZEIKMb~zawQ)RiqkI;mX8}21D%y+)|TQd>RN<=HvHwu z7u9Q}7H9!UDTYFs21qT|OtJy4$|n`0iu+_*$lbV(?5AOt9`}jXlaisY&b_TCBwvki ztq!chj29>2jw$A99>&QsblZIcpbfH9ji~jLoVNvtR|D5F10_pB{UBqiUmP-{hpA|? zKHKo@hdNg5zRYltao?Bp6l!4;No=J1Kt%{9XgrNG_@>c@9kN9o5a4$=E$Ch_;zv@Cm`F1K^~ zxKwyU`610o0c*5FNIv)P8a1o5@RvQL|2iIX92B<=5i6#oB1-@oFR# zp(0puPJ`DfcTPfm9=33wderXB!9(r)`kRIl)y7Pn%E$=I%ygks*lUrFxjfd@L-p+z zui0_%(d9ekfe>)MbdEwhFafuhN1p13`5>$-3nTuMe)L)t1!X+pFv$?tdcJ9D#nnP# zrcZ(Et>EP^KQ&_HiT0lXt5bHWkVH)SPm&8gJKpw*4u7wO@c|PlfpQ6MM6aCfq<_qp zqV+y$Vxm@=L|xS#sfEX`s1sE5>9KtwkS5vd)Z6GFGWEIjR-quyL);GBO5TyvARn&0 zGG^aj+xFHgBf6gC@&I(Q_d(}+@_}`|W&q)LZu1?>ED~dvB6VE)PRxIRFB)?yY;!Yx z`7GEDUZbg-s#2HO)X(}oDKry|{%ogek|>D*2mq!f69sr0>H{VaziS)eX|}2z8&VEX zj%c`U?`^gfqgs>r*dsb$VckZ2IgzU|RvwbdwJ&XtM}XEwK$8pp<| zobJ?Xkt1Ev)p9oy^FV5yu5Ah#E}#GlVi)|b;6<=i_{1P{`X#p!Zy6Sz18+Rwj80Wf zgMuH)#v}}Q3zSjsr~kdk?+`=xDs71?9$Hi52V}ekSX!xs5E-t2Y!`T~3W)9>5jss@ zeiQO(uCn7}wqJ>u6{*s7B{~ORxz_vplc(HZ9{IYB{EdJVu@~=NiZSo~qyZC#=(xULx>elZ zYHE1AdTL8*&*%(|oF}OUz%6ZiYv@Gs4IE4gOlQx#miQ@oaSr3}DzFTCHcpFqSadpjg+jUTd^E{iny!dEiq5k5);mtU5=YyQIYY&S3}{ahnQVa!t61y#P#pRS?a*v z^gIQL{qTw>mtt!l9H#2^e8`5albUKlB@#N;GRpj%>1B^p0A-iY#OMsp7tAZxW)TJo zFS$`!_AiXPt7S_dP&^y@^;WG#Q(hiJ8-`hSu1fbWX^WVuju)q@NVx!>4D!pGz*ca$R z${wUYnYmz6+)Z3PUTADfxCHeUV0!TkA>Y>@(XnyO8 zdLy@h^ah_FwFzp}g4_oj?wI5TdXD7ciKPg?pFSoNh^XpH{YT9-5HSs4TWmL68_8MF z${aJUP#V&pmP+3nW->2_Ilz+4j5=eVT@j z$--%AU}nuD6*a!!xQ$F{3j^wIVA;4#$83re>ni;nUtD%TmsRAZ&wzTj^!JBH*@F?!>f{`fRfXSv1xNC+p-^fs4Asx!yN zj#gXP*$00h3_0wIX6Mi}!Dr@?$GRFlFu@c!T>(R4zxgb;z3W13Z?JjlB3V)|rJ_ql z8ZD;j$DY!wG#U4h1>W2i+oU(6EU84u*n_T@`NH2_QM{HpNs|=n_Ffk`V6K%BwG*WZ zaqQ&&+u56%)XKN??*;z>qL6>wvyxl*H+!f%4te7Ry1!h_?bF{>ZK+Tm)ZbnTmrZrU zQky4aQiZ%6Ugool-*Nt4s!w?)Rc7~h{IF=~MGG4#hQ>usy8W2!@tCsLR@m(b*Hf>(-h7TOKuD|VTgn;OcHkZ&VakTi z>F*p_Lx12ufB{UeYp>?ImPU(uUtUK-ye53r6fiImk$%5h)W?i6&rvN{-R9FpAoe}H&CYO;;@JHBOv7M2Up1j_U#jet= zKX*7@?dQCF373yrAMx4yB=xxT#{O}|`e`2qeP!00ljx4I^F5)3K!&Ij?A0W0802Uv zrdfMByI+dHeCt}hy>T}7Fwqvq2!#mgQ>h*Up18OaKC_c_tD7oJyv_$BR1w8XDHHKdN9dET1c)xYK8LaCX~RkLTJp;$M`#`=i=lFI%f*@H8?&BW6pA=M zo0wiOKS)`()g)~Uy#s%2jh(^&DSj+ZoCD;$y~@oFM@?ZA^6onvGK@rKzZm)laE~rW zy+G5&eK+OX0CdV0x$Ul+T%D>^k~mx@ZC*x^_@lozZM%`XP#cUbG_6j#Lz13v*cBEo z0xOGLlBuY;CWb3#2~-7z{)QTA%@Yns`E#YH1FbIRo<4@x!Y`)2&&4NUUzP+tM~=zn zRSo;LO-h#f+QPvComj|XQus78&99+5eJR^%jH1tCJfwbHt|h06ks@*A*_SPsnSai& zPBdxIIU&`F4zTWtK>b3>zt4Uf4CCgC%v`GPnqa+We0Hpb_jUR~sd4ENBQ=F|N;e$g z>Bl~msnW*5u@dwgYfsuJqv9xXO_ajw-cG79^x274n%C`CIO5kfmG8H~n9yh~f@vog zKQU%37rJtphcD)@5)8ugUnBM?D=7x}F977TkU3i3TsipRVclvA7hbgpdF0?vIYAhgp#@v zUR5#o;add2#lj8r+wBAvHKnhK;3C(0k~Lqr?bhQ)>wxB`r3tXa4M#!qx=%&BED~;9 z&~|WD0vG6q>+!M1yNU;d<*`nmRFgy{5wQP-lSp?$iXaQ@JF%?tb^5!f^HXw?X~;zhkwW zUM+5?8bN)W=+I0@CbW7vTdy3Zteli>DPCtO;U_z)A}dVnx5a)X{AH??e9o<#O@n6` zRVUODMJJZuLi^2oS7Go9`R$@wlR&y<%sOjmC`A-AjF!CEtc1(KGaKt4K(6w6hEpq< zm0+fym$QC5tqOBzaKn?tnnpGugJ7Jy07BoXGWLr1uJ?QJJ27%A36?pKq9rEoTJ{3WYvTOU z(U#=k$gM2cJ_ni^rSCgbqQ8}aFVbR3GgaPG*xFR70=t34ksGQn8%<#?6VCc z*Oc~yVX{H<*qFonT-^5l0h(a`UX)*2Vtg$`3DmJ_$IeS?O6{#Rv0Ez^Ppwm17;@PO z;lr{&0y`2zhuKPc@QiU4GK3AZn=RY4fXSvI8^V3(TIP=@`T_XR#Pm?$$UlG%Hz1c# zF!l8edJ*tnk$UfP^o0^|zw%u`>8WjaJ z+o3QDjyzSz=U+4Q0vAzoII?Hc`PJTlChbH_=GFYgivzTzqXWHvMCNLEb#<!2zq?}sOW(F{NUMfbJ>z`fP}2;91pKMcwP_x7iQ2XkhDj_iOPz^of4&kkH1U_fM*j`2wN# zqKV$N^w+|gY$M#I>62Oa^`?GlWYNWLfJ4;F5Aw<07GO;33{lZgA_EPVO*=D)mSDpKEuZsZ8bvnt0>KNrkDrb(>zd11v2EU3};TImVPk=V*#53X5M? z=o6VVkNY;W!64!xL*ZmY0d_xJ(QOG+n)}N7PFa)8;}Q<(lhqn3>X47w^AKtSp8SrI zqAXv+(7XN$%)!Ci(KlRZz8EzcI>hbl;_pS9UG{FoYF^0Y$W)Rkdse^^+TG`^_j3xe zxjzki>}qrqm|u^_s(Od;{k^=;J1h&6Kr#N&GbG|=+p-=j{A?XC_VA4{hm<%@PWq!X z?n|N`cbfA0Ldim}?WJed>@`VaGgz%W0uuM>m&cmIAzom6xn&^oKZJl3O@VjTZfQ~M;UD0K+!Hr1bx2<{VDIv&7n@7NXP4U=MIOvvboZ*eoMsMXbdrec$R&2b ze;XghY;Eb&!QefOit!A%k;@s$I2F#g`?FGN)0vA1*DuneNJXOe{^Q#ZMsnZxnE6NK zNZh`C^cK}pi+uYJ&>&BdstLX45b6pU(czLrj_D!GKPzu8mru!Gfby@QkvBE`KD}mZ zDARIqF23CF8WjM*Zm2~`;V{XEM^zCOa$1OvBNptTki-#T5uNTvq`3zA}_9@-7AOz3T2#V zz*|sHr@C}lcEcwRhY$}j_IhZDBS##O$i#3*Q3%o4 zzM4Q$`7sSF&upsbB9mmO^GT0#pbN95!j*%;-tNR`x}%yzJpdvzhse?nkJeNrZCuoH zO!U1EdJ4#+4W4nxI!D^8x*N+nhUE+W=dZ3X{;)?6%#=s8YRtzIQ=P41ymQ-`70`=4 zHl6GgpCRq6sTjTBDUR&c*|D!1OT8mVDclwi(m`-#h{uS34a>1Dr%OIl^H(czA39^v zT?Fluoo+sR+)Q(O2bBslJAK@vaTXqP^qR6{yXgNZUYUTCTKQaff>H4p8S_5H_I3M% zW^e<)13HNu6w=3^IX?Tcwi5kjES`MdO(QecySiA8r(#Hrz{%Itcq1#YoEv$7( zwe;Pqqz2~P;rq4HEbDHnJ4k(Xn?*M*qsTGy+2b7?AfCwV*HuL?8@p9OZh8eR+100-krXa2W{A?~$+&xs6b(>he!cu0V!$wd5F1jPle<%FPU_MjMItyObk zwjJWX1FC17u(9+L4gL!+1X%?z-VgIi)}K&I6*~ID)2-&PsL7P1U%C{TdL|youWLFK zl2!@pA#KyNuw;8cNb`J16fI?ab^LCM+t^o2?86;!4jjywvd8LwlC*oN4ING<{5>_|KRd<6oRCO0B z({u$VYAQh6j=rM|b@kY;ug2!vAU?O8H}5l&SThD`^bUeR3~=ogM+6HmrQ;w)B4Dpc zHtU|vY+zz+!G!=U&j~&$(ZGR$gD5aQSrXMTcI`EYs$+G;@Rqe=1KM8g(;pV)OYg)~ zG4$-!c>V+Mn9Zp{Is>I0)PMm5?yrYt4zu_)5#WEg*%c3I8xB$*$L_1(%54EV@-OU zCWvs3s>GTa;i+ZSqOJ zI!6w}&RWmtr+5{hseZbfVzK6>oOH^SC?$Nd{Khh=aoHf5HN+r9tCeG`xVQ{S`^CEw zo%-%U^LfE{*(;KKIjyB)|K7#*ynPl25;kw+wiQ}=s%dVk4ds>+!PKaIXpEq4SJ@X1 z1iNLj@@0bO$HtA6>qqPtT7M(@0@BCUid7e{p2Zd})O+WOK}DwK$D1p(1X-E=W6$MD z(1}0i*x*vxN*O~39}n|^A5tqi(3hZrRTNj}n&sg>so^wVU@hgBp)sb2nPqsl+$&o$ zDFb|d)UV->>>u-`mjM7P5@-ZGg9|wB*E$U+r|^l+wraJd{|5-nX4I8@g(6PMyWHO_ z5k^Sw-PW9@7+isUgqfJ1w&a!OLqD`e;Q%yqw$m$D#7rS1xoH)W4o2I4(!)Gt?7FQq za_TBDj{A$=VB8C|I4D(nXGX8Y=dR^J|EQI2Xb#chc&HIv| zpm)2;cOOI?lH0#PDw7?}2BzDB0TjK{ z{$Jebgw1R$vP;|1h{LmBqk1$6qeJK8(5v4DZ-V3ZrXc#h^Vn{Idpx9=a;Yz0a?$7A zVXhdU;uY)J%^Xmxl(BVg69}kk-6StF-}|To1s)mTs7|(ilb$FDW3Y?)wM{m|>Dop; zQhEx)_HG3}xA)s5)N=J*Dv+~z^4a}YV_I*EHrh<|fK6CeEOWXYUF+6hOGVDUD9+9x z<_)AE>K^|?$3;nK!>ikRd}QC)Pq;M!LNLH-&eFs6=z{HIpFL-=0eG>lwU$ozYs0Ix z6w$9#>XAne1Mn1Xhe3&p8;gz09l2mb@8n z1DA5t`cj6Zz!bG~w0yWOPVL8q>mxeke>1K9X^BNPd`itJwq$O3AjxZfo+aHCl8GXH zcl7y%NbCesorgq%CDg=bQwG_@lE}2Wp9jcwHjM5b8^yh-HTbeoOLeEjH%J4x7?r+j zuw4+r9v`FN!uOJt);*lP(D)9%Ky3?B0B8z-OMCz@Ze*c}c?H9}M z%Y#29IK=NtZd{lhmUE4>6FxX4V5x7J&+7Q8M)DLKPFJH|IIm6M1Fj(p&9!uI7i*d( z+$^?oweKm)i)l>i#de;7k&&DAbeaKesdjjJ0R$eZP`vHEuLXl^I(*-61)WQma{q=2 z{zk|ynVo&ZAH8c9Hm}$ZMZ~zyEPF;rsrMZ=isyTBCRh`v46;7n`nCn}JQ{}(oMQ6_ z($i;X`}x_p3--Gu5<`vxcg_HmGM_4g4z0!|$vvYo#?;3d;$QJJTtl-710=Zyy4HT+ z$+S%C{>hWQb~kbmpY~sH4_fnCRoTGHrQi+%#=^S+vEOPMa4)b2CgCIlTS`fNdieIC z4#kNdENULW;xAh4t+^fL9gTUvr6q2?XCl`4&K_Ov^pi6Erc#%B9dAf@oxCUDw766D zk!hlgk+c0{yyIFOz65jj@mDzo<5P0!)U*ib84<5qg6to6F@#fc21bf1rh}AjgWQA7 zYDt2@P&O9qv9>9U4l^rP_At?y<)gt*CBDpttT$AnAC(94=?G?jxS_?MmTs3;Y&aq1 z@>^PJ*m>LZuS04!tYF?8(PZzbc1AgILCA3ky(ZaH1l;POeCE6;pcP(vkbFGr7xB4L zCE(W1g>_Rzf9+$^ih4gaai9J@!kt1cJ^EzEZSh{XZq%PZn^B3!%$^hdfGPp-Xhi(FTI86A`5SbNvh2&lh(1R_rZXv*e6J znka_~0crk?h?Rn{MwuK3lh|DpBm9G|;rSX0M!{X0k|67!O{2ZB_jIoDt|dnhgJwq4 z>6cm+k3uGQx(7CQckp(=@mZ*0CuLO{xFU@kA)N4(F%B}P{dcZ$AvFyuGnKDs<4I$J z^omCmSa#W4Hw1XTd$~WJ9wa`yqi(P8>MD_~wchjXWjW(kI}rSgE+w^CEqC?~ee@`- z*pn`T4Dqguvm4)OJN~_dtavJhFYxjTu3&7})C`X0v}*dk)xhy1+mB}uI@iK$*zYKr zDgeaA9(332XaDqHBATa%Q5WhLr8GL)Tl#LOir?-QJI8xrU1ldx%MXdKM{U?X6fQEZ zJLRr2J4fqzrKD*Di2#7hMtn7U>d2wqB%pJnh8vO&M^5P>u z3(2IAKitIr0V-(%Ww9*p_6}y?Q4y{f67OJI9uT|iSmJ8jv~L;)G!ytNhCVviKrFO2 z)GK6<(NNSsEs?4ESc9zAYc!Y>^2mij8MMibBv4I^(bY#JV`w0L)yM|YiTC?lav#F% z&v`)|Si!#R>O{ z7KbjvVM%r%gL!#MY-vMWiwuGm5{zQ*Qp4rEXBLADLt94i2?s2`@L6}1RG1Xqdrdd$ z8IP1&WG5l(lX%5+RB1A9YHCyG$7`wQ@^`A>#|#_F7JEn`S56H4=-xr@cn?SNm1lil z8E4XHHha+@Ler8CD4RPQWb_J?gGZ!8_TTopD7&?}ghKIg%ryl0Lp+ZREIr z=3@as7SL`ICH^iB8I6&MP%15Gr3tM>aso8;-R>n*HDULNQ>f5W$9Y z{+A5t4v6rSzn&fk)T*1go2iNE3o#i84ip8`ou8i=r}#B%0vdLTWyEeEUoEHww)1s<5n#RF`D6)F0m#<47 z7Dg_TX*Y3}lhOcvM+-$vdBZ(JD}KIWF0$7EO{RjDT{Xq@&j){5zDLwLUxMlvvGu_l z_1^{y+*J?1P81kIn0j^s_nCfG*TeI)(Xl zI(?ixoAm1Jhv`z-qHPf;8oK_Bc@S%K5{0YdMl<~)N8e;?CpX@%ljW`gtARdM`Z@hf zO?)gf6JJchF@aX*Cn`N6cTMsPUEPIzX`I8a<0umtp7k`9=^+FB)Ij$DN}cPLCN04~ zBeWGo5tirW7&|RxV{+->m4AeFDZdTZ%|0;SPGxmTQ*}h5;iR}&X@BG_R6C76h+)1; zG7POt$zdGG5(>^PH<*$acN(=BsT^l+CKu|88ktYRIhXMD3$<-J874}-&2ysoSYaDW zdmY)JJ|TqyoJDX?;(L>u=Yq%RO}y(={4zuYKP;K@;g-;5n;yNB7(G^AeEPk}Ny_}2 zJwuno{$8~X_Z>-2OMBkNm@pbwqCTg$*zfcAOaHIZ1Rs40lf$YqtxKg$`DeFzxSz9a zy~T2mD_T7{MO1Bt0i(#Sj|!~BRj;5&QSV5${(eBWojLxXVm$QgtLQfl_Q`Ef;&?|W zt>3%6p;6%_K7L(2Sgz^Ms_kbXLKHMyv_9%d+f9{RrE*1RyHB5b+U@0HprEAm! zAUJe-v{kgEdRe=<|D*Z7rHdC>OT|;bsgbio0Tg1dDp--E@ z#Gv~sZS3?(H5CQ~e-u#ViF^U+>+FgVc^#DH80njoqqfN!!!Aa_GpWTs&g`O(}7FZ?qHQ*;;Ejixs*YaJchK zL&(tik^JKb)(PVQfUGyvs2_qG$G9i*rRz<0SRj%3P6Cha2Me5g&&o&xn#j};5>pva zef&4FhvrhqC-)DFbptjbv|JC_7HzjRkLXwN4&q}(P~8uP%dZ9_%QS_pv+biNTreSp z#tQx-q{@EHtCph>9AsWwF4!{$pY!Uy8@g;EkLHLeqzQ1~0>UjMN?g znv5iMC;HZ#qEd1$W0_*`C7)YES3P^%jJ2yH?aO%VDWSl~Lw{%gAN9stMMs3GEl_n& zX8gn^;QiW*_m^3St3ICg|9xiF)0$SZb;kht<)A<6uRY=)UCd=R_-uTyFm!RtAa;MR ziP;6TLI39ve?{@==VZHWNp^ar(PH%#xm^Zk(GQtlBlU@L5w8P@o+9gC!SyG>cgmea z@988sY52q#<@8Od&K+G?)>}Hgzw5~G1ar7LG8YaFW&YIRcIaFSgaOElaj4^e{{y5- z?#|*lCRI__ozci?EG$FWLk!lW8}YqWW!w{Vr5}g(_m;ECs{&Mrk?sHd+rbOF-I{&oEWApXTi|lK@ zsi~!Zc#!H%ekR(X3_st~^E8zhn)sZJe`#JmXxWq6K6E6?! zzR;Qbyx`c93|?XHL)nG_3($n`V{?_-nuDM)I{H$ps6lZD#2j84j)PKKPe2{=a>_^` zw2(3KkFlp;HT~Zg1u+(sU|0YS`VHoRljkdw8tta(bfK>@2%~*~_{k49q8V|4Y2%-J zD~szekaJ6p`b4s^*(>%?W242!m<$eVz;R0K>J3?=#^!IIZA)3G9;y2~aZEdo3|*)IK9otf^wH2;C?hK+g0ks)|=C*6WQ5l#;ma`tm`s^nX~93k-HYbq`;aJd!X zz>Z$C?US1_BB28_M7*!fQ6laZ95D(QRzw?QS!IpWAMh6Ix4d5FIx3%kOl)^OGHAvi z*_rgyz4^ndYDx#Ax#@e~vca}MGbL0g@G~0W`5sTzhhG&aG5SHR#eeC84XfoWy=aCq zIF^+}ttqr1ELIE(MOPV_2$a;Sg?T+oNu3}#`e2Di zW+Yvf-+J-sy>G`yLa4(7#?PnScx{gWe;M4l`M0^$ty4mF3owehvs#4eQ6fJYT8{o+ z92W-GR=SlUWRMYMR%M@a6w?F$Mi!~C;P?9lA8W=;X0y382r>jN9|qSSu0yOS^ud}q z1pb-pX-hC#ZE2{ttfTfJ_U2az*zQ|{vB%pydYrhA#m6I3{^!#YU=!6M5I7H;FEm5a zIqwaJ=ri2s@q}aNg*U&$!j@bY>iwlJlCl{(w$CP_m-fEN6|wn^)B8pBzd`jiKU9O3 zyIno!Q@r?RD6Q1`W)(wD<%!K%L_hc8E1zzF=uGsVitMf~AjgIoCGdBNqnuw@O!evLUbrpz(JUYddcP{0?gs-i)7KWwg$ z?v3eEcsEvx>3z(aJLPyeJ~lfMJVJ~$2pS(*<+xV@er0S=Cg-w8>54Gf2y##Iu~MU$|+33*d4Vvz>Wkv4ok zBV@bdFI}IJ3_?1UeI%Ha-dwS~(CbuvmMv$%Ox~Q1xI;hf4~a}|P(=_S$v_kH^S=KB zia>S0;F=MgrIloi2*x%xe)dN{t|%C?MjfI)V@6|Q-znj}jT1C5x=$|DZ0uI+){!DV zXE0A8pLgCncH|zEv55SQi-$;tHudR1$1^fIN3f7V9CL&3NAHElRQo>65sWZz@T3y7 zmcDEWxtL@llDR(gvaGKf2<0%kklX;-9l@jnk|L7I;zv7(J5NQ&r6Md5PSD4-C6o7s zbIW_tDnq>{lm*8%Z;g%_!~NgGxTGsL+Es+Ht-jN~GN7H^h(4IjCIJLe zMG;9SdC6i!I^ckMEjdvFc}dFjBdsdL1;a`_&CE97o;dUsJaFw}wN6i5R!*uZMUf(K z0-#j@fHB2R7Bd?Wlm6+cqOz1G0Kg|Xaw^nXatmga?iVYQz`(9~)J^D8Rw^vfq(Vaq z@&Usf;;LQiGWkp*+s8nl41N_BsFxF1F^lCqdt_HJC7z-jg^o@Rc@@4Ef~k2)m|`nB zYea3`UP(I0=4JC(4x@@`VLWW0;EZK~z|ZGdi=^uFs;Pj0z4#SsFAH6`&BfGlucs~g zS9+xgEzT!aq@Iy2BvajnOJJ^4a6@`l8_9n%GeE9c8|Df#j2i3o?J^BI7LGY(mv|ww z@{WClSbIeK6p%ox5Gk~580lEfqS+h9oSVA{u1WjKu5c>cR~Z=lIuAotWV=hJie!Z# zCNLRSxu*$2j5FZ-*8`yB&eb%H1-Q8W7ur1)1xEgBx9=t-dJ|dJ+PlFX3>S}~}tBN03=dh7E^2_B5({{Tw6 zZ{ZXJ6WpTboJAh*)YYkV*e!zYx0%Z}07V>+UbUqq$CtM(7k5m9>C(C$B5dc58k}_* zVWnH?#JoOpvjNMu82Wy7D=(LIGi?eAD`OSRU)30_}zT^l-;yZy@+T`}q_-6iMLqhP7rycSDs5?5N+o*90y5TsI^BI2;g80?g{`nJad9FaZi@OnYvvG!FDH=Aur5;K@>nAW5#uuFjFFsvRnKUKQ*q*5eh8BwFt-iS znMN{yTBjW~Axl!Piik~aFuy4BQ=EUdUBLbDBsfi=XWxqREoSQCYw0Js+*(M(uJ7R< zgVMb^)S_8J>@r^64gtqFt{RJ5v!*OS$fM;hex|8k&Mj@^o!OX1x!cz#&{e*Kh0o$@ zma1-Jw6>Pg(XO*2d8)X|udWH_x93WXoTii5Dlc~E&5}r_1I)g-h4w70B2vHu&OWuE zZy=U+5zV+1-dJ={J$>qgax*!aJsVJ2AA_`Q9-h2ZqeQyY4%_@$T3}}0CJii~?=b$A z=(QAbE@q0J3W`R%)O7{iw(`vWPI5^E=QXZ8Po+FdC)y_{*$Uo6VX^7QJ?lypj@}f4 z2-Olb0ToB5t!6KWwD{s!mG2c}&cs6RAu7SI{m{_<_vcgXU`QgM!_82oCS zU?>1!05O5Ur&1A1KuwCll^KMRD*=$o;{O2aR(r4)bDV!4L)c(ey|9xaD^`%EL5Iw z-HttvHHClTi_2@rir(Je%g@UrlH2|G#X}~ud#G8@Z#}iNu}Xzs2;C2%&H>IVNYayc zGnGZL9i&DZ1)UhpaVg;AJnhMBdXrWsju%Ibp_)aBRzoUq%-GH`Sz2ZF&XyVpBWdCO z22L424&t^yw5{eFia5zVIQBKt(=bvevy#>|iqhRAAZ3o>f)0EBNARru6#1I<^zo8n zX@=A5$2j(+GEb-uQRZ`ds4nuHh=*K+r4x)I^UN0W3&&O3_YqE zLsd1@?e1ZcTX|zn9gwOYd~sDEVPU6R$9&;s3Kf};Q&+T`hPttiX$bkoMh9xN)-X(Q zG%G0T19YjmqST^QWRH30c@f~X1`ed7fT9FV_kh?bn^{C>vxAP(xa7f00i)JSDi*Xb*PLxxfv9|g&R2ABMf`f+E)XvY6BFp5UK-? z;-pf*WXF$e&;)HXPT)JJK8K2(K*tToVkwUutfLaAUs{SQM1hZ!B%28Pq~ucq@KJ-$ z2BMNE@twH(R3tJHoxmRS(#^@qK9pPlMp>{A6v?2Seq|f6+M$C{jif2cwt6_lUKdC{ z{zttR5uLb)+qI*7ee7_5!j&AwG?E2Yc@HPo-n5!XW{j`ON9$DPjxmj)hCS(^64)vv zFd1F;b$NL$lbWZa{g&X}YH<0WUd&50qX!5`?tu;hmHI5kRGWwJ(vw|RKL z1F)tBWYQU~rkAK^I6lLrHlFbmzz1@U`KC}Hq@^^J35_(`ai-D`lu<<%0-&dgj2e2? z2zch6IHnG?`T$x8ILQ0i;*Qj{NDa9X4O>UqDwjzI+}(q{dUM;FT{`|fPfmvIRg-pO zk~Zp$I4Wwci!fJ~+5YPd%0Hc2iLO&uxq;(PvP%lh3n;-?{xDB|)W%wfqK1kQk1se- zFbzlqvc(&Q@?-}txX3isW*Y*aea8%Q_kHQu<$*avk&j#u-lyQN3i@U z!PHIV>|v3(I2?5!uQeQE6;CBdV-Nr-JBakBZ+C@CC?x*?3-lBK@#aY!vC2Y{N`^zo z6rmKrt0D75W2<$~_|uhKT*l&7R8=a`kT7$DpRW|vFvWAQ9gi_2E;{0n3ez#S5=Mw{z(3Z9S$yOxu*5eB0qQ+5QI?J=OpkC^Dh9*I9`s!e z5+qTZb%U8>LA03;;&DkF>m{+8AkG4u05DEFVALY&-Zo=xQ8?$!%G=Yb1nc8;4`pJf3s@dR66;VII=zsD5Ax1M#kB zNY(9MOikAVV9IX#)|8J8v`sSFJo3dJLWkslGg*CKn^8K68cOlVaArq6g42s)BOlGM zoRCgUX6Sm%I^~MpK@X5P#BGeOdmMMDJVmXY15ASOS+&zoFo6^{2J#6RKR{`!3NFCv zT-lB7qm|m~Hj+GGB8-54&TA#aQ_k-k@I7UB5Gm%muycnz$kB9GU&&*m#OUkeE}-Aed1x+T=!U@Qq?o?DNvy=rN?O{SFd zNeNdc80RMg>S|hziqxs8tZoD@@*lx*jSE7zdx7b zQ|gYehi8gOB4-86V!YSF6~np3`ck0smuD*j0%jyO7BBR zD~3qwjZ* zfPPW;s=d6rxcO(&430Q1kMf^!?NgmD`%;f)r0Z{Mo^9YbEKllcnQNTY%TiU`DUMz~c2pr&0- z5riFr$K`+ zIUQ*^-(uq%7*lE%_U~YqU@SKlv9ij`^6n#%(~3m6v9-4VYNY~!v?-0SK)@sAKDB1r zMU%stagyC;G|$<^roeBOqRQpWsdJ!iS2A-YbzHZ zO>)V#q+dn;eXDK@J9|q+vw|g95q5<<=hT|A`+zyg0374#nvKB(=eBWCDK=DMk>=kJ zZUh>vC;$dXHh>3Dn!EcMQ0aEc?7m>PL4rm{73Kc`6DIP!MQV8kB z$|8|@7+zQL?kY_&cDOJ_w$Y*`BxM1lVt(~ZY1!OvOd@tb7A-emcT{4t5-?W>f_}f9 zI@Tc2!?Mi6yTJ0^XFE_S9DLZ$K-D+MkRy1(M{fR?+>)(0qx{>UliYkfQC(_94w)$epjI@fV0LHJS1w z;b4rO5Du6g%8>#tPK?; zTcmV#dsjUO!82_VRb zcQYS$Vm~USsJVI45HhGa9`z-xPb}*aF%0Z+lYle)hZWr8rsp(XrsKnH9M?}dhDJt7 zq#*PsEWjU5RYq}DhnCR^8DkPFVUnA91q5!x3_Z&oy+CO3o?Ir1CB@e?Nf+l zWx``8IQP$g(zE5UqkWLL5|IgDs8BqT7sdxrKT2}>EuSz)7-76+i7~HTqu&9)8qSu> zP-P&Tdui;U&GAcT(Obd;yP<0;u)k;|=g576+wPje`zO{dUsF;Me zah;IF=jB1|=s)_^a^?uGgeGA+h@5XI{Z2E_;xWgqTB4TY_LtQfc6#ll?4Cg$Oyh$b zi-HYaSH?kHjPyOLlGO;j)odYwNVyVkl>Y#6J^uh4S4a20aS2~n&kh8}mOiv_^1!}gXXv>HBzKc=4&YvRTrdZdw zm3X4U=7~wt-s&*Sfr031B)3RLBPVa6=B~pXw5zt(=H1kGNeA-lQnj-gQa+hGbBv7A z8fomz>|pjEN^6z_rs3~WUR&KjM%7+AhVS$>NA0QRd2>S~59)azoiUbD^%U*ER_TIq zR~G8ohS%Ju9PSw(ooBM7vEkJoHt*|AU^9XDeKXRFh_@w`tnBQZ5<0D6-9)g@u?|4% zS29%PSg)oHRhR(TmL_6p+I$idrdL z3M*0yjcP$wB0)|Dn6&BubuVmCDQb`oic<{H%sQd%>E5-qM0sGhyn=r#?6Qf8C*@>3 zFh1Dl@T`8v++wzL$yR$7hE)uzrZT6xkxUDWM1h_e5UiteFgXN&`l;*y2=X~ygOWG~ zvviXUtWs%lmv8Lm^2YpRq2wRw_*RmvV6qY%w>wz&rLfTA>aro&#ib!jqUW*ePf+{a zSOB~PA-VjjBXJVM%BO3o+N#`S{{V$YE!4YFmuzGlvJwbyU+GgRq*{Y}7DQXE!b;v~ z2PB@Rr1OKr=EMw`JZ&8Q8LF1|ODHldL`vu93UWTUsev*E+Tm1;f;btebrRHSl$)_M zvaDq?KvHna+ym)RM|6#L;aUFZA#so~+*K!bNOp$#Ph6Ug$VVENngV7Af?JGMaje@n z_7+BpO$;c>3`}yxijJ8*dj9|_aC^DFRD?tTp=N0xFN9$2t-`znkmdyls!5&{YsC@gYw#4&F!ym-l zew7ZQvC|q2i*~YGD;XR#$AKT2l7A}WJXxpQ%87M8cR~LEEb?}R^~bOH*I0a*x)6`* zO;fv#Z&BgpvNoKKwUe7{RcJL61Hv~u;kvhFStC*(1ol1awTnNMEsdwJnj=H-i>P;IQW(rFZb?_ZLo&sl0Crup$UY4o7qT73k8axph36uy-Ty z#hvAkhtf!5K_%SHI|&Xpscee9f2T>RL?FG87=)`ZjW_|9zIu-RD^O<~fsagdq&)G` zvy`sxTvmlhZDX`XSQ0q*b=bHpeM#zSo!nE#;KKl&isuEf{zYnWxO!v{)~inJ*8Xac ztd7V}^rsq{>J1{Uo2MIlhrPRXmi9#oG14Xe=&e!Sv*G(xZl-AgMms>rje$|!hai5H0?l!S^CMia=L$|gDxP=wptw<-NEqX&2aoGmqH$|2%qf2* zx<@HiGAY4gbMpQaS&dlRfu&-?NXmhXHqr;urwVs%I8%&}#}$chi<^TS8r+V|u4LLc zJ%I%9Pdx=)O)>+IF{F?JNnQMNjydPI>S)+{GWt3?7Df)B;FUcMQIjWFc(^0TQS@xp ziwjt+qIl7dm%PYx+ku{c3ZNz}cDF1DGe~y(fx!I$sB^O#jnPGpe6Df9 zJ*wTlrDXthlTn6F>dM=J>%he_<_XQzvs=jvw$ZjXLDXlzr!_sicPi+Ut%uoyljWf9 zM^XCL+}B2Svm0@%LvFG+l{}1!&4f(wIOd|(F2Zz?RLez|WSVcHQgPdv~cy`VGp)jn%`)sq9e{f#NUaxWgO}20t_URAse8u&$qG zfj(wKCoR+feLwotJ6q1y?<_IO#ZJa!&eA#O@u=aj)8Pb&L7N<~lmK&DjyNvvE#i^2Ga{Tw zjT-F*NIVhWf(=V+X7Jy6hUMmr##i^9K`or;(-kuB+q5WMpbP{!9>TLPwHAuxSX;~H zT;mhJ@Wc;n{{Va2>r}4YkqxAIm&8d;-mMdl?yy{X1_He*$lGgLRjTY^JXUB?iNGN~;(I|Xcc zXfQMAdz#uyCxS4)XL!&7&fEYGO4T}r#8b$pPMQ{!2Uy#w$A8X|Z)ZkgY_1MKQW^3J zjNoJO{VNI9l=m($QP`spx`mmN-N@Uq(c>gw_9O7kSc6fxwbf+3lG-^ZWhi4KVu8m& z+ofBRR+&pmE$-so%eL;P-|(kPV|{o9iqdQsECDkFd^C4Kp zpnaHq<;#)xiTYPka1{p`2nXaVnZMHSgl{Z5W!k_H7A13!Q(c^v_V)0rNJ+>C>zbrX z9cYOJBH}`F!;gH|Gb9%5tn$R7QcLF?=ltfko=n?$K#>|gRGxVBteI7fx!c19IM1&& zGeD7>7oDfLy0(VI4o->5A(?+SuEI0LE&C#)oTl zt0tntPcSfMT<~$z@U5xJ%p{vZ9*1DiM$=p7ZGgK5BbryxtP107fOWuX(`E&-a#;1I z9OkQ?_YPEL9Tow&q>?DdT=IUk8)^Fjm6gF59cx&QX$)Yp2H=`bqYD_~%HRw~F&XQh zu79NmOuj5x9v$Vk9FvUxRkX2=z|)yRuOxnSy{kadXFB>;rmdLTE|@rDRi8%HZWm;Z zqAkVB0(Rv0{Y`We-rK^Yu>cQx&A8OwWdRovpITpAw#IG|D%)6E=_Ja{_KVPdOmLC? z2YT|YR{mN1N2pzHE~{`+jyV8hpMERSrIdy)&Ph;CN%pTWhHPGzkQI_i3vC3BN&SqOnO&g;kc65RGL`XydxQl}wDv(>NX58Lb&?tn97y@3-qS!8P;?G;)}~aHYS1 zo}lD`(z0b)UEsG^9#>~jV2u3IsOq5l;<`;ewEa5bTT8u81E4s6GfmXjZNxAE6blb*rb0vrP^<`HG|SteXhd&%uqV z>AHGe-TkcFvP_%)%?~?%QP(_kR_3vaO?yDLds7V8v6sEHjkry{7>>i*tw}LDZ4S58 zP;S{NMwIS%kYLD1e4oqltLbxa2*D)uAbxdD3*9$b*0n3Ex0KjeTfW3~1rVGmE9=;b zi$=zwFtu?s(Ln@~C|{J#w;L3m+o?M+NZA)N1y8a$DaIhslH53LfrB{&fmCI@3l^E?+?c1mS8bkN?ZsOFC>)&g z`Bd_au*k!xkA*z+kH6o*Sy1_pD=AnTo|5x#qXHnh7pcNeh&J zEc$=-s)g9QSfjYOisQ(a?nv3geLpI_C8I5rs{;iSNEwT$B!YS8>57{4>6Xx1>7rYS zY#LK6-C6wM!h_BgIqh0$BQIph zu3K4DyzwmY*_3z~#RNWD?ObgGf!mz^Rc7bJ{{Ud|M3!-l);3YCuwOV9Qm^&C|n?cHJ#H2Ai=f)>QV z7Yv@Y(c4_5^^{jpHe;1{4@z>TkM5o_J*u)#8@Y^bj$XSTgI$3U zI+c+D9k|U^xY6xrUD4rKbJI08MI7jc5hs|j1(1vqzt*Cb)G;ibdydtyK9MYZs|Na2 z8Exi8${nP3BQ&fl861K^;}nLiJ0W1V5g6F?kw+C2(7Y|l44>X!lr$D0qNI*8>zsF@ zr%p${BUpK6JvRT(C!zNAuJg+DsdFmGXVBS5eNtq^L< zXK-0m%atIa^`^$5B3b1Hw|vT;wNTo;_iZh#Z5~fffL8FNt*a%;?2S8ZX{FW?p58da zuE#m~%8r?>=;n%73S^B4=)_|q>sXp@hOtU+?j_5RMh#fHe=a6Sepd7x*9Ic0i?mM4 zG`W@AG)je&GOB^t6S%+s09vAw*v%^#)I_I{r_!UaRuTU7-bViGcB{fUB*O$TkM^3l z-AnFu#-A?4miCIDb+*aS9+g{BkXrUfuq2OhSpHo5M(EWQu-PXA zn!dU_$rxLU_>o*>C_JB~Z3lE+N^ymoWRYLHyZNN7VM)w!o(S#5L-y+lT%tuZ?06qUf(1K zkb7&tbeb(9-X$^_B$dZJjw+SC#P24-31tjd%ngBAI?ki2%WEuV_0l#NWsCvESMbf! z-)SP+Mj~r=Dn@?t`qpkyW|6HljZ2ssIb4~QoO84s{?wJ zF_Oxou^yGD7Mo?{5F*~K$@3VK$;lqQK&%Jxu8(ehOSxw~{IoegUX@l)h!*@UzLj@7 zH$w7+2D-Uq`WSO0c2Qbe!En<-3dbQ(m{EX7YRJ{DmV2)vH{BhuA&BT-{{XFA-N%nL znWA*H(-PQ}BpeoCJx9G|XT=5x-Z0A)hYAr!N%cQdR|+leMCaKan+9&Qg#k+)oZueS z70L-S<{~h41hZpu{&nZ6r1+-d50>uaU}T}2U>yGdkx@tC)AqaDZC6$n*H)ofHgbO)Vz@8( zM>JTYNv^ecQW*hc;4y4|b%Uv;j2A_8`>#3%0E2=E_Qh0i@sr#gR*vIU_?cyNt8J&* zPGcwck8ncn9+(92(Eb&lABk>t3y5y#aETOwN~a1J2Doxivlb_J@Z+D(uR!-PC`eGc zGX`QtKppE>f~Jux5hK_w?`*GIVqK@0F@eW99jfVq3uyOEEKvYCXDYb-YswxXwl_Hg zA@>80$GEJ=oq)qJBha3;KT~gJM6oJ84_dm{Bl668Sy`W_+8c<|-=3s)z{kB|Okx(d z3oXEr-B`Q3jm~k@`=8Rh?XKo;l*r|MHyl=$oBfp{IMk()Cf)>iQoxS+tv;yWh*jN3 zvEIYt7;PhmGg{3Ew~Q1Lg>-KC?N0vygzHIH2rX`lXQ?q@emkp^7QP--!529WcCvxW z{SSJSCV(Rm{f_vNlfNjtk711TtQ`pTIuzyPbkq2*(&0**=xt#qkr*aSdJ~LQQR1y0 z+z8^8@qz-X6O-#$(aE96?5$++1&N09ASB6;m%mS1j9=-VQmw|95Gxn(Tm!lI$v&Oy z7lVZNxqn%3T@5Gkm8>w4Zr2GYnVexVrB7lFEPoLvQ~=mO`2H-illWIPa`xJztd_R1 z*{UwqP1(uyrp2crI5!Bj-Ae~aBZ{Ujqh~{Pbjma(!!^pJY-p?+g_66{X>zw>qLmuZAkeIPHqn;pxFPjAK@Fl1!Q;l1*aO zmr^=`St^+y?J$7Z$s0jnpR|%AKCFJxsvQjF#ZCV@|&Rmdi&OXv8i0TM{{TL z7$prFFv(+rGDpywko@w?GXM;Z&IbbkoYt0;6iW>Hgs+b&+Az(?Tn?aj&TuOeLn7Z@ zy?Dr<$&OCLI1DkI0J%FdAe?tV|8I2 zibh89klx~zVpSRP)RE3{S_yA!X$WVD8Q5f@Jh@d|?fW~U4Z|5INAtx# zbV+UEB3OY$P*~?6U~x%xZwHpQ5X6I=9iR%P1_&er-1g5jMmRMLEd;A4n65}o_QzIu;*x8%+~(ew*(I&ZheOztta-( z9if-;$N1J!U>B*R%7RWuwKY;gyEZ?y(2NKhKU$I*sv%Rf7bg{q9xP+ z!+?v1S06biraqafx`dM4ENeZx+l76@aRfF7F~`=fQPSke88=Gn7w*hx`5T@4FLU{3 zsoGwd?a^jG=?pW##^I6`zYr<+u^ZUqSgz6(N6dkjA;{#KWPM4lCO8&ILP!90!Bg%lw7l6Rp3>P@INj@5Ph;gv$jHt{Ju2dc zTD3x8M;%k1d)CIXqQc8dhdX0p%*;8?d;YbbZ4n?wfRb2zqrGZ)iInS0Zmc}GVMGm{ z0q^}QqYd#`C9#q&Wz+R0n6t+!#8w#>l=-+j$6RB$=BKsPMbC__k{MF!$t}Krwj2mjkb;?b^LJ3y`N{M?$(c z$5GWSH0HH-3vX#&2@**>)=7{s^FO>jDJVGXQKzAit-62 zX_i)Uc9#kW5uV#|R{YkUT|@0w^1~g=L}E6~AIVf7>dtZUlao<7S!x$u3pevcHm_|I zHqC9Z8hK-7`HYOja^1(K4l2qW$Ox?E5zVMvUBv@K69kGhILK8P{4>uTt5U%f%t2l1 zJ68o+b3F%ZiU0$s2Akz30opN+nD(tWzRMsOMHu0M>MEqtv~svQTQq8Tc;7kvD>VrZ zl&K=_UztWRj2`tuSeR{8bCnnzxhPQNJ0&23Fe z1UR*^4x1EEU$o=`En|7viQ|EhpT@YDBzu`&>9;)7NLy%Jl33>ecdoBnm{@p9>4Dod z?CSy^nT>frtzvk7E3>M_b!P;364(KB(6PaF<#409!OePDXJqEidW!8tk%h&&HMG#p zZ!D|#B~qJ*@~)pux`Oi7CP{=-MxI%TkKD)Bvo&?QyV9e$)2?N`(=`jSkwWOO{(L)qXJjCu*$0Uqp zy{l74mK!Z9-q1{}V_tm$J%w?vr{6}n}43_$Ob2eS7y zht<;Em-UvnM{w7WgO4?TI;{GYtVmCo4trxf*9{!=&m_luf+!#|G;xfUVt!Hh{{Tu$ zg7CC)iQU{nB)CF3gr3J09Ek(3D_+N9Z}iKcQfUN77|ZcUG}Vy@+3q2hGw9=*;^bLY z2xVk0lVxMt+xH(%JJfb4*BXVbx)(t-fkwmI*0G+O3K)quW{$12`C?+eSp%r%im`ui ze$-=$z(~MBob!q+K4YzV9H6I)VB(wz{OZzd%zk#zN&t6Csr_m>A$fjK;y+SNR*J*z z*Q~MJVhB&oC-knmbe8PSQy%k28OX~vc<)Iaqut&HZ=P8?0x?(Pn@P1N%SV<@fw5HP zzL1PV5mv#=1ClP}WYYILbaH*9>-4UBQi?$d zf4Haa`jcIRT69pTlHvU6RAiCDkHWc)eqS`J1G&F}K&+(~)X`20;TJ;IV7`SR`GwqS zcZOVK4&u5SNS^j1FPI}hc?4yL;a*7h_gX%=9O}iECk2zUDe5cM^tQH+*h_CC7_JAH zyN*co6>+B>%-wmnWQpF|-rtDR%#`$L4t?vD@epT0L~s&gS8>B&)ds z7abQJKOVJ(sjpMuHg; z1d7pyR(^OsmFMqaER)MK42<%`edAqsg}&7tn6#A{;|DRmIv(Tc=|pePsnq92!=#P| z=_DuFv5Mz4%P5u!7@%g`jGm^uCA68>DxCJmdWrNQDc^L+4_&3WsZo{nGmLzU9}UjZ z>9NIg8A+lWS3ktPt8tY;ImpjEQp01Uz~Ri2Ox}@#K&>$uRx1{q03$0T&B3a0EkWNz zb9a_AUViN$c1Gafb*9^Ra{kfK+S_?t^N#-jTIk;5<}_B8_SW5Tf|0IBA6meIp4GM;``Vs;c(tQ9*Ww1U2xN-RHV3qM=kco79y9S3 z@5ps2Q-5fHQT(ea>d(lEITVtwpU$j!ekGe!ReqfZ9qZnWDtx!G=1y|Gjf))`_fU4Z zo>r518|9hE1a|u3w41|HrJ5?ON6>sp-SaN-yQU~`}8 zSSL}}CUz2Pw^?q9Z)}i)KDC{HXQ*FB3A?)(IA)sYl0C31H5on2Z7q?%;vEXcFAZu_ zt6W8U5Z?%zEiL-z85}bl)kyRS zUnGzQYp#T2ABe)Fob*N#j+}Hndsj!KcyVv+qPmi1MR#Qg6c!+N6zKE_#|-2eyJw)i z#nd**bn&aU0Xf2Y^sOgSDSNKL7`~;Y@aC9}62_8TNF1iqAj4zWRgFp;OA8H&9>@Ej zDC8eNI-1?nydMUcg4g#lGmxch;UJTa?0=nar-xvHU7)jA07~ADDJ{%uQNG8Rh`wb9jGP?tT99bv$RBHkNjM)d{{RZ=WAJ!s zq(~r|;6~ebq7jqn%~@Xu%q|i?u+AkpBX@7cx0WI=sf=hl>W*R!3R5U!aILYr9Q@U` z(AlfILt_(T2gxLyAF1tHlXx=rC`_$sBaDDRlP5W=OW+H`_o9zIvoAkN=9NU>#B{1B} zn)XRP9>_L?p42HnK4T+~Z+enX0YD>gm+@}L${G*`ea>r7u0a_*GjDUp7S2~V+t-dc z71VfFO1ieyBfD56B~_Ph-Z=zyuTZh@{C0Mb!rH1P!N`Uv*Y#j(>~?l>Zxh@_GG{2V zI2%Sg;NaF3F`UVyTrk|O=PP5QEW;BhGBfVlyzR)r{VLPx?`=2OVvX5le>FioJ z9NV{<64=QVw3v5}6b(QpIpHy%Zk1f(v6`0gtU)AaF>WLU9Ga8+GAZH`T1~um z2M0Bx+Rlu?gLe-($I3E4I*u#-4Iv8mcCtABIaNVFkfWSdG0I4(BpEnwm6VKPuEz{z z))B)h^aGl;_N^7JUPZmKDtZBdww%|NEJv59*#qAs9FNYWyNx2Owyd#a;YzS<=bjBg zHlGFR{h~9nUUJ}Yf8MQCxwgsKb#6~p`N6^U#W;&ePT_MDG84&H1z7jUsByT?Qhhq| zB0-Ee{`!APs==fC(XhvDr<&{JfwmR~7bCn<2G8NzsxwTZ4Gg&d0CzQ?u}nEmdO0o7 zL`#yx?*hD3#&|a?G?5Sw-3yA<m~-MHYMHVwbT(*vYlX?g9Ey?4Lm8WC8;J05RZWlBWb8 zYC#;Uw7VP=fLP}o8oV^vnRt0e`=*ooCN2oOxgOaRdpQZFX1$y^X8B9?<$BZ?cB>oh zAUfa@cHq{-X(WK6`fa(+7-t5U+D`V^_marD<#u426*f;Pg>hn<%4DWZxsV4xC7IXN`rV;ri!Vvx(oU^x}EV`Zq+3=Iz4wzULIys66${CBGQ zll`Msy0}>LZzP375B7M?b}(2*w+V33ui6nA1cRXjRt&aNSVXbU3o8aCr3Whh^|b_} zD~eGv1WUPmsjzTH8F8K~7Ckdk(yt>DsTOY_GA`ZAj--m~Jg6?z?~in!!qNIvvCna8 zHYA0Yp(Kot!1b=0m1l2s&M;k0b^L{VM#5hugTxg92ZFij+cYE|OnXFfFkY$?sqfA! zsWYqPi#r^B)m2fS!h>`XafyQGAbFqtYQdv&51 zXKRi!I_NQCZs^;0^3k&6BR$9e09uBvp|UMCx)mjtBk5Te7>YUM-SXhg+IbU&Oxqo&1>uFuO!ClrDixj{C<^jB9a&+g)SwAIf)L4_z$0I^wlrj z*&cti_wH@Sd3kedqig>F+J;Fj=3@<%@r5$V4jd*roDs?Os`|us`enYO9hHsTGi!1P z?xmg8mfcHblx^yI_3csHPcloPy!PuQmX3eX;f((PtU2Ad=e|Pc=~qU*9qiEuhC2!T zsb*s7n3nC2-X!(oIP|P}8hV{dcSFClnfyho&uJ`z-p0hmr^hcD+5p@E^}#fr8@E=p z7m{2*pM0#47}w?uys-zdAXFBuX>;~i?&nL3gBY}Ff4?J=L+8E#>r+|8Z46Lby~e`r z68)Y~tGzz_nLfQSPG0SUPNXwjOZ}&QUNsUlfZ=EuOUmK4g>4 za%3f@kh>Bwn%$2|yz)|02-xEwgIpD=NxLJKP?VXK7&hye{#gTt1b4=9lkHWR9j9l> z%(4cPpT0dC)NzX2dpR-8fBkBuG(`ynVESUFHD_H5>F@$kO*X<(2KG|SZPaE%GTZ;)UF~fvF!u99C2Hg zeji9;24l`YTDPR@5$l?KH?THiBj!~+2k1fmm3_lWkTR%8EuIB)*Tza}%R^XUqa9hz zUiq41M}KNdNpAlDFg;59*1@!gQ44!-bBk+?Gav)6dcpAx_md*UYlm3lD(v6JO;PY> zr9Pbu`fi|iK*Y%jJ#u*>xzln@*sf@&Yo3JjtZ_CIeisE-oQ{>x>Nk)ju^vQ1VZvbK z0qa)3wM!~T3=FD9K+h*WwVnN%(lIigGt#*yQQpTw*WpJW{hcM<+e;wI4Cg)Tt?=#K z)>aP(*~E}We{|=n{b|!$CzMhI&$z1^b1u)afr+`yL#tw!JguTP_EuWGMVfi;qy+&` z!;y?+)GuZ>fiq-(ceQG@z0ia@TejSFy%u1xv3>=nW!TM8tKW{u*L{MKL62t;4=Np%{YhPq& zJAHAQmYHi2B=2(}?GGyUEs9KmM4SDveoY+gJsu~yZhNWH66v| zm*tadmCi7|58x}b8Wx*x83Nkf9~>EeY*eD}PJjg$Hlgu?B2kg}3eDD!Kvd5@k42tl z8*B?HIV@9>YfXGVtT>D$CNQG_ZUZCUy2aJ4m*rD&DILON`O{NS1AAN8N(-E~n80WC zr0ce{DM58P;o&>UpA%0S9CD$_;8l^}=)|bA-jZL8BzecCU5CS3ObT{b@9sCbBB3j&HUyfT!0qw? zw8N%(hv$~@@!U+qKU`AhmvPwCj>g6X1XM*y}hX9n{07`rKv%(O9Ut6#k z^piDF{v!Ay9zV6BbLf#4{*<|qTN0aV<|LhV`<}q4{*(t3HZa|m0#W3>TmS7$MdA*g6608LOIJ%ddJXA!}(A&NIH>n!`@au z*07}b&!jIgXu6~0r^>7SYQOw0n3x|c!*_T;-b400Ozk@)cfBjGD0{%kbs68U8ug{{Tuk(DgfEqeik!kz18l zDoPCDxIf`ju7Mg3H28oXss(w+{4LE)OC*wLw!B6+#^)H1OCR>Zzs8z=D|qMAOZ;uy z{AeE}yB@wY-$>&9DE`f2KI9;N732x=U&jFa%cbM~xHtIIzu|27&>msZPu3Ry02(eX zNp?MK>BpblL_PSV8feckMeTws%7?{|7>-T0j(_c&e~mbNT=8K0);cyn-GA|-;mae` zj+K$jF#aGKYiSr6FvIyRd7^w=@iub$Zjwi;hW`K>kbGS62t4VUSq+SSu62FPx(xmP5AW)Lw{PA{uXA8242fjKu$l^gOApo z(2WBX(u4m16B&=QDu0C@W$-**+pzxtZUsF41XWS-8^dIQBiyciVX2eHUKW*te`qS6 zxRL@tTv2cyTIIjiM`tPZ*vb5jC+~}V*62U$oX!1nQ?H4 zDWfH`b#EfKKt5BCb5@WkU7(?i{{Rj{R4=C%AbBX9l^7-K6Jzk`vow@IOkvadIP^ znb~Fi;y7=0;+RTfIqCOnrr#P63^T4f3^1pgt7aH*tN!$O{c%H`(7m0`I!jGH@^)z= z0#ex|930iTd?jN%L?!*wD-0E8+&$}hTP-^3UBMwQ)D?VD_7_j}d$2lS=O0RiHin^M zjB7Qmy}p|$X_`2~nW7mxK)?i5i#um&-s#XnHu-QtoRFidA9KY|4xS(3)Z)TAm5mvSwnXShY{{HuQT zbtPG)5WkqC5rqEn;2Oc#^y`l{&Lu`LS|{&4T1MrV)|8TRO_@}BXmXae;bQ?gz!~8C)zD_-1xz)BCVL0roj9;ZX3mWbysXNJwOBir0I^|oCOfd1-^ z6n+3yvPgfkukQu}-Oct`M@&Yz$sWd_MF;|@!hwPGskVZQQhF2TJ!qz8ii1N8az_=_ zcxzA|L4sH1P8aE1psO~QO=onM3y+tm^{rIxxtdmYJA_VW26)I<$t-yT-ns31@)fq0 z7#jh`8OKsR1!di8vEE!fsLV2X0OKa9T}k$W3qC*{I%1qK)2S}V#;zs&F*1BLe>Q`4 zaM8@_CV%x{Wl8n+uFhS4OQZ$cAoUBt6_p2t=C}zXVNr(Q)UeoYo?CYLWQb?|;p<(J zp+RoU6sj>VoLourw&CanEta2tBuli2v~f4gTe$YFzeLgP62&FlCNIuN>Frl1D)E(! z1&K1dN3CU2r8q~D2Td9-{LHCo7`qZ1M~#YLH$4xfXeOM62b(D%by3h)GaTbZ*AU3w zUA@Z$J%D4-*I628ect7^;~YGGpd`a!-EsWJ0Q^KPdDE09KTC z0O3Jn?!46BWwnLDk<$QjBys$zT_)LTY~=5>ht(r^V?ttL12G&{wx6U)V`!Gq2X#-n z81q{mY)mqnoDKj)$}dXK;H1f%;IX*iK_U#~Se}AWVPDLI!C>wote3 z-3A6WqVB2JNX{GV`6IjLtjDIdKJZ`mP*vFz%x9aFl2F16i7-Fi0+dT|%aLyy^TBq{ z^sQm11wzinK`UKw$(_^Mb$mwNTz&z>W~fmyJn#;bew zd2ep#V}jmf%y^{bWpOLB-mY%6TM@eRQL~E!{#s6=vZwLKg6)3xwP@$kB47DemJbNq zE(ncJ`@*l=_;%JM7>H-o04pb58Y*p_rO(Ar3cxWFT~F!dTc74?l%E%L{139|nuMeM zvJ`(h!2ZmNBqd>1J%uV-&OixjichN5Ms7lJv$3f+#Z5t%HhvsT9`j63@)cFSBlx~! z`<*(%0o&vzpS_M~*yoJ8io=?Hjd>z+6GN@arKZ;P2R%>vLsl*A zoRP*JdyAP%bMwr^{{TAlv7|;g*gk@+FNf{NQaI^d5Yq_g8l2i$2v{o<>FZqn)jf@QG`Y{NhiJVB2kB1! z%CleN$I#-o7frf+GT0KQ_=^wmseiIB3g^j*dHy3>Yhh?%e`naJ>yz~~;bml`{EPWk z=+Uo0`M%Hp00GbVRix6GMxn>e+=0bsIk=RgbD9=*zw^W&_zfRqx9tee`?b{n0A(=f zgy+yuG^fb@**x>dN`+fdxFg8*z_9BV0T5$oAbu4`M{hPrcg2Ja$__FsQ^hfud`){E zK4feUZ%U!zq?S!i)(ObWlWhDex-RI>3*NEQ2GfHbx?sk8y-Fpv0EN>b{7J5ecyn(7 zqu}E-@u3Agx>ag=k%TR)IhK_G1ZmLY=uJj0iySVQ2jYghzwA`+AT*;zhy(KgeQ`|$ zqYjMaR_0Q0H0xpi0Bp?$?p6N)mn&d>qBYh30At6&R|NO@fBN*l*y)p!x&HumnH;h1 za|tEO#vED0gV6ajdDD#l0HeYWv?98s(}EGULV$Zvx_Jy;Ze2<1g&fikaOEB4bt++x z<{19~Rt0mVL~kO7EH@rcYV^^jw$cRbz@6VRgM(a0imap4wQaEv^^l2M*qRP(LQQC6 zU&N0cy~JRsblTWI#5m1E95Bd%n(Tud#ofJdHq?hjhKZ=}sUVo2u8+<-#;oRL+CSQ@NUrYKbEfIwgMth! zKdngj7ZE8ZO0i&jENm&gdK1g$V276j_wGO7RE9~(;&(XhlUn}(+8amDqS<5JNTAM1tc3plM~mO;7E z$;aSoyrO%3QK6LWcwYnq(02UA0&!#sc_;w=nlrnn9ck-v7|!i7EcZKWMr%7!Z7tdf zfkF$a5y!Zy&po?EI}RRq!|Li;?E?b5%~L6gw>&nEs@En#m5C_ zB>s7%ic1xcF~2IllUtB6_-3vFra#=hvuySylzyr!RT#Ca7QF{Y;+dgENVUyM5;1~b zHKiYqbtEVv*Z2qK^P$N#m^904h6G8cF!#QVPvl6d@_2Jml1UA%p`IdgzEi95_)?Tt zKuMike-QOR-!=Z5ELh~om^rNoe0hGQmg7sdkben|Lc4`|)ZQM{A_vdYrcioUoO<6+_k!)KY5Da`gWr14`dbujK=%dvoAl&nI(*>aCZUU zBOlJZXZLpTD#3F+8~))*m=pBouBN-MK*}K2?*=-ojvqgrE@9mD2eJ>=D99a(iixaM zPZ7Ev+Z$;81#l7g=fqIU`^&3IdvC+k*VyV7rl>rG11PrS@3ksdjcDOagn0r;&^xY4ij?2#nue~LE7e+uZNwk+FORE*=1-l8^&oT@q> z_DRKS8isPFnaE3Lc^Pju&P%-%4t+cjw=mhT`Wh_RtR#0GMIGHR{e!>E~~ z8IYeMJPt#*9DW)6>q6!Hn2tvs08z)c6_*t1F8u5h7M_M_J?3w^KMKgUMSfLozZ_rV+$!N{(awFqLhh3?p)a#taE9{&JJ z#?(mF=W9z<{m({_j-%SS`L!w7)zRfyZ6bSMsch&SN4cm@s|+n5lF@f=JrC+?y}q9< zwYtG*;wZ-(3FD6SG6oBGq>qht@OyFK4#~V zeEiZe$u)UVx~eEY-edhK{#&w~xj#k43MEE1A!}&lU!FC=>K~`&LZz%cMyRdV5wG&} zt4U}(sXpz^SW8A!&Ilh&Q?Ys!i7r79mOiqYP?HwU^-pCPscx@yy*YPY-`hfe+mL3l zF8(3-X3QTZ;%m19fo~UI#LyQ=*;_`FJDx`4*8-+X9k}@;Ufkf<4|DNC=25py&>IAO z>zN4s05zR2i#%z5Fs}ugANl1UBk`t_dm(e4qAX4_#{<+1R2LU|MS>Q))GZ>%X(k!3 zCX&-#y=>m=SCZ$bGGJ6A!*+4zSsc6Ll1U`hdpT|{bb2M<#E%E*=W6N(c?a;@A$e&!|HHpNoFInn0>Wa4=-uqd-M5L$Aq*OirKCujI^@3 zDhSUNg;wHRJ?3do@ejp!Z?@Y@vb0ig3j*X-X|*pJY6JKBw+mR)y!%3sbGk?UxR=c=k)I7{-vFLh4GW@p2M)f0i z^RDha0?}k8_sGYQ$9kPK>m(p7NJ;+ju7so1hkl14X<==@5!!_wpkV(1D$rdxWbK1- z&-ZJmNRly?hBfyKno`FdPvOO9Dty}&8C!D!G@FLO@-RJ41y$8_cKa6jHsUjuQPr!b zIXzBCp{Uw5l?pQFa3IvGDmso+x#b#~Nfp(>a7<(?CScGBC;aKM?>_7UyY zvvqrJzc1X%R=<41sQ&;| zzl~G1(IU6KTaPq0#@wT38|Y7QTBno97^dkYS36`v7{I`darCCkBv1e(WmY`^9MrQ* z9lB+h20a0+dx@D`FZ$NTOP-_JvZ*y45mAegek;#B?Ged?_gLbmTu44i6|un?=~({& zZ@Iw4Kp-3tI@Q=(QxeD^0$$E|09J9Wt(i`fMY9Mi&st4@bQ!54kz`P(Dlic`NpIll}9 z{{V!l*X;znPFScNjxs-$dUV%T(B?@3N6#gQ=DdGSx?62?PMi|2=PKYH#NxeD{={5O z#DNOr9H=3Or}C_)O-bs?i?N`W5wH%SSTM+7*#?|v>4X(Z&K0+WMh-`(VO9Vv4mt|S z(MjlNrE%s~Bm$$aP$@&O&N2B@N8_ARSnL^Ue4WQ~PciY^A52pkNis(Bk7^t~P%B2j zo!J2ujJ1fFWz!U~2mB7^E_j1VxxjCUfJ zAe%gs#tE~kC)5w(^*qXXORA5I&}@znao9@(&;F zQ-aQU#A-dst#6^ylNuu9tvzD)p^{7q`4&+ZdFmqs*pT{F>5k69!P8)XSkx`QDmj!Mgn{$cpdU;K!|cv z1bb9jmuu`O0LVMX@*cGxoFhpLY=NRp#5WlOnb@>=%?6*OW!!_tJ zNG63@*oI&W0DkUk&b(mCd_#1qdMYpEywKi;Q`oVf2_U=DB}{J!2?x-eV!C-eGi+s+ zN4P1zLiiwH6XCtC9VUHvAuD4LIH&QDHjHv})IahEheL3q{w_`Ml2g0$s z{MYh2jzA+L{QJ@W00@*pmDcABIUgq#X%^zy5g~IJMcNmtfIS6Thf@RPyFnSx-%q-J zqqRr1)V@*!q`5nc(DBDHRA1OK1t47`ZaMjrrEE()ajKk#W*J-_4M6g<3~xMgMN_Y0 zc`v1mn~w||h$D#47*ymkuP5tNkAztAE@Sq{KjB;D)DppnJ-MPQq8UHPmmKg$)2IlQYgcI!-Dr6Z0 zb2qp7&2Qd|;dA@2>Wsf6hyehPT+>WTQ<}QbbpQt4Jrw@{(;>Te>s1p*kj}#D!gN#7 zl{$MG?UPY3khd|Ny$q;-QY%GYatDr0%6bvroN6RDO!I@IS+FFaIP79M{#9N4H)!)B z#c>pD-4rnXoh#Gas%Lmm4`MpiXIoMU`y6b2&=2KWI_VjzPUn}H?yVIxadb((M=A{#zwidX(Dhi;GBjTrkL&0+j2G{ zl!6KB39VwxWQ?-}qBi@jCnb2}+M=2%78N2b#E={o`?>F1GFq!fv56T7Ac8u!4N}yQ zM5V)FKs*mq-2PRgM4aU1Oxt#Yj#QD*^s3Dw26>3a&_g%Up2k8XCBrddQ;qTgz{vOOR?=I@{%6s_^)Vb&x^{M98kaJ~tTL*{HKb_3=Kx~| z>MCWrn%+S6*Y`0q5|~Ly10I?DD$M$Yw9)MHo)!lOc*y#S=Cym7?e#l(q5J|&;LU0T!24X&yVkwE~WXIysOk@*^Y%nr@1hH@2#c==5;Y^rdw z9y<}5=TpS`qQqF;510UcO7$8WVW@E zHi*Px-22EQIXAwl10bxxHQuZ&U*JwAx!q*GiNOt z_xBZ=7%&A-71QcSZR{nL1|1OLfa%(~g!`a%`=zaiM__>Vl$6yQ5tExjmeb%0I{sVib+Gyzpi;J_04EQ zWoZd39k{?e9C2HzVVq(k{J%<3p|d%1F`w@r>04ST&B{#5EfNqh3VjAmIvCzyPX052 z#w%_;CMdaLr1~mgRO=P2L+*evl1ZfH8)zkdrYN<}I-WC%qpN{w3w)y}xxngcsJW75 z5Su%Aqzr#}N$9!iJ?lHfHi;}zPNQ%n#~{aU-^#FcQ_&jxHjg`+CXu6@f(hz>t$J0C zsU)5kx4VHu$hnP_54uOM`R`nf{jx%f1Z#|r+~DJi)$lFx^R9H~$L|--L!PWSZ|VBh zdNWw)boy=F*S3Y`MOOzIOzm&Zu7TGbPfjTS0026Ab`+9GB8B86j1DpDQ!66%Y=-i1 zpv0`v;BIL;VyH)RYaSj<&!u!+iyV%>ZRK6gK;VHW`kvL9;hDrY=uaM8*yqskU3Rw!mdrm!`=tAS zoYxME_DlT#0C-?$zoDWk+XB&-hh^- zW3St89J_^88$e--NNu8v5;$oB_NuYm9!@iWPD$&{N%rl)mINGNDCu5&o!QqIw6rd+ z=Rm5cq@0o13UUz+4317t20B$pUN%wl5JATylU9~k5D_NO4+4;y9Oz~FhYUFfHECUC zPcaTh-8^>{L2e_-R7?TD=A^Wk8-oyS!IK~Z-nOMahH{Tm(I19up7EqUXNOt(nB)X~ zE1>{mrDyAqne;2Tv6HhRx=fD|xRIlgTqz|O5Jzkr=Do@(q>|bRPy!w`Z0#920=!!7 zGSV(MBlNFV@cip>;mZed`4EK2^%X1=HE}WBgVU}Ske#f%qzky=a(?mjs2^)es~DLd zInH=*V^RbjS^$BSa&e6O)YNWROC!Y-$+Wmb^KI=;+!_RxNGm5z!;DmS3pBe?ct_!m zdJjsJ0;6h1$`l1v?Z;1A97l2^AlOqVps~RKbUgDO7bbTN^B_PowNGX~)b=I(uiTJR?*ZPc!3O458;U7A zLE{FjklE#%3~|Y86*7hQnL-) z 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

?1`<=>*wbi}tr@2SnoMJ@AmXG4(@g-<;(#MG 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 PuXe}n2b1~HKp+3v*l?_? diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml deleted file mode 100644 index 319a36d4..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/notebooks/sample.xml +++ /dev/null @@ -1,26 +0,0 @@ - - runeightft1 - 1555394321.8154433.jpg - E:/Image grocerydemostills/runeightft1/1555394321.8154433.jpg - - Unknown - - - 852 - 506 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 660 - 201 - 712 - 294 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/.__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/.__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py deleted file mode 100644 index f53914e9..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/anchors/generate_anchors.py +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 2015 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== - -import numpy as np -import math -from model.ssd_vgg_300 import SSDNet, SSDParams - -_R_MEAN = 123. -_G_MEAN = 117. -_B_MEAN = 104. -EVAL_SIZE = (300, 300) - -defaults = SSDNet.default_params - -img_shape = defaults.img_shape -num_classes = defaults.num_classes -feat_layers = defaults.feat_layers -feat_shapes = defaults.feat_shapes -anchor_size_bounds = defaults.anchor_size_bounds -anchor_sizes = defaults.anchor_sizes -anchor_ratios = defaults.anchor_ratios -anchor_steps = defaults.anchor_steps -anchor_offset = defaults.anchor_offset -normalizations = defaults.normalizations -prior_scaling = defaults.prior_scaling - -def ssd_anchor_one_layer(img_shape, - feat_shape, - sizes, - ratios, - step, - offset=0.5, - dtype=np.float32): - """Computer SSD default anchor boxes for one feature layer. - - Determine the relative position grid of the centers, and the relative - width and height. - - Arguments: - feat_shape: Feature shape, used for computing relative position grids; - size: Absolute reference sizes; - ratios: Ratios to use on these features; - img_shape: Image shape, used for computing height, width relatively to the - former; - offset: Grid offset. - - Return: - y, x, h, w: Relative x and y grids, and height and width. - """ - # Compute the position grid: simple way. - # y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] - # y = (y.astype(dtype) + offset) / feat_shape[0] - # x = (x.astype(dtype) + offset) / feat_shape[1] - # Weird SSD-Caffe computation using steps values... - y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] - y = (y.astype(dtype) + offset) * step / img_shape[0] - x = (x.astype(dtype) + offset) * step / img_shape[1] - - # Expand dims to support easy broadcasting. - y = np.expand_dims(y, axis=-1) - x = np.expand_dims(x, axis=-1) - - # Compute relative height and width. - # Tries to follow the original implementation of SSD for the order. - num_anchors = len(sizes) + len(ratios) - h = np.zeros((num_anchors, ), dtype=dtype) - w = np.zeros((num_anchors, ), dtype=dtype) - # Add first anchor boxes with ratio=1. - h[0] = sizes[0] / img_shape[0] - w[0] = sizes[0] / img_shape[1] - di = 1 - if len(sizes) > 1: - h[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[0] - w[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[1] - di += 1 - for i, r in enumerate(ratios): - h[i+di] = sizes[0] / img_shape[0] / math.sqrt(r) - w[i+di] = sizes[0] / img_shape[1] * math.sqrt(r) - return y, x, h, w - - -def ssd_anchors_all_layers(img_shape = img_shape, - offset=0.5, - dtype=np.float32): - """Compute anchor boxes for all feature layers. - """ - layers_anchors = [] - for i, s in enumerate(feat_shapes): - anchor_bboxes = ssd_anchor_one_layer(img_shape, s, - anchor_sizes[i], - anchor_ratios[i], - anchor_steps[i], - offset=offset, dtype=dtype) - layers_anchors.append(anchor_bboxes) - return layers_anchors diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py deleted file mode 100644 index d6a46056..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/dataset_utils.py +++ /dev/null @@ -1,119 +0,0 @@ -import os -import sys -import tarfile - -from six.moves import urllib -import tensorflow as tf - -LABELS_FILENAME = 'labels.txt' - -import shutil -from os import path - -def check_labelmatch(images, annotations): - data_dir_images = os.path.split(images[0])[0] - data_dir_annot = os.path.split(annotations[0])[0] - - im_files = {os.path.splitext(os.path.split(f)[1])[0] for f in images} - annot_files = {os.path.splitext(os.path.split(f)[1])[0] for f in annotations} - - extra_ims = im_files.difference(annot_files) - extra_annots = annot_files.difference(im_files) - mismatch = len(extra_ims) > 0 or len(extra_annots) > 0 - - if mismatch: - print(f"The following files will be removed from the training process:") - - if len(extra_ims) > 0: - print(f"images without annotations: {extra_ims}") - - if len(extra_annots) > 0: - print(f"annotations without images: {extra_annots}") - - if not mismatch: - print(str(len(images)) + ' images found and ' + str(len(annotations)) + ' matching annotations found.' ) - return (images, annotations) - - im_files = im_files.difference(extra_ims) - annot_files = annot_files.difference(extra_annots) - - im_files = [os.path.join(data_dir_images, f+".jpg") for f in im_files] - annot_files = [os.path.join(data_dir_annot, f+".xml") for f in annot_files] - - return(im_files, annot_files) - -def create_dir(path): - try: - path_annotations = path + '/Annotations' - path_images = path + '/JPEGImages' - path_tfrec = path + '/TFreccords' - - os.makedirs(path_annotations) - os.makedirs(path_images) - os.makedirs(path_tfrec) - - except OSError: - print("Creation of folders in directory %s failed. Folders may already exist." % path) - else: - print("Successfully created Annotations, JPEGImages, and TFreccords folders at %s" % path) - - print('Please copy your annotation and image files to the Annotations and JPEGImages folders before moving to the next step') - - -def move_images(data_dir, train_images, train_annotations, - test_images, test_annotations): - - source = data_dir + '/' - - for image in train_images: - image = data_dir + '/' + image - dst = source + 'train/' + '/JPEGImages' - - if path.exists(image): - shutil.copy(image, dst) - - for image in test_images: - image = data_dir + '/' + image - dst = source + 'test/' + '/JPEGImages' - - if path.exists(image): - shutil.copy(image, dst) - - for annot in train_annotations: - annot = data_dir + '/' + annot - dst = source + 'train/' + '/Annotations' - - if path.exists(annot): - shutil.copy(annot, dst) - - for annot in test_annotations: - annot = data_dir + '/' + annot - dst = source + 'test/' + '/Annotations' - - if path.exists(annot): - shutil.copy(annot, dst) - - print('Images and annotations have been copied to directories: ' + source + 'train' + ' and ' + source + 'test') - -def int64_feature(value): - """Wrapper for inserting int64 features into Example proto. - """ - if not isinstance(value, list): - value = [value] - return tf.train.Feature(int64_list=tf.train.Int64List(value=value)) - - -def float_feature(value): - """Wrapper for inserting float features into Example proto. - """ - if not isinstance(value, list): - value = [value] - return tf.train.Feature(float_list=tf.train.FloatList(value=value)) - - -def bytes_feature(value): - """Wrapper for inserting bytes features into Example proto. - """ - if not isinstance(value, list): - value = [value] - return tf.train.Feature(bytes_list=tf.train.BytesList(value=value)) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py deleted file mode 100644 index 61bca57d..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_common.py +++ /dev/null @@ -1,112 +0,0 @@ -# Copyright 2015 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Provides data for the Pascal VOC Dataset (images + annotations). -""" -import os - -import tensorflow as tf -from dataprep import dataset_utils - -slim = tf.contrib.slim - -VOC_LABELS = { - 'none': (0, 'Background'), - 'aeroplane': (1, 'Vehicle'), - 'bicycle': (2, 'Vehicle'), - 'bird': (3, 'Animal'), - 'boat': (4, 'Vehicle'), - 'bottle': (5, 'Indoor'), - 'bus': (6, 'Vehicle'), - 'car': (7, 'Vehicle'), - 'cat': (8, 'Animal'), - 'chair': (9, 'Indoor'), - 'cow': (10, 'Animal'), - 'diningtable': (11, 'Indoor'), - 'dog': (12, 'Animal'), - 'horse': (13, 'Animal'), - 'motorbike': (14, 'Vehicle'), - 'person': (15, 'Person'), - 'pottedplant': (16, 'Indoor'), - 'sheep': (17, 'Animal'), - 'sofa': (18, 'Indoor'), - 'train': (19, 'Vehicle'), - 'tvmonitor': (20, 'Indoor'), -} - -def get_split(split_name, dataset_dir, file_pattern, reader, - split_to_sizes, items_to_descriptions, num_classes): - """Gets a dataset tuple with instructions for reading Pascal VOC dataset. - - Args: - split_name: A train/test split name. - dataset_dir: The base directory of the dataset sources. - file_pattern: The file pattern to use when matching the dataset sources. - It is assumed that the pattern contains a '%s' string so that the split - name can be inserted. - reader: The TensorFlow reader type. - - Returns: - A `Dataset` namedtuple. - - Raises: - ValueError: if `split_name` is not a valid train/test split. - """ - if split_name not in split_to_sizes: - raise ValueError('split name %s was not recognized.' % split_name) - file_pattern = os.path.join(dataset_dir, file_pattern % split_name) - - # Allowing None in the signature so that dataset_factory can use the default. - if reader is None: - reader = tf.TFRecordReader - # Features in Pascal VOC TFRecords. - keys_to_features = { - 'image/encoded': tf.FixedLenFeature((), tf.string, default_value=''), - 'image/format': tf.FixedLenFeature((), tf.string, default_value='jpeg'), - 'image/height': tf.FixedLenFeature([1], tf.int64), - 'image/width': tf.FixedLenFeature([1], tf.int64), - 'image/channels': tf.FixedLenFeature([1], tf.int64), - 'image/shape': tf.FixedLenFeature([3], tf.int64), - 'image/object/bbox/xmin': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/ymin': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/xmax': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/ymax': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/label': tf.VarLenFeature(dtype=tf.int64), - 'image/object/bbox/difficult': tf.VarLenFeature(dtype=tf.int64), - 'image/object/bbox/truncated': tf.VarLenFeature(dtype=tf.int64), - } - items_to_handlers = { - 'image': slim.tfexample_decoder.Image('image/encoded', 'image/format'), - 'shape': slim.tfexample_decoder.Tensor('image/shape'), - 'object/bbox': slim.tfexample_decoder.BoundingBox( - ['ymin', 'xmin', 'ymax', 'xmax'], 'image/object/bbox/'), - 'object/label': slim.tfexample_decoder.Tensor('image/object/bbox/label'), - 'object/difficult': slim.tfexample_decoder.Tensor('image/object/bbox/difficult'), - 'object/truncated': slim.tfexample_decoder.Tensor('image/object/bbox/truncated'), - } - decoder = slim.tfexample_decoder.TFExampleDecoder( - keys_to_features, items_to_handlers) - - labels_to_names = None - if dataset_utils.has_labels(dataset_dir): - labels_to_names = dataset_utils.read_label_file(dataset_dir) - - return slim.dataset.Dataset( - data_sources=file_pattern, - reader=reader, - decoder=decoder, - num_samples=split_to_sizes[split_name], - items_to_descriptions=items_to_descriptions, - num_classes=num_classes, - labels_to_names=labels_to_names) diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py deleted file mode 100644 index 52112c97..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/dataprep/pascalvoc_to_tfrecords.py +++ /dev/null @@ -1,223 +0,0 @@ -# Copyright 2015 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Converts Pascal VOC data to TFRecords file format with Example protos. - -The raw Pascal VOC data set is expected to reside in JPEG files located in the -directory 'JPEGImages'. Similarly, bounding box annotations are supposed to be -stored in the 'Annotation directory' - -This TensorFlow script converts the training and evaluation data into -a sharded data set consisting of 1024 and 128 TFRecord files, respectively. - -Each validation TFRecord file contains ~500 records. Each training TFREcord -file contains ~1000 records. Each record within the TFRecord file is a -serialized Example proto. The Example proto contains the following fields: - - image/encoded: string containing JPEG encoded image in RGB colorspace - image/height: integer, image height in pixels - image/width: integer, image width in pixels - image/channels: integer, specifying the number of channels, always 3 - image/format: string, specifying the format, always'JPEG' - - - image/object/bbox/xmin: list of float specifying the 0+ human annotated - bounding boxes - image/object/bbox/xmax: list of float specifying the 0+ human annotated - bounding boxes - image/object/bbox/ymin: list of float specifying the 0+ human annotated - bounding boxes - image/object/bbox/ymax: list of float specifying the 0+ human annotated - bounding boxes - image/object/bbox/label: list of integer specifying the classification index. - image/object/bbox/label_text: list of string descriptions. - -Note that the length of xmin is identical to the length of xmax, ymin and ymax -for each example. -""" -import os -import sys -import random - -import numpy as np -import tensorflow as tf - -import xml.etree.ElementTree as ET - -from dataprep.dataset_utils import int64_feature, float_feature, bytes_feature - -# TFRecords conversion parameters. -RANDOM_SEED = 4242 -SAMPLES_PER_FILES = 100 - -def _set_voc_labels_map(class_list): - return dict(**{'none': 0}, **{cl: i + 1 for i, cl in enumerate(class_list)}) - -def _process_image(img_name, annot_name, class_list): - """Process a image and annotation file. - - Args: - img_name: string, path to an image file e.g., '/path/to/example.JPG'. - Returns: - image_buffer: string, JPEG encoding of RGB image. - height: integer, image height in pixels. - width: integer, image width in pixels. - """ - # Read the image file. - image_data = tf.gfile.FastGFile(img_name, 'rb').read() - class_dict = _set_voc_labels_map(class_list) - - # Read the XML annotation file. - filename = annot_name - tree = ET.parse(filename) - root = tree.getroot() - - # Image shape. - size = root.find('size') - shape = [int(size.find('height').text), - int(size.find('width').text), - int(size.find('depth').text)] - # Find annotations. - bboxes = [] - labels = [] - labels_text = [] - difficult = [] - truncated = [] - for obj in root.findall('object'): - label = obj.find('name').text - labels.append(class_dict[label]) - labels_text.append(label.encode('ascii')) - - if obj.find('difficult'): - difficult.append(int(obj.find('difficult').text)) - else: - difficult.append(0) - if obj.find('truncated'): - truncated.append(int(obj.find('truncated').text)) - else: - truncated.append(0) - - bbox = obj.find('bndbox') - bboxes.append((to_valid_range(float(bbox.find('ymin').text) / shape[0]), - to_valid_range(float(bbox.find('xmin').text) / shape[1]), - to_valid_range(float(bbox.find('ymax').text) / shape[0]), - to_valid_range(float(bbox.find('xmax').text) / shape[1]) - )) - return image_data, shape, np.clip(bboxes, a_min=0., a_max=1.), labels, labels_text, difficult, truncated - -def to_valid_range(v): - if v < 0.0: - return 0.0 - if v > 1.0: - return 1.0 - return v - - -def _convert_to_example(image_data, labels, labels_text, bboxes, shape, - difficult, truncated): - """Build an Example proto for an image example. - - Args: - image_data: string, JPEG encoding of RGB image; - labels: list of integers, identifier for the ground truth; - labels_text: list of strings, human-readable labels; - bboxes: list of bounding boxes; each box is a list of integers; - specifying [xmin, ymin, xmax, ymax]. All boxes are assumed to belong - to the same label as the image label. - shape: 3 integers, image shapes in pixels. - Returns: - Example proto - """ - xmin = [] - ymin = [] - xmax = [] - ymax = [] - for b in bboxes: - assert len(b) == 4 - # pylint: disable=expression-not-assigned - [l.append(point) for l, point in zip([ymin, xmin, ymax, xmax], b)] - # pylint: enable=expression-not-assigned - - image_format = b'JPEG' - example = tf.train.Example(features=tf.train.Features(feature={ - 'image/height': int64_feature(shape[0]), - 'image/width': int64_feature(shape[1]), - 'image/channels': int64_feature(shape[2]), - 'image/shape': int64_feature(shape), - 'image/object/bbox/xmin': float_feature(xmin), - 'image/object/bbox/xmax': float_feature(xmax), - 'image/object/bbox/ymin': float_feature(ymin), - 'image/object/bbox/ymax': float_feature(ymax), - 'image/object/bbox/label': int64_feature(labels), - 'image/object/bbox/label_text': bytes_feature(labels_text), - 'image/object/bbox/difficult': int64_feature(difficult), - 'image/object/bbox/truncated': int64_feature(truncated), - 'image/format': bytes_feature(image_format), - 'image/encoded': bytes_feature(image_data)})) - return example - - -def _add_to_tfrecord(img_name, annot_name, class_list, tfrecord_writer): - """Loads data from image and annotations files and add them to a TFRecord. - - Args: - dataset_dir: Dataset directory; - name: Image name to add to the TFRecord; - tfrecord_writer: The TFRecord writer to use for writing. - """ - image_data, shape, bboxes, labels, labels_text, difficult, truncated = \ - _process_image(img_name, annot_name, class_list) - - example = _convert_to_example(image_data, labels, labels_text, - bboxes, shape, difficult, truncated) - tfrecord_writer.write(example.SerializeToString()) - - -def _get_output_filename(output_dir, name, idx): - return os.path.join(output_dir, f"{name}_{idx:04d}.tfrecord") - -def run(output_dir, classes_list, images_list, annotations_list, output_name): - """Runs the conversion operation. - - Args: - output_dir: Output directory. - """ - - if not tf.gfile.Exists(output_dir): - tf.gfile.MakeDirs(output_dir) - - if(len(images_list) != len(annotations_list)): - raise ValueError("Images and annotations lists are of different legnths!") - - # Process dataset files. - fidx = 0 - i = 0 - im_annot = list(zip(images_list, annotations_list)) - - while i < len(im_annot): - # Open new TFRecord file. - tf_filename = _get_output_filename(output_dir, output_name, fidx) - with tf.python_io.TFRecordWriter(tf_filename) as tfrecord_writer: - j = 0 - while i < len(im_annot) and j < SAMPLES_PER_FILES: - sys.stdout.write('\r>> Converting image %d/%d' % (i+1, len(im_annot))) - sys.stdout.flush() - - img_name, annot_name = im_annot[i] - _add_to_tfrecord(img_name, annot_name, classes_list, tfrecord_writer) - i += 1 - j += 1 - fidx += 1 - - print('\nFinished converting the Pascal VOC dataset!') diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py deleted file mode 100644 index daa56a65..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/parser.py +++ /dev/null @@ -1,65 +0,0 @@ -import tensorflow as tf -import numpy as np -import os - -from datautil.ssd_vgg_preprocessing import preprocess_for_train, preprocess_for_eval -from model import ssd_common -from tfutil import tf_utils - -features = { - 'image/encoded': tf.FixedLenFeature((), tf.string, default_value=''), - 'image/format': tf.FixedLenFeature((), tf.string, default_value='jpeg'), - 'image/height': tf.FixedLenFeature([1], tf.int64), - 'image/width': tf.FixedLenFeature([1], tf.int64), - 'image/channels': tf.FixedLenFeature([1], tf.int64), - 'image/shape': tf.FixedLenFeature([3], tf.int64), - 'image/object/bbox/xmin': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/ymin': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/xmax': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/ymax': tf.VarLenFeature(dtype=tf.float32), - 'image/object/bbox/label': tf.VarLenFeature(dtype=tf.int64), - 'image/object/bbox/difficult': tf.VarLenFeature(dtype=tf.int64), - 'image/object/bbox/truncated': tf.VarLenFeature(dtype=tf.int64), -} - - -def get_parser_func(anchors, num_classes, is_training, var_scope): - ''' - Dataset parser function for training and evaluation - - Arguments: - preprocess_fn - function that does preprocesing - ''' - - preprocess_fn = preprocess_for_train if is_training else preprocess_for_eval - - def parse_tfrec_data(example_proto): - with tf.variable_scope(var_scope): - parsed_features = tf.parse_single_example(example_proto, features) - - image_string = parsed_features['image/encoded'] - image_decoded = tf.image.decode_jpeg(image_string) - - labels = tf.sparse.to_dense(parsed_features['image/object/bbox/label']) - - xmin = tf.sparse.to_dense(parsed_features['image/object/bbox/xmin']) - xmax = tf.sparse.to_dense(parsed_features['image/object/bbox/xmax']) - ymin = tf.sparse.to_dense(parsed_features['image/object/bbox/ymin']) - ymax = tf.sparse.to_dense(parsed_features['image/object/bbox/ymax']) - bboxes = tf.stack([ymin, xmin, ymax, xmax], axis=1) - - if is_training: - image, labels, bboxes = preprocess_fn(image_decoded, labels, bboxes) - else: - image, labels, bboxes, _ = preprocess_fn(image_decoded, labels, bboxes) - - # ground truth encoding - # each of the returns is a litst of tensors - if is_training: - classes, localisations, scores = \ - ssd_common.tf_ssd_bboxes_encode(labels, bboxes, anchors, num_classes) - return tf_utils.reshape_list([image, classes, localisations, scores]) - else: - return tf_utils.reshape_list([image, labels, bboxes]) - - return parse_tfrec_data \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py deleted file mode 100644 index a0cf0249..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/ssd_vgg_preprocessing.py +++ /dev/null @@ -1,397 +0,0 @@ -# Copyright 2015 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Pre-processing images for SSD-type networks. -""" -from enum import Enum, IntEnum -import numpy as np - -import tensorflow as tf - -from tensorflow.python.ops import control_flow_ops - -import tfextended as tfe -from datautil import tf_image - -# Resizing strategies. -Resize = IntEnum('Resize', ('NONE', # Nothing! - 'CENTRAL_CROP', # Crop (and pad if necessary). - 'PAD_AND_RESIZE', # Pad, and resize to output shape. - 'WARP_RESIZE')) # Warp resize. - -# VGG mean parameters. -_R_MEAN = 123. -_G_MEAN = 117. -_B_MEAN = 104. - -# Some training pre-processing parameters. -BBOX_CROP_OVERLAP = 0.5 # Minimum overlap to keep a bbox after cropping. -MIN_OBJECT_COVERED = 0.25 -CROP_RATIO_RANGE = (0.6, 1.67) # Distortion ratio during cropping. -EVAL_SIZE = (300, 300) - - -def tf_image_whitened(image, means=[_R_MEAN, _G_MEAN, _B_MEAN]): - """Subtracts the given means from each image channel. - - Returns: - the centered image. - """ - if image.get_shape().ndims != 3: - raise ValueError('Input must be of size [height, width, C>0]') - - mean = tf.constant(means, dtype=image.dtype) - image = image - mean - return image - - -def tf_image_unwhitened(image, means=[_R_MEAN, _G_MEAN, _B_MEAN], to_int=True): - """Re-convert to original image distribution, and convert to int if - necessary. - - Returns: - Centered image. - """ - mean = tf.constant(means, dtype=image.dtype) - image = image + mean - if to_int: - image = tf.cast(image, tf.int32) - return image - - -def np_image_unwhitened(image, means=[_R_MEAN, _G_MEAN, _B_MEAN], to_int=True): - """Re-convert to original image distribution, and convert to int if - necessary. Numpy version. - - Returns: - Centered image. - """ - img = np.copy(image) - img += np.array(means, dtype=img.dtype) - if to_int: - img = img.astype(np.uint8) - return img - - -def tf_summary_image(image, bboxes, name='image', unwhitened=False): - """Add image with bounding boxes to summary. - """ - if unwhitened: - image = tf_image_unwhitened(image) - image = tf.expand_dims(image, 0) - bboxes = tf.expand_dims(bboxes, 0) - image_with_box = tf.image.draw_bounding_boxes(image, bboxes) - tf.summary.image(name, image_with_box) - - -def apply_with_random_selector(x, func, num_cases): - """Computes func(x, sel), with sel sampled from [0...num_cases-1]. - - Args: - x: input Tensor. - func: Python function to apply. - num_cases: Python int32, number of cases to sample sel from. - - Returns: - The result of func(x, sel), where func receives the value of the - selector as a python integer, but sel is sampled dynamically. - """ - sel = tf.random_uniform([], maxval=num_cases, dtype=tf.int32) - # Pass the real x only to one of the func calls. - return control_flow_ops.merge([ - func(control_flow_ops.switch(x, tf.equal(sel, case))[1], case) - for case in range(num_cases)])[0] - - -def distort_color(image, color_ordering=0, fast_mode=True, scope=None): - """Distort the color of a Tensor image. - - Each color distortion is non-commutative and thus ordering of the color ops - matters. Ideally we would randomly permute the ordering of the color ops. - Rather then adding that level of complication, we select a distinct ordering - of color ops for each preprocessing thread. - - Args: - image: 3-D Tensor containing single image in [0, 1]. - color_ordering: Python int, a type of distortion (valid values: 0-3). - fast_mode: Avoids slower ops (random_hue and random_contrast) - scope: Optional scope for name_scope. - Returns: - 3-D Tensor color-distorted image on range [0, 1] - Raises: - ValueError: if color_ordering not in [0, 3] - """ - with tf.name_scope(scope, 'distort_color', [image]): - if fast_mode: - if color_ordering == 0: - image = tf.image.random_brightness(image, max_delta=32. / 255.) - image = tf.image.random_saturation(image, lower=0.5, upper=1.5) - else: - image = tf.image.random_saturation(image, lower=0.5, upper=1.5) - image = tf.image.random_brightness(image, max_delta=32. / 255.) - else: - if color_ordering == 0: - image = tf.image.random_brightness(image, max_delta=32. / 255.) - image = tf.image.random_saturation(image, lower=0.5, upper=1.5) - image = tf.image.random_hue(image, max_delta=0.2) - image = tf.image.random_contrast(image, lower=0.5, upper=1.5) - elif color_ordering == 1: - image = tf.image.random_saturation(image, lower=0.5, upper=1.5) - image = tf.image.random_brightness(image, max_delta=32. / 255.) - image = tf.image.random_contrast(image, lower=0.5, upper=1.5) - image = tf.image.random_hue(image, max_delta=0.2) - elif color_ordering == 2: - image = tf.image.random_contrast(image, lower=0.5, upper=1.5) - image = tf.image.random_hue(image, max_delta=0.2) - image = tf.image.random_brightness(image, max_delta=32. / 255.) - image = tf.image.random_saturation(image, lower=0.5, upper=1.5) - elif color_ordering == 3: - image = tf.image.random_hue(image, max_delta=0.2) - image = tf.image.random_saturation(image, lower=0.5, upper=1.5) - image = tf.image.random_contrast(image, lower=0.5, upper=1.5) - image = tf.image.random_brightness(image, max_delta=32. / 255.) - else: - raise ValueError('color_ordering must be in [0, 3]') - # The random_* ops do not necessarily clamp. - return tf.clip_by_value(image, 0.0, 1.0) - - -def distorted_bounding_box_crop(image, - labels, - bboxes, - min_object_covered=0.3, - aspect_ratio_range=(0.9, 1.1), - area_range=(0.1, 1.0), - max_attempts=200, - clip_bboxes=True, - scope=None): - """Generates cropped_image using a one of the bboxes randomly distorted. - - See `tf.image.sample_distorted_bounding_box` for more documentation. - - Args: - image: 3-D Tensor of image (it will be converted to floats in [0, 1]). - bbox: 3-D float Tensor of bounding boxes arranged [1, num_boxes, coords] - where each coordinate is [0, 1) and the coordinates are arranged - as [ymin, xmin, ymax, xmax]. If num_boxes is 0 then it would use the whole - image. - min_object_covered: An optional `float`. Defaults to `0.1`. The cropped - area of the image must contain at least this fraction of any bounding box - supplied. - aspect_ratio_range: An optional list of `floats`. The cropped area of the - image must have an aspect ratio = width / height within this range. - area_range: An optional list of `floats`. The cropped area of the image - must contain a fraction of the supplied image within in this range. - max_attempts: An optional `int`. Number of attempts at generating a cropped - region of the image of the specified constraints. After `max_attempts` - failures, return the entire image. - scope: Optional scope for name_scope. - Returns: - A tuple, a 3-D Tensor cropped_image and the distorted bbox - """ - with tf.name_scope(scope, 'distorted_bounding_box_crop', [image, bboxes]): - # Each bounding box has shape [1, num_boxes, box coords] and - # the coordinates are ordered [ymin, xmin, ymax, xmax]. - bbox_begin, bbox_size, distort_bbox = tf.image.sample_distorted_bounding_box( - tf.shape(image), - bounding_boxes=tf.expand_dims(bboxes, 0), - min_object_covered=min_object_covered, - aspect_ratio_range=aspect_ratio_range, - area_range=area_range, - max_attempts=max_attempts, - use_image_if_no_bounding_boxes=True) - distort_bbox = distort_bbox[0, 0] - - # Crop the image to the specified bounding box. - cropped_image = tf.slice(image, bbox_begin, bbox_size) - # Restore the shape since the dynamic slice loses 3rd dimension. - cropped_image.set_shape([None, None, 3]) - - # Update bounding boxes: resize and filter out. - bboxes = tfe.bboxes_resize(distort_bbox, bboxes) - labels, bboxes = tfe.bboxes_filter_overlap(labels, bboxes, - threshold=BBOX_CROP_OVERLAP, - assign_negative=False) - return cropped_image, labels, bboxes, distort_bbox - - -def preprocess_for_train(image, labels, bboxes, - out_shape = (300, 300), data_format='NHWC', - scope='ssd_preprocessing_train'): - """Preprocesses the given image for training. - - Note that the actual resizing scale is sampled from - [`resize_size_min`, `resize_size_max`]. - - Args: - image: A `Tensor` representing an image of arbitrary size. - output_height: The height of the image after preprocessing. - output_width: The width of the image after preprocessing. - resize_side_min: The lower bound for the smallest side of the image for - aspect-preserving resizing. - resize_side_max: The upper bound for the smallest side of the image for - aspect-preserving resizing. - - Returns: - A preprocessed image. - """ - fast_mode = False - with tf.name_scope(scope, 'ssd_preprocessing_train', [image, labels, bboxes]): - if image.get_shape().ndims != 3: - raise ValueError('Input must be of size [height, width, C>0]') - # Convert to float scaled [0, 1]. - if image.dtype != tf.float32: - image = tf.image.convert_image_dtype(image, dtype=tf.float32) - tf_summary_image(image, bboxes, 'image_with_bboxes') - - # # Remove DontCare labels. - # labels, bboxes = ssd_common.tf_bboxes_filter_labels(out_label, - # labels, - # bboxes) - - # Distort image and bounding boxes. - dst_image = image - dst_image, labels, bboxes, distort_bbox = \ - distorted_bounding_box_crop(image, labels, bboxes, - min_object_covered=MIN_OBJECT_COVERED, - aspect_ratio_range=CROP_RATIO_RANGE) - # Resize image to output size. - dst_image = tf_image.resize_image(dst_image, out_shape, - method=tf.image.ResizeMethod.BILINEAR, - align_corners=False) - tf_summary_image(dst_image, bboxes, 'image_shape_distorted') - - # Randomly flip the image horizontally. - dst_image, bboxes = tf_image.random_flip_left_right(dst_image, bboxes) - - # Randomly distort the colors. There are 4 ways to do it. - dst_image = apply_with_random_selector( - dst_image, - lambda x, ordering: distort_color(x, ordering, fast_mode), - num_cases=4) - tf_summary_image(dst_image, bboxes, 'image_color_distorted') - - # Rescale to VGG input scale. - image = dst_image * 255. - image = tf_image_whitened(image, [_R_MEAN, _G_MEAN, _B_MEAN]) - # Image data format. - if data_format == 'NCHW': - image = tf.transpose(image, perm=(2, 0, 1)) - return image, labels, bboxes - - -def preprocess_for_eval(image, labels, bboxes, - out_shape=EVAL_SIZE, data_format='NHWC', - difficults=None, resize=Resize.WARP_RESIZE, - scope='ssd_preprocessing_train'): - """Preprocess an image for evaluation. - - Args: - image: A `Tensor` representing an image of arbitrary size. - out_shape: Output shape after pre-processing (if resize != None) - resize: Resize strategy. - - Returns: - A preprocessed image. - """ - with tf.name_scope(scope): - if image.get_shape().ndims != 3: - raise ValueError('Input must be of size [height, width, C>0]') - - image = tf.cast(image, tf.float32) - image = tf_image_whitened(image, [_R_MEAN, _G_MEAN, _B_MEAN]) - - # Add image rectangle to bboxes. - bbox_img = tf.constant([[0., 0., 1., 1.]]) - if bboxes is None: - bboxes = bbox_img - else: - bboxes = tf.concat([bbox_img, bboxes], axis=0) - - if resize == Resize.NONE: - # No resizing... - pass - elif resize == Resize.CENTRAL_CROP: - # Central cropping of the image. - image, bboxes = tf_image.resize_image_bboxes_with_crop_or_pad( - image, bboxes, out_shape[0], out_shape[1]) - elif resize == Resize.PAD_AND_RESIZE: - # Resize image first: find the correct factor... - shape = tf.shape(image) - factor = tf.minimum(tf.to_double(1.0), - tf.minimum(tf.to_double(out_shape[0] / shape[0]), - tf.to_double(out_shape[1] / shape[1]))) - resize_shape = factor * tf.to_double(shape[0:2]) - resize_shape = tf.cast(tf.floor(resize_shape), tf.int32) - - image = tf_image.resize_image(image, resize_shape, - method=tf.image.ResizeMethod.BILINEAR, - align_corners=False) - # Pad to expected size. - image, bboxes = tf_image.resize_image_bboxes_with_crop_or_pad( - image, bboxes, out_shape[0], out_shape[1]) - elif resize == Resize.WARP_RESIZE: - # Warp resize of the image. - image = tf_image.resize_image(image, out_shape, - method=tf.image.ResizeMethod.BILINEAR, - align_corners=False) - - # Split back bounding boxes. - bbox_img = bboxes[0] - bboxes = bboxes[1:] - # Remove difficult boxes. - if difficults is not None: - mask = tf.logical_not(tf.cast(difficults, tf.bool)) - labels = tf.boolean_mask(labels, mask) - bboxes = tf.boolean_mask(bboxes, mask) - # Image data format. - if data_format == 'NCHW': - image = tf.transpose(image, perm=(2, 0, 1)) - return image, labels, bboxes, bbox_img - -def preprocess_image(image, - labels, - bboxes, - out_shape, - data_format, - is_training=False, - **kwargs): - """Pre-process an given image. - - Args: - image: A `Tensor` representing an image of arbitrary size. - output_height: The height of the image after preprocessing. - output_width: The width of the image after preprocessing. - is_training: `True` if we're preprocessing the image for training and - `False` otherwise. - resize_side_min: The lower bound for the smallest side of the image for - aspect-preserving resizing. If `is_training` is `False`, then this value - is used for rescaling. - resize_side_max: The upper bound for the smallest side of the image for - aspect-preserving resizing. If `is_training` is `False`, this value is - ignored. Otherwise, the resize side is sampled from - [resize_size_min, resize_size_max]. - - Returns: - A preprocessed image. - """ - if is_training: - return preprocess_for_train(image, labels, bboxes, - out_shape=out_shape, - data_format=data_format) - else: - return preprocess_for_eval(image, labels, bboxes, - out_shape=out_shape, - data_format=data_format, - **kwargs) diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py deleted file mode 100644 index a9626266..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/datautil/tf_image.py +++ /dev/null @@ -1,306 +0,0 @@ -# Copyright 2015 The TensorFlow Authors and Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Custom image operations. -Most of the following methods extend TensorFlow image library, and part of -the code is shameless copy-paste of the former! -""" -import tensorflow as tf - -from tensorflow.python.framework import constant_op -from tensorflow.python.framework import dtypes -from tensorflow.python.framework import ops -from tensorflow.python.framework import tensor_shape -from tensorflow.python.framework import tensor_util -from tensorflow.python.ops import array_ops -from tensorflow.python.ops import check_ops -from tensorflow.python.ops import clip_ops -from tensorflow.python.ops import control_flow_ops -from tensorflow.python.ops import gen_image_ops -from tensorflow.python.ops import gen_nn_ops -from tensorflow.python.ops import string_ops -from tensorflow.python.ops import math_ops -from tensorflow.python.ops import random_ops -from tensorflow.python.ops import variables - - -# =========================================================================== # -# Modification of TensorFlow image routines. -# =========================================================================== # -def _assert(cond, ex_type, msg): - """A polymorphic assert, works with tensors and boolean expressions. - If `cond` is not a tensor, behave like an ordinary assert statement, except - that a empty list is returned. If `cond` is a tensor, return a list - containing a single TensorFlow assert op. - Args: - cond: Something evaluates to a boolean value. May be a tensor. - ex_type: The exception class to use. - msg: The error message. - Returns: - A list, containing at most one assert op. - """ - if _is_tensor(cond): - return [control_flow_ops.Assert(cond, [msg])] - else: - if not cond: - raise ex_type(msg) - else: - return [] - - -def _is_tensor(x): - """Returns `True` if `x` is a symbolic tensor-like object. - Args: - x: A python object to check. - Returns: - `True` if `x` is a `tf.Tensor` or `tf.Variable`, otherwise `False`. - """ - return isinstance(x, (ops.Tensor, variables.Variable)) - - -def _ImageDimensions(image): - """Returns the dimensions of an image tensor. - Args: - image: A 3-D Tensor of shape `[height, width, channels]`. - Returns: - A list of `[height, width, channels]` corresponding to the dimensions of the - input image. Dimensions that are statically known are python integers, - otherwise they are integer scalar tensors. - """ - if image.get_shape().is_fully_defined(): - return image.get_shape().as_list() - else: - static_shape = image.get_shape().with_rank(3).as_list() - dynamic_shape = array_ops.unstack(array_ops.shape(image), 3) - return [s if s is not None else d - for s, d in zip(static_shape, dynamic_shape)] - - -def _Check3DImage(image, require_static=True): - """Assert that we are working with properly shaped image. - Args: - image: 3-D Tensor of shape [height, width, channels] - require_static: If `True`, requires that all dimensions of `image` are - known and non-zero. - Raises: - ValueError: if `image.shape` is not a 3-vector. - Returns: - An empty list, if `image` has fully defined dimensions. Otherwise, a list - containing an assert op is returned. - """ - try: - image_shape = image.get_shape().with_rank(3) - except ValueError: - raise ValueError("'image' must be three-dimensional.") - if require_static and not image_shape.is_fully_defined(): - raise ValueError("'image' must be fully defined.") - if any(x == 0 for x in image_shape): - raise ValueError("all dims of 'image.shape' must be > 0: %s" % - image_shape) - if not image_shape.is_fully_defined(): - return [check_ops.assert_positive(array_ops.shape(image), - ["all dims of 'image.shape' " - "must be > 0."])] - else: - return [] - - -def fix_image_flip_shape(image, result): - """Set the shape to 3 dimensional if we don't know anything else. - Args: - image: original image size - result: flipped or transformed image - Returns: - An image whose shape is at least None,None,None. - """ - image_shape = image.get_shape() - if image_shape == tensor_shape.unknown_shape(): - result.set_shape([None, None, None]) - else: - result.set_shape(image_shape) - return result - - -# =========================================================================== # -# Image + BBoxes methods: cropping, resizing, flipping, ... -# =========================================================================== # -def bboxes_crop_or_pad(bboxes, - height, width, - offset_y, offset_x, - target_height, target_width): - """Adapt bounding boxes to crop or pad operations. - Coordinates are always supposed to be relative to the image. - - Arguments: - bboxes: Tensor Nx4 with bboxes coordinates [y_min, x_min, y_max, x_max]; - height, width: Original image dimension; - offset_y, offset_x: Offset to apply, - negative if cropping, positive if padding; - target_height, target_width: Target dimension after cropping / padding. - """ - with tf.name_scope('bboxes_crop_or_pad'): - # Rescale bounding boxes in pixels. - scale = tf.cast(tf.stack([height, width, height, width]), bboxes.dtype) - bboxes = bboxes * scale - # Add offset. - offset = tf.cast(tf.stack([offset_y, offset_x, offset_y, offset_x]), bboxes.dtype) - bboxes = bboxes + offset - # Rescale to target dimension. - scale = tf.cast(tf.stack([target_height, target_width, - target_height, target_width]), bboxes.dtype) - bboxes = bboxes / scale - return bboxes - - -def resize_image_bboxes_with_crop_or_pad(image, bboxes, - target_height, target_width): - """Crops and/or pads an image to a target width and height. - Resizes an image to a target width and height by either centrally - cropping the image or padding it evenly with zeros. - - If `width` or `height` is greater than the specified `target_width` or - `target_height` respectively, this op centrally crops along that dimension. - If `width` or `height` is smaller than the specified `target_width` or - `target_height` respectively, this op centrally pads with 0 along that - dimension. - Args: - image: 3-D tensor of shape `[height, width, channels]` - target_height: Target height. - target_width: Target width. - Raises: - ValueError: if `target_height` or `target_width` are zero or negative. - Returns: - Cropped and/or padded image of shape - `[target_height, target_width, channels]` - """ - with tf.name_scope('resize_with_crop_or_pad'): - image = ops.convert_to_tensor(image, name='image') - - assert_ops = [] - assert_ops += _Check3DImage(image, require_static=False) - assert_ops += _assert(target_width > 0, ValueError, - 'target_width must be > 0.') - assert_ops += _assert(target_height > 0, ValueError, - 'target_height must be > 0.') - - image = control_flow_ops.with_dependencies(assert_ops, image) - # `crop_to_bounding_box` and `pad_to_bounding_box` have their own checks. - # Make sure our checks come first, so that error messages are clearer. - if _is_tensor(target_height): - target_height = control_flow_ops.with_dependencies( - assert_ops, target_height) - if _is_tensor(target_width): - target_width = control_flow_ops.with_dependencies(assert_ops, target_width) - - def max_(x, y): - if _is_tensor(x) or _is_tensor(y): - return math_ops.maximum(x, y) - else: - return max(x, y) - - def min_(x, y): - if _is_tensor(x) or _is_tensor(y): - return math_ops.minimum(x, y) - else: - return min(x, y) - - def equal_(x, y): - if _is_tensor(x) or _is_tensor(y): - return math_ops.equal(x, y) - else: - return x == y - - height, width, _ = _ImageDimensions(image) - width_diff = target_width - width - offset_crop_width = max_(-width_diff // 2, 0) - offset_pad_width = max_(width_diff // 2, 0) - - height_diff = target_height - height - offset_crop_height = max_(-height_diff // 2, 0) - offset_pad_height = max_(height_diff // 2, 0) - - # Maybe crop if needed. - height_crop = min_(target_height, height) - width_crop = min_(target_width, width) - cropped = tf.image.crop_to_bounding_box(image, offset_crop_height, offset_crop_width, - height_crop, width_crop) - bboxes = bboxes_crop_or_pad(bboxes, - height, width, - -offset_crop_height, -offset_crop_width, - height_crop, width_crop) - # Maybe pad if needed. - resized = tf.image.pad_to_bounding_box(cropped, offset_pad_height, offset_pad_width, - target_height, target_width) - bboxes = bboxes_crop_or_pad(bboxes, - height_crop, width_crop, - offset_pad_height, offset_pad_width, - target_height, target_width) - - # In theory all the checks below are redundant. - if resized.get_shape().ndims is None: - raise ValueError('resized contains no shape.') - - resized_height, resized_width, _ = _ImageDimensions(resized) - - assert_ops = [] - assert_ops += _assert(equal_(resized_height, target_height), ValueError, - 'resized height is not correct.') - assert_ops += _assert(equal_(resized_width, target_width), ValueError, - 'resized width is not correct.') - - resized = control_flow_ops.with_dependencies(assert_ops, resized) - return resized, bboxes - - -def resize_image(image, size, - method=tf.image.ResizeMethod.BILINEAR, - align_corners=False): - """Resize an image and bounding boxes. - """ - # Resize image. - with tf.name_scope('resize_image'): - height, width, channels = _ImageDimensions(image) - image = tf.expand_dims(image, 0) - image = tf.image.resize_images(image, size, - method, align_corners) - image = tf.reshape(image, tf.stack([size[0], size[1], channels])) - return image - - -def random_flip_left_right(image, bboxes, seed=None): - """Random flip left-right of an image and its bounding boxes. - """ - def flip_bboxes(bboxes): - """Flip bounding boxes coordinates. - """ - bboxes = tf.stack([bboxes[:, 0], 1 - bboxes[:, 3], - bboxes[:, 2], 1 - bboxes[:, 1]], axis=-1) - return bboxes - - # Random flip. Tensorflow implementation. - with tf.name_scope('random_flip_left_right'): - image = ops.convert_to_tensor(image, name='image') - _Check3DImage(image, require_static=False) - uniform_random = random_ops.random_uniform([], 0, 1.0, seed=seed) - mirror_cond = math_ops.less(uniform_random, .5) - # Flip image. - result = control_flow_ops.cond(mirror_cond, - lambda: array_ops.reverse_v2(image, [1]), - lambda: image) - # Flip bboxes. - bboxes = control_flow_ops.cond(mirror_cond, - lambda: flip_bboxes(bboxes), - lambda: bboxes) - return fix_image_flip_shape(image, result), bboxes - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py deleted file mode 100644 index 6771ed54..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/eval.py +++ /dev/null @@ -1,159 +0,0 @@ -import tensorflow as tf -import numpy as np - -import os, sys, time - -from anchors import generate_anchors -from model import ssd_common, ssd_vgg_300 -from datautil.parser import get_parser_func -from datautil.ssd_vgg_preprocessing import preprocess_for_eval, preprocess_for_train -from tfutil import endpoints, tf_utils -import tfextended as tfe -from finetune.train_eval_base import TrainerBase - -class EvalVggSsd(TrainerBase): - ''' - Run fine-tuning - Have training and validation recordset files - ''' - - def __init__(self, ckpt_dir, validation_recordset_files, steps_to_save = 1000, num_steps = 1000, num_classes = 21, print_steps = 10): - - ''' - ckpt_dir - directory of checkpoint metagraph - train_recordset_files - list of files represetnting the recordset for training - validation_recordset_files - list of files representing validation recordset - ''' - super().__init__(ckpt_dir, validation_recordset_files, steps_to_save, num_steps, num_classes, print_steps, 1, is_training=False) - self.eval_classes = num_classes - - def get_eval_ops(self, b_labels, b_bboxes, predictions, localizations): - ''' - Create evaluation operation - ''' - b_difficults = tf.zeros(tf.shape(b_labels), dtype=tf.int64) - - # Performing post-processing on CPU: loop-intensive, usually more efficient. - with tf.device('/device:CPU:0'): - # Detected objects from SSD output. - detected_localizations = self.ssd_net.bboxes_decode(localizations, self.anchors) - - rscores, rbboxes = \ - self.ssd_net.detected_bboxes(predictions, detected_localizations, - select_threshold=0.01, - nms_threshold=0.45, - clipping_bbox=None, - top_k=400, - keep_top_k=20) - - # Compute TP and FP statistics. - num_gbboxes, tp, fp, rscores = \ - tfe.bboxes_matching_batch(rscores.keys(), rscores, rbboxes, - b_labels, b_bboxes, b_difficults, - matching_threshold=0.5) - - # =================================================================== # - # Evaluation metrics. - # =================================================================== # - dict_metrics = {} - metrics_scope = 'ssd_metrics_scope' - - # First add all losses. - for loss in tf.get_collection(tf.GraphKeys.LOSSES): - dict_metrics[loss.op.name] = tf.metrics.mean(loss, name=metrics_scope) - # Extra losses as well. - for loss in tf.get_collection('EXTRA_LOSSES'): - dict_metrics[loss.op.name] = tf.metrics.mean(loss, name=metrics_scope) - - # Add metrics to summaries and Print on screen. - for name, metric in dict_metrics.items(): - # summary_name = 'eval/%s' % name - summary_name = name - tf.summary.scalar(summary_name, metric[0]) - - # FP and TP metrics. - tp_fp_metric = tfe.streaming_tp_fp_arrays(num_gbboxes, tp, fp, rscores, name=metrics_scope) - - for c in tp_fp_metric[0].keys(): - dict_metrics['tp_fp_%s' % c] = (tp_fp_metric[0][c], - tp_fp_metric[1][c]) - - # Add to summaries precision/recall values. - aps_voc12 = {} - # TODO: We cut it short by the actual number of classes we have - for c in list(tp_fp_metric[0].keys())[:self.eval_classes - 1]: - # Precison and recall values. - prec, rec = tfe.precision_recall(*tp_fp_metric[0][c]) - - # Average precision VOC12. - v = tfe.average_precision_voc12(prec, rec) - summary_name = 'AP_VOC12/%s' % c - tf.summary.scalar(summary_name, v) - - aps_voc12[c] = v - - # Mean average precision VOC12. - summary_name = 'AP_VOC12/mAP' - mAP = tf.add_n(list(aps_voc12.values())) / len(aps_voc12) - tf.summary.scalar(summary_name, mAP) - - names_to_values, names_to_updates = tf.contrib.metrics.aggregate_metric_map(dict_metrics) - - # Split into values and updates ops. - return (names_to_values, names_to_updates, mAP) - - def eval(self): - - tf.logging.set_verbosity(tf.logging.INFO) - - # shorthand - sess = self.sess - - sess.run(self.iterator.initializer) - batch_data = self.iterator.get_next() - - # image, classes, scores, ground_truths are neatly packed into a flat list - # this is how we will slice it to extract the data we need: - # we will convert the flat list into a list of lists, where each sub-list - # is as long as each slice dimension - slice_shape = [1] * 3 - - b_image, b_labels, b_bboxes = tf_utils.reshape_list(batch_data, slice_shape) - - # network endpoints - predictions, localizations, _, _ = self.get_output_tensors(b_image) - - # branch to create evaluation operation - _, names_to_updates, mAP = \ - self.get_eval_ops(b_labels, b_bboxes, predictions, localizations) - - eval_update_ops = tf_utils.reshape_list(list(names_to_updates.values())) - - # summaries - summary_op = tf.summary.merge_all() - saver = tf.train.Saver() - - eval_writer = tf.summary.FileWriter(self.ckpt_dir + '/eval') - - # initialize globals - sess.run(tf.global_variables_initializer()) - - saver.restore(self.sess, self.ckpt_file) - sess.run(tf.local_variables_initializer()) - - tf.logging.info(f"Starting evaluation for {self.num_steps} steps") - cur_step = self.latest_ckpt_step - - for step in range(self.num_steps): - print(f"Evaluation step: {step + 1}", end='\r', flush=True) - _, summary = sess.run([eval_update_ops, summary_op]) - - if (step + 1) % self.print_steps == 0 or step == self.num_steps: - eval_writer.add_summary(summary, cur_step + step + 1) - - summary_final, mAP_val = sess.run([summary_op, mAP]) - - print(f"\nmAP: {mAP_val:.4f}") - - if (step + 1) % self.print_steps != 0: - eval_writer.add_summary(summary_final, self.num_steps + cur_step) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py deleted file mode 100644 index d56bafea..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/inference.py +++ /dev/null @@ -1,95 +0,0 @@ -import tensorflow as tf - -import os, time - -from anchors import generate_anchors -from model import np_methods -from tfutil import endpoints, tf_utils -from datautil.ssd_vgg_preprocessing import preprocess_for_eval -import tfextended as tfe -from azureml.accel.models import SsdVgg - -class InferVggSsd: - ''' - Run fine-tuning - Have training and validation recordset files - ''' - - def __init__(self, ckpt_dir, ckpt_file=None, gpu=True): - - ''' - ckpt_dir - directory of checkpoint metagraph - ''' - - if gpu: - gpu_options = tf.GPUOptions(allow_growth=True) - config = tf.ConfigProto(log_device_placement=False, gpu_options=gpu_options) - else: - config = tf.ConfigProto(log_device_placement=False, device_count={'GPU': 0}) - - self.sess = tf.Session(config=config) - - ssd_net_graph = SsdVgg(ckpt_dir) - self.ckpt_dir = ssd_net_graph.model_path - - self.img_input = tf.placeholder(tf.uint8, shape=(None, None, 3)) - - # Evaluation pre-processing: resize to SSD net shape. - image_pre, _, _, self.bbox_img = preprocess_for_eval( - self.img_input, None, None, generate_anchors.img_shape, "NHWC") - self.image_4d = tf.expand_dims(image_pre, 0) - - # import the graph - ssd_net_graph.import_graph_def(self.image_4d, is_training=False) - - graph = tf.get_default_graph() - self.localizations = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.localizations_names] - self.predictions = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.predictions_names] - - # Restore SSD model. - self.sess.run(tf.global_variables_initializer()) - - if ckpt_file is None: - ssd_net_graph.restore_weights(self.sess) - else: - saver = tf.train.Saver() - saver.restore(self.sess, os.path.join(self.ckpt_dir, ckpt_file)) - - # SSD default anchor boxes. - self.ssd_anchors = generate_anchors.ssd_anchors_all_layers() - - - def close(self): - self.sess.close() - tf.reset_default_graph() - - def process_image(self, img, select_threshold=0.4, nms_threshold=.45, net_shape=(300, 300)): - # Run SSD network. - rpredictions, rlocalisations, rbbox_img = \ - self.sess.run([self.predictions, self.localizations, self.bbox_img], - feed_dict={self.img_input: img}) - # Get classes and bboxes from the net outputs. - rclasses, rscores, rbboxes = np_methods.ssd_bboxes_select( - rpredictions, rlocalisations, self.ssd_anchors, - select_threshold=select_threshold, img_shape=net_shape, num_classes=21, decode=True) - - rbboxes = np_methods.bboxes_clip(rbbox_img, rbboxes) - rclasses, rscores, rbboxes = np_methods.bboxes_sort(rclasses, rscores, rbboxes, top_k=400) - rclasses, rscores, rbboxes = np_methods.bboxes_nms(rclasses, rscores, rbboxes, nms_threshold=nms_threshold) - return rclasses, rscores, rbboxes - - def infer(self, img, visualize): - rclasses, rscores, rbboxes = self.process_image(img) - - if visualize: - from tfutil import visualization - visualization.plt_bboxes(img, rclasses, rscores, rbboxes) - - return rclasses, rscores, rbboxes - - def infer_file(self, im_file, visualize=False): - import cv2 - - img = cv2.imread(im_file) - img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) - return self.infer(img, visualize) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/metrics.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/metrics.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py deleted file mode 100644 index 2a172046..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/model_saver.py +++ /dev/null @@ -1,57 +0,0 @@ -import tensorflow as tf - -import os, time - -from azureml.accel.models import SsdVgg -import azureml.accel.models.utils as utils - -class SaverVggSsd: - ''' - Run fine-tuning - Have training and validation recordset files - ''' - - def __init__(self, ckpt_dir): - - ''' - ckpt_dir - directory of checkpoint metagraph - ''' - - config = tf.ConfigProto(log_device_placement=False, device_count={'GPU': 0}) - - self.sess = tf.Session(config=config) - - ssd_net_graph = SsdVgg(ckpt_dir, is_frozen=True) - self.ckpt_dir = ssd_net_graph.model_path - - self.in_images = tf.placeholder(tf.string) - self.image_tensors = utils.preprocess_array(self.in_images, output_width=300, output_height=300, - preserve_aspect_ratio=False) - - self.output_tensors = ssd_net_graph.import_graph_def(self.image_tensors, is_training=False) - - self.output_names = ssd_net_graph.output_tensor_list - self.input_name_str = self.in_images.name - - # Restore SSD model. - ssd_net_graph.restore_weights(self.sess) - - - def __enter__(self): - return self - - def __exit__(self, exc_type, exc_val, exc_tb): - self.close() - - def close(self): - self.sess.close() - tf.reset_default_graph() - - def save_for_deployment(self, saved_path): - - output_map = {'out_{}'.format(i): output for i, output in enumerate(self.output_tensors)} - - tf.saved_model.simple_save(self.sess, - saved_path, - inputs={"images": self.in_images}, - outputs=output_map) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py deleted file mode 100644 index b9b4e402..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train.py +++ /dev/null @@ -1,144 +0,0 @@ -import tensorflow as tf -import numpy as np - -import os, sys, time, re - -from anchors import generate_anchors -from model import ssd_common, ssd_vgg_300 -from datautil.parser import get_parser_func -from datautil.ssd_vgg_preprocessing import preprocess_for_eval, preprocess_for_train -from tfutil import endpoints, tf_utils -import tfextended as tfe -from finetune.train_eval_base import TrainerBase - -class TrainVggSsd(TrainerBase): - ''' - Run fine-tuning - Have training and validation recordset files - ''' - - def __init__(self, ckpt_dir, train_recordset_files, - steps_to_save = 1000, num_steps = 1000, num_classes = 21, - print_steps = 10, batch_size = 2, - learning_rate = 1e-4, learning_rate_decay_steps=None, learning_rate_decay_value = None, - adam_beta1 = 0.9, adam_beta2 = 0.999, adam_epsilon = 1e-8): - - ''' - ckpt_dir - directory of checkpoint metagraph - train_recordset_files - list of files represetnting the recordset for training - validation_recordset_files - list of files representing validation recordset - ''' - - super().__init__(ckpt_dir, train_recordset_files, steps_to_save, num_steps, num_classes, print_steps, batch_size) - - # optimizer parameters - self.learning_rate = learning_rate - self.learning_rate_decay_steps = learning_rate_decay_steps - self.learning_rate_decay_value = learning_rate_decay_value - - if self.learning_rate <= 0 \ - or (self.learning_rate_decay_value is not None and self.learning_rate_decay_value <= 0) \ - or (self.learning_rate_decay_steps is not None and self.learning_rate_decay_steps <= 0) \ - or (self.learning_rate_decay_steps is None and self.learning_rate_decay_value is not None) \ - or (self.learning_rate_decay_steps is not None and self.learning_rate_decay_value is None): - raise ValueError("learning rate, learning rate steps, learning rate decay must be positive, \ - learning decay steps and value must be both present or both absent") - - self.adam_beta1 = adam_beta1 - self.adam_beta2 = adam_beta2 - self.adam_epsilon = adam_epsilon - - def get_optimizer(self, learning_rate): - optimizer = tf.train.AdamOptimizer( - learning_rate, - beta1=self.adam_beta1, - beta2=self.adam_beta2, - epsilon=self.adam_epsilon) - return optimizer - - def get_learning_rate(self, global_step): - ''' - Configure learning rate based on decay specifications - ''' - if self.learning_rate_decay_steps is None: - return tf.constant(self.learning_rate, name = 'fixed_learning_rate') - else: - return tf.train.exponential_decay(self.learning_rate, global_step, \ - self.learning_rate_decay_steps, self.learning_rate_decay_value, \ - staircase=True, name="exponential_decay_learning_rate") - - def train(self): - - tf.logging.set_verbosity(tf.logging.INFO) - - # shorthand - sess = self.sess - - batch_data = self.iterator.get_next() - - # image, classes, scores, ground_truths are neatly packed into a flat list - # this is how we will slice it to extract the data we need: - # we will convert the flat list into a list of lists, where each sub-list - # is as long as each slice dimension - slice_shape = [1] + [len(self.anchors)] * 3 - - b_image, b_classes, b_localizations, b_scores = tf_utils.reshape_list(batch_data, slice_shape) - # network endpoints - _, localizations, logits, bw_saver = self.get_output_tensors(b_image) - - variables_to_train = tf.trainable_variables() - sess.run(tf.initialize_variables(variables_to_train)) - - # add losses - total_loss = self.ssd_net.losses(logits, localizations, b_classes, b_localizations, b_scores) - tf.summary.scalar("total_loss", total_loss) - - global_step = tf.train.get_or_create_global_step() - learning_rate = self.get_learning_rate(global_step) - - # configure learning rate now that we have the global step - # add optimizer - optimizer = self.get_optimizer(learning_rate) - - tf.summary.scalar("learning_rate", learning_rate) - - grads_and_vars = optimizer.compute_gradients(total_loss, var_list=variables_to_train) - grad_updates = optimizer.apply_gradients(grads_and_vars, global_step=global_step) - - # initialize all the variables we should initialize - # weights will be restored right after - sess.run(tf.global_variables_initializer()) - - # after the first restore, we want global step in our checkpoint - saver = tf.train.Saver(variables_to_train + [global_step]) - if self.latest_ckpt_step == 0: - bw_saver.restore(sess, self.ckpt_file) - else: - saver.restore(sess, self.ckpt_file) - self.ckpt_file = os.path.join(self.ckpt_dir, self.ckpt_prefix) - - # summaries - train_summary_op = tf.summary.merge_all() - train_writer = tf.summary.FileWriter(self.ckpt_dir + '/train', tf.get_default_graph()) - - tf.logging.info(f"Starting training for {self.num_steps} steps") - - sess.run(self.iterator.initializer) - - # training loop - start = time.time() - - for _ in range(self.num_steps): - - loss, _, cur_step, summary = sess.run([total_loss, grad_updates, global_step, train_summary_op]) - cur_step += 1 - - if cur_step % self.print_steps == 0: - - print(f"{cur_step}: loss: {loss:.3f}, avg per step: {(time.time() - start) / self.print_steps:.3f} sec", end='\r', flush=True) - train_writer.add_summary(summary, cur_step + 1) - start = time.time() - - if cur_step % self.steps_to_save == 0: - saver.save(sess, self.ckpt_file, global_step=global_step) - print("\n") \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py deleted file mode 100644 index 340bd3e1..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/finetune/train_eval_base.py +++ /dev/null @@ -1,125 +0,0 @@ -import tensorflow as tf -import numpy as np - -import os, sys, time, glob, re - -from anchors import generate_anchors -from model import ssd_common, ssd_vgg_300 -from datautil.parser import get_parser_func -from datautil.ssd_vgg_preprocessing import preprocess_for_eval, preprocess_for_train -from tfutil import endpoints, tf_utils -import tfextended as tfe -from azureml.accel.models import SsdVgg - -slim = tf.contrib.slim - -class TrainerBase: - ''' - Run fine-tuning - Have training and validation recordset files - ''' - - def __init__(self, ckpt_dir, recordset_files, - steps_to_save = 1000, num_steps = 1000, num_classes = 21, print_steps = 10, batch_size=2, is_training=True): - - ''' - ckpt_dir - directory of checkpoint metagraph - recordset_files - list of files represetnting the recordset for training - validation_recordset_files - list of files representing validation recordset - ''' - - self.is_training = is_training - - # This will pull the model with its weights - # And seed the checkpoint - self.ssd_net_graph = SsdVgg(ckpt_dir) - self.ckpt_dir = self.ssd_net_graph.model_path - self.ckpt_file = tf.train.latest_checkpoint(self.ssd_net_graph.model_path) - - try: - self.latest_ckpt_step = int(re.findall("-[0-9]+$", self.ckpt_file)[0][1:]) - except: - self.latest_ckpt_step = 0 - - self.recordset = recordset_files - self.ckpt_prefix = os.path.split(self.ssd_net_graph.model_ref + "_bw")[1] - - self.pb_graph_path = os.path.join(self.ckpt_dir, self.ckpt_prefix + ".graph.pb") - #if self.is_training: - self.graph_file = os.path.join(self.ckpt_dir, self.ckpt_prefix + ".meta") - #else: - # self.graph_file = self.ckpt_file + ".meta" - - # anchors - self.anchors = generate_anchors.ssd_anchors_all_layers() - - # shuffle - self.n_shuffle = 1000 - self.num_steps = num_steps - - # num of classes - # REVIEW: this has to be 21! - self.num_classes = 21 - - # initialize data pipeline - self.batch_size = batch_size - self.iterator = None - self.prep_dataset_and_iterator() - - self.steps_to_save = steps_to_save - - self.print_steps = print_steps - # for losses etc - self.ssd_net = ssd_vgg_300.SSDNet() - - # input placeholder - self.input_tensor_name = self.ssd_net_graph.input_tensor_list[0] - - - def __enter__(self): - gpu_options = tf.GPUOptions(allow_growth=True) - config = tf.ConfigProto(log_device_placement=False, gpu_options=gpu_options) - - self.sess = tf.Session(config=config) - - return self - - def __exit__(self, exc_type, exc_val, exc_tb): - self.sess.close() - tf.reset_default_graph() - - def prep_dataset_and_iterator(self): - ''' - Create datasets for training or validation - ''' - - var_scope = "training" if self.is_training else "eval" - - parse_func = get_parser_func(self.anchors, self.num_classes, self.is_training, var_scope) - - with tf.variable_scope(var_scope): - # data pipeline - dataset = tf.data.TFRecordDataset(self.recordset) - if self.is_training: - dataset = dataset.shuffle(self.n_shuffle) - dataset = dataset.map(parse_func) - dataset = dataset.repeat() - dataset = dataset.batch(self.batch_size) - dataset = dataset.prefetch(1) - - self.iterator = dataset.make_initializable_iterator() - - def get_output_tensors(self, image): - - is_training = tf.constant(self.is_training, dtype=tf.bool, shape=()) - input_map = {self.input_tensor_name: image, "is_training": is_training} - - saver = tf.train.import_meta_graph(self.graph_file, input_map=input_map) - graph = tf.get_default_graph() - - logits = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.logit_names] - localizations = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.localizations_names] - predictions = [graph.get_tensor_by_name(tensor_name) for tensor_name in endpoints.predictions_names] - - return predictions, localizations, logits, saver - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py deleted file mode 100644 index 4939c872..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/custom_layers.py +++ /dev/null @@ -1,164 +0,0 @@ -# Copyright 2015 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Implement some custom layers, not provided by TensorFlow. - -Trying to follow as much as possible the style/standards used in -tf.contrib.layers -""" -import tensorflow as tf - -from tensorflow.contrib.framework.python.ops import add_arg_scope -from tensorflow.contrib.layers.python.layers import initializers -from tensorflow.contrib.framework.python.ops import variables -from tensorflow.contrib.layers.python.layers import utils -from tensorflow.python.ops import nn -from tensorflow.python.ops import init_ops -from tensorflow.python.ops import variable_scope - - -def abs_smooth(x): - """Smoothed absolute function. Useful to compute an L1 smooth error. - - Define as: - x^2 / 2 if abs(x) < 1 - abs(x) - 0.5 if abs(x) > 1 - We use here a differentiable definition using min(x) and abs(x). Clearly - not optimal, but good enough for our purpose! - """ - absx = tf.abs(x) - minx = tf.minimum(absx, 1) - r = 0.5 * ((absx - 1) * minx + absx) - return r - - -@add_arg_scope -def l2_normalization( - inputs, - scaling=False, - scale_initializer=init_ops.ones_initializer(), - reuse=None, - variables_collections=None, - outputs_collections=None, - data_format='NHWC', - trainable=True, - scope=None): - """Implement L2 normalization on every feature (i.e. spatial normalization). - - Should be extended in some near future to other dimensions, providing a more - flexible normalization framework. - - Args: - inputs: a 4-D tensor with dimensions [batch_size, height, width, channels]. - scaling: whether or not to add a post scaling operation along the dimensions - which have been normalized. - scale_initializer: An initializer for the weights. - reuse: whether or not the layer and its variables should be reused. To be - able to reuse the layer scope must be given. - variables_collections: optional list of collections for all the variables or - a dictionary containing a different list of collection per variable. - outputs_collections: collection to add the outputs. - data_format: NHWC or NCHW data format. - trainable: If `True` also add variables to the graph collection - `GraphKeys.TRAINABLE_VARIABLES` (see tf.Variable). - scope: Optional scope for `variable_scope`. - Returns: - A `Tensor` representing the output of the operation. - """ - - with variable_scope.variable_scope( - scope, 'L2Normalization', [inputs], reuse=reuse) as sc: - inputs_shape = inputs.get_shape() - inputs_rank = inputs_shape.ndims - dtype = inputs.dtype.base_dtype - if data_format == 'NHWC': - # norm_dim = tf.range(1, inputs_rank-1) - norm_dim = tf.range(inputs_rank-1, inputs_rank) - params_shape = inputs_shape[-1:] - elif data_format == 'NCHW': - # norm_dim = tf.range(2, inputs_rank) - norm_dim = tf.range(1, 2) - params_shape = (inputs_shape[1]) - - # Normalize along spatial dimensions. - outputs = nn.l2_normalize(inputs, norm_dim, epsilon=1e-12) - # Additional scaling. - if scaling: - scale_collections = utils.get_variable_collections( - variables_collections, 'scale') - scale = variables.model_variable('gamma', - shape=params_shape, - dtype=dtype, - initializer=scale_initializer, - collections=scale_collections, - trainable=trainable) - if data_format == 'NHWC': - outputs = tf.multiply(outputs, scale) - elif data_format == 'NCHW': - scale = tf.expand_dims(scale, axis=-1) - scale = tf.expand_dims(scale, axis=-1) - outputs = tf.multiply(outputs, scale) - # outputs = tf.transpose(outputs, perm=(0, 2, 3, 1)) - - return utils.collect_named_outputs(outputs_collections, - sc.original_name_scope, outputs) - - -@add_arg_scope -def pad2d(inputs, - pad=(0, 0), - mode='CONSTANT', - data_format='NHWC', - trainable=True, - scope=None): - """2D Padding layer, adding a symmetric padding to H and W dimensions. - - Aims to mimic padding in Caffe and MXNet, helping the port of models to - TensorFlow. Tries to follow the naming convention of `tf.contrib.layers`. - - Args: - inputs: 4D input Tensor; - pad: 2-Tuple with padding values for H and W dimensions; - mode: Padding mode. C.f. `tf.pad` - data_format: NHWC or NCHW data format. - """ - with tf.name_scope(scope, 'pad2d', [inputs]): - # Padding shape. - if data_format == 'NHWC': - paddings = [[0, 0], [pad[0], pad[0]], [pad[1], pad[1]], [0, 0]] - elif data_format == 'NCHW': - paddings = [[0, 0], [0, 0], [pad[0], pad[0]], [pad[1], pad[1]]] - net = tf.pad(inputs, paddings, mode=mode) - return net - - -@add_arg_scope -def channel_to_last(inputs, - data_format='NHWC', - scope=None): - """Move the channel axis to the last dimension. Allows to - provide a single output format whatever the input data format. - - Args: - inputs: Input Tensor; - data_format: NHWC or NCHW. - Return: - Input in NHWC format. - """ - with tf.name_scope(scope, 'channel_to_last', [inputs]): - if data_format == 'NHWC': - net = inputs - elif data_format == 'NCHW': - net = tf.transpose(inputs, perm=(0, 2, 3, 1)) - return net diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py deleted file mode 100644 index 7a021aa4..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/np_methods.py +++ /dev/null @@ -1,252 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Additional Numpy methods. Big mess of many things! -""" -import numpy as np - - -# =========================================================================== # -# Numpy implementations of SSD boxes functions. -# =========================================================================== # -def ssd_bboxes_decode(feat_localizations, - anchor_bboxes, - prior_scaling=[0.1, 0.1, 0.2, 0.2]): - """Compute the relative bounding boxes from the layer features and - reference anchor bounding boxes. - - Return: - numpy array Nx4: ymin, xmin, ymax, xmax - """ - # Reshape for easier broadcasting. - l_shape = feat_localizations.shape - feat_localizations = np.reshape(feat_localizations, - (-1, l_shape[-2], l_shape[-1])) - yref, xref, href, wref = anchor_bboxes - xref = np.reshape(xref, [-1, 1]) - yref = np.reshape(yref, [-1, 1]) - - # Compute center, height and width - cx = feat_localizations[:, :, 0] * wref * prior_scaling[0] + xref - cy = feat_localizations[:, :, 1] * href * prior_scaling[1] + yref - w = wref * np.exp(feat_localizations[:, :, 2] * prior_scaling[2]) - h = href * np.exp(feat_localizations[:, :, 3] * prior_scaling[3]) - # bboxes: ymin, xmin, xmax, ymax. - bboxes = np.zeros_like(feat_localizations) - bboxes[:, :, 0] = cy - h / 2. - bboxes[:, :, 1] = cx - w / 2. - bboxes[:, :, 2] = cy + h / 2. - bboxes[:, :, 3] = cx + w / 2. - # Back to original shape. - bboxes = np.reshape(bboxes, l_shape) - return bboxes - - -def ssd_bboxes_select_layer(predictions_layer, - localizations_layer, - anchors_layer, - select_threshold=0.5, - img_shape=(300, 300), - num_classes=21, - decode=True): - """Extract classes, scores and bounding boxes from features in one layer. - - Return: - classes, scores, bboxes: Numpy arrays... - """ - # First decode localizations features if necessary. - if decode: - localizations_layer = ssd_bboxes_decode(localizations_layer, anchors_layer) - - # Reshape features to: Batches x N x N_labels | 4. - p_shape = predictions_layer.shape - batch_size = p_shape[0] if len(p_shape) == 5 else 1 - predictions_layer = np.reshape(predictions_layer, - (batch_size, -1, p_shape[-1])) - l_shape = localizations_layer.shape - localizations_layer = np.reshape(localizations_layer, - (batch_size, -1, l_shape[-1])) - - # Boxes selection: use threshold or score > no-label criteria. - if select_threshold is None or select_threshold == 0: - # Class prediction and scores: assign 0. to 0-class - classes = np.argmax(predictions_layer, axis=2) - scores = np.amax(predictions_layer, axis=2) - mask = (classes > 0) - classes = classes[mask] - scores = scores[mask] - bboxes = localizations_layer[mask] - else: - sub_predictions = predictions_layer[:, :, 1:] - idxes = np.where(sub_predictions > select_threshold) - classes = idxes[-1]+1 - scores = sub_predictions[idxes] - bboxes = localizations_layer[idxes[:-1]] - - return classes, scores, bboxes - - -def ssd_bboxes_select(predictions_net, - localizations_net, - anchors_net, - select_threshold=0.5, - img_shape=(300, 300), - num_classes=21, - decode=True): - """Extract classes, scores and bounding boxes from network output layers. - - Return: - classes, scores, bboxes: Numpy arrays... - """ - l_classes = [] - l_scores = [] - l_bboxes = [] - # l_layers = [] - # l_idxes = [] - for i in range(len(predictions_net)): - classes, scores, bboxes = ssd_bboxes_select_layer( - predictions_net[i], localizations_net[i], anchors_net[i], - select_threshold, img_shape, num_classes, decode) - l_classes.append(classes) - l_scores.append(scores) - l_bboxes.append(bboxes) - # Debug information. - # l_layers.append(i) - # l_idxes.append((i, idxes)) - - classes = np.concatenate(l_classes, 0) - scores = np.concatenate(l_scores, 0) - bboxes = np.concatenate(l_bboxes, 0) - return classes, scores, bboxes - - -# =========================================================================== # -# Common functions for bboxes handling and selection. -# =========================================================================== # -def bboxes_sort(classes, scores, bboxes, top_k=400): - """Sort bounding boxes by decreasing order and keep only the top_k - """ - # if priority_inside: - # inside = (bboxes[:, 0] > margin) & (bboxes[:, 1] > margin) & \ - # (bboxes[:, 2] < 1-margin) & (bboxes[:, 3] < 1-margin) - # idxes = np.argsort(-scores) - # inside = inside[idxes] - # idxes = np.concatenate([idxes[inside], idxes[~inside]]) - idxes = np.argsort(-scores) - classes = classes[idxes][:top_k] - scores = scores[idxes][:top_k] - bboxes = bboxes[idxes][:top_k] - return classes, scores, bboxes - - -def bboxes_clip(bbox_ref, bboxes): - """Clip bounding boxes with respect to reference bbox. - """ - bboxes = np.copy(bboxes) - bboxes = np.transpose(bboxes) - bbox_ref = np.transpose(bbox_ref) - bboxes[0] = np.maximum(bboxes[0], bbox_ref[0]) - bboxes[1] = np.maximum(bboxes[1], bbox_ref[1]) - bboxes[2] = np.minimum(bboxes[2], bbox_ref[2]) - bboxes[3] = np.minimum(bboxes[3], bbox_ref[3]) - bboxes = np.transpose(bboxes) - return bboxes - - -def bboxes_resize(bbox_ref, bboxes): - """Resize bounding boxes based on a reference bounding box, - assuming that the latter is [0, 0, 1, 1] after transform. - """ - bboxes = np.copy(bboxes) - # Translate. - bboxes[:, 0] -= bbox_ref[0] - bboxes[:, 1] -= bbox_ref[1] - bboxes[:, 2] -= bbox_ref[0] - bboxes[:, 3] -= bbox_ref[1] - # Resize. - resize = [bbox_ref[2] - bbox_ref[0], bbox_ref[3] - bbox_ref[1]] - bboxes[:, 0] /= resize[0] - bboxes[:, 1] /= resize[1] - bboxes[:, 2] /= resize[0] - bboxes[:, 3] /= resize[1] - return bboxes - - -def bboxes_jaccard(bboxes1, bboxes2): - """Computing jaccard index between bboxes1 and bboxes2. - Note: bboxes1 and bboxes2 can be multi-dimensional, but should broacastable. - """ - bboxes1 = np.transpose(bboxes1) - bboxes2 = np.transpose(bboxes2) - # Intersection bbox and volume. - int_ymin = np.maximum(bboxes1[0], bboxes2[0]) - int_xmin = np.maximum(bboxes1[1], bboxes2[1]) - int_ymax = np.minimum(bboxes1[2], bboxes2[2]) - int_xmax = np.minimum(bboxes1[3], bboxes2[3]) - - int_h = np.maximum(int_ymax - int_ymin, 0.) - int_w = np.maximum(int_xmax - int_xmin, 0.) - int_vol = int_h * int_w - # Union volume. - vol1 = (bboxes1[2] - bboxes1[0]) * (bboxes1[3] - bboxes1[1]) - vol2 = (bboxes2[2] - bboxes2[0]) * (bboxes2[3] - bboxes2[1]) - jaccard = int_vol / (vol1 + vol2 - int_vol) - return jaccard - - -def bboxes_intersection(bboxes_ref, bboxes2): - """Computing jaccard index between bboxes1 and bboxes2. - Note: bboxes1 and bboxes2 can be multi-dimensional, but should broacastable. - """ - bboxes_ref = np.transpose(bboxes_ref) - bboxes2 = np.transpose(bboxes2) - # Intersection bbox and volume. - int_ymin = np.maximum(bboxes_ref[0], bboxes2[0]) - int_xmin = np.maximum(bboxes_ref[1], bboxes2[1]) - int_ymax = np.minimum(bboxes_ref[2], bboxes2[2]) - int_xmax = np.minimum(bboxes_ref[3], bboxes2[3]) - - int_h = np.maximum(int_ymax - int_ymin, 0.) - int_w = np.maximum(int_xmax - int_xmin, 0.) - int_vol = int_h * int_w - # Union volume. - vol = (bboxes_ref[2] - bboxes_ref[0]) * (bboxes_ref[3] - bboxes_ref[1]) - score = int_vol / vol - return score - - -def bboxes_nms(classes, scores, bboxes, nms_threshold=0.45): - """Apply non-maximum selection to bounding boxes. - """ - keep_bboxes = np.ones(scores.shape, dtype=np.bool) - for i in range(scores.size-1): - if keep_bboxes[i]: - # Computer overlap with bboxes which are following. - overlap = bboxes_jaccard(bboxes[i], bboxes[(i+1):]) - # Overlap threshold for keeping + checking part of the same class - keep_overlap = np.logical_or(overlap < nms_threshold, classes[(i+1):] != classes[i]) - keep_bboxes[(i+1):] = np.logical_and(keep_bboxes[(i+1):], keep_overlap) - - idxes = np.where(keep_bboxes) - return classes[idxes], scores[idxes], bboxes[idxes] - - -def bboxes_nms_fast(classes, scores, bboxes, threshold=0.45): - """Apply non-maximum selection to bounding boxes. - """ - pass - - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py deleted file mode 100644 index 80896452..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_common.py +++ /dev/null @@ -1,408 +0,0 @@ -# Copyright 2015 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Shared function between different SSD implementations. -""" -import numpy as np -import tensorflow as tf -import tfextended as tfe - - -# =========================================================================== # -# TensorFlow implementation of boxes SSD encoding / decoding. -# =========================================================================== # -def tf_ssd_bboxes_encode_layer(labels, - bboxes, - anchors_layer, - num_classes, - ignore_threshold=0.5, - prior_scaling=[0.1, 0.1, 0.2, 0.2], - dtype=tf.float32): - """Encode groundtruth labels and bounding boxes using SSD anchors from - one layer. - - Arguments: - labels: 1D Tensor(int64) containing groundtruth labels; - bboxes: Nx4 Tensor(float) with bboxes relative coordinates; - anchors_layer: Numpy array with layer anchors; - matching_threshold: Threshold for positive match with groundtruth bboxes; - prior_scaling: Scaling of encoded coordinates. - - Return: - (target_labels, target_localizations, target_scores): Target Tensors. - """ - # Anchors coordinates and volume. - yref, xref, href, wref = anchors_layer - ymin = yref - href / 2. - xmin = xref - wref / 2. - ymax = yref + href / 2. - xmax = xref + wref / 2. - vol_anchors = (xmax - xmin) * (ymax - ymin) - - # Initialize tensors... - shape = (yref.shape[0], yref.shape[1], href.size) - feat_labels = tf.zeros(shape, dtype=tf.int64) - feat_scores = tf.zeros(shape, dtype=dtype) - - feat_ymin = tf.zeros(shape, dtype=dtype) - feat_xmin = tf.zeros(shape, dtype=dtype) - feat_ymax = tf.ones(shape, dtype=dtype) - feat_xmax = tf.ones(shape, dtype=dtype) - - def jaccard_with_anchors(bbox): - """Compute jaccard score between a box and the anchors. - """ - int_ymin = tf.maximum(ymin, bbox[0]) - int_xmin = tf.maximum(xmin, bbox[1]) - int_ymax = tf.minimum(ymax, bbox[2]) - int_xmax = tf.minimum(xmax, bbox[3]) - h = tf.maximum(int_ymax - int_ymin, 0.) - w = tf.maximum(int_xmax - int_xmin, 0.) - # Volumes. - inter_vol = h * w - union_vol = vol_anchors - inter_vol \ - + (bbox[2] - bbox[0]) * (bbox[3] - bbox[1]) - jaccard = tf.divide(inter_vol, union_vol) - return jaccard - - def intersection_with_anchors(bbox): - """Compute intersection between score a box and the anchors. - """ - int_ymin = tf.maximum(ymin, bbox[0]) - int_xmin = tf.maximum(xmin, bbox[1]) - int_ymax = tf.minimum(ymax, bbox[2]) - int_xmax = tf.minimum(xmax, bbox[3]) - h = tf.maximum(int_ymax - int_ymin, 0.) - w = tf.maximum(int_xmax - int_xmin, 0.) - inter_vol = h * w - scores = tf.divide(inter_vol, vol_anchors) - return scores - - def condition(i, feat_labels, feat_scores, - feat_ymin, feat_xmin, feat_ymax, feat_xmax): - """Condition: check label index. - """ - r = tf.less(i, tf.shape(labels)) - return r[0] - - def body(i, feat_labels, feat_scores, - feat_ymin, feat_xmin, feat_ymax, feat_xmax): - """Body: update feature labels, scores and bboxes. - Follow the original SSD paper for that purpose: - - assign values when jaccard > 0.5; - - only update if beat the score of other bboxes. - """ - # Jaccard score. - label = labels[i] - bbox = bboxes[i] - jaccard = jaccard_with_anchors(bbox) - # Mask: check threshold + scores + no annotations + num_classes. - mask = tf.greater(jaccard, feat_scores) - # mask = tf.logical_and(mask, tf.greater(jaccard, matching_threshold)) - mask = tf.logical_and(mask, feat_scores > -0.5) - mask = tf.logical_and(mask, label < num_classes) - imask = tf.cast(mask, tf.int64) - fmask = tf.cast(mask, dtype) - # Update values using mask. - feat_labels = imask * label + (1 - imask) * feat_labels - feat_scores = tf.where(mask, jaccard, feat_scores) - - feat_ymin = fmask * bbox[0] + (1 - fmask) * feat_ymin - feat_xmin = fmask * bbox[1] + (1 - fmask) * feat_xmin - feat_ymax = fmask * bbox[2] + (1 - fmask) * feat_ymax - feat_xmax = fmask * bbox[3] + (1 - fmask) * feat_xmax - - # Check no annotation label: ignore these anchors... - # interscts = intersection_with_anchors(bbox) - # mask = tf.logical_and(interscts > ignore_threshold, - # label == no_annotation_label) - # # Replace scores by -1. - # feat_scores = tf.where(mask, -tf.cast(mask, dtype), feat_scores) - - return [i+1, feat_labels, feat_scores, - feat_ymin, feat_xmin, feat_ymax, feat_xmax] - # Main loop definition. - i = 0 - [i, feat_labels, feat_scores, - feat_ymin, feat_xmin, - feat_ymax, feat_xmax] = tf.while_loop(condition, body, - [i, feat_labels, feat_scores, - feat_ymin, feat_xmin, - feat_ymax, feat_xmax]) - # Transform to center / size. - feat_cy = (feat_ymax + feat_ymin) / 2. - feat_cx = (feat_xmax + feat_xmin) / 2. - feat_h = feat_ymax - feat_ymin - feat_w = feat_xmax - feat_xmin - # Encode features. - feat_cy = (feat_cy - yref) / href / prior_scaling[0] - feat_cx = (feat_cx - xref) / wref / prior_scaling[1] - feat_h = tf.log(feat_h / href) / prior_scaling[2] - feat_w = tf.log(feat_w / wref) / prior_scaling[3] - # Use SSD ordering: x / y / w / h instead of ours. - feat_localizations = tf.stack([feat_cx, feat_cy, feat_w, feat_h], axis=-1) - return feat_labels, feat_localizations, feat_scores - - -def tf_ssd_bboxes_encode(labels, - bboxes, - anchors, - num_classes, - ignore_threshold=0.5, - prior_scaling=[0.1, 0.1, 0.2, 0.2], - dtype=tf.float32, - scope='ssd_bboxes_encode'): - """Encode groundtruth labels and bounding boxes using SSD net anchors. - Encoding boxes for all feature layers. - - Arguments: - labels: 1D Tensor(int64) containing groundtruth labels; - bboxes: Nx4 Tensor(float) with bboxes relative coordinates; - anchors: List of Numpy array with layer anchors; - matching_threshold: Threshold for positive match with groundtruth bboxes; - prior_scaling: Scaling of encoded coordinates. - - Return: - (target_labels, target_localizations, target_scores): - Each element is a list of target Tensors. - """ - with tf.name_scope(scope): - target_labels = [] - target_localizations = [] - target_scores = [] - for i, anchors_layer in enumerate(anchors): - with tf.name_scope('bboxes_encode_block_%i' % i): - t_labels, t_loc, t_scores = \ - tf_ssd_bboxes_encode_layer(labels, bboxes, anchors_layer, - num_classes, - ignore_threshold, - prior_scaling, dtype) - target_labels.append(t_labels) - target_localizations.append(t_loc) - target_scores.append(t_scores) - return target_labels, target_localizations, target_scores - - -def tf_ssd_bboxes_decode_layer(feat_localizations, - anchors_layer, - prior_scaling=[0.1, 0.1, 0.2, 0.2]): - """Compute the relative bounding boxes from the layer features and - reference anchor bounding boxes. - - Arguments: - feat_localizations: Tensor containing localization features. - anchors: List of numpy array containing anchor boxes. - - Return: - Tensor Nx4: ymin, xmin, ymax, xmax - """ - yref, xref, href, wref = anchors_layer - - # Compute center, height and width - cx = feat_localizations[:, :, :, :, 0] * wref * prior_scaling[0] + xref - cy = feat_localizations[:, :, :, :, 1] * href * prior_scaling[1] + yref - w = wref * tf.exp(feat_localizations[:, :, :, :, 2] * prior_scaling[2]) - h = href * tf.exp(feat_localizations[:, :, :, :, 3] * prior_scaling[3]) - # Boxes coordinates. - ymin = cy - h / 2. - xmin = cx - w / 2. - ymax = cy + h / 2. - xmax = cx + w / 2. - bboxes = tf.stack([ymin, xmin, ymax, xmax], axis=-1) - return bboxes - - -def tf_ssd_bboxes_decode(feat_localizations, - anchors, - prior_scaling=[0.1, 0.1, 0.2, 0.2], - scope='ssd_bboxes_decode'): - """Compute the relative bounding boxes from the SSD net features and - reference anchors bounding boxes. - - Arguments: - feat_localizations: List of Tensors containing localization features. - anchors: List of numpy array containing anchor boxes. - - Return: - List of Tensors Nx4: ymin, xmin, ymax, xmax - """ - with tf.name_scope(scope): - bboxes = [] - for i, anchors_layer in enumerate(anchors): - bboxes.append( - tf_ssd_bboxes_decode_layer(feat_localizations[i], - anchors_layer, - prior_scaling)) - return bboxes - - -# =========================================================================== # -# SSD boxes selection. -# =========================================================================== # -def tf_ssd_bboxes_select_layer(predictions_layer, localizations_layer, - select_threshold=None, - num_classes=21, - ignore_class=0, - scope=None): - """Extract classes, scores and bounding boxes from features in one layer. - Batch-compatible: inputs are supposed to have batch-type shapes. - - Args: - predictions_layer: A SSD prediction layer; - localizations_layer: A SSD localization layer; - select_threshold: Classification threshold for selecting a box. All boxes - under the threshold are set to 'zero'. If None, no threshold applied. - Return: - d_scores, d_bboxes: Dictionary of scores and bboxes Tensors of - size Batches X N x 1 | 4. Each key corresponding to a class. - """ - select_threshold = 0.0 if select_threshold is None else select_threshold - with tf.name_scope(scope, 'ssd_bboxes_select_layer', - [predictions_layer, localizations_layer]): - # Reshape features: Batches x N x N_labels | 4 - p_shape = tfe.get_shape(predictions_layer) - predictions_layer = tf.reshape(predictions_layer, - tf.stack([p_shape[0], -1, p_shape[-1]])) - l_shape = tfe.get_shape(localizations_layer) - localizations_layer = tf.reshape(localizations_layer, - tf.stack([l_shape[0], -1, l_shape[-1]])) - - d_scores = {} - d_bboxes = {} - for c in range(0, num_classes): - if c != ignore_class: - # Remove boxes under the threshold. - scores = predictions_layer[:, :, c] - fmask = tf.cast(tf.greater_equal(scores, select_threshold), scores.dtype) - scores = scores * fmask - bboxes = localizations_layer * tf.expand_dims(fmask, axis=-1) - # Append to dictionary. - d_scores[c] = scores - d_bboxes[c] = bboxes - - return d_scores, d_bboxes - - -def tf_ssd_bboxes_select(predictions_net, localizations_net, - select_threshold=None, - num_classes=21, - ignore_class=0, - scope=None): - """Extract classes, scores and bounding boxes from network output layers. - Batch-compatible: inputs are supposed to have batch-type shapes. - - Args: - predictions_net: List of SSD prediction layers; - localizations_net: List of localization layers; - select_threshold: Classification threshold for selecting a box. All boxes - under the threshold are set to 'zero'. If None, no threshold applied. - Return: - d_scores, d_bboxes: Dictionary of scores and bboxes Tensors of - size Batches X N x 1 | 4. Each key corresponding to a class. - """ - with tf.name_scope(scope, 'ssd_bboxes_select', - [predictions_net, localizations_net]): - l_scores = [] - l_bboxes = [] - for i in range(len(predictions_net)): - scores, bboxes = tf_ssd_bboxes_select_layer(predictions_net[i], - localizations_net[i], - select_threshold, - num_classes, - ignore_class) - l_scores.append(scores) - l_bboxes.append(bboxes) - # Concat results. - d_scores = {} - d_bboxes = {} - for c in l_scores[0].keys(): - ls = [s[c] for s in l_scores] - lb = [b[c] for b in l_bboxes] - d_scores[c] = tf.concat(ls, axis=1) - d_bboxes[c] = tf.concat(lb, axis=1) - return d_scores, d_bboxes - - -def tf_ssd_bboxes_select_layer_all_classes(predictions_layer, localizations_layer, - select_threshold=None): - """Extract classes, scores and bounding boxes from features in one layer. - Batch-compatible: inputs are supposed to have batch-type shapes. - - Args: - predictions_layer: A SSD prediction layer; - localizations_layer: A SSD localization layer; - select_threshold: Classification threshold for selecting a box. If None, - select boxes whose classification score is higher than 'no class'. - Return: - classes, scores, bboxes: Input Tensors. - """ - # Reshape features: Batches x N x N_labels | 4 - p_shape = tfe.get_shape(predictions_layer) - predictions_layer = tf.reshape(predictions_layer, - tf.stack([p_shape[0], -1, p_shape[-1]])) - l_shape = tfe.get_shape(localizations_layer) - localizations_layer = tf.reshape(localizations_layer, - tf.stack([l_shape[0], -1, l_shape[-1]])) - # Boxes selection: use threshold or score > no-label criteria. - if select_threshold is None or select_threshold == 0: - # Class prediction and scores: assign 0. to 0-class - classes = tf.argmax(predictions_layer, axis=2) - scores = tf.reduce_max(predictions_layer, axis=2) - scores = scores * tf.cast(classes > 0, scores.dtype) - else: - sub_predictions = predictions_layer[:, :, 1:] - classes = tf.argmax(sub_predictions, axis=2) + 1 - scores = tf.reduce_max(sub_predictions, axis=2) - # Only keep predictions higher than threshold. - mask = tf.greater(scores, select_threshold) - classes = classes * tf.cast(mask, classes.dtype) - scores = scores * tf.cast(mask, scores.dtype) - # Assume localization layer already decoded. - bboxes = localizations_layer - return classes, scores, bboxes - - -def tf_ssd_bboxes_select_all_classes(predictions_net, localizations_net, - select_threshold=None, - scope=None): - """Extract classes, scores and bounding boxes from network output layers. - Batch-compatible: inputs are supposed to have batch-type shapes. - - Args: - predictions_net: List of SSD prediction layers; - localizations_net: List of localization layers; - select_threshold: Classification threshold for selecting a box. If None, - select boxes whose classification score is higher than 'no class'. - Return: - classes, scores, bboxes: Tensors. - """ - with tf.name_scope(scope, 'ssd_bboxes_select', - [predictions_net, localizations_net]): - l_classes = [] - l_scores = [] - l_bboxes = [] - for i in range(len(predictions_net)): - classes, scores, bboxes = \ - tf_ssd_bboxes_select_layer_all_classes(predictions_net[i], - localizations_net[i], - select_threshold) - l_classes.append(classes) - l_scores.append(scores) - l_bboxes.append(bboxes) - - classes = tf.concat(l_classes, axis=1) - scores = tf.concat(l_scores, axis=1) - bboxes = tf.concat(l_bboxes, axis=1) - return classes, scores, bboxes - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py deleted file mode 100644 index 0b5d63ef..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/model/ssd_vgg_300.py +++ /dev/null @@ -1,660 +0,0 @@ -# Copyright 2016 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""Definition of 300 VGG-based SSD network. - -This model was initially introduced in: -SSD: Single Shot MultiBox Detector -Wei Liu, Dragomir Anguelov, Dumitru Erhan, Christian Szegedy, Scott Reed, -Cheng-Yang Fu, Alexander C. Berg -https://arxiv.org/abs/1512.02325 - -Two variants of the model are defined: the 300x300 and 512x512 models, the -latter obtaining a slightly better accuracy on Pascal VOC. - -Usage: - with slim.arg_scope(ssd_vgg.ssd_vgg()): - outputs, end_points = ssd_vgg.ssd_vgg(inputs) - -This network port of the original Caffe model. The padding in TF and Caffe -is slightly different, and can lead to severe accuracy drop if not taken care -in a correct way! - -In Caffe, the output size of convolution and pooling layers are computing as -following: h_o = (h_i + 2 * pad_h - kernel_h) / stride_h + 1 - -Nevertheless, there is a subtle difference between both for stride > 1. In -the case of convolution: - top_size = floor((bottom_size + 2*pad - kernel_size) / stride) + 1 -whereas for pooling: - top_size = ceil((bottom_size + 2*pad - kernel_size) / stride) + 1 -Hence implicitely allowing some additional padding even if pad = 0. This -behaviour explains why pooling with stride and kernel of size 2 are behaving -the same way in TensorFlow and Caffe. - -Nevertheless, this is not the case anymore for other kernel sizes, hence -motivating the use of special padding layer for controlling these side-effects. - -@@ssd_vgg_300 -""" -import math -from collections import namedtuple - -import numpy as np -import tensorflow as tf - -import tfextended as tfe -from model import custom_layers, ssd_common - -slim = tf.contrib.slim - - -# =========================================================================== # -# SSD class definition. -# =========================================================================== # -SSDParams = namedtuple('SSDParameters', ['img_shape', - 'num_classes', - 'no_annotation_label', - 'feat_layers', - 'feat_shapes', - 'anchor_size_bounds', - 'anchor_sizes', - 'anchor_ratios', - 'anchor_steps', - 'anchor_offset', - 'normalizations', - 'prior_scaling' - ]) - - -class SSDNet(object): - """Implementation of the SSD VGG-based 300 network. - - The default features layers with 300x300 image input are: - conv4 ==> 38 x 38 - conv7 ==> 19 x 19 - conv8 ==> 10 x 10 - conv9 ==> 5 x 5 - conv10 ==> 3 x 3 - conv11 ==> 1 x 1 - The default image size used to train this network is 300x300. - """ - default_params = SSDParams( - img_shape=(300, 300), - num_classes=21, - no_annotation_label=21, - feat_layers=['block4', 'block7', 'block8', 'block9', 'block10', 'block11'], - feat_shapes=[(37, 37), (19, 19), (10, 10), (5, 5), (3, 3), (1, 1)], - anchor_size_bounds=[0.15, 0.90], - # anchor_size_bounds=[0.20, 0.90], - anchor_sizes=[(21., 45.), - (45., 99.), - (99., 153.), - (153., 207.), - (207., 261.), - (261., 315.)], - # anchor_sizes=[(30., 60.), - # (60., 111.), - # (111., 162.), - # (162., 213.), - # (213., 264.), - # (264., 315.)], - anchor_ratios=[[2, .5], - [2, .5, 3, 1./3], - [2, .5, 3, 1./3], - [2, .5, 3, 1./3], - [2, .5], - [2, .5]], - anchor_steps=[8, 16, 32, 64, 100, 300], - anchor_offset=0.5, - normalizations=[20, -1, -1, -1, -1, -1], - prior_scaling=[0.1, 0.1, 0.2, 0.2] - ) - - def __init__(self, params=None): - """Init the SSD net with some parameters. Use the default ones - if none provided. - """ - if isinstance(params, SSDParams): - self.params = params - else: - self.params = SSDNet.default_params - - # ======================================================================= # - def net(self, inputs, - is_training=True, - update_feat_shapes=True, - dropout_keep_prob=0.5, - prediction_fn=slim.softmax, - reuse=None, - scope='ssd_300_vgg'): - """SSD network definition. - """ - r = ssd_net(inputs, - num_classes=self.params.num_classes, - feat_layers=self.params.feat_layers, - anchor_sizes=self.params.anchor_sizes, - anchor_ratios=self.params.anchor_ratios, - normalizations=self.params.normalizations, - is_training=is_training, - dropout_keep_prob=dropout_keep_prob, - prediction_fn=prediction_fn, - reuse=reuse, - scope=scope) - # Update feature shapes (try at least!) - if update_feat_shapes: - shapes = ssd_feat_shapes_from_net(r[0], self.params.feat_shapes) - self.params = self.params._replace(feat_shapes=shapes) - return r - - def arg_scope(self, weight_decay=0.0005, data_format='NHWC'): - """Network arg_scope. - """ - return ssd_arg_scope(weight_decay, data_format=data_format) - - def arg_scope_caffe(self, caffe_scope): - """Caffe arg_scope used for weights importing. - """ - return ssd_arg_scope_caffe(caffe_scope) - - # ======================================================================= # - def update_feature_shapes(self, predictions): - """Update feature shapes from predictions collection (Tensor or Numpy - array). - """ - shapes = ssd_feat_shapes_from_net(predictions, self.params.feat_shapes) - self.params = self.params._replace(feat_shapes=shapes) - - def anchors(self, img_shape, dtype=np.float32): - """Compute the default anchor boxes, given an image shape. - """ - return ssd_anchors_all_layers(img_shape, - self.params.feat_shapes, - self.params.anchor_sizes, - self.params.anchor_ratios, - self.params.anchor_steps, - self.params.anchor_offset, - dtype) - - def bboxes_encode(self, labels, bboxes, anchors, - scope=None): - """Encode labels and bounding boxes. - """ - return ssd_common.tf_ssd_bboxes_encode( - labels, bboxes, anchors, - self.params.num_classes, - ignore_threshold=0.5, - prior_scaling=self.params.prior_scaling, - scope=scope) - - def bboxes_decode(self, feat_localizations, anchors, - scope='ssd_bboxes_decode'): - """Encode labels and bounding boxes. - """ - return ssd_common.tf_ssd_bboxes_decode( - feat_localizations, anchors, - prior_scaling=self.params.prior_scaling, - scope=scope) - - def detected_bboxes(self, predictions, localisations, - select_threshold=None, nms_threshold=0.5, - clipping_bbox=None, top_k=400, keep_top_k=200): - """Get the detected bounding boxes from the SSD network output. - """ - # Select top_k bboxes from predictions, and clip - rscores, rbboxes = \ - ssd_common.tf_ssd_bboxes_select(predictions, localisations, - select_threshold=select_threshold, - num_classes=self.params.num_classes) - rscores, rbboxes = \ - tfe.bboxes_sort(rscores, rbboxes, top_k=top_k) - # Apply NMS algorithm. - rscores, rbboxes = \ - tfe.bboxes_nms_batch(rscores, rbboxes, - nms_threshold=nms_threshold, - keep_top_k=keep_top_k) - if clipping_bbox is not None: - rbboxes = tfe.bboxes_clip(clipping_bbox, rbboxes) - return rscores, rbboxes - - def losses(self, logits, localisations, - gclasses, glocalisations, gscores, - match_threshold=0.5, - negative_ratio=3., - alpha=1., - label_smoothing=0., - scope='ssd_losses'): - """Define the SSD network losses. - """ - return ssd_losses(logits, localisations, - gclasses, glocalisations, gscores, - match_threshold=match_threshold, - negative_ratio=negative_ratio, - alpha=alpha, - label_smoothing=label_smoothing, - scope=scope) - - -# =========================================================================== # -# SSD tools... -# =========================================================================== # -def ssd_size_bounds_to_values(size_bounds, - n_feat_layers, - img_shape=(300, 300)): - """Compute the reference sizes of the anchor boxes from relative bounds. - The absolute values are measured in pixels, based on the network - default size (300 pixels). - - This function follows the computation performed in the original - implementation of SSD in Caffe. - - Return: - list of list containing the absolute sizes at each scale. For each scale, - the ratios only apply to the first value. - """ - assert img_shape[0] == img_shape[1] - - img_size = img_shape[0] - min_ratio = int(size_bounds[0] * 100) - max_ratio = int(size_bounds[1] * 100) - step = int(math.floor((max_ratio - min_ratio) / (n_feat_layers - 2))) - # Start with the following smallest sizes. - sizes = [[img_size * size_bounds[0] / 2, img_size * size_bounds[0]]] - for ratio in range(min_ratio, max_ratio + 1, step): - sizes.append((img_size * ratio / 100., - img_size * (ratio + step) / 100.)) - return sizes - - -def ssd_feat_shapes_from_net(predictions, default_shapes=None): - """Try to obtain the feature shapes from the prediction layers. The latter - can be either a Tensor or Numpy ndarray. - - Return: - list of feature shapes. Default values if predictions shape not fully - determined. - """ - feat_shapes = [] - for l in predictions: - # Get the shape, from either a np array or a tensor. - if isinstance(l, np.ndarray): - shape = l.shape - else: - shape = l.get_shape().as_list() - shape = shape[1:4] - # Problem: undetermined shape... - if None in shape: - return default_shapes - else: - feat_shapes.append(shape) - return feat_shapes - - -def ssd_anchor_one_layer(img_shape, - feat_shape, - sizes, - ratios, - step, - offset=0.5, - dtype=np.float32): - """Computer SSD default anchor boxes for one feature layer. - - Determine the relative position grid of the centers, and the relative - width and height. - - Arguments: - feat_shape: Feature shape, used for computing relative position grids; - size: Absolute reference sizes; - ratios: Ratios to use on these features; - img_shape: Image shape, used for computing height, width relatively to the - former; - offset: Grid offset. - - Return: - y, x, h, w: Relative x and y grids, and height and width. - """ - # Compute the position grid: simple way. - # y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] - # y = (y.astype(dtype) + offset) / feat_shape[0] - # x = (x.astype(dtype) + offset) / feat_shape[1] - # Weird SSD-Caffe computation using steps values... - y, x = np.mgrid[0:feat_shape[0], 0:feat_shape[1]] - y = (y.astype(dtype) + offset) * step / img_shape[0] - x = (x.astype(dtype) + offset) * step / img_shape[1] - - # Expand dims to support easy broadcasting. - y = np.expand_dims(y, axis=-1) - x = np.expand_dims(x, axis=-1) - - # Compute relative height and width. - # Tries to follow the original implementation of SSD for the order. - num_anchors = len(sizes) + len(ratios) - h = np.zeros((num_anchors, ), dtype=dtype) - w = np.zeros((num_anchors, ), dtype=dtype) - # Add first anchor boxes with ratio=1. - h[0] = sizes[0] / img_shape[0] - w[0] = sizes[0] / img_shape[1] - di = 1 - if len(sizes) > 1: - h[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[0] - w[1] = math.sqrt(sizes[0] * sizes[1]) / img_shape[1] - di += 1 - for i, r in enumerate(ratios): - h[i+di] = sizes[0] / img_shape[0] / math.sqrt(r) - w[i+di] = sizes[0] / img_shape[1] * math.sqrt(r) - return y, x, h, w - - -def ssd_anchors_all_layers(img_shape, - layers_shape, - anchor_sizes, - anchor_ratios, - anchor_steps, - offset=0.5, - dtype=np.float32): - """Compute anchor boxes for all feature layers. - """ - layers_anchors = [] - for i, s in enumerate(layers_shape): - anchor_bboxes = ssd_anchor_one_layer(img_shape, s, - anchor_sizes[i], - anchor_ratios[i], - anchor_steps[i], - offset=offset, dtype=dtype) - layers_anchors.append(anchor_bboxes) - return layers_anchors - - -# =========================================================================== # -# Functional definition of VGG-based SSD 300. -# =========================================================================== # -def tensor_shape(x, rank=3): - """Returns the dimensions of a tensor. - Args: - image: A N-D Tensor of shape. - Returns: - A list of dimensions. Dimensions that are statically known are python - integers,otherwise they are integer scalar tensors. - """ - if x.get_shape().is_fully_defined(): - return x.get_shape().as_list() - else: - static_shape = x.get_shape().with_rank(rank).as_list() - dynamic_shape = tf.unstack(tf.shape(x), rank) - return [s if s is not None else d - for s, d in zip(static_shape, dynamic_shape)] - - -def ssd_multibox_layer(inputs, - num_classes, - sizes, - ratios=[1], - normalization=-1, - bn_normalization=False): - """Construct a multibox layer, return a class and localization predictions. - """ - net = inputs - if normalization > 0: - net = custom_layers.l2_normalization(net, scaling=True) - # Number of anchors. - num_anchors = len(sizes) + len(ratios) - - # Location. - num_loc_pred = num_anchors * 4 - loc_pred = slim.conv2d(net, num_loc_pred, [3, 3], activation_fn=None, - scope='conv_loc') - loc_pred = custom_layers.channel_to_last(loc_pred) - loc_pred = tf.reshape(loc_pred, - tensor_shape(loc_pred, 4)[:-1]+[num_anchors, 4]) - # Class prediction. - num_cls_pred = num_anchors * num_classes - cls_pred = slim.conv2d(net, num_cls_pred, [3, 3], activation_fn=None, - scope='conv_cls') - cls_pred = custom_layers.channel_to_last(cls_pred) - cls_pred = tf.reshape(cls_pred, - tensor_shape(cls_pred, 4)[:-1]+[num_anchors, num_classes]) - return cls_pred, loc_pred - - -def ssd_net(inputs, - num_classes=SSDNet.default_params.num_classes, - feat_layers=SSDNet.default_params.feat_layers, - anchor_sizes=SSDNet.default_params.anchor_sizes, - anchor_ratios=SSDNet.default_params.anchor_ratios, - normalizations=SSDNet.default_params.normalizations, - is_training=True, - dropout_keep_prob=0.5, - prediction_fn=slim.softmax, - reuse=None, - scope='ssd_300_vgg'): - """SSD net definition. - """ - # if data_format == 'NCHW': - # inputs = tf.transpose(inputs, perm=(0, 3, 1, 2)) - - # End_points collect relevant activations for external use. - end_points = {} - with tf.variable_scope(scope, 'ssd_300_vgg', [inputs], reuse=reuse): - # Original VGG-16 blocks. - net = slim.repeat(inputs, 2, slim.conv2d, 64, [3, 3], scope='conv1') - end_points['block1'] = net - net = slim.max_pool2d(net, [2, 2], scope='pool1') - # Block 2. - net = slim.repeat(net, 2, slim.conv2d, 128, [3, 3], scope='conv2') - end_points['block2'] = net - net = slim.max_pool2d(net, [2, 2], scope='pool2') - # Block 3. - net = slim.repeat(net, 3, slim.conv2d, 256, [3, 3], scope='conv3') - end_points['block3'] = net - net = slim.max_pool2d(net, [2, 2], scope='pool3') - # Block 4. - net = slim.repeat(net, 3, slim.conv2d, 512, [3, 3], scope='conv4') - end_points['block4'] = net - net = slim.max_pool2d(net, [2, 2], scope='pool4') - # Block 5. - net = slim.repeat(net, 3, slim.conv2d, 512, [3, 3], scope='conv5') - end_points['block5'] = net - net = slim.max_pool2d(net, [3, 3], stride=1, scope='pool5') - - # Additional SSD blocks. - # Block 6: let's dilate the hell out of it! - net = slim.conv2d(net, 1024, [3, 3], rate=6, scope='conv6') - end_points['block6'] = net - net = tf.layers.dropout(net, rate=dropout_keep_prob, training=is_training) - # Block 7: 1x1 conv. Because the fuck. - net = slim.conv2d(net, 1024, [1, 1], scope='conv7') - end_points['block7'] = net - net = tf.layers.dropout(net, rate=dropout_keep_prob, training=is_training) - - # Block 8/9/10/11: 1x1 and 3x3 convolutions stride 2 (except lasts). - end_point = 'block8' - with tf.variable_scope(end_point): - net = slim.conv2d(net, 256, [1, 1], scope='conv1x1') - net = custom_layers.pad2d(net, pad=(1, 1)) - net = slim.conv2d(net, 512, [3, 3], stride=2, scope='conv3x3', padding='VALID') - end_points[end_point] = net - end_point = 'block9' - with tf.variable_scope(end_point): - net = slim.conv2d(net, 128, [1, 1], scope='conv1x1') - net = custom_layers.pad2d(net, pad=(1, 1)) - net = slim.conv2d(net, 256, [3, 3], stride=2, scope='conv3x3', padding='VALID') - end_points[end_point] = net - end_point = 'block10' - with tf.variable_scope(end_point): - net = slim.conv2d(net, 128, [1, 1], scope='conv1x1') - net = slim.conv2d(net, 256, [3, 3], scope='conv3x3', padding='VALID') - end_points[end_point] = net - end_point = 'block11' - with tf.variable_scope(end_point): - net = slim.conv2d(net, 128, [1, 1], scope='conv1x1') - net = slim.conv2d(net, 256, [3, 3], scope='conv3x3', padding='VALID') - end_points[end_point] = net - - # Prediction and localisations layers. - predictions = [] - logits = [] - localisations = [] - for i, layer in enumerate(feat_layers): - with tf.variable_scope(layer + '_box'): - p, l = ssd_multibox_layer(end_points[layer], - num_classes, - anchor_sizes[i], - anchor_ratios[i], - normalizations[i]) - predictions.append(prediction_fn(p)) - logits.append(p) - localisations.append(l) - - return predictions, localisations, logits, end_points -ssd_net.default_image_size = 300 - - -def ssd_arg_scope(weight_decay=0.0005, data_format='NHWC'): - """Defines the VGG arg scope. - - Args: - weight_decay: The l2 regularization coefficient. - - Returns: - An arg_scope. - """ - with slim.arg_scope([slim.conv2d, slim.fully_connected], - activation_fn=tf.nn.relu, - weights_regularizer=slim.l2_regularizer(weight_decay), - weights_initializer=tf.contrib.layers.xavier_initializer(), - biases_initializer=tf.zeros_initializer()): - with slim.arg_scope([slim.conv2d, slim.max_pool2d], - padding='SAME', - data_format=data_format): - with slim.arg_scope([custom_layers.pad2d, - custom_layers.l2_normalization, - custom_layers.channel_to_last], - data_format=data_format) as sc: - return sc - - -# =========================================================================== # -# Caffe scope: importing weights at initialization. -# =========================================================================== # -def ssd_arg_scope_caffe(caffe_scope): - """Caffe scope definition. - - Args: - caffe_scope: Caffe scope object with loaded weights. - - Returns: - An arg_scope. - """ - # Default network arg scope. - with slim.arg_scope([slim.conv2d], - activation_fn=tf.nn.relu, - weights_initializer=caffe_scope.conv_weights_init(), - biases_initializer=caffe_scope.conv_biases_init()): - with slim.arg_scope([slim.fully_connected], - activation_fn=tf.nn.relu): - with slim.arg_scope([custom_layers.l2_normalization], - scale_initializer=caffe_scope.l2_norm_scale_init()): - with slim.arg_scope([slim.conv2d, slim.max_pool2d], - padding='SAME') as sc: - return sc - - -# =========================================================================== # -# SSD loss function. -# =========================================================================== # -def ssd_losses(logits, localisations, - gclasses, glocalisations, gscores, - match_threshold=0.5, - negative_ratio=3., - alpha=1., - label_smoothing=0., - device='/cpu:0', - scope=None): - with tf.name_scope(scope, 'ssd_losses'): - lshape = tfe.get_shape(logits[0], 5) - num_classes = lshape[-1] - batch_size = lshape[0] - - # Flatten out all vectors! - flogits = [] - fgclasses = [] - fgscores = [] - flocalisations = [] - fglocalisations = [] - for i in range(len(logits)): - flogits.append(tf.reshape(logits[i], [-1, num_classes])) - fgclasses.append(tf.reshape(gclasses[i], [-1])) - fgscores.append(tf.reshape(gscores[i], [-1])) - flocalisations.append(tf.reshape(localisations[i], [-1, 4])) - fglocalisations.append(tf.reshape(glocalisations[i], [-1, 4])) - # And concat the crap! - logits = tf.concat(flogits, axis=0) - gclasses = tf.concat(fgclasses, axis=0) - gscores = tf.concat(fgscores, axis=0) - localisations = tf.concat(flocalisations, axis=0) - glocalisations = tf.concat(fglocalisations, axis=0) - dtype = logits.dtype - - # Compute positive matching mask... - pmask = gscores > match_threshold - fpmask = tf.cast(pmask, dtype) - n_positives = tf.reduce_sum(fpmask) - - # Hard negative mining... - no_classes = tf.cast(pmask, tf.int32) - predictions = slim.softmax(logits) - nmask = tf.logical_and(tf.logical_not(pmask), - gscores > -0.5) - fnmask = tf.cast(nmask, dtype) - nvalues = tf.where(nmask, - predictions[:, 0], - 1. - fnmask) - nvalues_flat = tf.reshape(nvalues, [-1]) - # Number of negative entries to select. - max_neg_entries = tf.cast(tf.reduce_sum(fnmask), tf.int32) - n_neg = tf.cast(negative_ratio * n_positives, tf.int32) + batch_size - n_neg = tf.minimum(n_neg, max_neg_entries) - - val, idxes = tf.nn.top_k(-nvalues_flat, k=n_neg) - max_hard_pred = -val[-1] - # Final negative mask. - nmask = tf.logical_and(nmask, nvalues < max_hard_pred) - fnmask = tf.cast(nmask, dtype) - - batch_float = tf.cast(batch_size, tf.float32) - - # Add cross-entropy loss. - with tf.name_scope('cross_entropy_pos'): - cross_entropy_pos_loss = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits, - labels=gclasses) - cross_entropy_pos_loss = tf.divide(tf.reduce_sum(cross_entropy_pos_loss * fpmask), batch_float, name='value') - tf.losses.add_loss(cross_entropy_pos_loss) - - with tf.name_scope('cross_entropy_neg'): - cross_entropy_neg_loss = tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits, - labels=no_classes) - cross_entropy_neg_loss = tf.divide(tf.reduce_sum(cross_entropy_neg_loss * fnmask), batch_float, name='value') - tf.losses.add_loss(cross_entropy_neg_loss) - - # Add localization loss: smooth L1, L2, ... - with tf.name_scope('localization'): - # Weights Tensor: positive mask + random negative. - weights = tf.expand_dims(alpha * fpmask, axis=-1) - localization_loss = custom_layers.abs_smooth(localisations - glocalisations) - localization_loss = tf.divide(tf.reduce_sum(localization_loss * weights), batch_float, name='value') - tf.losses.add_loss(localization_loss) - - regularization_losses = tf.get_collection(tf.GraphKeys.REGULARIZATION_LOSSES) - all_losses = [cross_entropy_neg_loss, cross_entropy_pos_loss, localization_loss] + (regularization_losses if regularization_losses else []) - return tf.add_n(all_losses) \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py deleted file mode 100644 index 3ba75b6a..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/__init__.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""TF Extended: additional metrics. -""" - -# pylint: disable=unused-import,line-too-long,g-importing-member,wildcard-import -from tfextended.metrics import * -from tfextended.tensors import * -from tfextended.bboxes import * -from tfextended.image import * -from tfextended.math import * - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py deleted file mode 100644 index 0689b295..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/bboxes.py +++ /dev/null @@ -1,508 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""TF Extended: additional bounding boxes methods. -""" -import numpy as np -import tensorflow as tf - -from tfextended import tensors as tfe_tensors -from tfextended import math as tfe_math - - -# =========================================================================== # -# Standard boxes algorithms. -# =========================================================================== # -def bboxes_sort_all_classes(classes, scores, bboxes, top_k=400, scope=None): - """Sort bounding boxes by decreasing order and keep only the top_k. - Assume the input Tensors mix-up objects with different classes. - Assume a batch-type input. - - Args: - classes: Batch x N Tensor containing integer classes. - scores: Batch x N Tensor containing float scores. - bboxes: Batch x N x 4 Tensor containing boxes coordinates. - top_k: Top_k boxes to keep. - Return: - classes, scores, bboxes: Sorted tensors of shape Batch x Top_k. - """ - with tf.name_scope(scope, 'bboxes_sort', [classes, scores, bboxes]): - scores, idxes = tf.nn.top_k(scores, k=top_k, sorted=True) - - # Trick to be able to use tf.gather: map for each element in the batch. - def fn_gather(classes, bboxes, idxes): - cl = tf.gather(classes, idxes) - bb = tf.gather(bboxes, idxes) - return [cl, bb] - r = tf.map_fn(lambda x: fn_gather(x[0], x[1], x[2]), - [classes, bboxes, idxes], - dtype=[classes.dtype, bboxes.dtype], - parallel_iterations=10, - back_prop=False, - swap_memory=False, - infer_shape=True) - classes = r[0] - bboxes = r[1] - return classes, scores, bboxes - - -def bboxes_sort(scores, bboxes, top_k=400, scope=None): - """Sort bounding boxes by decreasing order and keep only the top_k. - If inputs are dictionnaries, assume every key is a different class. - Assume a batch-type input. - - Args: - scores: Batch x N Tensor/Dictionary containing float scores. - bboxes: Batch x N x 4 Tensor/Dictionary containing boxes coordinates. - top_k: Top_k boxes to keep. - Return: - scores, bboxes: Sorted Tensors/Dictionaries of shape Batch x Top_k x 1|4. - """ - # Dictionaries as inputs. - if isinstance(scores, dict) or isinstance(bboxes, dict): - with tf.name_scope(scope, 'bboxes_sort_dict'): - d_scores = {} - d_bboxes = {} - for c in scores.keys(): - s, b = bboxes_sort(scores[c], bboxes[c], top_k=top_k) - d_scores[c] = s - d_bboxes[c] = b - return d_scores, d_bboxes - - # Tensors inputs. - with tf.name_scope(scope, 'bboxes_sort', [scores, bboxes]): - # Sort scores... - scores, idxes = tf.nn.top_k(scores, k=top_k, sorted=True) - - # Trick to be able to use tf.gather: map for each element in the first dim. - def fn_gather(bboxes, idxes): - bb = tf.gather(bboxes, idxes) - return [bb] - r = tf.map_fn(lambda x: fn_gather(x[0], x[1]), - [bboxes, idxes], - dtype=[bboxes.dtype], - parallel_iterations=10, - back_prop=False, - swap_memory=False, - infer_shape=True) - bboxes = r[0] - return scores, bboxes - - -def bboxes_clip(bbox_ref, bboxes, scope=None): - """Clip bounding boxes to a reference box. - Batch-compatible if the first dimension of `bbox_ref` and `bboxes` - can be broadcasted. - - Args: - bbox_ref: Reference bounding box. Nx4 or 4 shaped-Tensor; - bboxes: Bounding boxes to clip. Nx4 or 4 shaped-Tensor or dictionary. - Return: - Clipped bboxes. - """ - # Bboxes is dictionary. - if isinstance(bboxes, dict): - with tf.name_scope(scope, 'bboxes_clip_dict'): - d_bboxes = {} - for c in bboxes.keys(): - d_bboxes[c] = bboxes_clip(bbox_ref, bboxes[c]) - return d_bboxes - - # Tensors inputs. - with tf.name_scope(scope, 'bboxes_clip'): - # Easier with transposed bboxes. Especially for broadcasting. - bbox_ref = tf.transpose(bbox_ref) - bboxes = tf.transpose(bboxes) - # Intersection bboxes and reference bbox. - ymin = tf.maximum(bboxes[0], bbox_ref[0]) - xmin = tf.maximum(bboxes[1], bbox_ref[1]) - ymax = tf.minimum(bboxes[2], bbox_ref[2]) - xmax = tf.minimum(bboxes[3], bbox_ref[3]) - # Double check! Empty boxes when no-intersection. - ymin = tf.minimum(ymin, ymax) - xmin = tf.minimum(xmin, xmax) - bboxes = tf.transpose(tf.stack([ymin, xmin, ymax, xmax], axis=0)) - return bboxes - - -def bboxes_resize(bbox_ref, bboxes, name=None): - """Resize bounding boxes based on a reference bounding box, - assuming that the latter is [0, 0, 1, 1] after transform. Useful for - updating a collection of boxes after cropping an image. - """ - # Bboxes is dictionary. - if isinstance(bboxes, dict): - with tf.name_scope(name, 'bboxes_resize_dict'): - d_bboxes = {} - for c in bboxes.keys(): - d_bboxes[c] = bboxes_resize(bbox_ref, bboxes[c]) - return d_bboxes - - # Tensors inputs. - with tf.name_scope(name, 'bboxes_resize'): - # Translate. - v = tf.stack([bbox_ref[0], bbox_ref[1], bbox_ref[0], bbox_ref[1]]) - bboxes = bboxes - v - # Scale. - s = tf.stack([bbox_ref[2] - bbox_ref[0], - bbox_ref[3] - bbox_ref[1], - bbox_ref[2] - bbox_ref[0], - bbox_ref[3] - bbox_ref[1]]) - bboxes = bboxes / s - return bboxes - - -def bboxes_nms(scores, bboxes, nms_threshold=0.5, keep_top_k=200, scope=None): - """Apply non-maximum selection to bounding boxes. In comparison to TF - implementation, use classes information for matching. - Should only be used on single-entries. Use batch version otherwise. - - Args: - scores: N Tensor containing float scores. - bboxes: N x 4 Tensor containing boxes coordinates. - nms_threshold: Matching threshold in NMS algorithm; - keep_top_k: Number of total object to keep after NMS. - Return: - classes, scores, bboxes Tensors, sorted by score. - Padded with zero if necessary. - """ - with tf.name_scope(scope, 'bboxes_nms_single', [scores, bboxes]): - # Apply NMS algorithm. - idxes = tf.image.non_max_suppression(bboxes, scores, - keep_top_k, nms_threshold) - scores = tf.gather(scores, idxes) - bboxes = tf.gather(bboxes, idxes) - # Pad results. - scores = tfe_tensors.pad_axis(scores, 0, keep_top_k, axis=0) - bboxes = tfe_tensors.pad_axis(bboxes, 0, keep_top_k, axis=0) - return scores, bboxes - - -def bboxes_nms_batch(scores, bboxes, nms_threshold=0.5, keep_top_k=200, - scope=None): - """Apply non-maximum selection to bounding boxes. In comparison to TF - implementation, use classes information for matching. - Use only on batched-inputs. Use zero-padding in order to batch output - results. - - Args: - scores: Batch x N Tensor/Dictionary containing float scores. - bboxes: Batch x N x 4 Tensor/Dictionary containing boxes coordinates. - nms_threshold: Matching threshold in NMS algorithm; - keep_top_k: Number of total object to keep after NMS. - Return: - scores, bboxes Tensors/Dictionaries, sorted by score. - Padded with zero if necessary. - """ - # Dictionaries as inputs. - if isinstance(scores, dict) or isinstance(bboxes, dict): - with tf.name_scope(scope, 'bboxes_nms_batch_dict'): - d_scores = {} - d_bboxes = {} - for c in scores.keys(): - s, b = bboxes_nms_batch(scores[c], bboxes[c], - nms_threshold=nms_threshold, - keep_top_k=keep_top_k) - d_scores[c] = s - d_bboxes[c] = b - return d_scores, d_bboxes - - # Tensors inputs. - with tf.name_scope(scope, 'bboxes_nms_batch'): - r = tf.map_fn(lambda x: bboxes_nms(x[0], x[1], - nms_threshold, keep_top_k), - (scores, bboxes), - dtype=(scores.dtype, bboxes.dtype), - parallel_iterations=10, - back_prop=False, - swap_memory=False, - infer_shape=True) - scores, bboxes = r - return scores, bboxes - - -# def bboxes_fast_nms(classes, scores, bboxes, -# nms_threshold=0.5, eta=3., num_classes=21, -# pad_output=True, scope=None): -# with tf.name_scope(scope, 'bboxes_fast_nms', -# [classes, scores, bboxes]): - -# nms_classes = tf.zeros((0,), dtype=classes.dtype) -# nms_scores = tf.zeros((0,), dtype=scores.dtype) -# nms_bboxes = tf.zeros((0, 4), dtype=bboxes.dtype) - - -def bboxes_matching(label, scores, bboxes, - glabels, gbboxes, gdifficults, - matching_threshold=0.5, scope=None): - """Matching a collection of detected boxes with groundtruth values. - Does not accept batched-inputs. - The algorithm goes as follows: for every detected box, check - if one grountruth box is matching. If none, then considered as False Positive. - If the grountruth box is already matched with another one, it also counts - as a False Positive. We refer the Pascal VOC documentation for the details. - - Args: - rclasses, rscores, rbboxes: N(x4) Tensors. Detected objects, sorted by score; - glabels, gbboxes: Groundtruth bounding boxes. May be zero padded, hence - zero-class objects are ignored. - matching_threshold: Threshold for a positive match. - Return: Tuple of: - n_gbboxes: Scalar Tensor with number of groundtruth boxes (may difer from - size because of zero padding). - tp_match: (N,)-shaped boolean Tensor containing with True Positives. - fp_match: (N,)-shaped boolean Tensor containing with False Positives. - """ - with tf.name_scope(scope, 'bboxes_matching_single', - [scores, bboxes, glabels, gbboxes]): - rsize = tf.size(scores) - rshape = tf.shape(scores) - rlabel = tf.cast(label, glabels.dtype) - # Number of groundtruth boxes. - gdifficults = tf.cast(gdifficults, tf.bool) - n_gbboxes = tf.count_nonzero(tf.logical_and(tf.equal(glabels, label), - tf.logical_not(gdifficults))) - # Grountruth matching arrays. - gmatch = tf.zeros(tf.shape(glabels), dtype=tf.bool) - grange = tf.range(tf.size(glabels), dtype=tf.int32) - # True/False positive matching TensorArrays. - sdtype = tf.bool - ta_tp_bool = tf.TensorArray(sdtype, size=rsize, dynamic_size=False, infer_shape=True) - ta_fp_bool = tf.TensorArray(sdtype, size=rsize, dynamic_size=False, infer_shape=True) - - # Loop over returned objects. - def m_condition(i, ta_tp, ta_fp, gmatch): - r = tf.less(i, rsize) - return r - - def m_body(i, ta_tp, ta_fp, gmatch): - # Jaccard score with groundtruth bboxes. - rbbox = bboxes[i] - jaccard = bboxes_jaccard(rbbox, gbboxes) - jaccard = jaccard * tf.cast(tf.equal(glabels, rlabel), dtype=jaccard.dtype) - - # Best fit, checking it's above threshold. - idxmax = tf.cast(tf.argmax(jaccard, axis=0), tf.int32) - jcdmax = jaccard[idxmax] - match = jcdmax > matching_threshold - existing_match = gmatch[idxmax] - not_difficult = tf.logical_not(gdifficults[idxmax]) - - # TP: match & no previous match and FP: previous match | no match. - # If difficult: no record, i.e FP=False and TP=False. - tp = tf.logical_and(not_difficult, - tf.logical_and(match, tf.logical_not(existing_match))) - ta_tp = ta_tp.write(i, tp) - fp = tf.logical_and(not_difficult, - tf.logical_or(existing_match, tf.logical_not(match))) - ta_fp = ta_fp.write(i, fp) - # Update grountruth match. - mask = tf.logical_and(tf.equal(grange, idxmax), - tf.logical_and(not_difficult, match)) - gmatch = tf.logical_or(gmatch, mask) - - return [i+1, ta_tp, ta_fp, gmatch] - # Main loop definition. - i = 0 - [i, ta_tp_bool, ta_fp_bool, gmatch] = \ - tf.while_loop(m_condition, m_body, - [i, ta_tp_bool, ta_fp_bool, gmatch], - parallel_iterations=1, - back_prop=False) - # TensorArrays to Tensors and reshape. - tp_match = tf.reshape(ta_tp_bool.stack(), rshape) - fp_match = tf.reshape(ta_fp_bool.stack(), rshape) - - # Some debugging information... - # tp_match = tf.Print(tp_match, - # [n_gbboxes, - # tf.reduce_sum(tf.cast(tp_match, tf.int64)), - # tf.reduce_sum(tf.cast(fp_match, tf.int64)), - # tf.reduce_sum(tf.cast(gmatch, tf.int64))], - # 'Matching (NG, TP, FP, GM): ') - return n_gbboxes, tp_match, fp_match - - -def bboxes_matching_batch(labels, scores, bboxes, - glabels, gbboxes, gdifficults, - matching_threshold=0.5, scope=None): - """Matching a collection of detected boxes with groundtruth values. - Batched-inputs version. - - Args: - rclasses, rscores, rbboxes: BxN(x4) Tensors. Detected objects, sorted by score; - glabels, gbboxes: Groundtruth bounding boxes. May be zero padded, hence - zero-class objects are ignored. - matching_threshold: Threshold for a positive match. - Return: Tuple or Dictionaries with: - n_gbboxes: Scalar Tensor with number of groundtruth boxes (may difer from - size because of zero padding). - tp: (B, N)-shaped boolean Tensor containing with True Positives. - fp: (B, N)-shaped boolean Tensor containing with False Positives. - """ - # Dictionaries as inputs. - if isinstance(scores, dict) or isinstance(bboxes, dict): - with tf.name_scope(scope, 'bboxes_matching_batch_dict'): - d_n_gbboxes = {} - d_tp = {} - d_fp = {} - for c in labels: - n, tp, fp, _ = bboxes_matching_batch(c, scores[c], bboxes[c], - glabels, gbboxes, gdifficults, - matching_threshold) - d_n_gbboxes[c] = n - d_tp[c] = tp - d_fp[c] = fp - return d_n_gbboxes, d_tp, d_fp, scores - - with tf.name_scope(scope, 'bboxes_matching_batch', - [scores, bboxes, glabels, gbboxes]): - r = tf.map_fn(lambda x: bboxes_matching(labels, x[0], x[1], - x[2], x[3], x[4], - matching_threshold), - (scores, bboxes, glabels, gbboxes, gdifficults), - dtype=(tf.int64, tf.bool, tf.bool), - parallel_iterations=10, - back_prop=False, - swap_memory=True, - infer_shape=True) - return r[0], r[1], r[2], scores - - -# =========================================================================== # -# Some filteting methods. -# =========================================================================== # -def bboxes_filter_center(labels, bboxes, margins=[0., 0., 0., 0.], - scope=None): - """Filter out bounding boxes whose center are not in - the rectangle [0, 0, 1, 1] + margins. The margin Tensor - can be used to enforce or loosen this condition. - - Return: - labels, bboxes: Filtered elements. - """ - with tf.name_scope(scope, 'bboxes_filter', [labels, bboxes]): - cy = (bboxes[:, 0] + bboxes[:, 2]) / 2. - cx = (bboxes[:, 1] + bboxes[:, 3]) / 2. - mask = tf.greater(cy, margins[0]) - mask = tf.logical_and(mask, tf.greater(cx, margins[1])) - mask = tf.logical_and(mask, tf.less(cx, 1. + margins[2])) - mask = tf.logical_and(mask, tf.less(cx, 1. + margins[3])) - # Boolean masking... - labels = tf.boolean_mask(labels, mask) - bboxes = tf.boolean_mask(bboxes, mask) - return labels, bboxes - - -def bboxes_filter_overlap(labels, bboxes, - threshold=0.5, assign_negative=False, - scope=None): - """Filter out bounding boxes based on (relative )overlap with reference - box [0, 0, 1, 1]. Remove completely bounding boxes, or assign negative - labels to the one outside (useful for latter processing...). - - Return: - labels, bboxes: Filtered (or newly assigned) elements. - """ - with tf.name_scope(scope, 'bboxes_filter', [labels, bboxes]): - scores = bboxes_intersection(tf.constant([0, 0, 1, 1], bboxes.dtype), - bboxes) - mask = scores > threshold - if assign_negative: - labels = tf.where(mask, labels, -labels) - # bboxes = tf.where(mask, bboxes, bboxes) - else: - labels = tf.boolean_mask(labels, mask) - bboxes = tf.boolean_mask(bboxes, mask) - return labels, bboxes - - -def bboxes_filter_labels(labels, bboxes, - out_labels=[], num_classes=np.inf, - scope=None): - """Filter out labels from a collection. Typically used to get - of DontCare elements. Also remove elements based on the number of classes. - - Return: - labels, bboxes: Filtered elements. - """ - with tf.name_scope(scope, 'bboxes_filter_labels', [labels, bboxes]): - mask = tf.greater_equal(labels, num_classes) - for l in labels: - mask = tf.logical_and(mask, tf.not_equal(labels, l)) - labels = tf.boolean_mask(labels, mask) - bboxes = tf.boolean_mask(bboxes, mask) - return labels, bboxes - - -# =========================================================================== # -# Standard boxes computation. -# =========================================================================== # -def bboxes_jaccard(bbox_ref, bboxes, name=None): - """Compute jaccard score between a reference box and a collection - of bounding boxes. - - Args: - bbox_ref: (N, 4) or (4,) Tensor with reference bounding box(es). - bboxes: (N, 4) Tensor, collection of bounding boxes. - Return: - (N,) Tensor with Jaccard scores. - """ - with tf.name_scope(name, 'bboxes_jaccard'): - # Should be more efficient to first transpose. - bboxes = tf.transpose(bboxes) - bbox_ref = tf.transpose(bbox_ref) - # Intersection bbox and volume. - int_ymin = tf.maximum(bboxes[0], bbox_ref[0]) - int_xmin = tf.maximum(bboxes[1], bbox_ref[1]) - int_ymax = tf.minimum(bboxes[2], bbox_ref[2]) - int_xmax = tf.minimum(bboxes[3], bbox_ref[3]) - h = tf.maximum(int_ymax - int_ymin, 0.) - w = tf.maximum(int_xmax - int_xmin, 0.) - # Volumes. - inter_vol = h * w - union_vol = -inter_vol \ - + (bboxes[2] - bboxes[0]) * (bboxes[3] - bboxes[1]) \ - + (bbox_ref[2] - bbox_ref[0]) * (bbox_ref[3] - bbox_ref[1]) - jaccard = tfe_math.safe_divide(inter_vol, union_vol, 'jaccard') - return jaccard - - -def bboxes_intersection(bbox_ref, bboxes, name=None): - """Compute relative intersection between a reference box and a - collection of bounding boxes. Namely, compute the quotient between - intersection area and box area. - - Args: - bbox_ref: (N, 4) or (4,) Tensor with reference bounding box(es). - bboxes: (N, 4) Tensor, collection of bounding boxes. - Return: - (N,) Tensor with relative intersection. - """ - with tf.name_scope(name, 'bboxes_intersection'): - # Should be more efficient to first transpose. - bboxes = tf.transpose(bboxes) - bbox_ref = tf.transpose(bbox_ref) - # Intersection bbox and volume. - int_ymin = tf.maximum(bboxes[0], bbox_ref[0]) - int_xmin = tf.maximum(bboxes[1], bbox_ref[1]) - int_ymax = tf.minimum(bboxes[2], bbox_ref[2]) - int_xmax = tf.minimum(bboxes[3], bbox_ref[3]) - h = tf.maximum(int_ymax - int_ymin, 0.) - w = tf.maximum(int_xmax - int_xmin, 0.) - # Volumes. - inter_vol = h * w - bboxes_vol = (bboxes[2] - bboxes[0]) * (bboxes[3] - bboxes[1]) - scores = tfe_math.safe_divide(inter_vol, bboxes_vol, 'intersection') - return scores diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/image.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/image.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py deleted file mode 100644 index 2e5359c5..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/math.py +++ /dev/null @@ -1,63 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""TF Extended: additional math functions. -""" -import tensorflow as tf - -from tensorflow.python.framework import ops - -def safe_divide(numerator, denominator, name): - """Divides two values, returning 0 if the denominator is <= 0. - Args: - numerator: A real `Tensor`. - denominator: A real `Tensor`, with dtype matching `numerator`. - name: Name for the returned op. - Returns: - 0 if `denominator` <= 0, else `numerator` / `denominator` - """ - return tf.where( - tf.greater(denominator, 0), - tf.divide(numerator, denominator), - tf.zeros_like(numerator), - name=name) - - -def cummax(x, reverse=False, name=None): - """Compute the cumulative maximum of the tensor `x` along `axis`. This - operation is similar to the more classic `cumsum`. Only support 1D Tensor - for now. - - Args: - x: A `Tensor`. Must be one of the following types: `float32`, `float64`, - `int64`, `int32`, `uint8`, `uint16`, `int16`, `int8`, `complex64`, - `complex128`, `qint8`, `quint8`, `qint32`, `half`. - axis: A `Tensor` of type `int32` (default: 0). - reverse: A `bool` (default: False). - name: A name for the operation (optional). - Returns: - A `Tensor`. Has the same type as `x`. - """ - with ops.name_scope(name, "Cummax", [x]) as name: - x = ops.convert_to_tensor(x, name="x") - # Not very optimal: should directly integrate reverse into tf.scan. - if reverse: - x = tf.reverse(x, axis=[0]) - # 'Accumlating' maximum: ensure it is always increasing. - cmax = tf.scan(tf.maximum, x, - initializer=None, parallel_iterations=1, - back_prop=False, swap_memory=False) - if reverse: - cmax = tf.reverse(cmax, axis=[0]) - return cmax diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py deleted file mode 100644 index 42895291..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/metrics.py +++ /dev/null @@ -1,397 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""TF Extended: additional metrics. -""" -import tensorflow as tf -import numpy as np - -from tensorflow.contrib.framework.python.ops import variables as contrib_variables -from tensorflow.python.framework import dtypes -from tensorflow.python.framework import ops -from tensorflow.python.ops import array_ops -from tensorflow.python.ops import math_ops -from tensorflow.python.ops import nn -from tensorflow.python.ops import state_ops -from tensorflow.python.ops import variable_scope -from tensorflow.python.ops import variables - -from tfextended import math as tfe_math - - -# =========================================================================== # -# TensorFlow utils -# =========================================================================== # -def _create_local(name, shape, collections=None, validate_shape=False, - dtype=dtypes.float32): - """Creates a new local variable. - Args: - name: The name of the new or existing variable. - shape: Shape of the new or existing variable. - collections: A list of collection names to which the Variable will be added. - validate_shape: Whether to validate the shape of the variable. - dtype: Data type of the variables. - Returns: - The created variable. - """ - # Make sure local variables are added to tf.GraphKeys.LOCAL_VARIABLES - collections = list(collections or []) - collections += [ops.GraphKeys.LOCAL_VARIABLES] - return tf.Variable( - initial_value=array_ops.zeros(shape, dtype=dtype), - name=name, - trainable=False, - collections=collections, - validate_shape=validate_shape) - - -def _safe_div(numerator, denominator, name): - """Divides two values, returning 0 if the denominator is <= 0. - Args: - numerator: A real `Tensor`. - denominator: A real `Tensor`, with dtype matching `numerator`. - name: Name for the returned op. - Returns: - 0 if `denominator` <= 0, else `numerator` / `denominator` - """ - return tf.where( - tf.math.greater(denominator, 0), - tf.math.divide(numerator, denominator), - tf.zeros_like(numerator), - name=name) - - -def _broadcast_weights(weights, values): - """Broadcast `weights` to the same shape as `values`. - This returns a version of `weights` following the same broadcast rules as - `mul(weights, values)`. When computing a weighted average, use this function - to broadcast `weights` before summing them; e.g., - `reduce_sum(w * v) / reduce_sum(_broadcast_weights(w, v))`. - Args: - weights: `Tensor` whose shape is broadcastable to `values`. - values: `Tensor` of any shape. - Returns: - `weights` broadcast to `values` shape. - """ - weights_shape = weights.get_shape() - values_shape = values.get_shape() - if(weights_shape.is_fully_defined() and - values_shape.is_fully_defined() and - weights_shape.is_compatible_with(values_shape)): - return weights - return tf.math.multiply( - weights, array_ops.ones_like(values), name='broadcast_weights') - - -# =========================================================================== # -# TF Extended metrics: TP and FP arrays. -# =========================================================================== # -def precision_recall(num_gbboxes, num_detections, tp, fp, scores, - dtype=tf.float64, scope=None): - """Compute precision and recall from scores, true positives and false - positives booleans arrays - """ - # Input dictionaries: dict outputs as streaming metrics. - if isinstance(scores, dict): - d_precision = {} - d_recall = {} - for c in num_gbboxes.keys(): - scope = 'precision_recall_%s' % c - p, r = precision_recall(num_gbboxes[c], num_detections[c], - tp[c], fp[c], scores[c], - dtype, scope) - d_precision[c] = p - d_recall[c] = r - return d_precision, d_recall - - # Sort by score. - with tf.name_scope(scope, 'precision_recall', - [num_gbboxes, num_detections, tp, fp, scores]): - # Sort detections by score. - scores, idxes = tf.nn.top_k(scores, k=num_detections, sorted=True) - tp = tf.gather(tp, idxes) - fp = tf.gather(fp, idxes) - # Computer recall and precision. - tp = tf.cumsum(tf.cast(tp, dtype), axis=0) - fp = tf.cumsum(tf.cast(fp, dtype), axis=0) - recall = _safe_div(tp, tf.cast(num_gbboxes, dtype), 'recall') - precision = _safe_div(tp, tp + fp, 'precision') - return tf.tuple([precision, recall]) - - -def streaming_tp_fp_arrays(num_gbboxes, tp, fp, scores, - remove_zero_scores=True, - metrics_collections=None, - updates_collections=None, - name=None): - """Streaming computation of True and False Positive arrays. This metrics - also keeps track of scores and number of grountruth objects. - """ - # Input dictionaries: dict outputs as streaming metrics. - if isinstance(scores, dict) or isinstance(fp, dict): - d_values = {} - d_update_ops = {} - for c in num_gbboxes.keys(): - scope = 'streaming_tp_fp_%s' % c - v, up = streaming_tp_fp_arrays(num_gbboxes[c], tp[c], fp[c], scores[c], - remove_zero_scores, - metrics_collections, - updates_collections, - name=scope) - d_values[c] = v - d_update_ops[c] = up - return d_values, d_update_ops - - # Input Tensors... - with variable_scope.variable_scope(name, 'streaming_tp_fp', - [num_gbboxes, tp, fp, scores]): - num_gbboxes = tf.cast(num_gbboxes, dtype=tf.int64) - scores = tf.cast(scores, dtype=tf.float32) - stype = tf.bool - tp = tf.cast(tp, stype) - fp = tf.cast(fp, stype) - # Reshape TP and FP tensors and clean away 0 class values. - scores = tf.reshape(scores, [-1]) - tp = tf.reshape(tp, [-1]) - fp = tf.reshape(fp, [-1]) - # Remove TP and FP both false. - mask = tf.logical_or(tp, fp) - if remove_zero_scores: - rm_threshold = 1e-4 - mask = tf.logical_and(mask, tf.greater(scores, rm_threshold)) - scores = tf.boolean_mask(scores, mask) - tp = tf.boolean_mask(tp, mask) - fp = tf.boolean_mask(fp, mask) - - # Local variables accumlating information over batches. - v_nobjects = _create_local('v_num_gbboxes', shape=[], dtype=tf.int64) - v_ndetections = _create_local('v_num_detections', shape=[], dtype=tf.int32) - v_scores = _create_local('v_scores', shape=[0, ]) - v_tp = _create_local('v_tp', shape=[0, ], dtype=stype) - v_fp = _create_local('v_fp', shape=[0, ], dtype=stype) - - # Update operations. - nobjects_op = state_ops.assign_add(v_nobjects, - tf.reduce_sum(num_gbboxes)) - ndetections_op = state_ops.assign_add(v_ndetections, - tf.size(scores, out_type=tf.int32)) - scores_op = state_ops.assign(v_scores, tf.concat([v_scores, scores], axis=0), - validate_shape=False) - tp_op = state_ops.assign(v_tp, tf.concat([v_tp, tp], axis=0), - validate_shape=False) - fp_op = state_ops.assign(v_fp, tf.concat([v_fp, fp], axis=0), - validate_shape=False) - - # Value and update ops. - val = (v_nobjects, v_ndetections, v_tp, v_fp, v_scores) - with ops.control_dependencies([nobjects_op, ndetections_op, - scores_op, tp_op, fp_op]): - update_op = (nobjects_op, ndetections_op, tp_op, fp_op, scores_op) - - if metrics_collections: - ops.add_to_collections(metrics_collections, val) - if updates_collections: - ops.add_to_collections(updates_collections, update_op) - return val, update_op - - -# =========================================================================== # -# Average precision computations. -# =========================================================================== # -def average_precision_voc12(precision, recall, name=None): - """Compute (interpolated) average precision from precision and recall Tensors. - - The implementation follows Pascal 2012 and ILSVRC guidelines. - See also: https://sanchom.wordpress.com/tag/average-precision/ - """ - with tf.name_scope(name, 'average_precision_voc12', [precision, recall]): - # Convert to float64 to decrease error on Riemann sums. - precision = tf.cast(precision, dtype=tf.float64) - recall = tf.cast(recall, dtype=tf.float64) - - # Add bounds values to precision and recall. - precision = tf.concat([[0.], precision, [0.]], axis=0) - recall = tf.concat([[0.], recall, [1.]], axis=0) - # Ensures precision is increasing in reverse order. - precision = tfe_math.cummax(precision, reverse=True) - - # Riemann sums for estimating the integral. - # mean_pre = (precision[1:] + precision[:-1]) / 2. - mean_pre = precision[1:] - diff_rec = recall[1:] - recall[:-1] - ap = tf.reduce_sum(mean_pre * diff_rec) - return ap - - -def average_precision_voc07(precision, recall, name=None): - """Compute (interpolated) average precision from precision and recall Tensors. - - The implementation follows Pascal 2007 guidelines. - See also: https://sanchom.wordpress.com/tag/average-precision/ - """ - with tf.name_scope(name, 'average_precision_voc07', [precision, recall]): - # Convert to float64 to decrease error on cumulated sums. - precision = tf.cast(precision, dtype=tf.float64) - recall = tf.cast(recall, dtype=tf.float64) - # Add zero-limit value to avoid any boundary problem... - precision = tf.concat([precision, [0.]], axis=0) - recall = tf.concat([recall, [np.inf]], axis=0) - - # Split the integral into 10 bins. - l_aps = [] - for t in np.arange(0., 1.1, 0.1): - mask = tf.greater_equal(recall, t) - v = tf.reduce_max(tf.boolean_mask(precision, mask)) - l_aps.append(v / 11.) - ap = tf.add_n(l_aps) - return ap - - -def precision_recall_values(xvals, precision, recall, name=None): - """Compute values on the precision/recall curve. - - Args: - x: Python list of floats; - precision: 1D Tensor decreasing. - recall: 1D Tensor increasing. - Return: - list of precision values. - """ - with ops.name_scope(name, "precision_recall_values", - [precision, recall]) as name: - # Add bounds values to precision and recall. - precision = tf.concat([[0.], precision, [0.]], axis=0) - recall = tf.concat([[0.], recall, [1.]], axis=0) - precision = tfe_math.cummax(precision, reverse=True) - - prec_values = [] - for x in xvals: - mask = tf.less_equal(recall, x) - val = tf.reduce_min(tf.boolean_mask(precision, mask)) - prec_values.append(val) - return tf.tuple(prec_values) - - -# =========================================================================== # -# TF Extended metrics: old stuff! -# =========================================================================== # -def _precision_recall(n_gbboxes, n_detections, scores, tp, fp, scope=None): - """Compute precision and recall from scores, true positives and false - positives booleans arrays - """ - # Sort by score. - with tf.name_scope(scope, 'prec_rec', [n_gbboxes, scores, tp, fp]): - # Sort detections by score. - scores, idxes = tf.nn.top_k(scores, k=n_detections, sorted=True) - tp = tf.gather(tp, idxes) - fp = tf.gather(fp, idxes) - # Computer recall and precision. - dtype = tf.float64 - tp = tf.cumsum(tf.cast(tp, dtype), axis=0) - fp = tf.cumsum(tf.cast(fp, dtype), axis=0) - recall = _safe_div(tp, tf.cast(n_gbboxes, dtype), 'recall') - precision = _safe_div(tp, tp + fp, 'precision') - - return tf.tuple([precision, recall]) - - -def streaming_precision_recall_arrays(n_gbboxes, rclasses, rscores, - tp_tensor, fp_tensor, - remove_zero_labels=True, - metrics_collections=None, - updates_collections=None, - name=None): - """Streaming computation of precision / recall arrays. This metrics - keeps tracks of boolean True positives and False positives arrays. - """ - with variable_scope.variable_scope(name, 'stream_precision_recall', - [n_gbboxes, rclasses, tp_tensor, fp_tensor]): - n_gbboxes = tf.cast(n_gbboxes, tf.int64) - rclasses = tf.cast(rclasses, tf.int64) - rscores = tf.cast(rscores, tf.float) - - stype = tf.int32 - tp_tensor = tf.cast(tp_tensor, stype) - fp_tensor = tf.cast(fp_tensor, stype) - - # Reshape TP and FP tensors and clean away 0 class values. - rclasses = tf.reshape(rclasses, [-1]) - rscores = tf.reshape(rscores, [-1]) - tp_tensor = tf.reshape(tp_tensor, [-1]) - fp_tensor = tf.reshape(fp_tensor, [-1]) - if remove_zero_labels: - mask = tf.greater(rclasses, 0) - rclasses = tf.boolean_mask(rclasses, mask) - rscores = tf.boolean_mask(rscores, mask) - tp_tensor = tf.boolean_mask(tp_tensor, mask) - fp_tensor = tf.boolean_mask(fp_tensor, mask) - - # Local variables accumlating information over batches. - v_nobjects = _create_local('v_nobjects', shape=[], dtype=tf.int64) - v_ndetections = _create_local('v_ndetections', shape=[], dtype=tf.int32) - v_scores = _create_local('v_scores', shape=[0, ]) - v_tp = _create_local('v_tp', shape=[0, ], dtype=stype) - v_fp = _create_local('v_fp', shape=[0, ], dtype=stype) - - # Update operations. - nobjects_op = state_ops.assign_add(v_nobjects, - tf.reduce_sum(n_gbboxes)) - ndetections_op = state_ops.assign_add(v_ndetections, - tf.size(rscores, out_type=tf.int32)) - scores_op = state_ops.assign(v_scores, tf.concat([v_scores, rscores], axis=0), - validate_shape=False) - tp_op = state_ops.assign(v_tp, tf.concat([v_tp, tp_tensor], axis=0), - validate_shape=False) - fp_op = state_ops.assign(v_fp, tf.concat([v_fp, fp_tensor], axis=0), - validate_shape=False) - - # Precision and recall computations. - # r = _precision_recall(nobjects_op, scores_op, tp_op, fp_op, 'value') - r = _precision_recall(v_nobjects, v_ndetections, v_scores, - v_tp, v_fp, 'value') - - with ops.control_dependencies([nobjects_op, ndetections_op, - scores_op, tp_op, fp_op]): - update_op = _precision_recall(nobjects_op, ndetections_op, - scores_op, tp_op, fp_op, 'update_op') - - # update_op = tf.Print(update_op, - # [tf.reduce_sum(tf.cast(mask, tf.int64)), - # tf.reduce_sum(tf.cast(mask2, tf.int64)), - # tf.reduce_min(rscores), - # tf.reduce_sum(n_gbboxes)], - # 'Metric: ') - # Some debugging stuff! - # update_op = tf.Print(update_op, - # [tf.shape(tp_op), - # tf.reduce_sum(tf.cast(tp_op, tf.int64), axis=0)], - # 'TP and FP shape: ') - # update_op[0] = tf.Print(update_op, - # [nobjects_op], - # '# Groundtruth bboxes: ') - # update_op = tf.Print(update_op, - # [update_op[0][0], - # update_op[0][-1], - # tf.reduce_min(update_op[0]), - # tf.reduce_max(update_op[0]), - # tf.reduce_min(update_op[1]), - # tf.reduce_max(update_op[1])], - # 'Precision and recall :') - - if metrics_collections: - ops.add_to_collections(metrics_collections, r) - if updates_collections: - ops.add_to_collections(updates_collections, update_op) - return r, update_op - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py deleted file mode 100644 index f2d561bc..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfextended/tensors.py +++ /dev/null @@ -1,95 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -"""TF Extended: additional tensors operations. -""" -import tensorflow as tf - -from tensorflow.contrib.framework.python.ops import variables as contrib_variables -from tensorflow.contrib.metrics.python.ops import set_ops -from tensorflow.python.framework import dtypes -from tensorflow.python.framework import ops -from tensorflow.python.framework import sparse_tensor -from tensorflow.python.ops import array_ops -from tensorflow.python.ops import check_ops -from tensorflow.python.ops import control_flow_ops -from tensorflow.python.ops import math_ops -from tensorflow.python.ops import nn -from tensorflow.python.ops import state_ops -from tensorflow.python.ops import variable_scope -from tensorflow.python.ops import variables - - -def get_shape(x, rank=None): - """Returns the dimensions of a Tensor as list of integers or scale tensors. - - Args: - x: N-d Tensor; - rank: Rank of the Tensor. If None, will try to guess it. - Returns: - A list of `[d1, d2, ..., dN]` corresponding to the dimensions of the - input tensor. Dimensions that are statically known are python integers, - otherwise they are integer scalar tensors. - """ - if x.get_shape().is_fully_defined(): - return x.get_shape().as_list() - else: - static_shape = x.get_shape() - if rank is None: - static_shape = static_shape.as_list() - rank = len(static_shape) - else: - static_shape = x.get_shape().with_rank(rank).as_list() - dynamic_shape = tf.unstack(tf.shape(x), rank) - return [s if s is not None else d - for s, d in zip(static_shape, dynamic_shape)] - - -def pad_axis(x, offset, size, axis=0, name=None): - """Pad a tensor on an axis, with a given offset and output size. - The tensor is padded with zero (i.e. CONSTANT mode). Note that the if the - `size` is smaller than existing size + `offset`, the output tensor - was the latter dimension. - - Args: - x: Tensor to pad; - offset: Offset to add on the dimension chosen; - size: Final size of the dimension. - Return: - Padded tensor whose dimension on `axis` is `size`, or greater if - the input vector was larger. - """ - with tf.name_scope(name, 'pad_axis'): - shape = get_shape(x) - rank = len(shape) - # Padding description. - new_size = tf.maximum(size-offset-shape[axis], 0) - pad1 = tf.stack([0]*axis + [offset] + [0]*(rank-axis-1)) - pad2 = tf.stack([0]*axis + [new_size] + [0]*(rank-axis-1)) - paddings = tf.stack([pad1, pad2], axis=1) - x = tf.pad(x, paddings, mode='CONSTANT') - # Reshape, to get fully defined shape if possible. - # TODO: fix with tf.slice - shape[axis] = size - x = tf.reshape(x, tf.stack(shape)) - return x - - -# def select_at_index(idx, val, t): -# """Return a tensor. -# """ -# idx = tf.expand_dims(tf.expand_dims(idx, 0), 0) -# val = tf.expand_dims(val, 0) -# t = t + tf.scatter_nd(idx, val, tf.shape(t)) -# return t diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/__init__.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py deleted file mode 100644 index c6a46df4..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/endpoints.py +++ /dev/null @@ -1,20 +0,0 @@ -''' -Endpoint names to look for in the graph -''' - -from anchors import generate_anchors - -feat_layers = generate_anchors.feat_layers -sub_feats = [''] -localizations_names = [f'ssd_300_vgg/{feature}_box/Reshape:0' for feature in feat_layers] - -predictions_names = ['ssd_300_vgg/softmax/Reshape_1:0'] \ - + [f'ssd_300_vgg/softmax_{n}/Reshape_1:0' for n in range(1, len(feat_layers))] - -logit_names = [f'ssd_300_vgg/{feature}_box/Reshape_1:0' for feature in feat_layers] - -endpoint_names = ['ssd_300_vgg/conv1/conv1_2/Relu:0'] \ - + [f'ssd_300_vgg/conv{n}/conv{n}_3/Relu:0' for n in range(4, 6)] \ - + [f'ssd_300_vgg/conv{n}/conv{n}_{n}/Relu:0' for n in range(2, 4)] \ - + [f'ssd_300_vgg/conv{n}/Relu:0' for n in range(6, 8)] \ - + [f'ssd_300_vgg/{feature}/conv3x3/Relu:0' for feature in feat_layers if feature != 'block4' and feature != 'block7'] \ No newline at end of file diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py deleted file mode 100644 index a17fa3c1..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/tf_utils.py +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 2016 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================= -"""Diverse TensorFlow utils, for training, evaluation and so on! -""" -import os - -import tensorflow as tf - -# =========================================================================== # -# General tools. -# =========================================================================== # -def reshape_list(l, shape=None): - """Reshape list of (list): 1D to 2D or the other way around. - - Args: - l: List or List of list. - shape: 1D or 2D shape. - Return - Reshaped list. - """ - r = [] - if shape is None: - # Flatten everything. - for a in l: - if isinstance(a, (list, tuple)): - r = r + list(a) - else: - r.append(a) - else: - # Reshape to list of list. - i = 0 - for s in shape: - if s == 1: - r.append(l[i]) - else: - r.append(l[i:i+s]) - i += s - return r - -def configure_learning_rate(flags, num_samples_per_epoch, global_step): - """Configures the learning rate. - - Args: - num_samples_per_epoch: The number of samples in each epoch of training. - global_step: The global_step tensor. - Returns: - A `Tensor` representing the learning rate. - """ - decay_steps = int(num_samples_per_epoch / flags.batch_size * - flags.num_epochs_per_decay) - - if flags.learning_rate_decay_type == 'exponential': - return tf.train.exponential_decay(flags.learning_rate, - global_step, - decay_steps, - flags.learning_rate_decay_factor, - staircase=True, - name='exponential_decay_learning_rate') - elif flags.learning_rate_decay_type == 'fixed': - return tf.constant(flags.learning_rate, name='fixed_learning_rate') - elif flags.learning_rate_decay_type == 'polynomial': - return tf.train.polynomial_decay(flags.learning_rate, - global_step, - decay_steps, - flags.end_learning_rate, - power=1.0, - cycle=False, - name='polynomial_decay_learning_rate') - else: - raise ValueError('learning_rate_decay_type [%s] was not recognized', - flags.learning_rate_decay_type) - - -def configure_optimizer(flags, learning_rate): - """Configures the optimizer used for training. - - Args: - learning_rate: A scalar or `Tensor` learning rate. - Returns: - An instance of an optimizer. - """ - if flags.optimizer == 'adadelta': - optimizer = tf.train.AdadeltaOptimizer( - learning_rate, - rho=flags.adadelta_rho, - epsilon=flags.opt_epsilon) - elif flags.optimizer == 'adagrad': - optimizer = tf.train.AdagradOptimizer( - learning_rate, - initial_accumulator_value=flags.adagrad_initial_accumulator_value) - elif flags.optimizer == 'adam': - optimizer = tf.train.AdamOptimizer( - learning_rate, - beta1=flags.adam_beta1, - beta2=flags.adam_beta2, - epsilon=flags.opt_epsilon) - elif flags.optimizer == 'ftrl': - optimizer = tf.train.FtrlOptimizer( - learning_rate, - learning_rate_power=flags.ftrl_learning_rate_power, - initial_accumulator_value=flags.ftrl_initial_accumulator_value, - l1_regularization_strength=flags.ftrl_l1, - l2_regularization_strength=flags.ftrl_l2) - elif flags.optimizer == 'momentum': - optimizer = tf.train.MomentumOptimizer( - learning_rate, - momentum=flags.momentum, - name='Momentum') - elif flags.optimizer == 'rmsprop': - optimizer = tf.train.RMSPropOptimizer( - learning_rate, - decay=flags.rmsprop_decay, - momentum=flags.rmsprop_momentum, - epsilon=flags.opt_epsilon) - elif flags.optimizer == 'sgd': - optimizer = tf.train.GradientDescentOptimizer(learning_rate) - else: - raise ValueError('Optimizer [%s] was not recognized', flags.optimizer) - return optimizer - - -def update_model_scope(var, ckpt_scope, new_scope): - return var.op.name.replace(new_scope,'vgg_16') - - -def get_variables_to_train(flags): - """Returns a list of variables to train. - - Returns: - A list of variables to train by the optimizer. - """ - if flags.trainable_scopes is None: - return tf.trainable_variables() - else: - scopes = [scope.strip() for scope in flags.trainable_scopes.split(',')] - - variables_to_train = [] - for scope in scopes: - variables = tf.get_collection(tf.GraphKeys.TRAINABLE_VARIABLES, scope) - variables_to_train.extend(variables) - return variables_to_train - - -# =========================================================================== # -# Evaluation utils. -# =========================================================================== # diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py deleted file mode 100644 index 227655d2..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/tfssd/tfutil/visualization.py +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 2017 Paul Balanca. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -import cv2 -import random - -import matplotlib.pyplot as plt -import matplotlib.image as mpimg -import matplotlib.cm as mpcm - - -# =========================================================================== # -# Some colormaps. -# =========================================================================== # -def colors_subselect(colors, num_classes=21): - dt = len(colors) // num_classes - sub_colors = [] - for i in range(num_classes): - color = colors[i*dt] - if isinstance(color[0], float): - sub_colors.append([int(c * 255) for c in color]) - else: - sub_colors.append([c for c in color]) - return sub_colors - -colors_plasma = colors_subselect(mpcm.plasma.colors, num_classes=21) -colors_tableau = [(255, 255, 255), (31, 119, 180), (174, 199, 232), (255, 127, 14), (255, 187, 120), - (44, 160, 44), (152, 223, 138), (214, 39, 40), (255, 152, 150), - (148, 103, 189), (197, 176, 213), (140, 86, 75), (196, 156, 148), - (227, 119, 194), (247, 182, 210), (127, 127, 127), (199, 199, 199), - (188, 189, 34), (219, 219, 141), (23, 190, 207), (158, 218, 229)] - - -# =========================================================================== # -# OpenCV drawing. -# =========================================================================== # -def draw_lines(img, lines, color=[255, 0, 0], thickness=2): - """Draw a collection of lines on an image. - """ - for line in lines: - for x1, y1, x2, y2 in line: - cv2.line(img, (x1, y1), (x2, y2), color, thickness) - - -def draw_rectangle(img, p1, p2, color=[255, 0, 0], thickness=2): - cv2.rectangle(img, p1[::-1], p2[::-1], color, thickness) - - -def draw_bbox(img, bbox, shape, label, color=[255, 0, 0], thickness=2): - p1 = (int(bbox[0] * shape[0]), int(bbox[1] * shape[1])) - p2 = (int(bbox[2] * shape[0]), int(bbox[3] * shape[1])) - cv2.rectangle(img, p1[::-1], p2[::-1], color, thickness) - p1 = (p1[0]+15, p1[1]) - cv2.putText(img, str(label), p1[::-1], cv2.FONT_HERSHEY_DUPLEX, 0.5, color, 1) - - -def bboxes_draw_on_img(img, classes, scores, bboxes, colors, thickness=2): - shape = img.shape - for i in range(bboxes.shape[0]): - bbox = bboxes[i] - color = colors[classes[i]] - # Draw bounding box... - p1 = (int(bbox[0] * shape[0]), int(bbox[1] * shape[1])) - p2 = (int(bbox[2] * shape[0]), int(bbox[3] * shape[1])) - cv2.rectangle(img, p1[::-1], p2[::-1], color, thickness) - # Draw text... - s = '%s/%.3f' % (classes[i], scores[i]) - p1 = (p1[0]-5, p1[1]) - cv2.putText(img, s, p1[::-1], cv2.FONT_HERSHEY_DUPLEX, 0.4, color, 1) - - -# =========================================================================== # -# Matplotlib show... -# =========================================================================== # -def plt_bboxes(img, classes, scores, bboxes, figsize=(10,10), linewidth=1.5): - """Visualize bounding boxes. Largely inspired by SSD-MXNET! - """ - fig = plt.figure(figsize=figsize) - plt.imshow(img) - height = img.shape[0] - width = img.shape[1] - colors = dict() - for i in range(classes.shape[0]): - cls_id = int(classes[i]) - if cls_id >= 0: - score = scores[i] - if cls_id not in colors: - colors[cls_id] = (random.random(), random.random(), random.random()) - ymin = int(bboxes[i, 0] * height) - xmin = int(bboxes[i, 1] * width) - ymax = int(bboxes[i, 2] * height) - xmax = int(bboxes[i, 3] * width) - rect = plt.Rectangle((xmin, ymin), xmax - xmin, - ymax - ymin, fill=False, - edgecolor=colors[cls_id], - linewidth=linewidth) - plt.gca().add_patch(rect) - class_name = str(cls_id) - plt.gca().text(xmin, ymin - 2, - '{:s} | {:.3f}'.format(class_name, score), - bbox=dict(facecolor=colors[cls_id], alpha=0.5), - fontsize=12, color='white') - plt.show() From ee1da0ee19ab3ccdefc473924c2a0301d7dc623d Mon Sep 17 00:00:00 2001 From: vizhur Date: Wed, 24 Jul 2019 22:37:36 +0000 Subject: [PATCH 009/248] update samples from Release-137 as a part of 1.0.53 SDK release --- README.md | 2 + configuration.ipynb | 2 +- .../automl_env_mac.yml | 1 + .../auto-ml-forecasting-bike-share.ipynb | 2 +- .../auto-ml-forecasting-energy-demand.ipynb | 2 +- ...to-ml-forecasting-orange-juice-sales.ipynb | 2 +- .../sql-server/README.md | 4 +- .../deployment/accelerated-models/README.md | 2 +- .../accelerated-models-object-detection.ipynb | 41 +- .../accelerated-models-object-detection.yml | 8 + .../accelerated-models-quickstart.ipynb | 45 +- .../accelerated-models-quickstart.yml | 6 + .../accelerated-models-training.ipynb | 42 +- .../accelerated-models-training.yml | 9 + ...l-pipelines-how-to-use-estimatorstep.ipynb | 10 +- ...nes-parameter-tuning-with-hyperdrive.ipynb | 6 +- ...-publish-and-run-using-rest-endpoint.ipynb | 23 +- ...up-schedule-for-a-published-pipeline.ipynb | 6 +- ...s-setup-versioned-pipeline-endpoints.ipynb | 6 +- ...pipelines-use-adla-as-compute-target.ipynb | 4 +- ...nes-use-databricks-as-compute-target.ipynb | 2 +- ...with-automated-machine-learning-step.ipynb | 4 +- ...pipelines-with-data-dependency-steps.ipynb | 18 +- .../data_dependency_run_compare/compare.py | 24 + .../data_dependency_run_extract/extract.py | 21 + .../data_dependency_run_train/train.py | 22 + .../estimator_train/dummy_train.py | 30 + .../publish_run_compare/compare.py | 24 + .../publish_run_extract/extract.py | 21 + .../publish_run_train/train.py | 22 + .../data-drift/azure-ml-datadrift.ipynb | 724 +++++++++++++++++ .../data-drift/azure-ml-datadrift.yml | 8 + .../monitor-models/data-drift/score.py | 58 ++ .../export-run-history-to-tensorboard.ipynb | 6 +- .../tensorboard/tensorboard.ipynb | 6 +- .../chainer_mnist.py | 3 + .../chainer_score.py | 45 ++ ...erparameter-tune-deploy-with-chainer.ipynb | 352 +++++++- ...yperparameter-tune-deploy-with-chainer.yml | 7 +- .../pytorch_score.py | 4 +- .../pytorch_train.py | 4 +- .../test_img.jpg | Bin 125660 -> 1729434 bytes ...erparameter-tune-deploy-with-pytorch.ipynb | 23 +- .../tf_mnist_with_checkpoint.py | 123 +++ .../train-tensorflow-resume-training.ipynb | 487 +++++++++++ .../train-tensorflow-resume-training.yml | 5 + .../train-tensorflow-resume-training/utils.py | 27 + .../training/logging-api/logging-api.ipynb | 2 +- ...erparameter-tune-deploy-with-sklearn.ipynb | 35 +- .../train_iris.py | 6 +- setup-environment/configuration.ipynb | 2 +- .../tutorial-1st-experiment-sdk-train.ipynb | 764 +++++++++--------- .../dataprep/data/ADLSgen2-datapreptest.crt | 45 ++ .../custom-python-transforms.ipynb | 2 +- .../how-to-guides/data-ingestion.ipynb | 107 ++- .../dataprep/how-to-guides/datastore.ipynb | 31 + .../split-column-by-example.ipynb | 2 +- 57 files changed, 2778 insertions(+), 511 deletions(-) create mode 100644 how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.yml create mode 100644 how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.yml create mode 100644 how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.yml create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_compare/compare.py create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_extract/extract.py create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_train/train.py create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/estimator_train/dummy_train.py create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_compare/compare.py create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_extract/extract.py create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_train/train.py create mode 100644 how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.ipynb create mode 100644 how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.yml create mode 100644 how-to-use-azureml/monitor-models/data-drift/score.py create mode 100644 how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_score.py create mode 100644 how-to-use-azureml/training-with-deep-learning/train-tensorflow-resume-training/tf_mnist_with_checkpoint.py create mode 100644 how-to-use-azureml/training-with-deep-learning/train-tensorflow-resume-training/train-tensorflow-resume-training.ipynb create mode 100644 how-to-use-azureml/training-with-deep-learning/train-tensorflow-resume-training/train-tensorflow-resume-training.yml create mode 100644 how-to-use-azureml/training-with-deep-learning/train-tensorflow-resume-training/utils.py create mode 100644 work-with-data/dataprep/data/ADLSgen2-datapreptest.crt diff --git a/README.md b/README.md index 37845282..d02edfb0 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,7 @@ The [How to use Azure ML](./how-to-use-azureml) folder contains specific example - [Machine Learning Pipelines](./how-to-use-azureml/machine-learning-pipelines) - Examples showing how to create and use reusable pipelines for training and batch scoring - [Deployment](./how-to-use-azureml/deployment) - Examples showing how to deploy and manage machine learning models and solutions - [Azure Databricks](./how-to-use-azureml/azure-databricks) - Examples showing how to use Azure ML with Azure Databricks +- [Monitor Models](./how-to-use-azureml/monitor-models) - Examples showing how to enable model monitoring services such as DataDrift --- ## Documentation @@ -52,6 +53,7 @@ The [How to use Azure ML](./how-to-use-azureml) folder contains specific example Visit following repos to see projects contributed by Azure ML users: + - [AMLSamples](https://github.com/Azure/AMLSamples) Number of end-to-end examples, including face recognition, predictive maintenance, customer churn and sentiment analysis. - [Fine tune natural language processing models using Azure Machine Learning service](https://github.com/Microsoft/AzureML-BERT) - [Fashion MNIST with Azure ML SDK](https://github.com/amynic/azureml-sdk-fashion) diff --git a/configuration.ipynb b/configuration.ipynb index e7fb4aab..a94e015d 100644 --- a/configuration.ipynb +++ b/configuration.ipynb @@ -103,7 +103,7 @@ "source": [ "import azureml.core\n", "\n", - "print(\"This notebook was created using version 1.0.48\r\n of the Azure ML SDK\")\n", + "print(\"This notebook was created using version 1.0.53 of the Azure ML SDK\")\n", "print(\"You are currently using version\", azureml.core.VERSION, \"of the Azure ML SDK\")" ] }, diff --git a/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml b/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml index b023d8dd..2ea6f3ea 100644 --- a/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml +++ b/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml @@ -2,6 +2,7 @@ name: azure_automl dependencies: # The python interpreter version. # Currently Azure ML only supports 3.5.2 and later. +- pip - nomkl - python>=3.5.2,<3.6.8 - nb_conda diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb index dabce312..ca6f669a 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb @@ -578,7 +578,7 @@ "metadata": { "authors": [ { - "name": "xiaga@microsoft.com, tosingli@microsoft.com, erwright@microsoft.com" + "name": "erwright" } ], "kernelspec": { diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb index 88f42473..69ad7ee8 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb @@ -587,7 +587,7 @@ "metadata": { "authors": [ { - "name": "xiaga, tosingli, erwright" + "name": "erwright" } ], "kernelspec": { diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb index e129c731..f1a55044 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb @@ -829,7 +829,7 @@ "metadata": { "authors": [ { - "name": "erwright, tosingli" + "name": "erwright" } ], "kernelspec": { diff --git a/how-to-use-azureml/automated-machine-learning/sql-server/README.md b/how-to-use-azureml/automated-machine-learning/sql-server/README.md index 338262b3..6db22e41 100644 --- a/how-to-use-azureml/automated-machine-learning/sql-server/README.md +++ b/how-to-use-azureml/automated-machine-learning/sql-server/README.md @@ -87,7 +87,7 @@ These instruction setup the integration for SQL Server 2017 on Windows. sudo /opt/mssql/mlservices/bin/python/python -m pip install --upgrade sklearn ``` 7. Start SQL Server. -8. Execute the files aml_model.sql, aml_connection.sql, AutoMLGetMetrics.sql, AutoMLPredict.sql and AutoMLTrain.sql in SQL Server Management Studio. +8. Execute the files aml_model.sql, aml_connection.sql, AutoMLGetMetrics.sql, AutoMLPredict.sql, AutoMLForecast.sql and AutoMLTrain.sql in SQL Server Management Studio. 9. Create an Azure Machine Learning Workspace. You can use the instructions at: [https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-manage-workspace](https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-manage-workspace) 10. Create a config.json file file using the subscription id, resource group name and workspace name that you use to create the workspace. The file is described at: [https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-configure-environment#workspace](https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-configure-environment#workspace) 11. Create an Azure service principal. You can do this with the commands: @@ -109,5 +109,5 @@ First you need to load the sample data in the database. You can then run the queries in the energy-demand folder: * TrainEnergyDemand.sql runs AutoML, trains multiple models on data and selects the best model. -* PredictEnergyDemand.sql predicts based on the most recent training run. +* ForecastEnergyDemand.sql forecasts based on the most recent training run. * GetMetrics.sql returns all the metrics for each model in the most recent training run. diff --git a/how-to-use-azureml/deployment/accelerated-models/README.md b/how-to-use-azureml/deployment/accelerated-models/README.md index b9981ac9..f49b6b30 100644 --- a/how-to-use-azureml/deployment/accelerated-models/README.md +++ b/how-to-use-azureml/deployment/accelerated-models/README.md @@ -12,7 +12,7 @@ Easily create and train a model using various deep neural networks (DNNs) as a f To learn more about the azureml-accel-model classes, see the section [Model Classes](#model-classes) below or the [Azure ML Accel Models SDK documentation](https://docs.microsoft.com/en-us/python/api/azureml-accel-models/azureml.accel?view=azure-ml-py). ### Step 1: Create an Azure ML workspace -Follow [these instructions](https://docs.microsoft.com/en-us/azure/machine-learning/service/quickstart-create-workspace-with-python) to install the Azure ML SDK on your local machine, create an Azure ML workspace, and set up your notebook environment, which is required for the next step. +Follow [these instructions](https://docs.microsoft.com/en-us/azure/machine-learning/service/setup-create-workspace) to install the Azure ML SDK on your local machine, create an Azure ML workspace, and set up your notebook environment, which is required for the next step. ### Step 2: Check your FPGA quota Use the Azure CLI to check whether you have quota. diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb index 5191da87..d1af93d4 100644 --- a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb @@ -1,5 +1,12 @@ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.png)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -230,11 +237,14 @@ "\n", "# Convert model\n", "convert_request = AccelOnnxConverter.convert_tf_model(ws, registered_model, input_tensors, output_tensors_str)\n", - "# If it fails, you can run wait_for_completion again with show_output=True.\n", - "convert_request.wait_for_completion(show_output=False)\n", - "converted_model = convert_request.result\n", - "print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", - " converted_model.id, converted_model.created_time, '\\n')\n", + "if convert_request.wait_for_completion(show_output = False):\n", + " # If the above call succeeded, get the converted model\n", + " converted_model = convert_request.result\n", + " print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", + " converted_model.id, converted_model.created_time, '\\n')\n", + "else:\n", + " print(\"Model conversion failed. Showing output.\")\n", + " convert_request.wait_for_completion(show_output = True)\n", "\n", "# Package into AccelContainerImage\n", "image_config = AccelContainerImage.image_configuration()\n", @@ -298,6 +308,7 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "aks_target.wait_for_completion(show_output = True)\n", "print(aks_target.provisioning_state)\n", "print(aks_target.provisioning_errors)" @@ -316,6 +327,7 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "from azureml.core.webservice import Webservice, AksWebservice\n", "\n", "# Set the web service configuration (for creating a test service, we don't want autoscale enabled)\n", @@ -342,10 +354,9 @@ "## 5. Test the service\n", "\n", "### 5.a. Create Client\n", - "The image supports gRPC and the TensorFlow Serving \"predict\" API. We have a client that can call into the docker image to get predictions. \n", - "\n", - "**Note:** If you chose to use auth_enabled=True when creating your AksWebservice.deploy_configuration(), see documentation [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.webservice(class)?view=azure-ml-py#get-keys--) on how to retrieve your keys and use either key as an argument to PredictionClient(...,access_token=key).", + "The image supports gRPC and the TensorFlow Serving \"predict\" API. We will create a PredictionClient from the Webservice object that can call into the docker image to get predictions. If you do not have the Webservice object, you can also create [PredictionClient](https://docs.microsoft.com/en-us/python/api/azureml-accel-models/azureml.accel.predictionclient?view=azure-ml-py) directly.\n", "\n", + "**Note:** If you chose to use auth_enabled=True when creating your AksWebservice.deploy_configuration(), see documentation [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.webservice(class)?view=azure-ml-py#get-keys--) on how to retrieve your keys and use either key as an argument to PredictionClient(...,access_token=key).\n", "**WARNING:** If you are running on Azure Notebooks free compute, you will not be able to make outgoing calls to your service. Try locating your client on a different machine to consume it." ] }, @@ -356,18 +367,10 @@ "outputs": [], "source": [ "# Using the grpc client in AzureML Accelerated Models SDK\n", - "from azureml.accel.client import PredictionClient\n", - "\n", - "address = aks_service.scoring_uri\n", - "ssl_enabled = address.startswith(\"https\")\n", - "address = address[address.find('/')+2:].strip('/')\n", - "port = 443 if ssl_enabled else 80\n", + "from azureml.accel import client_from_service\n", "\n", "# Initialize AzureML Accelerated Models client\n", - "client = PredictionClient(address=address,\n", - " port=port,\n", - " use_ssl=ssl_enabled,\n", - " service_name=aks_service.name)" + "client = client_from_service(aks_service)" ] }, { @@ -486,7 +489,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.0" + "version": "3.5.6" } }, "nbformat": 4, diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.yml b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.yml new file mode 100644 index 00000000..5d3499d5 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.yml @@ -0,0 +1,8 @@ +name: accelerated-models-object-detection +dependencies: +- pip: + - azureml-sdk + - azureml-accel-models + - tensorflow + - opencv-python + - matplotlib diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb index 8589b1dd..a840d28a 100644 --- a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb @@ -1,5 +1,12 @@ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.png)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -270,12 +277,15 @@ "from azureml.accel import AccelOnnxConverter\n", "\n", "convert_request = AccelOnnxConverter.convert_tf_model(ws, registered_model, input_tensors, output_tensors)\n", - "# If it fails, you can run wait_for_completion again with show_output=True.\n", - "convert_request.wait_for_completion(show_output = False)\n", - "# If the above call succeeded, get the converted model\n", - "converted_model = convert_request.result\n", - "print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", - " converted_model.id, converted_model.created_time, '\\n')" + "\n", + "if convert_request.wait_for_completion(show_output = False):\n", + " # If the above call succeeded, get the converted model\n", + " converted_model = convert_request.result\n", + " print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", + " converted_model.id, converted_model.created_time, '\\n')\n", + "else:\n", + " print(\"Model conversion failed. Showing output.\")\n", + " convert_request.wait_for_completion(show_output = True)" ] }, { @@ -366,6 +376,7 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "aks_target.wait_for_completion(show_output = True)\n", "print(aks_target.provisioning_state)\n", "print(aks_target.provisioning_errors)" @@ -384,9 +395,10 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "from azureml.core.webservice import Webservice, AksWebservice\n", "\n", - "#Set the web service configuration (for creating a test service, we don't want autoscale enabled)\n", + "# Set the web service configuration (for creating a test service, we don't want autoscale enabled)\n", "# Authentication is enabled by default, but for testing we specify False\n", "aks_config = AksWebservice.deploy_configuration(autoscale_enabled=False,\n", " num_replicas=1,\n", @@ -415,10 +427,9 @@ "metadata": {}, "source": [ "### 7.a. Create Client\n", - "The image supports gRPC and the TensorFlow Serving \"predict\" API. We have a client that can call into the docker image to get predictions.\n", - "\n", - "**Note:** If you chose to use auth_enabled=True when creating your AksWebservice, see documentation [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.webservice(class)?view=azure-ml-py#get-keys--) on how to retrieve your keys and use either key as an argument to PredictionClient(...,access_token=key).", + "The image supports gRPC and the TensorFlow Serving \"predict\" API. We will create a PredictionClient from the Webservice object that can call into the docker image to get predictions. If you do not have the Webservice object, you can also create [PredictionClient](https://docs.microsoft.com/en-us/python/api/azureml-accel-models/azureml.accel.predictionclient?view=azure-ml-py) directly.\n", "\n", + "**Note:** If you chose to use auth_enabled=True when creating your AksWebservice, see documentation [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.webservice(class)?view=azure-ml-py#get-keys--) on how to retrieve your keys and use either key as an argument to PredictionClient(...,access_token=key).\n", "**WARNING:** If you are running on Azure Notebooks free compute, you will not be able to make outgoing calls to your service. Try locating your client on a different machine to consume it." ] }, @@ -429,18 +440,10 @@ "outputs": [], "source": [ "# Using the grpc client in AzureML Accelerated Models SDK\n", - "from azureml.accel.client import PredictionClient\n", - "\n", - "address = aks_service.scoring_uri\n", - "ssl_enabled = address.startswith(\"https\")\n", - "address = address[address.find('/')+2:].strip('/')\n", - "port = 443 if ssl_enabled else 80\n", + "from azureml.accel import client_from_service\n", "\n", "# Initialize AzureML Accelerated Models client\n", - "client = PredictionClient(address=address,\n", - " port=port,\n", - " use_ssl=ssl_enabled,\n", - " service_name=aks_service.name)" + "client = client_from_service(aks_service)" ] }, { @@ -540,7 +543,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.0" + "version": "3.5.6" } }, "nbformat": 4, diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.yml b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.yml new file mode 100644 index 00000000..bda43dfb --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.yml @@ -0,0 +1,6 @@ +name: accelerated-models-quickstart +dependencies: +- pip: + - azureml-sdk + - azureml-accel-models + - tensorflow diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb index 778e5310..aa637f1b 100644 --- a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb @@ -1,5 +1,12 @@ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.png)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -410,6 +417,7 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "# Launch the training\n", "tf.reset_default_graph()\n", "sess = tf.Session(graph=tf.get_default_graph())\n", @@ -582,11 +590,14 @@ "\n", "# Convert model\n", "convert_request = AccelOnnxConverter.convert_tf_model(ws, registered_model, input_tensors, output_tensors)\n", - "# If it fails, you can run wait_for_completion again with show_output=True.\n", - "convert_request.wait_for_completion(show_output=False)\n", - "converted_model = convert_request.result\n", - "print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", - " converted_model.id, converted_model.created_time, '\\n')\n", + "if convert_request.wait_for_completion(show_output = False):\n", + " # If the above call succeeded, get the converted model\n", + " converted_model = convert_request.result\n", + " print(\"\\nSuccessfully converted: \", converted_model.name, converted_model.url, converted_model.version, \n", + " converted_model.id, converted_model.created_time, '\\n')\n", + "else:\n", + " print(\"Model conversion failed. Showing output.\")\n", + " convert_request.wait_for_completion(show_output = True)\n", "\n", "# Package into AccelContainerImage\n", "image_config = AccelContainerImage.image_configuration()\n", @@ -655,6 +666,7 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "aks_target.wait_for_completion(show_output = True)\n", "print(aks_target.provisioning_state)\n", "print(aks_target.provisioning_errors)" @@ -673,6 +685,7 @@ "metadata": {}, "outputs": [], "source": [ + "%%time\n", "from azureml.core.webservice import Webservice, AksWebservice\n", "\n", "# Set the web service configuration (for creating a test service, we don't want autoscale enabled)\n", @@ -700,10 +713,9 @@ "\n", "\n", "### 9.a. Create Client\n", - "The image supports gRPC and the TensorFlow Serving \"predict\" API. We have a client that can call into the docker image to get predictions. \n", - "\n", - "**Note:** If you chose to use auth_enabled=True when creating your AksWebservice.deploy_configuration(), see documentation [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.webservice(class)?view=azure-ml-py#get-keys--) on how to retrieve your keys and use either key as an argument to PredictionClient(...,access_token=key).", + "The image supports gRPC and the TensorFlow Serving \"predict\" API. We will create a PredictionClient from the Webservice object that can call into the docker image to get predictions. If you do not have the Webservice object, you can also create [PredictionClient](https://docs.microsoft.com/en-us/python/api/azureml-accel-models/azureml.accel.predictionclient?view=azure-ml-py) directly.\n", "\n", + "**Note:** If you chose to use auth_enabled=True when creating your AksWebservice.deploy_configuration(), see documentation [here](https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.webservice(class)?view=azure-ml-py#get-keys--) on how to retrieve your keys and use either key as an argument to PredictionClient(...,access_token=key).\n", "**WARNING:** If you are running on Azure Notebooks free compute, you will not be able to make outgoing calls to your service. Try locating your client on a different machine to consume it." ] }, @@ -714,18 +726,10 @@ "outputs": [], "source": [ "# Using the grpc client in AzureML Accelerated Models SDK\n", - "from azureml.accel.client import PredictionClient\n", - "\n", - "address = aks_service.scoring_uri\n", - "ssl_enabled = address.startswith(\"https\")\n", - "address = address[address.find('/')+2:].strip('/')\n", - "port = 443 if ssl_enabled else 80\n", + "from azureml.accel import client_from_service\n", "\n", "# Initialize AzureML Accelerated Models client\n", - "client = PredictionClient(address=address,\n", - " port=port,\n", - " use_ssl=ssl_enabled,\n", - " service_name=aks_service.name)" + "client = client_from_service(aks_service)" ] }, { @@ -854,7 +858,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.0" + "version": "3.5.6" } }, "nbformat": 4, diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.yml b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.yml new file mode 100644 index 00000000..3a3c7022 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.yml @@ -0,0 +1,9 @@ +name: accelerated-models-training +dependencies: +- pip: + - azureml-sdk + - azureml-accel-models + - tensorflow + - keras + - tqdm + - sklearn diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb index b2de5ff4..2c2f5e79 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb @@ -150,7 +150,9 @@ "> Estimator object initialization involves specifying a list of DataReference objects in its 'inputs' parameter.\n", " In Pipelines, a step can take another step's output or DataReferences as input. So when creating an EstimatorStep,\n", " the parameters 'inputs' and 'outputs' need to be set explicitly and that will override 'inputs' parameter\n", - " specified in the Estimator object." + " specified in the Estimator object.\n", + " \n", + "> The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." ] }, { @@ -170,7 +172,9 @@ " data_reference_name=\"input_data\",\n", " path_on_datastore=\"20newsgroups/20news.pkl\")\n", "\n", - "output = PipelineData(\"output\", datastore=def_blob_store)" + "output = PipelineData(\"output\", datastore=def_blob_store)\n", + "\n", + "source_directory = 'estimator_train'" ] }, { @@ -181,7 +185,7 @@ "source": [ "from azureml.train.estimator import Estimator\n", "\n", - "est = Estimator(source_directory='.', \n", + "est = Estimator(source_directory=source_directory, \n", " compute_target=cpu_cluster, \n", " entry_script='dummy_train.py', \n", " conda_packages=['scikit-learn'])" diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb index 940f816e..9ee1222b 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb @@ -88,7 +88,11 @@ "metadata": {}, "source": [ "## Create an Azure ML experiment\n", - "Let's create an experiment named \"tf-mnist\" and a folder to hold the training scripts. The script runs will be recorded under the experiment in Azure.\n" + "Let's create an experiment named \"tf-mnist\" and a folder to hold the training scripts. \n", + "\n", + "> The best practice is to use separate folders for scripts and its dependent files for each step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step. \n", + "\n", + "> The script runs will be recorded under the experiment in Azure." ] }, { diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb index 42230356..435b8abc 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb @@ -57,10 +57,8 @@ "ws = Workspace.from_config()\n", "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')\n", "\n", - "# Default datastore (Azure file storage)\n", - "def_file_store = ws.get_default_datastore() \n", - "print(\"Default datastore's name: {}\".format(def_file_store.name))\n", - "\n", + "# Default datastore (Azure blob storage)\n", + "# def_blob_store = ws.get_default_datastore()\n", "def_blob_store = Datastore(ws, \"workspaceblobstore\")\n", "print(\"Blobstore's name: {}\".format(def_blob_store.name))" ] @@ -147,7 +145,9 @@ "#### Define a Step that consumes a datasource and produces intermediate data.\n", "In this step, we define a step that consumes a datasource and produces intermediate data.\n", "\n", - "**Open `train.py` in the local machine and examine the arguments, inputs, and outputs for the script. That will give you a good sense of why the script argument names used below are important.** " + "**Open `train.py` in the local machine and examine the arguments, inputs, and outputs for the script. That will give you a good sense of why the script argument names used below are important.** \n", + "\n", + "The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." ] }, { @@ -158,13 +158,16 @@ "source": [ "# trainStep consumes the datasource (Datareference) in the previous step\n", "# and produces processed_data1\n", + "\n", + "source_directory = \"publish_run_train\"\n", + "\n", "trainStep = PythonScriptStep(\n", " script_name=\"train.py\", \n", " arguments=[\"--input_data\", blob_input_data, \"--output_train\", processed_data1],\n", " inputs=[blob_input_data],\n", " outputs=[processed_data1],\n", " compute_target=aml_compute, \n", - " source_directory='.'\n", + " source_directory=source_directory\n", ")\n", "print(\"trainStep created\")" ] @@ -188,6 +191,7 @@ "# extractStep to use the intermediate data produced by step4\n", "# This step also produces an output processed_data2\n", "processed_data2 = PipelineData(\"processed_data2\", datastore=def_blob_store)\n", + "source_directory = \"publish_run_extract\"\n", "\n", "extractStep = PythonScriptStep(\n", " script_name=\"extract.py\",\n", @@ -195,7 +199,7 @@ " inputs=[processed_data1],\n", " outputs=[processed_data2],\n", " compute_target=aml_compute, \n", - " source_directory='.')\n", + " source_directory=source_directory)\n", "print(\"extractStep created\")" ] }, @@ -247,8 +251,7 @@ "source": [ "# Now define step6 that takes two inputs (both intermediate data), and produce an output\n", "processed_data3 = PipelineData(\"processed_data3\", datastore=def_blob_store)\n", - "\n", - "\n", + "source_directory = \"publish_run_compare\"\n", "\n", "compareStep = PythonScriptStep(\n", " script_name=\"compare.py\",\n", @@ -256,7 +259,7 @@ " inputs=[processed_data1, processed_data2],\n", " outputs=[processed_data3], \n", " compute_target=aml_compute, \n", - " source_directory='.')\n", + " source_directory=source_directory)\n", "print(\"compareStep created\")" ] }, diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb index 5b9976c7..935de43f 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb @@ -103,7 +103,7 @@ "metadata": {}, "source": [ "### Define a pipeline step\n", - "Define a single step pipeline for demonstration purpose." + "Define a single step pipeline for demonstration purpose. The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." ] }, { @@ -114,11 +114,13 @@ "source": [ "from azureml.pipeline.steps import PythonScriptStep\n", "\n", + "source_directory = \"publish_run_train\"\n", + "\n", "trainStep = PythonScriptStep(\n", " name=\"Training_Step\",\n", " script_name=\"train.py\", \n", " compute_target=aml_compute_target, \n", - " source_directory='.'\n", + " source_directory=source_directory\n", ")\n", "print(\"TrainStep created\")" ] diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb index 5afa9070..4f2608df 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb @@ -76,7 +76,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "#### Initialization, Steps to create a Pipeline" + "#### Initialization, Steps to create a Pipeline\n", + "\n", + "The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." ] }, { @@ -105,7 +107,7 @@ " aml_compute.wait_for_completion(show_output=True, min_node_count=None, timeout_in_minutes=20)\n", "\n", "# source_directory\n", - "source_directory = '.'\n", + "source_directory = 'publish_run_train'\n", "# define a single step pipeline for demonstration purpose.\n", "trainStep = PythonScriptStep(\n", " name=\"Training_Step\",\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-adla-as-compute-target.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-adla-as-compute-target.ipynb index 18dcf054..dbf3caa1 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-adla-as-compute-target.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-adla-as-compute-target.ipynb @@ -290,7 +290,9 @@ "- **priority:** the priority value to use for the current job *(optional)*\n", "- **runtime_version:** the runtime version of the Data Lake Analytics engine *(optional)*\n", "- **source_directory:** folder that contains the script, assemblies etc. *(optional)*\n", - "- **hash_paths:** list of paths to hash to detect a change (script file is always hashed) *(optional)*" + "- **hash_paths:** list of paths to hash to detect a change (script file is always hashed) *(optional)*\n", + "\n", + "The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." ] }, { diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb index 7330c80f..1d5fefd6 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb @@ -175,7 +175,7 @@ "metadata": {}, "source": [ "## Data Connections with Inputs and Outputs\n", - "The DatabricksStep supports Azure Blob and ADLS for inputs and outputs. You also will need to define a [Secrets](https://docs.azuredatabricks.net/user-guide/secrets/index.html) scope to enable authentication to external data sources such as Blob and ADLS from Databricks.\n", + "The DatabricksStep supports DBFS, Azure Blob and ADLS for inputs and outputs. You also will need to define a [Secrets](https://docs.azuredatabricks.net/user-guide/secrets/index.html) scope to enable authentication to external data sources such as Blob and ADLS from Databricks.\n", "\n", "- Databricks documentation on [Azure Blob](https://docs.azuredatabricks.net/spark/latest/data-sources/azure/azure-storage.html)\n", "- Databricks documentation on [ADLS](https://docs.databricks.com/spark/latest/data-sources/azure/azure-datalake.html)\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb index b43f6afa..30ace755 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb @@ -108,7 +108,9 @@ "metadata": {}, "source": [ "## Create an Azure ML experiment\n", - "Let's create an experiment named \"automl-classification\" and a folder to hold the training scripts. The script runs will be recorded under the experiment in Azure.\n" + "Let's create an experiment named \"automl-classification\" and a folder to hold the training scripts. The script runs will be recorded under the experiment in Azure.\n", + "\n", + "The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." ] }, { diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb index 831fdf6a..f6e618c1 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb @@ -76,14 +76,20 @@ "ws = Workspace.from_config()\n", "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')\n", "\n", - "# Default datastore (Azure file storage)\n", - "def_file_store = ws.get_default_datastore() \n", - "print(\"Default datastore's name: {}\".format(def_file_store.name))\n", - "\n", + "# Default datastore (Azure blob storage)\n", + "# def_blob_store = ws.get_default_datastore()\n", "def_blob_store = Datastore(ws, \"workspaceblobstore\")\n", "print(\"Blobstore's name: {}\".format(def_blob_store.name))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Source Directory\n", + "The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step." + ] + }, { "cell_type": "code", "execution_count": null, @@ -91,7 +97,7 @@ "outputs": [], "source": [ "# source directory\n", - "source_directory = '.'\n", + "source_directory = 'data_dependency_run_train'\n", " \n", "print('Sample scripts will be created in {} directory.'.format(source_directory))" ] @@ -340,6 +346,7 @@ "# step5 to use the intermediate data produced by step4\n", "# This step also produces an output processed_data2\n", "processed_data2 = PipelineData(\"processed_data2\", datastore=def_blob_store)\n", + "source_directory = \"data_dependency_run_extract\"\n", "\n", "extractStep = PythonScriptStep(\n", " script_name=\"extract.py\",\n", @@ -386,6 +393,7 @@ "source": [ "# Now define the compare step which takes two inputs and produces an output\n", "processed_data3 = PipelineData(\"processed_data3\", datastore=def_blob_store)\n", + "source_directory = \"data_dependency_run_compare\"\n", "\n", "compareStep = PythonScriptStep(\n", " script_name=\"compare.py\",\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_compare/compare.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_compare/compare.py new file mode 100644 index 00000000..1784bc7b --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_compare/compare.py @@ -0,0 +1,24 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +import argparse +import os + +print("In compare.py") +print("As a data scientist, this is where I use my compare code.") +parser = argparse.ArgumentParser("compare") +parser.add_argument("--compare_data1", type=str, help="compare_data1 data") +parser.add_argument("--compare_data2", type=str, help="compare_data2 data") +parser.add_argument("--output_compare", type=str, help="output_compare directory") +parser.add_argument("--pipeline_param", type=int, help="pipeline parameter") + +args = parser.parse_args() + +print("Argument 1: %s" % args.compare_data1) +print("Argument 2: %s" % args.compare_data2) +print("Argument 3: %s" % args.output_compare) +print("Argument 4: %s" % args.pipeline_param) + +if not (args.output_compare is None): + os.makedirs(args.output_compare, exist_ok=True) + print("%s created" % args.output_compare) diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_extract/extract.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_extract/extract.py new file mode 100644 index 00000000..0134a090 --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_extract/extract.py @@ -0,0 +1,21 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +import argparse +import os + +print("In extract.py") +print("As a data scientist, this is where I use my extract code.") + +parser = argparse.ArgumentParser("extract") +parser.add_argument("--input_extract", type=str, help="input_extract data") +parser.add_argument("--output_extract", type=str, help="output_extract directory") + +args = parser.parse_args() + +print("Argument 1: %s" % args.input_extract) +print("Argument 2: %s" % args.output_extract) + +if not (args.output_extract is None): + os.makedirs(args.output_extract, exist_ok=True) + print("%s created" % args.output_extract) diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_train/train.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_train/train.py new file mode 100644 index 00000000..961f5ebf --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/data_dependency_run_train/train.py @@ -0,0 +1,22 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +import argparse +import os + +print("In train.py") +print("As a data scientist, this is where I use my training code.") + +parser = argparse.ArgumentParser("train") + +parser.add_argument("--input_data", type=str, help="input data") +parser.add_argument("--output_train", type=str, help="output_train directory") + +args = parser.parse_args() + +print("Argument 1: %s" % args.input_data) +print("Argument 2: %s" % args.output_train) + +if not (args.output_train is None): + os.makedirs(args.output_train, exist_ok=True) + print("%s created" % args.output_train) diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/estimator_train/dummy_train.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/estimator_train/dummy_train.py new file mode 100644 index 00000000..0ad3b5ff --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/estimator_train/dummy_train.py @@ -0,0 +1,30 @@ +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. +import argparse +import os + +print("*********************************************************") +print("Hello Azure ML!") + +parser = argparse.ArgumentParser() +parser.add_argument('--datadir', type=str, help="data directory") +parser.add_argument('--output', type=str, help="output") +args = parser.parse_args() + +print("Argument 1: %s" % args.datadir) +print("Argument 2: %s" % args.output) + +if not (args.output is None): + os.makedirs(args.output, exist_ok=True) + print("%s created" % args.output) + +try: + from azureml.core import Run + run = Run.get_context() + print("Log Fibonacci numbers.") + run.log_list('Fibonacci numbers', [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]) + run.complete() +except: + print("Warning: you need to install Azure ML SDK in order to log metrics.") + +print("*********************************************************") diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_compare/compare.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_compare/compare.py new file mode 100644 index 00000000..1784bc7b --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_compare/compare.py @@ -0,0 +1,24 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +import argparse +import os + +print("In compare.py") +print("As a data scientist, this is where I use my compare code.") +parser = argparse.ArgumentParser("compare") +parser.add_argument("--compare_data1", type=str, help="compare_data1 data") +parser.add_argument("--compare_data2", type=str, help="compare_data2 data") +parser.add_argument("--output_compare", type=str, help="output_compare directory") +parser.add_argument("--pipeline_param", type=int, help="pipeline parameter") + +args = parser.parse_args() + +print("Argument 1: %s" % args.compare_data1) +print("Argument 2: %s" % args.compare_data2) +print("Argument 3: %s" % args.output_compare) +print("Argument 4: %s" % args.pipeline_param) + +if not (args.output_compare is None): + os.makedirs(args.output_compare, exist_ok=True) + print("%s created" % args.output_compare) diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_extract/extract.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_extract/extract.py new file mode 100644 index 00000000..0134a090 --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_extract/extract.py @@ -0,0 +1,21 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +import argparse +import os + +print("In extract.py") +print("As a data scientist, this is where I use my extract code.") + +parser = argparse.ArgumentParser("extract") +parser.add_argument("--input_extract", type=str, help="input_extract data") +parser.add_argument("--output_extract", type=str, help="output_extract directory") + +args = parser.parse_args() + +print("Argument 1: %s" % args.input_extract) +print("Argument 2: %s" % args.output_extract) + +if not (args.output_extract is None): + os.makedirs(args.output_extract, exist_ok=True) + print("%s created" % args.output_extract) diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_train/train.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_train/train.py new file mode 100644 index 00000000..961f5ebf --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/publish_run_train/train.py @@ -0,0 +1,22 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +import argparse +import os + +print("In train.py") +print("As a data scientist, this is where I use my training code.") + +parser = argparse.ArgumentParser("train") + +parser.add_argument("--input_data", type=str, help="input data") +parser.add_argument("--output_train", type=str, help="output_train directory") + +args = parser.parse_args() + +print("Argument 1: %s" % args.input_data) +print("Argument 2: %s" % args.output_train) + +if not (args.output_train is None): + os.makedirs(args.output_train, exist_ok=True) + print("%s created" % args.output_train) diff --git a/how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.ipynb b/how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.ipynb new file mode 100644 index 00000000..b80973a3 --- /dev/null +++ b/how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.ipynb @@ -0,0 +1,724 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Track Data Drift between Training and Inference Data in Production \n", + "\n", + "With this notebook, you will learn how to enable the DataDrift service to automatically track and determine whether your inference data is drifting from the data your model was initially trained on. The DataDrift service provides metrics and visualizations to help stakeholders identify which specific features cause the concept drift to occur.\n", + "\n", + "Please email driftfeedback@microsoft.com with any issues. A member from the DataDrift team will respond shortly. \n", + "\n", + "The DataDrift Public Preview API can be found [here](https://docs.microsoft.com/en-us/python/api/azureml-contrib-datadrift/?view=azure-ml-py). " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/monitor-models/data-drift/azureml-datadrift.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Prerequisites and Setup" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Install the DataDrift package\n", + "\n", + "Install the azureml-contrib-datadrift, azureml-opendatasets and lightgbm packages before running this notebook.\n", + "```\n", + "pip install azureml-contrib-datadrift\n", + "pip install lightgbm\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import Dependencies" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import json\n", + "import os\n", + "import time\n", + "from datetime import datetime, timedelta\n", + "\n", + "import numpy as np\n", + "import pandas as pd\n", + "import requests\n", + "from azureml.contrib.datadrift import DataDriftDetector, AlertConfiguration\n", + "from azureml.opendatasets import NoaaIsdWeather\n", + "from azureml.core import Dataset, Workspace, Run\n", + "from azureml.core.compute import AksCompute, ComputeTarget\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "from azureml.core.experiment import Experiment\n", + "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import Model\n", + "from azureml.core.webservice import Webservice, AksWebservice\n", + "from azureml.widgets import RunDetails\n", + "from sklearn.externals import joblib\n", + "from sklearn.model_selection import train_test_split\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Set up Configuraton and Create Azure ML Workspace\n", + "\n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, go through the [configuration notebook](../../../configuration.ipynb) first if you haven't already to establish your connection to the AzureML Workspace." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Please type in your initials/alias. The prefix is prepended to the names of resources created by this notebook. \n", + "prefix = \"dd\"\n", + "\n", + "# NOTE: Please do not change the model_name, as it's required by the score.py file\n", + "model_name = \"driftmodel\"\n", + "image_name = \"{}driftimage\".format(prefix)\n", + "service_name = \"{}driftservice\".format(prefix)\n", + "\n", + "# optionally, set email address to receive an email alert for DataDrift\n", + "email_address = \"\"" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ws = Workspace.from_config()\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Generate Train/Testing Data\n", + "\n", + "For this demo, we will use NOAA weather data from [Azure Open Datasets](https://azure.microsoft.com/services/open-datasets/). You may replace this step with your own dataset. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "usaf_list = ['725724', '722149', '723090', '722159', '723910', '720279',\n", + " '725513', '725254', '726430', '720381', '723074', '726682',\n", + " '725486', '727883', '723177', '722075', '723086', '724053',\n", + " '725070', '722073', '726060', '725224', '725260', '724520',\n", + " '720305', '724020', '726510', '725126', '722523', '703333',\n", + " '722249', '722728', '725483', '722972', '724975', '742079',\n", + " '727468', '722193', '725624', '722030', '726380', '720309',\n", + " '722071', '720326', '725415', '724504', '725665', '725424',\n", + " '725066']\n", + "\n", + "columns = ['usaf', 'wban', 'datetime', 'latitude', 'longitude', 'elevation', 'windAngle', 'windSpeed', 'temperature', 'stationName', 'p_k']\n", + "\n", + "\n", + "def enrich_weather_noaa_data(noaa_df):\n", + " hours_in_day = 23\n", + " week_in_year = 52\n", + " \n", + " noaa_df[\"hour\"] = noaa_df[\"datetime\"].dt.hour\n", + " noaa_df[\"weekofyear\"] = noaa_df[\"datetime\"].dt.week\n", + " \n", + " noaa_df[\"sine_weekofyear\"] = noaa_df['datetime'].transform(lambda x: np.sin((2*np.pi*x.dt.week-1)/week_in_year))\n", + " noaa_df[\"cosine_weekofyear\"] = noaa_df['datetime'].transform(lambda x: np.cos((2*np.pi*x.dt.week-1)/week_in_year))\n", + "\n", + " noaa_df[\"sine_hourofday\"] = noaa_df['datetime'].transform(lambda x: np.sin(2*np.pi*x.dt.hour/hours_in_day))\n", + " noaa_df[\"cosine_hourofday\"] = noaa_df['datetime'].transform(lambda x: np.cos(2*np.pi*x.dt.hour/hours_in_day))\n", + " \n", + " return noaa_df\n", + "\n", + "def add_window_col(input_df):\n", + " shift_interval = pd.Timedelta('-7 days') # your X days interval\n", + " df_shifted = input_df.copy()\n", + " df_shifted['datetime'] = df_shifted['datetime'] - shift_interval\n", + " df_shifted.drop(list(input_df.columns.difference(['datetime', 'usaf', 'wban', 'sine_hourofday', 'temperature'])), axis=1, inplace=True)\n", + "\n", + " # merge, keeping only observations where -1 lag is present\n", + " df2 = pd.merge(input_df,\n", + " df_shifted,\n", + " on=['datetime', 'usaf', 'wban', 'sine_hourofday'],\n", + " how='inner', # use 'left' to keep observations without lags\n", + " suffixes=['', '-7'])\n", + " return df2\n", + "\n", + "def get_noaa_data(start_time, end_time, cols, station_list):\n", + " isd = NoaaIsdWeather(start_time, end_time, cols=cols)\n", + " # Read into Pandas data frame.\n", + " noaa_df = isd.to_pandas_dataframe()\n", + " noaa_df = noaa_df.rename(columns={\"stationName\": \"station_name\"})\n", + " \n", + " df_filtered = noaa_df[noaa_df[\"usaf\"].isin(station_list)]\n", + " df_filtered.reset_index(drop=True)\n", + " \n", + " # Enrich with time features\n", + " df_enriched = enrich_weather_noaa_data(df_filtered)\n", + " \n", + " return df_enriched\n", + "\n", + "def get_featurized_noaa_df(start_time, end_time, cols, station_list):\n", + " df_1 = get_noaa_data(start_time - timedelta(days=7), start_time - timedelta(seconds=1), cols, station_list)\n", + " df_2 = get_noaa_data(start_time, end_time, cols, station_list)\n", + " noaa_df = pd.concat([df_1, df_2])\n", + " \n", + " print(\"Adding window feature\")\n", + " df_window = add_window_col(noaa_df)\n", + " \n", + " cat_columns = df_window.dtypes == object\n", + " cat_columns = cat_columns[cat_columns == True]\n", + " \n", + " print(\"Encoding categorical columns\")\n", + " df_encoded = pd.get_dummies(df_window, columns=cat_columns.keys().tolist())\n", + " \n", + " print(\"Dropping unnecessary columns\")\n", + " df_featurized = df_encoded.drop(['windAngle', 'windSpeed', 'datetime', 'elevation'], axis=1).dropna().drop_duplicates()\n", + " \n", + " return df_featurized" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Train model on Jan 1 - 14, 2009 data\n", + "df = get_featurized_noaa_df(datetime(2009, 1, 1), datetime(2009, 1, 14, 23, 59, 59), columns, usaf_list)\n", + "df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "label = \"temperature\"\n", + "x_df = df.drop(label, axis=1)\n", + "y_df = df[[label]]\n", + "x_train, x_test, y_train, y_test = train_test_split(df, y_df, test_size=0.2, random_state=223)\n", + "print(x_train.shape, x_test.shape, y_train.shape, y_test.shape)\n", + "\n", + "training_dir = 'outputs/training'\n", + "training_file = \"training.csv\"\n", + "\n", + "# Generate training dataframe to register as Training Dataset\n", + "os.makedirs(training_dir, exist_ok=True)\n", + "training_df = pd.merge(x_train.drop(label, axis=1), y_train, left_index=True, right_index=True)\n", + "training_df.to_csv(training_dir + \"/\" + training_file)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create/Register Training Dataset" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "dataset_name = \"dataset\"\n", + "name_suffix = datetime.utcnow().strftime(\"%Y-%m-%d-%H-%M-%S\")\n", + "snapshot_name = \"snapshot-{}\".format(name_suffix)\n", + "\n", + "dstore = ws.get_default_datastore()\n", + "dstore.upload(training_dir, \"data/training\", show_progress=True)\n", + "dpath = dstore.path(\"data/training/training.csv\")\n", + "trainingDataset = Dataset.auto_read_files(dpath, include_path=True)\n", + "trainingDataset = trainingDataset.register(workspace=ws, name=dataset_name, description=\"dset\", exist_ok=True)\n", + "\n", + "datasets = [(Dataset.Scenario.TRAINING, trainingDataset)]\n", + "print(\"dataset registration done.\\n\")\n", + "datasets" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train and Save Model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import lightgbm as lgb\n", + "\n", + "train = lgb.Dataset(data=x_train, \n", + " label=y_train)\n", + "\n", + "test = lgb.Dataset(data=x_test, \n", + " label=y_test,\n", + " reference=train)\n", + "\n", + "params = {'learning_rate' : 0.1,\n", + " 'boosting' : 'gbdt',\n", + " 'metric' : 'rmse',\n", + " 'feature_fraction' : 1,\n", + " 'bagging_fraction' : 1,\n", + " 'max_depth': 6,\n", + " 'num_leaves' : 31,\n", + " 'objective' : 'regression',\n", + " 'bagging_freq' : 1,\n", + " \"verbose\": -1,\n", + " 'min_data_per_leaf': 100}\n", + "\n", + "model = lgb.train(params, \n", + " num_boost_round=500,\n", + " train_set=train,\n", + " valid_sets=[train, test],\n", + " verbose_eval=50,\n", + " early_stopping_rounds=25)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model_file = 'outputs/{}.pkl'.format(model_name)\n", + "\n", + "os.makedirs('outputs', exist_ok=True)\n", + "joblib.dump(model, model_file)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Register Model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model = Model.register(model_path=model_file,\n", + " model_name=model_name,\n", + " workspace=ws,\n", + " datasets=datasets)\n", + "\n", + "print(model_name, image_name, service_name, model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Deploy Model To AKS" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Environment" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn', 'joblib', 'lightgbm', 'pandas'],\n", + " pip_packages=['azureml-monitoring', 'azureml-sdk[automl]'])\n", + "\n", + "with open(\"myenv.yml\",\"w\") as f:\n", + " f.write(myenv.serialize_to_string())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create Image" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Image creation may take up to 15 minutes.\n", + "\n", + "image_name = image_name + str(model.version)\n", + "\n", + "if not image_name in ws.images:\n", + " # Use the score.py defined in this directory as the execution script\n", + " # NOTE: The Model Data Collector must be enabled in the execution script for DataDrift to run correctly\n", + " image_config = ContainerImage.image_configuration(execution_script=\"score.py\",\n", + " runtime=\"python\",\n", + " conda_file=\"myenv.yml\",\n", + " description=\"Image with weather dataset model\")\n", + " image = ContainerImage.create(name=image_name,\n", + " models=[model],\n", + " image_config=image_config,\n", + " workspace=ws)\n", + "\n", + " image.wait_for_creation(show_output=True)\n", + "else:\n", + " image = ws.images[image_name]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create Compute Target" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "aks_name = 'dd-demo-e2e'\n", + "prov_config = AksCompute.provisioning_configuration()\n", + "\n", + "if not aks_name in ws.compute_targets:\n", + " aks_target = ComputeTarget.create(workspace=ws,\n", + " name=aks_name,\n", + " provisioning_configuration=prov_config)\n", + "\n", + " aks_target.wait_for_completion(show_output=True)\n", + " print(aks_target.provisioning_state)\n", + " print(aks_target.provisioning_errors)\n", + "else:\n", + " aks_target=ws.compute_targets[aks_name]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Deploy Service" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "aks_service_name = service_name\n", + "\n", + "if not aks_service_name in ws.webservices:\n", + " aks_config = AksWebservice.deploy_configuration(collect_model_data=True, enable_app_insights=True)\n", + " aks_service = Webservice.deploy_from_image(workspace=ws,\n", + " name=aks_service_name,\n", + " image=image,\n", + " deployment_config=aks_config,\n", + " deployment_target=aks_target)\n", + " aks_service.wait_for_deployment(show_output=True)\n", + " print(aks_service.state)\n", + "else:\n", + " aks_service = ws.webservices[aks_service_name]" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Run DataDrift Analysis" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Send Scoring Data to Service" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Download Scoring Data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Score Model on March 15, 2016 data\n", + "scoring_df = get_noaa_data(datetime(2016, 3, 15) - timedelta(days=7), datetime(2016, 3, 16), columns, usaf_list)\n", + "# Add the window feature column\n", + "scoring_df = add_window_col(scoring_df)\n", + "\n", + "# Drop features not used by the model\n", + "print(\"Dropping unnecessary columns\")\n", + "scoring_df = scoring_df.drop(['windAngle', 'windSpeed', 'datetime', 'elevation'], axis=1).dropna()\n", + "scoring_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# One Hot Encode the scoring dataset to match the training dataset schema\n", + "columns_dict = model.datasets[\"training\"][0].get_profile().columns\n", + "extra_cols = ('Path', 'Column1')\n", + "for k in extra_cols:\n", + " columns_dict.pop(k, None)\n", + "training_columns = list(columns_dict.keys())\n", + "\n", + "categorical_columns = scoring_df.dtypes == object\n", + "categorical_columns = categorical_columns[categorical_columns == True]\n", + "\n", + "test_df = pd.get_dummies(scoring_df[categorical_columns.keys().tolist()])\n", + "encoded_df = scoring_df.join(test_df)\n", + "\n", + "# Populate missing OHE columns with 0 values to match traning dataset schema\n", + "difference = list(set(training_columns) - set(encoded_df.columns.tolist()))\n", + "for col in difference:\n", + " encoded_df[col] = 0\n", + "encoded_df.head()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Serialize dataframe to list of row dictionaries\n", + "encoded_dict = encoded_df.to_dict('records')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Submit Scoring Data to Service" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%time\n", + "\n", + "# retreive the API keys. AML generates two keys.\n", + "key1, key2 = aks_service.get_keys()\n", + "\n", + "total_count = len(scoring_df)\n", + "i = 0\n", + "load = []\n", + "for row in encoded_dict:\n", + " load.append(row)\n", + " i = i + 1\n", + " if i % 100 == 0:\n", + " payload = json.dumps({\"data\": load})\n", + " \n", + " # construct raw HTTP request and send to the service\n", + " payload_binary = bytes(payload,encoding = 'utf8')\n", + " headers = {'Content-Type':'application/json', 'Authorization': 'Bearer ' + key1}\n", + " resp = requests.post(aks_service.scoring_uri, payload_binary, headers=headers)\n", + " \n", + " print(\"prediction:\", resp.content, \"Progress: {}/{}\".format(i, total_count)) \n", + "\n", + " load = []\n", + " time.sleep(3)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We need to wait up to 10 minutes for the Model Data Collector to dump the model input and inference data to storage in the Workspace, where it's used by the DataDriftDetector job." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "time.sleep(600)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Configure DataDrift" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "services = [service_name]\n", + "start = datetime.now() - timedelta(days=2)\n", + "end = datetime(year=2020, month=1, day=22, hour=15, minute=16)\n", + "feature_list = ['usaf', 'wban', 'latitude', 'longitude', 'station_name', 'p_k', 'sine_hourofday', 'cosine_hourofday', 'temperature-7']\n", + "alert_config = AlertConfiguration([email_address]) if email_address else None\n", + "\n", + "# there will be an exception indicating using get() method if DataDrift object already exist\n", + "try:\n", + " datadrift = DataDriftDetector.create(ws, model.name, model.version, services, frequency=\"Day\", alert_config=alert_config)\n", + "except KeyError:\n", + " datadrift = DataDriftDetector.get(ws, model.name, model.version)\n", + " \n", + "print(\"Details of DataDrift Object:\\n{}\".format(datadrift))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Run an Adhoc DataDriftDetector Run" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "target_date = datetime.today()\n", + "run = datadrift.run(target_date, services, feature_list=feature_list, create_compute_target=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "exp = Experiment(ws, datadrift._id)\n", + "dd_run = Run(experiment=exp, run_id=run)\n", + "RunDetails(dd_run).show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Get Drift Analysis Results" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "children = list(dd_run.get_children())\n", + "for child in children:\n", + " child.wait_for_completion()\n", + "\n", + "drift_metrics = datadrift.get_output(start_time=start, end_time=end)\n", + "drift_metrics" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Show all drift figures, one per serivice.\n", + "# If setting with_details is False (by default), only drift will be shown; if it's True, all details will be shown.\n", + "\n", + "drift_figures = datadrift.show(with_details=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Enable DataDrift Schedule" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "datadrift.enable_schedule()" + ] + } + ], + "metadata": { + "authors": [ + { + "name": "rafarmah" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.6" + }, + "notice": "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License." + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.yml b/how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.yml new file mode 100644 index 00000000..5d80f7b7 --- /dev/null +++ b/how-to-use-azureml/monitor-models/data-drift/azure-ml-datadrift.yml @@ -0,0 +1,8 @@ +name: azure-ml-datadrift +dependencies: +- pip: + - azureml-sdk + - azureml-contrib-datadrift + - azureml-opendatasets + - lightgbm + - azureml-widgets diff --git a/how-to-use-azureml/monitor-models/data-drift/score.py b/how-to-use-azureml/monitor-models/data-drift/score.py new file mode 100644 index 00000000..cda62f8b --- /dev/null +++ b/how-to-use-azureml/monitor-models/data-drift/score.py @@ -0,0 +1,58 @@ +import pickle +import json +import numpy +import azureml.train.automl +from sklearn.externals import joblib +from sklearn.linear_model import Ridge +from azureml.core.model import Model +from azureml.core.run import Run +from azureml.monitoring import ModelDataCollector +import time +import pandas as pd + + +def init(): + global model, inputs_dc, prediction_dc, feature_names, categorical_features + + print("Model is initialized" + time.strftime("%H:%M:%S")) + model_path = Model.get_model_path(model_name="driftmodel") + model = joblib.load(model_path) + + feature_names = ["usaf", "wban", "latitude", "longitude", "station_name", "p_k", + "sine_weekofyear", "cosine_weekofyear", "sine_hourofday", "cosine_hourofday", + "temperature-7"] + + categorical_features = ["usaf", "wban", "p_k", "station_name"] + + inputs_dc = ModelDataCollector(model_name="driftmodel", + identifier="inputs", + feature_names=feature_names) + + prediction_dc = ModelDataCollector("driftmodel", + identifier="predictions", + feature_names=["temperature"]) + + +def run(raw_data): + global inputs_dc, prediction_dc + + try: + data = json.loads(raw_data)["data"] + data = pd.DataFrame(data) + + # Remove the categorical features as the model expects OHE values + input_data = data.drop(categorical_features, axis=1) + + result = model.predict(input_data) + + # Collect the non-OHE dataframe + collected_df = data[feature_names] + + inputs_dc.collect(collected_df.values) + prediction_dc.collect(result) + return result.tolist() + except Exception as e: + error = str(e) + + print(error + time.strftime("%H:%M:%S")) + return error diff --git a/how-to-use-azureml/training-with-deep-learning/export-run-history-to-tensorboard/export-run-history-to-tensorboard.ipynb b/how-to-use-azureml/training-with-deep-learning/export-run-history-to-tensorboard/export-run-history-to-tensorboard.ipynb index 6d15a48c..ff076fb8 100644 --- a/how-to-use-azureml/training-with-deep-learning/export-run-history-to-tensorboard/export-run-history-to-tensorboard.ipynb +++ b/how-to-use-azureml/training-with-deep-learning/export-run-history-to-tensorboard/export-run-history-to-tensorboard.ipynb @@ -153,7 +153,11 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "tags": [ + "tensorboard-export-sample" + ] + }, "outputs": [], "source": [ "# Export Run History to Tensorboard logs\n", diff --git a/how-to-use-azureml/training-with-deep-learning/tensorboard/tensorboard.ipynb b/how-to-use-azureml/training-with-deep-learning/tensorboard/tensorboard.ipynb index 751f6671..2f638e63 100644 --- a/how-to-use-azureml/training-with-deep-learning/tensorboard/tensorboard.ipynb +++ b/how-to-use-azureml/training-with-deep-learning/tensorboard/tensorboard.ipynb @@ -227,7 +227,11 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "tags": [ + "tensorboard-sample" + ] + }, "outputs": [], "source": [ "from azureml.tensorboard import Tensorboard\n", diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_mnist.py b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_mnist.py index 515ce8ba..df2d6a6e 100644 --- a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_mnist.py +++ b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_mnist.py @@ -1,5 +1,6 @@ import argparse +import os import numpy as np @@ -131,6 +132,8 @@ def main(): run.log("Accuracy", np.float(val_accuracy)) + serializers.save_npz(os.path.join(args.output_dir, 'model.npz'), model) + if __name__ == '__main__': main() diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_score.py b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_score.py new file mode 100644 index 00000000..f6ec3a6c --- /dev/null +++ b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/chainer_score.py @@ -0,0 +1,45 @@ +import numpy as np +import os +import json + +from chainer import serializers, using_config, Variable, datasets +import chainer.functions as F +import chainer.links as L +from chainer import Chain + +from azureml.core.model import Model + + +class MyNetwork(Chain): + + def __init__(self, n_mid_units=100, n_out=10): + super(MyNetwork, self).__init__() + with self.init_scope(): + self.l1 = L.Linear(None, n_mid_units) + self.l2 = L.Linear(n_mid_units, n_mid_units) + self.l3 = L.Linear(n_mid_units, n_out) + + def forward(self, x): + h = F.relu(self.l1(x)) + h = F.relu(self.l2(h)) + return self.l3(h) + + +def init(): + global model + + model_root = Model.get_model_path('chainer-dnn-mnist') + + # Load our saved artifacts + model = MyNetwork() + serializers.load_npz(model_root, model) + + +def run(input_data): + i = np.array(json.loads(input_data)['data']) + + _, test = datasets.get_mnist() + x = Variable(np.asarray([test[i][0]])) + y = model(x) + + return np.ndarray.tolist(y.data.argmax(axis=1)) diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.ipynb b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.ipynb index 353294fa..f2e1f4b7 100644 --- a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.ipynb +++ b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.ipynb @@ -45,6 +45,16 @@ "print(\"SDK version:\", azureml.core.VERSION)" ] }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!jupyter nbextension install --py --user azureml.widgets\n", + "!jupyter nbextension enable --py --user azureml.widgets" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -121,6 +131,7 @@ "except ComputeTargetException:\n", " print('Creating a new compute target...')\n", " compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_NC6', \n", + " min_nodes=2,\n", " max_nodes=4)\n", "\n", " # create the cluster\n", @@ -206,7 +217,8 @@ "source": [ "import shutil\n", "\n", - "shutil.copy('chainer_mnist.py', project_folder)" + "shutil.copy('chainer_mnist.py', project_folder)\n", + "shutil.copy('chainer_score.py', project_folder)" ] }, { @@ -353,6 +365,7 @@ "hyperdrive_config = HyperDriveConfig(estimator=estimator,\n", " hyperparameter_sampling=param_sampling, \n", " primary_metric_name='Accuracy',\n", + " policy=BanditPolicy(evaluation_interval=1, slack_factor=0.1, delay_evaluation=3),\n", " primary_metric_goal=PrimaryMetricGoal.MAXIMIZE,\n", " max_total_runs=8,\n", " max_concurrent_runs=4)\n" @@ -398,14 +411,344 @@ "metadata": {}, "outputs": [], "source": [ - "run.wait_for_completion(show_output=True)" + "hyperdrive_run.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Find and register best model\n", + "When all jobs finish, we can find out the one that has the highest accuracy." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "best_run = hyperdrive_run.get_best_run_by_primary_metric()\n", + "print(best_run.get_details()['runDefinition']['arguments'])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now, let's list the model files uploaded during the run." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(best_run.get_file_names())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can then register the folder (and all files in it) as a model named `chainer-dnn-mnist` under the workspace for deployment" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model = best_run.register_model(model_name='chainer-dnn-mnist', model_path='outputs/model.npz')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Deploy the model in ACI\n", + "Now, we are ready to deploy the model as a web service running in Azure Container Instance, [ACI](https://azure.microsoft.com/en-us/services/container-instances/). Azure Machine Learning accomplishes this by constructing a Docker image with the scoring logic and model baked in.\n", + "\n", + "### Create scoring script\n", + "First, we will create a scoring script that will be invoked by the web service call.\n", + "+ Now that the scoring script must have two required functions, `init()` and `run(input_data)`.\n", + " + In `init()`, you typically load the model into a global object. This function is executed only once when the Docker contianer is started.\n", + " + In `run(input_data)`, the model is used to predict a value based on the input data. The input and output to `run` uses NPZ as the serialization and de-serialization format because it is the preferred format for Chainer, but you are not limited to it.\n", + " \n", + "Refer to the scoring script `chainer_score.py` for this tutorial. Our web service will use this file to predict. When writing your own scoring script, don't forget to test it locally first before you go and deploy the web service." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "shutil.copy('chainer_score.py', project_folder)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create myenv.yml\n", + "We also need to create an environment file so that Azure Machine Learning can install the necessary packages in the Docker image which are required by your scoring script. In this case, we need to specify conda packages `numpy` and `chainer`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import CondaDependencies\n", + "\n", + "cd = CondaDependencies.create()\n", + "cd.add_conda_package('numpy')\n", + "cd.add_conda_package('chainer')\n", + "cd.save_to_file(base_directory='./', conda_file_path='myenv.yml')\n", + "\n", + "print(cd.serialize_to_string())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Deploy to ACI\n", + "We are almost ready to deploy. Create a deployment configuration and specify the number of CPUs and gigabytes of RAM needed for your ACI container." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.webservice import AciWebservice\n", + "\n", + "aciconfig = AciWebservice.deploy_configuration(cpu_cores=1,\n", + " auth_enabled=True, # this flag generates API keys to secure access\n", + " memory_gb=1,\n", + " tags={'name': 'mnist', 'framework': 'Chainer'},\n", + " description='Chainer DNN with MNIST')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Deployment Process**\n", + "\n", + "Now we can deploy. **This cell will run for about 7-8 minutes.** Behind the scenes, it will do the following:\n", + "\n", + "1. **Build Docker image**\n", + "Build a Docker image using the scoring file (chainer_score.py), the environment file (myenv.yml), and the model object.\n", + "2. **Register image**\n", + "Register that image under the workspace.\n", + "3. **Ship to ACI**\n", + "And finally ship the image to the ACI infrastructure, start up a container in ACI using that image, and expose an HTTP endpoint to accept REST client calls." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.image import ContainerImage\n", + "\n", + "imgconfig = ContainerImage.image_configuration(execution_script=\"chainer_score.py\", \n", + " runtime=\"python\", \n", + " conda_file=\"myenv.yml\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%time\n", + "from azureml.core.webservice import Webservice\n", + "\n", + "service = Webservice.deploy_from_model(workspace=ws,\n", + " name='chainer-mnist-1',\n", + " deployment_config=aciconfig,\n", + " models=[model],\n", + " image_config=imgconfig)\n", + "\n", + "service.wait_for_deployment(show_output=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(service.get_logs())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(service.scoring_uri)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "**Tip: If something goes wrong with the deployment, the first thing to look at is the logs from the service by running the following command:** `print(service.get_logs())`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This is the scoring web service endpoint: `print(service.scoring_uri)`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Test the deployed model\n", + "Let's test the deployed model. Pick a random sample from the test set, and send it to the web service hosted in ACI for a prediction. Note, here we are using the an HTTP request to invoke the service.\n", + "\n", + "We can retrieve the API keys used for accessing the HTTP endpoint and construct a raw HTTP request to send to the service. Don't forget to add key to the HTTP header." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retreive the API keys. two keys were generated.\n", + "key1, Key2 = service.get_keys()\n", + "print(key1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "import urllib\n", + "import gzip\n", + "import numpy as np\n", + "import struct\n", + "import requests\n", + "\n", + "\n", + "# load compressed MNIST gz files and return numpy arrays\n", + "def load_data(filename, label=False):\n", + " with gzip.open(filename) as gz:\n", + " struct.unpack('I', gz.read(4))\n", + " n_items = struct.unpack('>I', gz.read(4))\n", + " if not label:\n", + " n_rows = struct.unpack('>I', gz.read(4))[0]\n", + " n_cols = struct.unpack('>I', gz.read(4))[0]\n", + " res = np.frombuffer(gz.read(n_items[0] * n_rows * n_cols), dtype=np.uint8)\n", + " res = res.reshape(n_items[0], n_rows * n_cols)\n", + " else:\n", + " res = np.frombuffer(gz.read(n_items[0]), dtype=np.uint8)\n", + " res = res.reshape(n_items[0], 1)\n", + " return res\n", + "\n", + "os.makedirs('./data/mnist', exist_ok=True)\n", + "urllib.request.urlretrieve('http://yann.lecun.com/exdb/mnist/t10k-images-idx3-ubyte.gz', filename = './data/mnist/test-images.gz')\n", + "urllib.request.urlretrieve('http://yann.lecun.com/exdb/mnist/t10k-labels-idx1-ubyte.gz', filename = './data/mnist/test-labels.gz')\n", + "\n", + "X_test = load_data('./data/mnist/test-images.gz', False)\n", + "y_test = load_data('./data/mnist/test-labels.gz', True).reshape(-1)\n", + "\n", + "\n", + "# send a random row from the test set to score\n", + "random_index = np.random.randint(0, len(X_test)-1)\n", + "input_data = \"{\\\"data\\\": [\" + str(random_index) + \"]}\"\n", + "\n", + "headers = {'Content-Type':'application/json', 'Authorization': 'Bearer ' + key1}\n", + "\n", + "# send sample to service for scoring\n", + "resp = requests.post(service.scoring_uri, input_data, headers=headers)\n", + "\n", + "print(\"label:\", y_test[random_index])\n", + "print(\"prediction:\", resp.text[1])\n", + "\n", + "plt.imshow(X_test[random_index].reshape((28,28)), cmap='gray')\n", + "plt.axis('off')\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Let's look at the workspace after the web service was deployed. You should see\n", + "\n", + " + a registered model named 'chainer-dnn-mnist' and with the id 'chainer-dnn-mnist:1'\n", + " + an image called 'chainer-mnist-svc' and with a docker image location pointing to your workspace's Azure Container Registry (ACR)\n", + " + a webservice called 'chainer-mnist-svc' with some scoring URL" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "models = ws.models\n", + "for name, model in models.items():\n", + " print(\"Model: {}, ID: {}\".format(name, model.id))\n", + " \n", + "images = ws.images\n", + "for name, image in images.items():\n", + " print(\"Image: {}, location: {}\".format(name, image.image_location))\n", + " \n", + "webservices = ws.webservices\n", + "for name, webservice in webservices.items():\n", + " print(\"Webservice: {}, scoring URI: {}\".format(name, webservice.scoring_uri))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Clean up" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can delete the ACI deployment with a simple delete API call." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "service.delete()" ] } ], "metadata": { "authors": [ { - "name": "ninhu" + "name": "dipeck" } ], "kernelspec": { @@ -424,7 +767,8 @@ "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.6" - } + }, + "msauthor": "dipeck" }, "nbformat": 4, "nbformat_minor": 2 diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.yml b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.yml index 4f68f902..6024bba0 100644 --- a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.yml +++ b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-chainer/train-hyperparameter-tune-deploy-with-chainer.yml @@ -4,4 +4,9 @@ dependencies: - azureml-sdk - azureml-widgets - numpy - - pytest + - matplotlib + - json + - urllib + - gzip + - struct + - requests diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_score.py b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_score.py index 68512625..5df2d8dc 100644 --- a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_score.py +++ b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_score.py @@ -11,7 +11,7 @@ from azureml.core.model import Model def init(): global model - model_path = Model.get_model_path('pytorch-hymenoptera') + model_path = Model.get_model_path('pytorch-birds') model = torch.load(model_path, map_location=lambda storage, loc: storage) model.eval() @@ -22,7 +22,7 @@ def run(input_data): # get prediction with torch.no_grad(): output = model(input_data) - classes = ['ants', 'bees'] + classes = ['chicken', 'turkey'] softmax = nn.Softmax(dim=1) pred_probs = softmax(output).numpy()[0] index = torch.argmax(output, 1) diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_train.py b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_train.py index d0bc6a1f..733c9a22 100644 --- a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_train.py +++ b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/pytorch_train.py @@ -165,8 +165,8 @@ def download_data(): import urllib from zipfile import ZipFile # download data - data_file = './hymenoptera_data.zip' - download_url = 'https://download.pytorch.org/tutorial/hymenoptera_data.zip' + data_file = './fowl_data.zip' + download_url = 'https://msdocsdatasets.blob.core.windows.net/pytorchfowl/fowl_data.zip' urllib.request.urlretrieve(download_url, filename=data_file) # extract files diff --git a/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/test_img.jpg b/how-to-use-azureml/training-with-deep-learning/train-hyperparameter-tune-deploy-with-pytorch/test_img.jpg index eb0f2c69488d0aa1338f6baee269073302d6e67b..f2878b48b39053fdfb6f26935d8f7bc20ddaa55c 100644 GIT binary patch literal 1729434 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%0ATPn)kS?%MU5V9yINCB+2= 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

>pp6> z({0*QC=zv02j9zVwB+w_Com4r7PkDxyuZ}KOv&l1RRgHlb|8`_ifo*!{uvx~k7DLvgko9#r>Ki4 zBY>!WB9HH0!@%V-$R*9(M^i=dFXy%TYn8f%6%_%FfKazhtMUY9mr;{_k)Kiv;(Mv@ zZ6zYs6Co@L3UobcN47^C?a^n{M4EeMmF8RhUI;YjKqZCMix#B?2WofUYW2xTg4dH_ zZ%EgCtf;GbXkIy)zAuKgr%sjM-!NsTJltt&LFSctbMrPUX}?Bmd|{ayisTQAv8knc zW=@huI~H-AOVVf7*6^cfjvhKtFeC$CZlH|6FcCX0S()-fPjxNq9+FqpWO6=WQkD7S zvE(JjJ0+S6ysC#*kgdTXNu?>oo}f?)?On4d09bxll=sY9O{CT#Ze-$6E5=1sjp`|1 z9;TUAqZp8O{hm%fYWi20mipZdILe44VtO$CYHyI!LxsuI>T8?jKh0a;tLpL11ZSJb zgnzN2Bz)>l^vwH|R}4hAeY5#9s@vaL+PvqRsU_OKZm0E=nYw)a805qUH??_%Vunbs zU;$!8a#)`AAKRHZA;i#TIzBhn{N~zknT^a+@sFA#DcBXQY5~}6b4{B+hdr8Sj{Q%j zVv|q3)0*T-%H_ZTM??K9n~CBXp=F?e2Nze5UU_3s(`EfBXux`GODHs``F<76WH20K z(8e?Gd*6`t8=X$jT54)tlVCoIpQ5>!hbhbGo0+6L?8SdDJh@?VrWZylV)r}Jf25&Ec5V^R9twcm%cz1;s}uG^IL@zV*swJ}~T|J9)l^ESe(AXL6vyFD700?NASD zo%hReNQmz1vYVF+=!Wb6b0<1+2$~t}7w1z%7Y}*0{rRDNz<4TfQq#Prh zfTENXH1Y44QH=b;hM!6BR#gGOR8y)+2{xrq}&6ImSF*fskOUy%87cVeH zP~N9EZ-~)_Y5aa!GY&CD#?OoaYqV{8`r0V2gq4ma*+Uvo^(Sxa>GQ#kJR*aG8F3nY z%jAeHZ#4LI3$j_Zm1{~+owIL`OBoAt^tlD@tEg(0I<3Uk_Uu9eRj9jz;0W9we8b5R zbRC{bBW4MF9>u<*3w>GGlI%~ywA|LctD5~zFAI~8g!r7;jpL-s_SWL94-ULsXc$m} zz>1JM@7|Qme0j{JQFqbO_|UW+{*an%lRe1vql%zL4(tJ?MQh`mX~&7y_+A;XnE4l4 zng^2FLS3RI)e4n7Nc+DW)aQshFp-tp*=)6?dr963IcfrgRC4?~=A$Ms=Hi^B8UFy5 zJhvJ}`g--ANa;=|b>wNcxAx|DXJ98j95CW?XQPM~`@>F+CS5m5j2Q}o2}+(k ze0~1_9LLmUxbV1Bz#i3MYc`&rU7WiT4LKj#9nXehS3e304_ z^HeY)fv0i3K8%J~iSux?)Fol$UzOUpzPq}x)WS{ay;WU%8h7uou4eXhKyWn@l#QwR z{{YCgS7>oIVBFM9F}(ca8tx#1+s$Z)MG;a}I62#Vdv?43BxD=$IQ{Iw1Cp;=G} zBczSc{gF}!ZoT))FdLT6*H_s>>?i(X0{MQfqm91>0G+G9UGqCt5L{WF9iJk8Z}|^V zwNW;j;zcRCp{W2=l0N*>zd>BH035`Ceyst z1=G(wEy#&N5Va?jXaN2_vg}z1laq!qtXIEwK9z8BoSTTdA04WxR_SJvaZ`wl&1J`X*bf?YJ3N#6o5A; zw!qe(c3b(96Nt)3bgtLVmwKdE8iYgl3cv-Xj%JhOs5A@wLR% zdB*EaxQ_Lv*=8#nmYrTxdp>US;_5oCp!P2(4K%u*K+q6r$PAn{Ch5l*xW_hsr2bXg z+*-?PbuSRH`jMa7BW;1N-}>@(#wmuMAspV8Jda@7G**^{n(jTFmvXeFKq9?=u4}Vl z;C52WW76}p<$X%p?7%9GnGT;1sP4%8m8t03t%Q~r@hlQDmGuhLgY8YlGZO8jf;Y65#o+Rl z=hyVf*`*vwt!hyJ04l8r`UlgMN&-8hj#+juv~*uO`G4~lK(^5>c#G+nncUNmtu{64 zHaVRMMscF$Ll}=Vn_Kc7pOqPniA4ZZ1^|kYUiIzonpx@nNYxPmv&A*ruS_w$2xVeu z7NdymvFn%P#NbMHcSz;@ytvljj!TJlAh1g80O(2RKK#v&Cp6~p#>qaT`A;ib8DT;r zsSH5r@*l>zm0$`8j-tIqIr5L?wdIAF)nJS4KLFG_4wc*d&Sc}u!y0k3WD`73L-Ren z@#)@;va?)M;vEerH{a>Xvu2>Mj~6C!J)FOyp}u0=p4CwC*wl(|@+UPi%1fCXCGx(h z^{p!IIa8UK$kcQ8hkp@G>5|diw&tGHAE#fHdh9-R^88wMp+>z(y*U8vN)7((>2%q= zUrSLUQKI>q^AAI{@=mF7s?8Y$e|D+ViqH?IwN7)LsUHqh;p6lj-y->&TfOs@@Pf@- zi!b}HeZSb!p81c4LIT>O8Z=j4d0BKzAFaaSCRL$E-H+{b?b9;xW8&RDF6>#{$!^l! zxqIg$(_WRRt#|9&A(jQ%LR=yAzvUmEWAg2!Ypj{bJim z*ZnK#qF0a#7Jk(gtxj1ui?G6ak4-%3Ue`joo6;acl^dFIsicAnRF5HMSo44^4Im%V&Hra18M8j9Qby8 zId!~=Boe2iZC;o-d|pnsAEfSz(Y*V6q_A&Ls8smL zt!vl<4{C05P>i7NFw6n764vA&nOEObzNgk)Fbvx&cj@6whAd|^w`Hi-(4zLQ%fBz! z`5#R-7Kj9_yq(x?@8O+xm<%zX=zL)*Q^dbC{PT5m?-idFXxuP}9;A-->-6TASE)Hq zle5ub+ROAK{&8aNe>eFhbggOYaH>H7@5J=Xy$(JnWsffw!Bfmy1YSsKrm{mN$S0E? zq!V8C-!;0eFvrb~TO6KKtF-d^+L9VFZ^W9?y=Z;<<_X5(&gA){^MdT^x-p*GLS%`) zIxyuyUPI-%`DREWVb$crE+>QeQdIKqmG3nx)L_>#l?Iiq6mcHg^*;HEAm!tzlMYJJ5aks*FgM?z8*H)|v*5b0w5FHj#^a zGyo7j5lVc!=Shqa9hpM_i_d(;ti=>JQr=L4c#Y{_zr8b2pDzyO$ImVB%C}zT|Zt8N1U*!pG|7*#KrK@DJv` zhkfQvNgmhKm=~-_1!`DsPl(^9YJW0iDrguyGi8_gGs*IKR?+oa@+FoS%!>^+_(xBe z+b#e_r^P*4=jAN&dEd>jLFnxf^_T^sk=mo?KhC+4hzYw5EX1EnerfqN${U(e7EoLO zdeivk4{7PlJyCLU!-!daaCw8t(?P5?;)ZS#HxQ~#0=Iu-hefC|4yrPunptR9FKH&P zWgk8@c0jcwk3-io3@lr5z%m`4LFd?Yd8|gY_F`r#1!&uQe6Z=FWL=gm6k<0CZ{@e< z4gIKH1eYx28rR{d9sQ}9dGXgKthj(>{%qFY%r{A6V1bw_h6Q$}{V80iL8dVsQqL@Y zSKRrVTTLR~G8C0*2?vPSRgF8-dJJ;|KS*a7g8GkG@``DbS$TUwhLBmt8QPs&Z-}1* z(w}v66DBe}Ec}DdWAe$+{LdDyWIQ&Ns@qVSQ*M+8q43GZ0~u(~=?~CvATemtXsaY` z7(A)4@c#fmo^CMA(}|_VZq>gvu2#|r7Tv&_Qmox6N&`=r$~#V+xWcy&ovyV6T{89o zC#YL`4kXp62-=<*kEg-}ZPn)l*kRfNewDYEj2?^%+&L=H8f^SgTc?!CH~jF{pXza6+dnH`Oetj)sXx>l&D9#*I&8Ttyf^Z!9eVg_ z%mji)2-O4b@7M}vG=b;Qw;AXkW5uAyq{fyJFp43w3R7d#{Ogl41TFM@b#k^W$ z*boYFG+;O1$A6Y(W1J-(0@*D|#3}P9oA03V^2z8B2w=1Zr>y~??0cNn99%N4jvS93 z=_i-JE2r~}GHW;F^K=3Q=%5b1+mCOjGcf4RO^SSJ4omc{7U#%vNQ@8LR--K_DhAzq zWj+bPDr-3{>Z9`}?goWz*PKmOEmC;X-}=`x=czFpHfi-lGCd2=mlkr%c$`{8K-<-i z)6=)nl;YLMmp>k~+vgw7{{S{?I;a||hlQ1^#CTV)hHJBBmO{*GxP$1A`Nyv{OXdwD z)VVC}5`|(KrlNrUHO`Z>b`4%3l40k2Hocxjf;y1Z;ZKP1uj{5~Yw=idG04hKmHgG^ zo79OdB?1(3N%;yN;Y{Q*(eNGF!`6xyfg$m(+$otm{oWqgHU ztuo#v?x0JJ*$ANlskc*^6a$Zk2MM>*{!#N9-a++v#}{+PI+AKPBzt_i0g(&ZE!|7 z`8hJx%ZG*azvZr*^>>Qpl-JS=PQ-v|x9iNzFx}PSi4wQ6Yw`&=079_<{JcQ$?UL1z zTRWV2>zgOhv~*h~s)5K3hriL3;1p=Pj5x%FyleBT%bL~JnAUnkGG$ObUW`Q!zQ72-y4$6y=q3sZliA>)tdYnxEk~Je-W^i>3^7d&zN;qi8-tS zsDM|GVbD--THuj6OGZpX7-yG$T!&MZ53La_vTmifr8*6>Xf&KHIN%2CCsp$q(=`Rr z>|`+n1p0io_zvKA1bbx~lfrmdWrrBB`kP7f4c4`#r5lSX?_K_N_VB|JPbUXHas?Dl zjb&>(OKp5sNK&*`8&vpwu@%+9g_Qc^Mvl)-Gg!JSs2-eSVrjiS>zfT0mN&&0q|<3d zZp5{Z`N=;mKvzfB+{bxt!5r}nt-T1SCcQi}X^7mOiW7uj^{>i5Jm_A2v$)ngyQYJt zML3AfG$1QCel`2H?m+9Cj3$^z7?9cYWww{(_!%xGu#NR4QAt9NgdUwgR%Sq3hn65S zyH6|H%IT>6V8H-dk59PlDbRc6l4S^2B$GwcF0LTHy;*=rWROM$H&w4+b4pa zb^+z@%$WZGNVbb8<93$_(MsLQn$zj0OuNJ!i>k{WE==ps{$#e*tYn7jKS*5e3hp@p z)cmr;l7$BvIC#$KFOr~>Q2MMoyo^y~3sF*~MShPC-SZYD&movg<*Q8-Qf*!rEh{(_ z2EF$G06*->NK!`0cB|$I;JuUT{3HwezAUvH>`&3u45oHVXd*0Q&6he?mMu=PHPjxg z!~q#_#JADmnEA1Qj}wLBdWNU2UOah5->ze|wX|s=lbJ>oU4Z1rWBz}`Hu0Ah&buJt zd6uhXZ4f@HeRA$JE)hSwj2_hkeg6O)oG^pUt2F3r`RDT!&bN9_kgIKLDl0)G-%6Hdo8cmq8N6EDI)&hO1VTg>{6#i+S;v`GqxOHhHePQ$tFzG-sLiQdc7 zHcS5i=N-Q>Y`-l0`J#FAQM6n0rCmjIA#!@715iN}Vbw{f3A(5MZ!^zns>P%0 z)3?;VAgfdSyH=g6*Bo+lBM%ZhGB4O)`Nn(rEN7ER)m+fZeQOlpQeu4!&3GOqc z(n6zeAFK4vo`dJ#DQK3qGin$5ba$79Li%y1AcakNFKxRT2Jtk(JRDn=6UZ@!59BY) zY3%MUwG_CP&d2~&Sq~cZA$b8%zQ&&Uftx{Fhc`poWb=JjpxfK&OBK0uE#Qbs9rrX~ z3E%1d10e_zv33Vh)#!Rv<)nn&+&d~F13=WMJu)XB3v_h?XvfxUU;;>>GF=iWN|JWl z9!^{UFE!Qt-+QQD-HWG0hTQN)G%UiEsP;J{98>zaPh&_-h7>9h7>$GliZq34UsVIG?W5u@rzpkv@FJ7+17%NE0%uRKGW zEVj`bR@0g8>nzhRCOtr@-+aW54;Nz3h`gHLS)WGrblCx{WmN$A&<(m}1_u$OolijU zTaPMFs(GcRiCTfw)v9+i`|~ePmif6@@@)MP@_(1%v9pFaRSe-rBTn@GIh72c9hyi4 z?vVMnO-lvi0pQa&!nLPO_VCP*0F9Qs@U6m0qJC6bm@c*LLyt4dmnt(7+nvu*lEI|$ zH!ZNq!y9; z0)!8rf5R~H6_NlJ)%uOMV8CiEaETVkhe0ht^ z@oUy``UO}3rlY4&cRlvbn=Ya`VR3Sgq_GwAkLVvtCnJLz0(UuslT>l;TH%wq>Z4bS zTCw%{hxkbZ?lwL-n+(S!Y_w`e7bll$m)1IzZ>DpvrVE860pVZv@Zp^b4lW!#eBU#9 zlg*a;0g^bvG>R$Bh^QT@_hz3g>U2>od_0~ps(J5FyM^btjiZU`!GFo>8l9_`Mtoyu z2lB^@$>jQOwW;fO=G=hLf<84p>DRY?vtOSH2X}3b0z98e*xPEd>B876mH?@y;18oK z;*k{HsLQt}o@(EgTFvaqe|jnq9tq$`8`ER8E0M(sK-;LCxVf`0DO+FKN-U&~MG3mM z#mLjBttq{8Co~MV4m2giZSHy_OLKP=cK|xjQB5n?YK+A>D`z)L8K1?Rwf^Fr z6YlAPhuH7@7{CA3_^Ej;fjuxlRq0=z;{XjX7LeLqJW>XXQ0`58e2zqf%mDQr7tIZ9 z$P9!!ZC=FJufNMN^Jzrf44AmNJr3XV5?jD+uAkvr5I~_Md!Ctz`B5HDHcdGXT>P~B z%7aUuM80wiicq-&l85*D24YJd`!bFb%)R?o^H!R$q`FChci1~kTE(T;xSSR9gMnS;LV)CA? zx>dy7ZY|FOj173xuiuwxr^70C9iN}QHvHA{y{@LOcn0TjKn)1!23OizAw9#NpC|&K z9r=q-lFBd9)^Rhtu?|M``JSUK(a1tI)#E!u5s|dh%a%HSm#xg&%cQq5sXJ8AlicsO zOrBVZ-E>&UH1c0IYvWCdW{?3K&-Mb=yMGSZq|1+p?CxcXIE9CSYaVSE3CIRpbtH=H zDPE^8#7uT^L`3&Yv@K@WUP$d7Jy;dE8t&X{zT=_HeDE?Z!-6o4ruN#5K2N@q<4G(P z2r3OWG^wHR{{TAXbSfif8W6ruq_kf=Mdv#KeG?E-IXZgUMk(MN=YoQ$sTPskT#2|J0hT{sEW3p zAqL!R@dQ4G^3{#Y!yVA%J#(50@T-;i2Cbf?yT-)9;TV&VeP3>AJQ- z8$ril1pxxI8+6Ec-Y+(<$`~7Z)`jOdbxRbqkcMR4s5jjA+;`2SGVwWBHvmAj09Bl|Su4|RwkInw+TBKc`_Ouimi*r9YL<_| z+*g*s14H!ga~~d{-8opY@Qu4;|lg;7oD4%F*YmiBf|IdCIsG7mCY$)ahqn4vMnz=l!)JVyP!^JSky!?<@i zaSk1yH2IJ7W>IY(m2eRvws!c7P?~?AT(1UN*t+d*j#3sL1LmJGTI;es?Tm~0Jmq;F*iB)DK3it5ewqU~`0+%Kop68?fYujp)+gb`mQOdOhR2pt6QP5+KbX+Y- z1nl&A{M==dEk0IaulAIv08~^Hzuk`=w_=o{D7>5VKS0#y33qQB`VPw~I)DMMkIZ=F z_Kznb82nL1iRm|=rL;S{5}dDMJRUatKz_*sspbpX(9wLOL(5Ehx>@g4)` zJx<$EA6~Jq$58tLxy)@vbaL?FF%5YW>uJBrPF$Qj954Q@uXbI()Mm#xX8tIuYIV zHk;>7I7JoYvMWZ^JBprNNZb6zZM5bjZsEeECyjZZ&0ekKvT4i!Ex~vALjpnER3Ez| z#2mmli&{RjeQ|2mx9kkEzow3qWi%UfH2botOu2p^4<=dVds(6mWRP+kl}QKUQ{(cX z%)KnF)$3wO-G=$+$hwxTG&k!TMQuGekSfHTzG9vIvm;SAbD_dSUitZH<*B@@V{fIF zDCt%t{?f6i-^ar+u*ilQsB}+!+vehgTD-=*Xcul@4)h(Ua@^YU9h@j>cCzq~F@9f5 zuH1f;hUqq>fHUzRQl8(AVf{ymiOIw6XV==b@0Vh<5HTV(G09LUYfd!VZv8WH45l%0 zWK7SJZKmp1{+H>ERm5o30T|baJt^W292qFv4M3({ZTXJcG$}2Q2aZ$38t>QQ`aQB4 zwLEQI<}1Gcl;AN}6oD=01-v6MQof&E>KgEpJsOV=PGfy+Nt)0CgTU&7r^|;^vsj zXgzyE`lb3fv5`=a2?Kg~ie|qkqU*BaFcu$IepqTPZKp1tV`h#%O1!uDLu`KPZT&Ls z9;a$7AuKp)%QpRY5qX@rfvK8Oj8-aY1B8f_V;uyqc3de_ z_?)2)+JFlE`~0%(6Y)8?TDr%u=9l?fL7LxNmU#_qP&$?X(5X-bK7rP`UXK^=c5-x@ z=|pg(-Se52f!X!=@ek;yDDB8F8Sr|tY8ZSTw_{HV<|bSMC7ub^#q4@VoGq-PHta{$q%~;y^rrPW zvc;Ff8#QIcM%V}D=7##@YSyJ%BAd_>2-y7{a}Ie9L$@bsfQ}vC9rVk|;NO-ZMI+f;kzH;P*_M}>oHdX$zrj6xS?hEPWm-v}g%AEKuu z2^`&aT+uAk$eK#5$6ttXxJfvejQ}gL6cq2d8J&YC3y&FF*|jUXEn3&nu!&}oejqof zByZQRuo;;>SBRXF5F0#GQu6)9#LTW(KsZpDIOTudV#Z z7JFpf!5>HV<~*`lWeINef6fm$A1!I$TDByz?@okOeiQW5HQ9}tcRGBVK0>kl@YFT) zd!*`&&RIznsUQQ;Z<+d75-76CsIAz1{$|wlF!x`@ak$35mB$ugD}U zBck&)-m!4Dw+eR@qM8xgu>Lt7GVAcySJ=OnK25f~v-;KO{oys+@cHJ)Lx^PN*(j!7 zZu0Hdl4DI*LzSevyKXHKP?5IB$1}6(#wgo%kQ_$BBS7=L<(VT^1uh5)ARWM^O*?zj zG}vy5rmdNc}pVb;z<6l-d$PFb3 z6dh^rlw;ibmN4QQK1v!j-Szm?p^7;pnVC>fo-`++-ws?{BErsO9p0U!X_s0RuM40Y z?7#{Nds3e~#L1FT7F&2lT3z{r=7}w|^??wH-GYYdC_wMpnOMjG-%PP z=QJ{b$n@HzlR^GxEE#|sIT*3qGV?BvW9EAsdlqo>08o=&pT?fquo8^JN9D=g7VY(oS!C1s zL2bcL!_uSt_v?|(*++`QmzJg|K4tS?kaaK18RR;AtYNJ|Mq+t*8XlYG27EHaY`m1C z!#ZHod4E&XEdKz+I+5VAREB0CQk~A^hnQ6?YtVf^ zeq};;uuh&5k$In=Jfo@I2(Dq|lSXQJf~!jQrE?g@LC?vHh*@G+dOGViP+dv;xh?A( ztv1`aA1WNM;-PMuM1sm~F0N#;6WcvV$B~M;C z52{GohKFId`PVUV!;J3jAt8)DjPpg#i*aZ!Yy^D3E3h>8AK8-B!V%=}bY1U@KQeri zI_Za3PA;I3q>7PKT9MdgI(T=vney!UQ%1AXrMq)|7`J7w7UQ`s(C^szcFdEK&d)un ziLIXP<&P;@YkFvtQVcqvRU>*D1M>F9a{zAWh>$y_mp(z$G+7GTK;jnNnNS6#dyb=i zrz?gtHbR0bFC}Su$uDPX>T({KXVZK`=@;yaBso;6Y`0qi;f z+b+c#8@0DrE~Zl7Nz*;9o&5Jz%G-8Q9gjXk*2%1b)ae5YcQrG@Mv=8$sa zz#7x0)jRz;k)_2Ev2KPrTJJY$R^DBXsThvDOlrVWuKhi`Z--eP4o*gRkP^K!$oC#; zw~FT21(1$sz=PMgA3q$%!G>9P3{I5DQa@JGzN2osd_iN_iY~x*tus666yr}$Vkj{k zGVv_$Qp)3tEQBKp1HlOEw@<$@b4tr*pA4bRH1lls*9m^J-(f*@0DZ` zBWBrVlwTQng5|XjF{(h1DFmvjj=NI7a34-nhF-0mjtq7#PpJO@F1*QgX~|GT2HQNZb=6 zb>b;Qzs%D!H2RY4vgqSh9)Y5H8%finVS82uKxI2@JMU3koU>bi0SNCj=n%nuX=|p0 zFshCMn}zBR`S;%=l5}Y%H_7OlbkbN`I8=F2dIdG1J#mSp~THP(xyWZXk$`*i{0-=DXZiIfk7~#ZR(0EZAzMnf! z_1GC!K1?AGS^#O(b~z0Bgm!Ut6OlVBNo#DHOC*lIw47sZCW{;(E?fi# zqkf*ii;xYgxy{JDNaZKXb(Pf7Tcm}Pi&960d zc$`>8Pl97rtN^R=SV;C(_$a3C-~B#fVF z0!Hq~E8@U=KF*pfloz8RSr9J0QTLystrC*OW?)C83kDoFifq0NCc$-~r7 zkDCKeBH76_K4J4Bgo-LMqj#?V06&+8Uynt`c%;J~4iRa-r}>p*eFV0aJY%=F990yK z-Z`D9<yqHBTT9i2ndGyz(WIduX4C1Cs72NZ)?L!#J$BmQ>>8jibLMe8C5quI=9a zK!rI9ka&`$ZSR?yVZdn^glDtb{{S{77m`4>>=xAq>Ns&ACbYbWdW`4duV86Y;hEX9 z47mMF^TM`#?Pa3b>oZ(wvQyNdr4&@u@8Mk4=%rHO4w`s@G#QNl0Fn0|UC`%)%j5>Q zO1WSSD^B1FXF;ga40!mh*=V$~FU_ybm=jL4eKl?aymB(o8h}(#{;FobKzh3z={EZ9iIBHvsA>q?{Sp5PtpQL!U3F%by)xX{XB%}V=7x%$=2?7+ro06Tzz zK-=~EX16uTBT`;j=G_3bvt3z=%#B(CLFjq|^!3ICz|?0Xz0dw}i_Q1?)|WMorlL5Y zk>RU#BvhUK&TX`Fu5Qyylvd9C=dirgR^ss)y*pT{9S+Jtr$OUhxr?9HcXD%%7tQ`x zwbh<4()Vb7poqcwigF{RHtp2rMw_BHR@ zBtT`54jM0q{{S(s(^$RwoFn(Zo~EL;@b=7chkdy)(nv#K{R{Fx)jYH0`yC?gVe37* z$iM?$oWG#@Gb=P>2%=|*(R)AT1BJ8t}`)O%zx>8RUm@&Yz`{{WrtKELI3(^#?y!nAB_`xNVzWd^C#9(%k` z@=ITDFZq%ux?#nnAL{%&{{SDu0gc7JAmcV4ptm>E>yj+%x;Oz)d-VEzGZujj2O*TL zlxm(+lgYX$)NW<~y+A_0X<5EDsiEvZBk9b^={!7qO`4ofkM(OEOU&~~_EE_E*q`31 zO{#VW*iiiI``c#^o z!#q)_P}}nx(294=J!Wnx?7~#X*Yfgafuo1}zEvdeQ}k?p{j!YFl)jfA76Qt=v-xQD zk0jSq84SEt09plF_N{zy>2OLvQ?P~sE=iZ>ACRme&~Bi*q>t&*2@A*;AXi{JjM|(6 zn|~+ahs!^ZUTlj&)?3SS797tJO@TG0-ZcOWhL0}+qTxzXf!X%)^cPVxum_T*S-Mu6 z=I&GCE__Tw&bxed`T#3YQSH!p<|eK@QEnv1 z>3r>@-9_ceVM%@&reVoRB!#U(*lcT3GgF+13Jjs1M6$om+c@uZ)zn$leOUKn)GYv~ z(_GXHrx~#4WXb@1cWG{t&*@t6JWF-x6=+HD&89vnZd`MyG8P`^%tu%`Wq zuUx!jk!v|XjR#+7QAen@vwa&0E+j7)D_;8#?CY4ijAm2fX~(JqV){Sw^uDDFC;%$g zks_6+wq$AKc`(&r1X^^Ob=IM&CWm7fX`Y-#c=9_`eD*nXF&wg|S|vtXj7o&fT=ArPSe07V#b^y?`AU zkMsA+xEz_};Vg1bHY!RMD!s!uE+C5a@IDmEGUnlKhCVIWubko3Z!PAZPl~F<5JubW z$ex)*rfIH0@tbJgVA4Fn>g!I1K;hLU9F&i=7!$w4&{J;^b6Y9Q9nlakce{CSU%A&I zHik5Y=Gv;n(3chLN8y7RwuJy8v0i2C`2S4EPH@yL$`dCA!eH~ zWa?k59!W28^?OZ2lrh2)?cIj_c=9X1LCd!L9=X-vfsAOpj<;7FnJ7NO(e>GQMNMrS4`~v7MnHF$lJu`{vriL- zIIo*g&*b$D6UiE6@wL=*3yVVzFx6iK^Y&X|eGOv=*lZpJ>eX zlK$q*1u8+K5I!Bhw=naUZKlFHF`HSTr1zqKLN+Cto}#4hL0!!~vl`u`VnYYlJh5@+ z3wf^e$y?OoP;#XUw?j_5ec2Ygz}C-+e>1-;wVx*G^6Of4$JXyl7J5{KBYN&Af6t~w z*l5Ri`MfLg_w&0|(=XJBN@@x4vmdo1f0P=%M&83N#jfGlrcpEG`*+Egx;N(JGwHs2 z(IA*!0F5Mc2DIFU{gwusfIEAPzsBQ1(ceeSTF;ie&;I~8$E)f(*OM-rRPvyH6U3&b zHFH2%06{7ZDmFd#>5r2Ia%je6KCRxHr0H5e=B!qpV9>5oW%S$Dj-R|n_XDLod~*Xg zXGbSSI*lNn;po~vg>$BG(k>E?;005)R8pO3(w-Tqmt!18!=cJ%Jv8|bUyx1a+k+&2 zlxZzx=TIqK$vrkSr^`9c)6&E-rZxmLXS|5?zM&k z(qhTKf%-FJEjY^?E-azIud8a&`Flf}D?n5Qby7MX?HQA%#v>YVvu3Bv9#7OYTdRrg zZeu8pq$*GitF?9;4Ax@FEM?8dAzLwBZ}PKQ^Bm@DJ@=~zYFB=vZRy)J*>O)S(*Pt` z)~V#}M?$um-u*<3s6rpw+*fdZC0hS{OS7g%|yH)*DP`9#I*kaFxqHN*V7s@Z&co(8iPV< zPop)kpBde@5aHyh{{SncKbPOP_kKS=Y_o*6er`|y*7&J@6+S5qUzG_5U@1@6l?|L& zASMHtFpxtE0Zf&)k!?q894f+SE8nO%i7+vw_R<%LmPrj%?OG8^o${%*WhIi@B+?q*ovpbJmlfCs?C-nH79R!a>M03Fe~gWk(@w{spGh#_de?sACa zJTzK7U`+?Ic}{y43fB$(k;wtCPA9^-Oz?PuomtgO38%g3Iwi41Z8iBz%A@0=s_n4b zE61b}VUt}dXEyhjj~CUUi8^p{#89XdJV@`7nWrC1+9pz_5$3@9nw|dY_O4_Mcg@Getc*_2Wxdp5y0?n<*_CCM zHRf2sBJU(41zf6u(#vBOBi{(E&`H8hamX^%R z!8ou|dh(@zUSNP=UEVxHD0x-Qv(IBBuyP;FLEICz;O|d-x+KWkS<`S0pGE#dY1T&F zY+4~L(NY)@zaW36SDRyQ2Cpe2h3UR-{HoLRt5&+WlZDCLBLhGP>A!DmhIrC6S;P+S z6tR-)$$F5K7M8+FRx?@^6t2f$cgbO&bC;_lFDI{9>ciE8S5UH9Pflu})lWhjtw74P zK*__wD8$lb=4<;KDaFp0uqwNn5x-C~0N~+vBUS;YoO$ESUs$!`h*}fIhhTRcPxZ?* zxh<0pMxwGW;0vPAQfc!@cB5sp{Cm6r8bE?Kw4eLS37_=6(e(B>6c-|PdAg)K*w~eSMuG= zkOzrMxurql@lt}DRO2|17@Sru=dj5)mG9z`@;5QDD*U=AsG%dK{{Y7^glz29J}3(* zx0-c0XSI?WHUT|FXxh7|YHd!yZ@qiu&X`HR21axFdt@|AsC8IRCHN%R)CNDSZ{zQj zLjcBXITlAJ(q4OWsc9lWgNR-H2w_7{k>9>={7xuYclvEjihfgmZ~0?citU!xGI^So z0-)BXh|LfnO3R*df+^z9qU#n4C!Qx*8|?wPA3qPLGvlce6w@s@pQt^T$rqtCwYNS+D3H<+&zLO3@rfcG9hPGM!uz~*Ul zZM*2tEB;t%8kM?3sK~8yrFnXQGP4SFtwGFL>JCm#vdjlIL#ltyI$JS1)r@?dIz}j} z6Wgw0LmY!?9w_v@Lr?s;z4ErZZ>(w%pQ^l`rxqIk2Eh9cyXI6U!_C5$lmqH#clS}v zITAfp{v~ayy}Awd1M$nK5pG5xB>H2>-%|5VoSIeXNdo|+lh|xJ*Pt0aAQLoN^%+EV z4>M7Ik$>zdwa&>x)Mn`5L=077z<~ua>;|p$tmMTZx zzhZL=a|PXKFi_nhO*%~(A=4p44Z@C2K&4~wHT$y|K;G`l#efvaE#$Y;?ZBDLDa11n z!+p1>`Si_(C~$|K)?*VYdR5Gtjl!1?8X>G|TV{-P>O16e&WnQpU^jZEtA5%ZjAe3a z%FLi_M%Aad_R2EO#>}zhB)(16{Qm$;mx9>F!72=9LMQ>>#8>Ia;K6G=W;~v4=6TvR zis@vlxS>#Xp{+hcZi6$y5Kbd}*!PvSGZvz4<~$al@3lvO@XIqmOf^p!fqPZ{gQ&HE zy0G;nBv*;p08MuB+s8FA#z}Jli5ot5*R?%MOnD*<V-mOoqD^@UTQhtxW`*3P903G&^C^4t9YIiZ&JP}G2c#wFN>JH2FW*%(S$=B!0 zQr+YK0GJjjD^GFACCoJo{V`>3moP|WC4k}x29@i*e}~UA zal{Rash*Nj-J9L&Q|e0=opVJMPlyBJ0QqKaYK&>OPYxZKUa6qCvVz*--CDo8YSbOJ z>C%~@&#Exw!zLj;<;{dkJ3x;N<(LZ5$NoVEgw6TU~ zQBGfLZrgYJ^D_*H=H<-AmFSOU*_*y=hb)j0EZ zqNpQ!52wCSrnW^egkp=`hT=#y6Ae`O*O}N ztlIg4J$FV&v^=GBqnZ(48iW34F*N{X4t5NNFQ5F^B+=f z?)koA^ADHgiP|d!q_ifC2&ZyS^v(7x;(XkA0gg{H(!9f|=sJOjt1jOW{(_h%iZXMd z2+lP75Avh)D&74!F2^Yd6)HDs?h9|R>6ji6#9SP>3^~6*e=BuEE6)nD`Yr>i_)?qK z>CKKDyKLQ}k%`?R{M*sq;gaSGtXvp_&=&B`ZofYXcAAJB!ShYNtrn14d#J+|ZZfMK zxc4;cGxG(+Qbe}a!_*=$LW#{dRI0=BAfh9J(#VIw6v~_DMz=E2s3oDI6ZX1|=su6fGVp3-c0P)goioX2qyHH^Ip0FXR-(`?=1(s4$^uEU?lmkY!H05VRyGI4!6yuc_J0_SBv(UdN9{&JP(WCQY2K7BgRu$^JyL}_|Wq9MoyRRmSAM;zy zC<@0cexQ~%JR5RbYLGJ=!sTv$DVPo470D5@)E@rIu%%DJM%6z49@)Fcltr&BxZ^>U z>Yi&l_=(*TH-$+d2G6*uru&Z^j$EgkuJC2bOrP@N<|(yMW==p3BYn$mepIeg3|7@F zd^?Ber{&zSi$u1CfmQh2kzaHd(~%zEEWc5hL~PNgj}J7O(?nru3z*6z z8wDF|PjEheEVoUY#fI(KA`a1Gtv{y!i@M!64bviBecC;Cijd{$NRA0d^84vzdsy^#vtr5 zUPMotb!qHvpww(x$^c4~-ka@F+#e5qxsxdo$*;xeS9wd%FzeQzSzV_=M+`-G=qc~l zGV#pQfvAs%yXns>d7U(nmVO_u@Gx25uG+ma1H9aHB`h}Cw!hsXv3TjQ6s-o{`K}s*K9*X1VD5Q5=Sgj5-eaiS zBgGQ6A=rUYwGBJ;>z0$^b4F4mXmV$sU-RC%9qT@zpa8&BvG|25drsL}fwA#gKC^6~FxM)Mo}%A!zjCyNV8^?OfMnz)5qV zswM0`T>Rx7>IOI(MB$7TF zQk4d|Da6B*IcFIL$>-%_TwG~#!FLD}jl;J8KHy@jjyRBjrO+*Oz`~#?AQj zoIAavMb>SuB98dVBxXSD!)jB1pynSDj_%SDi^e}V{NpaGYxP?=&m>?&0zouW+v&$P zq|8$ZViS7@{NvA>e@yvgTwO6QY#K6pY!CG7o3780rxa)58=(B(H#r(s1t`oFtFcga z6!xw8LwVXWF!6v6}{{TmPj4}x) z7K&uNWAi!{xzr7vyl9q@(2%<^Cx3qV9uXt6De+?FkwHE7nqXNYF-0RNh${RfY!(SNB%QV^*P0OVBhfAl?DN>`D0YmVp!IZ0a+$< zRoLxNM*Tc;{5beV?$$VtFp$`OWX)$YX%;XEEd4R+5?B@{o*nZi6lhzGsfQ3kYxhR- zCDpXWXy&Sk2NP9V9+{9a35#_w)SL%r%>H+iQq>AG$VfE!L8+nb$5Wm&*fZOqCzpaxssdI{MQSQ(wRb&@d@=?! zcX234Zubu&PYuPV0dE+EzADgEJ5zFLUgt8#F;2dDcndl5b+kr%o0w%-y@RblZrGhMzy`#`5!D8hmfd)|E_v?xYqcuTF<;vW%GwiDz%Ao?gyqE3YHWLbIXn{Kb0s1L z#q_6~f9E1co%BYAb{vopcJUpz%e5M*Om56&6CS6Qd45TC4LM|nQe+{5yoBaTv0-y@M~WOzR@eO3`dd;ST%Hs# zODK*u`&)F{o8>uUMcDRzPiN|H?F+N6MUbEn1xIGwC=69(PRWbs`u^2%*<%<*a(oW8c2rJaHO zpiM_FY=(*gQnKU9a(eE%Y<#5+zvy_%S_QDFC0F+&UqJQ9rqOZV9AoYJB=J85yW06`MIv^ zy6c@gNsWN0K|p9pr&H3t8IO~TB&a!`orFSp<@l~YE^RF=b@|Lz?;k#8f$Ks>-sgPI z!GMj6RxL=GU|JXFHMRc$okp89iZtFrIMqk&SD@?x@88D`w-s!;^2Bp}Gais2^9`-$ zo}ajvt5;&DeX|q77|1bnxZ%Y+eHZ5aZVO!!OAAtJ(b35p?gnjjna)U4)MLmo2j!of zzbHnze$!Znel>PA0;Z&&zpqTu=;bIKoo1_2GHj>$XZcHesb1b*%^6#37>dTnp=0pS z0Z)DZ0A6je-c7@=hCUSM$sRyoD0zZosN265B(stz4{B^X{=B*X-AS)3gr7-YUm&xF zCDZV4GjFG}x94YtixvhbbP5q#VEoB57(L-lJK z7IkG>@9`1bdmXyvak{qe4~*@}>EDwYy~cs%Nj0evgD`odW4YdxKGkEHxN=Afb0Lqx zH6Cakd-J9pV@f(irMby)BajLPe~5BCs49QXnNJjqY0Z%`=KHV8f0sIcn0%jZWR5mj z;t~VLV^!GwALmToX)|6YWv9``LwCksn;ukOE?LZ$;3N>2p>bLsLv!t2z|1VOqfVo= zaBy;bQEjIB`l`Lf7)Ky>C#`m-TN&^RE~X}*digs_kIWXa>XJEVN`z5U+s21|vj%2_it3~(RZvBEp0qu)U?MQW+T|M?KPvT|9U}825=6n&Oa#u` z*SY?=j~wD5f#QqmuguLh=IhI_#i7DvY7-*^`y^2QIEfMJJe)lF1m7#@x<$plr4&~K z(PUvG7wby=Uj0pT8z!aLW0;Vq=&$7g{VQn%?s>%ltCROn#?&oNz+-u;TsQR z)zUp);Vku%eFowG&sM{$JMX2h3;omMqCy+!o*-bioQk&#;a)cHDRfHv{ zo9rf4`oF^q3XQj?@cMEQm@Yi&kloyA$!@n#AadUj<3dNZGC69t=G_c29Nh<)?TltC zRULj`MnfJ`668d{jh0+_fg%0tx}yQQjsD|W=3vxqx{8bAFZsw1&I{XMbc;`l77RP| zJ9Qo%M)?_MGT1Yoq)cr1^lS5ZV^OizeNKECWooe}ku}=CJO>{R?gk%G-S;%#oN#Ko zBznYBag|gvab3pLBE1jGE;^|($r|SOFUtP_J=^Pca9y)$<3Vk0>T@8A_#9^mDGl% zcG#bKX4eJ?;uc&inM{uSp1!chZ5sN4N~(fLrAIYG|SBXPx%uP6sojUAxIice++_=&ky{GdtL`_@D@yjVF zV=M1niT!lJz$WB~Mq_u+nh%#PuPJw@@kv%S3@OT_8WIP&2k6bd5=e1#YNHQCUr{Ny z(X;_=ZlPJxXu#0bm#sdW$(E!T@U>&d!fZUF%HDZfYv0jxqq$b&8LutK-!ZTYbLRqC zjtIQTFUY=nziR!JU9f~8L5kB7Z- zaj9-wH9T1M4?go9wXBwolE$K;l?bIO2Gz_u^;>41JVSSd`6I|y`fi~zx;ZNw~WB;@~NV zmp?Cj&*#1ukxwO_oSzArv@8uPPoQ=C^L?TcBh>G7I7xcsf0tTMlLEb!H_WLv$j{3gsjfP^?2nok#gg>eCg+={VS{K`dn)3DzQT-8wHc$rF(7% z^%<+yLy6jUecLzkmzJ*ln||?X*9PI=fQ%}U#cR^Nz^+%LiHU6O5(dw(e8H^Q9al`# z?cO;gme{MY?bG5px}5f>0|qMHg?W?A7ZAZUg{+EQ>V>IAZ=?12c7zO_Tl4gb4O$nMVZW*X{3Of&@D4Z*j1K9kJsmb-&Qb_** zdl(AD4Vgz$O(|T<(}GZG=}ceB_p;fAcZyj(YiAqrsHq3rwrz2DI*j`imtXS+mu-BK z+{9MSG|rgV;St_j*hZ;v2(4sYhW+;+N55R$XVe(R-f9{+$lo`% zOXU=nRn^uA$DqEPaEb-sr*6mld*uUF5$Uttcoj?b79qU^4%V%V^V;~KfuC%DJ{*nq|ws_vZfqm#rU6g2LkBIG8bb(VfAk z^DR2lreRM!p|j9wBqT0RTeANEoP@H~G*Kt z3^MH}o?8A~3mHY^OE)DTD0+}O^&d`hd3!T}+l#F1AP1$EizSGpYyfuY%YFLfw7PFq zyoR$$EGKpm=f67}29HUyG^t9+E5r)W^z1(GeBJ6QBW8_0u2D2zU2o@cb*a9b^2Z`C z^KQWV9k$MEQ9bu=lx3H9q)&dbMph6xxUVJz^w^Md8!lQ65gcce4)Z>MVMFRjeM#c2 zLEMhLX|d~+N?b0=I$9RPJem1p2bix^-IjR})D@zdsoJ#P?mqblXojG&1jOw7o5|M0 zK~ZR|S|PW^x6zwCSbr`kJ3LuT#_K%OcP-ofR@jt`7OQ_;hY`qlTC?PM-{v;Aq-d5A z=~B&C6gA{1JW2V}wr6IT#U2sO)@mmZ^Zf_T+Fiw}y`?3m!_7&c-=^Sx8H1ND_F6Dy zGA}~VJouNFLr=3DoQxnN78=)MeWjVC1%B6HXei zNKqv)2}M`6{Sz%m}XnFad7iYbgg=8JE)^t z5Kk6n2l`~C9w6gq$9spcdB;<+zlH|W&oLT>AnZC+ll(IrW8rn$d=)Ly{{Se>Znq00 z&Jr-S;v0Gn+w`tsYI4dPoXom7-M+Z;d9-MY+sZhw6a><>723TIwqhMrgQL{IMms$> zNfA#xR@}inn5f(kzVsw-jCD5RXf)h%-IL$X1*m&Ft}6-}77R%HfXQKy>hHB$Vh+zR z*7Z#?1#4R%q?O>y(t!TfS&)YdJ}wcn%xz~nOwOu(ODR|=C!jT{r(DeOcRxh@%cu=n&3wsV;nk59f^MW5{;KB7C$1J2IiCUfi_90ACFR=4fZI*VDjkU1 zb6w!_n#a~4npp{7O^Hx?k=S+n^BW#H zM7879aGFbepXV!hpc+NfsFQvq?@thVW?aOZP?`A^O=Yc`741b*#)FgDn4QVlZ$K2wlW6D|R7qrAQ6i;EpNOKd=a#|Gn0y>}JN z{U&pQE%^0YTNv|RyCO>swaS+l05NX7cJUwQT-WRKneK?{NiQ4Mb$i_gaBMD$sBocF zeXmn`W-dI2oru(!hoflUnUdZ5Rx^ev2;(O+xhK7IZGz@^aq@P7>X_5=9+|sOmLosqjAU9(I@1xH=@t{MghMG4K zvadBfdN4b$(_FwJiwxjPljaR(^XkG|d!{Il$vH7$KtMGjlmmT*a6>0Td z5C_tYF0N4(C(W9rl)65cH2A|cyhND_S7Lfsr*ckY!_?81V4G#0S)Siqw~og1X(1Jj z>(RHV{Bu{VnH-yN0M-~~EY$2D=vTzqDNYxy6oYFa(Q+iK9d`c1LoLXQoOWa;zK zadP7%zU;cyAlL1aOuAv}aH^IaK4fj1dFp&vwL(Ol*x%@wAV}>eK@zd8J5!~5{OOv^ zBuZPmY;xfb81u|_kxS@6DLW9Poyir<>fb%Gy=Di05{w}8lD z)O0OVjEGPF048RAYDp!#L&anpu=tNbu^3EzP26mm4_0~km3uy3FVlRe#<)CUBHRq=#3W)<$DFTEIt4|-EOAO38yDf-Qy)qj~Ev^+q01Y<# zfvtNASHm*mMovx)$OVh&8q`)7@Za62JRXt{W8Bv=>6J=D8%_gen1AL!k*qIK^&4A$E(u^1Z@+RojKqoF!?Bir4o{4APc7VA z-h45+j=MNspFa%F$C}$QT$y*Iz=Di-+O^yDWZ@DyID;K-S^bZgPOluAb=ndO zD#FC>%4^eYzFs@zB_k&yI;f428eW+VvoO0M*aOD9fClvW?bj^QY6vt_yvrv1yz;y& ztbd7aB5qY~AesOHBbVLKWqOmxEuF5GCLuKQubA2`PCg%D_^SQ;ecNU<#gF$<_q0{$~$={7ZsZ;W%bJ_Pq zrP1TM*O+E|iDA=}u!wIU_(2`X@HuXrhb|GY^zX|(15BSzy1mz8GEZ;}(a2cSj^dQ< z*S>D_xJ1~JCDGwtYx2m_btwLz>aJgspgfaeN%8RbXmX8qJ_jNoL_LSezGa%yXf4(! zZR*`QZagdBu4*879aq&V471I!{X!{qQ&46gx&cZP;q-Xq%m(iYX{Je$-t-C3=mN7y=sA_oT+gGC) z<8EAZ?~44><@8(j)9vlK%wO%U=7f!h(c_v^m`9Tt=+eJAc@svmwT2m^5=!EZ=DRUk zn(jIhJ7b4bWLmOZHV-e-Jed}maagXDjy(7Y1%4XSr%LbFGPC~i%g2wz*uKpCq1WcL z`nj2^YrvZ9Ne8#lmua?eWsibX`bW)>Ho2y>K#Bz94%Hv$OvBb<@m%wk`93T2rjX^N zD&Z)FOBJEopRY9-u~DZNDdJ5304%PJx0h~Ga^x#Aa&73VQcZs0n|(Y0gRaS##P0V< zbqFHz@Vd9B2HJ#n+Lirzl1PkQ#+M)=$-G{ zsZ81($~2VXzN+*T9Z3}Lnym2_(;S3Kp2KBprNeX0XVeMujiDpX>J#v6S(7F!^1XF$ZCUB zG{Ell4I4?*@9f3eu!xxc2!#MN0;BKnrd@|e#kqBwxB#!^%}Vz{zmw`I@V_1elew=_ z2K#2i4oPA(9X=YzJ|;o=iJ@P9VQJhXflbjBS3&`&LMz~M?M5#cTa`Ul+a}&l@{jmK z%NF`f=yoJG@{UHMZw$j24mjCUxUR1a{KwL*?wKy_qgkZ2kZiqpuu|0a+ch~QJFx7d zIG9&fE#}Y5OCLAs(a+`Zh(dBIHsERBHh51EbXiQWpG)VRGxE1mu{Y0ngfweNiS8-^ zp%v@*WzdzK+2qc1M`lOl?GF0N_7g3al%?&EVbR*mx)@mx<-YSrI zACiAEX3>1b0KXvVk~gO%cjHsG-ra6l8156~)naRDbcoLxUaZc|w@%+G zemLQu3E>Uc#JFEEYCd;=D{FJ=>Oocg-6(fcKzAQ4vo12CyeB5bmR@<<*Upyk+UaC0 z_X>7WD?&wm!SDoTMq$P*C-QlN0N%dz`|}`<7My2_Td_~cL3wkjwbGO5DIAOb*U#oEKJ2iUWuE|? zc75L#l9#$l>TX%m-~~k+07pu%ZMyB2X2HiB4LWGqPW*`i>G#VD)Uu+EO+q%zJsf2j zJ1n9w8$O;N)>=r8!w(B|@JHeq{bt&*hu{h-s+>dX&7@9O#P9%$q)pS2M zLp8Kl7Y-t`+zvkvA_rEe803h$4fvi+2yJc(*c0KHQP3RB|GU zLEE_g%#`rN1~S5AYy>xybQ_nR+f>xUA67*r`hrJa>$vHd&>OVo&A{~?PxA%*pC{F9 z&n0y=+o0Q_?04|YOqok&juGZqEyw0e7wYj}$_q-ssbSxs8EzPp&DhTrYQyW_`Nu%< z==U~u>Z@p5nz$Ph-xu~~>$7Gl)n?OJ*>9h&MWRUVXrq*YPioW(eK~%oIE$*55+5{q zQ}Y(>FRuM)i>o^NZb!rcJJis4^!#&Co@DMFhMpI*-5|Aw`IX|6lyWN)6!`DfyLeK$ zb_ofG4_A+ZN#r*Yq)euyitw#|KlOX%q>->`#CS%@{{WQryS*yv8+}SQlh+jkz#jW_ z`g0>osE{<~;M9@L=RcYM0F{#Jx9zX#Lx6r=HY{7^zvF{np*c4V^AWxw%`N=6{H<6f zkv!0?B)wEIG$W^KemSK6Og&ID4~yOOPbKMEeey^n9-Ro|U4r(e+k1BQ%#2!J2%yMM zWC6-=P z_B)lSr9sK*vG`+mPuf{VUBlWmPb#mN<%Z%x!qz?vLHi|?R0?;@s9`xvjy1x2J!PWP zWYi$jW+E$C=`4&*Di^5C>EZ%3j5$QIF^ywa(Y(p2&*iBL5puvpRPi+wKK0xEyw?$X zJtQX^qTZ$XVWW96L41~;tE6nIv=!&?<6hLKzHIys7`VAWeCIWUki3!wBuwRAD((eA zC3f%lWib>THe3K3EKgVbxk+xJ)ozdrM`8v+{(1+Op0l z4Jv33-3b8w+gO|>r9Zp|YCJW_{H`;2+Evq_$7?)x|pzsF1-E$OU;tl$8 zekqoLqS|XdU>b~X$zf%X1vIEp-1PCxF$z07cxEvhz0T|M_e=AOJeTaMtd&3r1TYi? zfIDPz;Sv@aHj#XD=l=jKN2O{@rbAVQNJAm$YvIl1*ah3KO|xm2CxR=ZwVt3!;GS=kd6Q6Y(RC_M0>o4* zsNB?h=Qpg8)Xw9{*XN%L6T8waJg=u2Wpgdmgt3&3-Kr@~viO65?8N2bj_)tL&?VKU zi(8rAIAI*PZYpcx@3v)SkeInTj}k!a_rJ-#IlSJFG&M*gVw}_3l_2YG-NG9UHm^+&nd|+DR8?}r5J!^viJr66m!TDb!xe<`2%j7f7~kKSyP2hDw^$@gQ^_Ih&Gkrg*gz;@}J$%D#GE zIWtFYOU{6?3MkFLN*@!Le0$pE6YBHd`N=OZURqm2V=+=NX*PqGB)hA z835VizC+XP^#!)nXzemM=D^U7M|yo3cA`Xz4t}N)A^K7IZ>*-F3=>~Z`-^z^qOb#X zpz3;b&15Pj%Y&zo1@yEYT|Q>frPO0{y?E1pn`ZM4m}JLp;!raWnpa7e%ko_t#0IKE zFr`SZQS@z^{XUn&m6ubO8OB+kk)GZ(Ym*NMn2IlI4;;zU$VZcth9+FnFFI*3U$@sF z6lP-dUc?@scKGUZiE?$?+*I-XPHU@sR*bKyCn}N0IDj*5A^flQXjfP57@ZtJan4mzWBmoK=MH z$?Oc1>3&X{J8y~-ijBj$TGV)NT4j(NF`~l+NtX~WhBYgj+bfd|^0iTzp&<9(gZ%!C zrwj~(o0BL8gZFFl2h4ElK1kDHSvMB3idMg50YH9vw9&`Y!tHdK_(d1Z{{ZumHY7(a zf8KYiIqOh6edK1lRRRsP_KrxG%bFkM%zDh=(ckL~d2s*$pl!IPw*B$mVuQY9S73Z;^i!g zKnd5cf1_$<^A1SH6kcXgvu~MyGe0gRy}yh6Gx1$W$d0>gu4)>ccFu1m=VvDzs#G5P z_3MAhA1zzyHv~QDUQ7<`cC80Yo*aAz-K6d!pEhdWpW4Q^s>K2*j@Cw?D?!J%hw;fz zirjuNBSn&4>)%N%t zwE*To8NUr_Uv09^9v*Bjx#8cMf0r_7f;YDXRFDy5`#roX`tm0!9NV<{Kq(G`bA1iE z*$+`hK_k~dl<&ALi|bc`#$#fho4=*U9P|<$?+Dk z6)7HbdYC9jtqbemXA*AXyIBdFuCVtP~C21}04 zZ1{Nq_Uqk#?tLL|QA)>7e2&EQH0jcqa?Yb+#K~lA`CrX`W_?2Ri-{Z2hGGAGznt>FzZI_ zy#f4j!)3_D3yr*UQPLC36HhV^Ptg<{jRb@fT2sQOHdD3GW-L>=JXQ8^Y1fx zq8(dXd#f*oFI5o8ciDCVmD_Plvo%SgAi%!b{IavPpGgPVZjdpnn;Y}9zl zniAFV-)d7enu!uhkm8VU;b+MTmqtCb3IazdK? zzOuBr);_U4!rLWZiqM9Wsi5C#*0_5p6FYOXc!b{Xf1%mP!v6qMlZr;9D3SQ6uR=lG zpQq+Cy~iG*+6^p6H>!DJ^H56&Ep(|?XxVu33q=5S>HcSa`L&6l>@h=y=&^ZOFX8ny z2+~C-8omp zc>84bYT>p$r)VCIqAgsn3xsIt{#RN9lo;7=!y+~;V_y80xSvnH)NT}gVh1vyuf(Bu z6zTIBPF*mQmxEU*nhE~^mVCdbdB)k}l3o`wTO*`^ikT9X>U>81{qq|~5!KlCs50Cn zT4*NeFK*+j`fVQqD8P4m_XqvF%Q*Ml)#-Hv?9XiU3mt80!|aY#Kh4nP86$323SFpZ zNo=x4rmxsF2&PnHYjl!5*XZkTAc~QKc~fGwAIBjmQz1J?TinNUv|yfNbMyUJ0U~`zzmqc&xaOYAFJM#yT?RD#Wohrr16D>oLwR-R4^2zY`xN-tp2ab7D&iCJ! zGoLE?$<5W1mRc|$1bqQ-WBqH_WJ`;hF-wDKFmKFX`Na(b&mUOxFXeUQQO$H2*$T}o-Ahkk0<5t=3o5b-mI5K-ajs1!+BmZG%%SVW*^BS ziZ{>MG$|1Et_d93k5cSAlfGk~ET-?=9hM;+QL1Y9Qn-cI?4R8@po^}jYiJ3Jn)YcB0I8)TDMwV&7YpOgBO49VZy?#Lb6N#RO$tB56N^wJNn zaS4(?fP>Ps2eJBma|bXXoFocCX$GkcjlJv)uL(-Hk$YEfm(hf38fAj{F!{AB!KlqN z&_x}vp=MPeoxbdtB5kqBz{39kF?_S-AIx%JR)Q&~AtDYTs{_!G;0hmq$0I0#$pUFV zl>Y$dAM}sQX|4RzqC;`@c;!`O_{psX+l~5l z!>ZMZ25}e3Ezx}AdFLj3y){6EPsB$-UiHeflR2esEaYR&@(1TE*OO}P43%J@uwU}F z6+YYLTCB!1rWmxJm^-9iOHD#>Y@;GD-wLQ5H=(Bg08MhhPFC!FpWvO}R(@akWpqau zGS*9$9}(~stw{NJW%_t{W!RI#HhO=VH0!(B5=aj?>+!0J6VjXZ>6tp5=B?1@!c3FB zMkwv9)*D1Toqi%VB-3Jj#$)4&n6T|eL5?&SkkkITVr?#vF=0xDuKxf=Tcy!)4ctvm zZZSmzd zYBjYP?7E1F3J(_YXOuNB%xk#r?*noz%a0NXLDIC?R--FAlWD=D;}rV${#5;+j9>33 zrS=D34!wQzBaHoy!}%;f|IqmPVWiyZtm|4J>V9W#xrin$!Im->UFeq<@-y55WI@CM z)Q=idEuLMrVTx7FEVqSLj?uF3xuD8A88-0iS5>t5MLqte|d35t5l=pJJ7++M4e3J9PT`ykV} z&3_u zwMO0Z9(Fl7^Yc^JZPQ!-086uDL|W`>H~o`c_V>(Dn3qSZB{1@4kk@vz>DshMhb7=0 z>9c&RP4})!P~vdoj<#i5*O$@YHn#;z5(2q39~Q!yMCDsM92n&uPae{|nJ$}uGF;Sp zp9-)QB!jnx+vaYQHJ?*y7-IEeut09x1L%ClwR6kIsW;*}TFI+x`Rhxvye z*Rq_OI{t&aSv2)(vW1d2J5+T7 zy|NL+F2j?OCxP_`lf1`mud6MKpqRB zkk{Oil;(wsE@qs>Y+g&|O-|DG;qI+RsIic1`zt^{QR|dPP6(!*Mx=v5Pfyhn)>!U! zHdtd|twth;bNgRE9LmEwG@uFkixKk&m@V%vswJwa3Wb|$ovT1|W=#iUr-z6h-{ot0 zG}KKwr!8x8f@q4h3ZAqF> zK<<{Om96irp5Et|`a%zh`wIMr;hPxc;c+1&lVbCC{J)<;y_N{e7|Eir6dX?U09V?% zi=JS+IO)k28D_Z&n@^2p1!h_!q1va8=XwmsIQyHhY7Q-s)?P;zR#3039qY`|hy%xP z4SwT{US)_2(r&eQS~Rwq;+7AJI=3Zp;C2)~$MDQ)rrVx_C_@3{l;$m%ry7t+UoM|L}_Ys)pckq`$^c3Pd=r(Xk1z$Pv(ZBZKs z$DVG#)T6pL@~oyf!xB%0Xi4{M!^&lArqvn!NmPDdnnIwGZKYLOu&Lkt`edRA4s3F9 zJ)_7TT(!5i{VN*|BoYGb7%}PWMq3#kj=xX@xiOt;;iGnmqdXOfEJZ0#1Kz!I%w&#k z23X%GiGE@0I(5~|GMW?xSd(4C_amoVvnU0(0VS5*`AWym+Dtl>N@JN(NB~ej)7GaY zg8}H7QGBK5Un>hnc;Ns&el557Nv#jlmf^@^Y1zgx;j)bK{nn-B{{T)~X-5XFRDx&- z=nv8`>Q5fd8H{7Q)$G49&CD`c>QOO?M+D(YP>$z*nL&vGuLVreVzT+aN>-NE<|cUL zBr8+5Zu@>YUNS*)zyQ!-`i7Wvl=Y9r6Ap1xs?^kvl{;o$Ihpfp!|5BbTe-fY6Bzy@ z$dkx;@0&e7h#kub0uIP%yw^0b#C zHC74)q*s1``)01FxU$m67WDe=&eqoCMJ#eE83K@Lu_RZoez`&CYhZ33k8?e~g{AtD zFjB*p`p1#nZ-|(Qw>u7Q9iJHa&&`os-^dbANfZElLehkT+x*5|il!};>O*(a-dNXc z^*tgV(bO=>87vEZmObf_8lDqQt1clEva9(#$9|fXfT(q^A=FU!rFzpRk4y<|6W~ZZ z*W{yjV(?Tn#1eXtDkwV+nU$XfMSOA}I_dToK3uqCC#Yi#Q_|=tSXP^UywT?XiwT5Y zt83*gJ5gxnSd48h<>&z*?luH<`JAH!IF88~%o3kCOgyhm8q8HyOEnK3B7WsQ1kfG%a-i6s05;7W zbIdys7tTIExb|5%3|E=Dix`*+?=428?uO%e=K=;>32{xMU2T>(3U}39;Tau zHqC~FZtHTu13~Zl?6&h+O%$#Ek`Q`oHZFMP^C{vK(*we3^G=Ja%cA+7$?c=!s{C00 z04QNW{h6uT9K9}Gl5D?0u5M-3w6$==gBWwZ;M2$G&9+F(Bz;bHEYUj$!=7-}Z!|4+ zu3?Tq38T2^Jzh|c1JaZyn zyDf1iDBqju{{YLcI>mZEp?NaAl?Xae_+()&Bm?1^DPQKtl#<>9J*op=h;Zlu_C39` zSDy)lt;^4ZN;V!9`E3%~MSr9GOtn0T-2kIgZs@3w8Vk&I5x&NJI* zk$JyRHthD2)Rz?-^rdOH(VG2H6r4m%?!ffRON~xnQqm`qW(9c)veRMl9mnIEsme_} zjlV|!04)CiDy=QNs3+B8U#_%!x#~|^_RY?Zv&Kl-WdXguSNzd&<@=PUVn8`@=c(;YH=@jp}MWs%SEtSx!T{tA>-sFIYZzw9@b3(5$9;W|l=z zq*M}3DVg%fU^a4Nqli2&dGk)1*ScwnI{J!=R0B?ezu8Qds(f*v=F384_+L`guOii2 z&_K##W>V&~s3cau!!>xv0NujLpp-c=$o$iNKhT6T(SeAOq9_GdocjkwM5X z6Xu)h)9IQXlGe8W0KJx2`x=EO-zuI_7}CQ@7{5OM05k7zTI4{8S=boQiC&v{#5J!o#doB<)``OB zhy>TeV1K7`m+%1_XNNfYPdA9am(y2R-uhm1NNXV2jlOlRS_qVOVL9*?6*bMrlJz9K zuu55pRMNC0sq41Y@6$4H<`qSdJVR%$YF>UGY_W>bEqUAq zX40K{>J{{~87Nr9tO?${he6p&nfD%+uS7g4NyyRYV-ute8a_* z!cDk|pVa!T*$$raa_Xb0sHYHfp^j5H+mVk5A@e_(Jj)KBGsPhRV-#lTPYMH^_DxMn zoLOSucbw{)yZMicz$WR)mk?wWHw~{FUP9eq#afcBa?T~K1S0oJlmly+% zyZT0S8Y%I|g}{+!K3AVdFDuNVG${}QTwpGjY#Z${+fH@avn~0ic%+clU@1g?_y6cLr9>IktrZ-LH4gt zo(z&8JJGA5LF+d5Kch6uP7XpV#>0rMY1Y3!nH(~qW#{!^lW}7{chl^A!8g||BYs6g z9sr%ku&zR{cI*?QMd!Xv{E*f>&8kKxEG+>NIVx0v%clG0P8gZ(7h#`PAUH$xPfFJG zf6H44bW2i=JE@5fZdQZw8JB_s8K$wW;f0rx`MJNvHPP(<0C_xzimHN5So?Tox~K!Q zujAqG>VMeEH_c}CHAd+u?KztRH>n= zlS5wh%xUE^*)i4G-BtX*YijN09YsSbd{Ktt03&)+e+=4bG(dXfGI$nq-mM2vD@BegXj|wI31KjlGU#k5F&X z&hj!($bBa2_g=c!{Mw8J1PGb>3ZCDA&2h*ecY2{c-$VJc%+~ieK8&oc9f(-L?f~Au zsAYM3O3w&K9}#1^hnMV{B)YT|orPJ*9avNkf2Zip#vU0#qfv;K6LF%cw>BDuC`l^p zHlZhTn#`W34p>A6{N5|(56P&txul%Ts}B3rkWY;|^ck0=#0y7`agCmj`F;6sYvnk- zctB{%wM z33$I4brdJH2=^IYKix}bHx^phrBPg5`Nne%)m39~T3Q+chiaLFx6-N_l#eO~-n zKs1ddXzUL+>OdWKAC6vla1EJA_?(`7sB22{M5V>Thg4OlAwDV*^Qp`{vf?d;Z zT3Nofj>g28)v3*pQ1u(-^M@Fq7oUPZ5%=aiTaQK066jaOKYO(w-?&1 zAYIR2iRxPWAaxnSN~dvzwMg?)u|dxtB`xZ6Np}Rt7?=w;sFr5t>~{ zEsz4O`V0AO<|{j&E8E?~2lqfT0pE!2olj-YiyOMr<>C)9^RBm|n^~L{Hv+ZTebvG< z#0xGauz>Ub04nO%t!8DAm8U9gP-<#33ycukrOFI#i{1IE-oj^|?0_X|25x{2fE~B* zn4=(pb$Yyp?6K?LLTQD>YZ$d1HV)rOsIc)5Ev~%Uf!4K{+B;LZX^_xRYys{*d7Goj#m&doM9K8F zparIbZKl8%obnfC{i;@jZ^tw93Jtn3LubrinO<4vB02)InSLe}p{mw|c<)N@mEmx* z9tm@O%lQMZ4KK?UdU=P+QDZ|23!USSc~#7wD9PD^zM zZiCpLr#1S#gC`}{<=(C3`ktu|l60y>rDl@6I?{vu{{YUJjwj)VTjE~NoqsR<&2i^1 zJ6kN$G}EMngIce{*KD^>9~9G(JcArxQhs51mJ3UpeL84}0fkw_Mvz?0-z7H0P1i`RmpPYGkKN&0OnQvlfAqnh*l$!ZiBDc@XQ$r zWG*R%b9;B?b%N?p4>w%EL!e?g4ZyFz`Ha6yrLD_mo*YMrK0y5V^IoIoPcyESXnqbt zFa;<8G~T`)>5|O=OPAuC-Q^nXt*(K3Z6TA^nL?MP4*Yim1n4w=UypFI&&?CsMiSCb zN)|LAZPT~6GG%u@XKyXsqAM#b$|<#I2p#B79|MKnoRu15&8q6YXupoq z%ByY62{`?o`qL#Ne4Gf5f$!dMxU|wdyBsob5_&4JDe>dDAmPRVdb)%%XWj1;+Qey_w5hP@25{0 zdJA;`IR}3a)t6w&;fr^AUeFmizJL?jYqlc#CQ}JkH79L`XF_6P-JU)7d`st#KWW}m zzPcsrUP^?oAm06U`ZE@Kp#wqDYP9t(C&{t-g5YWrYB5CP)svqm1OhAar{j`xAVn`n|{#-|-Y48hTt#Q99{i8usxjT=*W@brn#)meT@c{bM{&Abi&TP$$?99y= zWnNqH1a0`7qd*Qx(0VN#M4`JM{Q1%wP1OGYM0#W^vaDfyF+1(yPrEnT%pM;n8hB40 z$bTp3w$`?htbjDJr!K3oQC+=_E1Kxcb#ftylE|-`9c~qkej29`e`xRe@rF(|-At>I zeAQv(DQ`7Pi6bR#osDV$3Oqm~`sKu1uM(3lmsr>QxfHr0NW)EUhLj+hcdvl(%zRQY zE`R3a1u)+xXma_JRgX>9W%Xl}lG|*ewXXH1XT*-JnmC-to9d4-T4aH4 z6s&-n15whn+waU-;jP2JI(Wh~UQ0HnwwIrzFW5YeIHbSIJSk3@31p16E|XoRv9r*8 zsj6GV(q3OU^xRQcfGT=)+qE+k7~Q%7BaT#4NN%8(IejKnje~k@4#;LC zP+1JtT5J+s#H;m+(G5DEmqWH~u*d;+C^xn?&XoLV-M!%vzxZBb-ZqK<>0CYh5F#mPA} zk;l#M7Mie{*>w#nRF*P|ei98wa&p5G82G|s!yngt-02eiS$#$|C3+3LvYeA{gaHQ&#!!5Q;2G*;u&MfX;*aEk)km@`0UjE?s>6rlT z;z;kiI`bB{eLk6Qsn{TKc>_gpA7wmfevoqLfHr6oF_nkT-<5u8vGVoJub1^m<`+!Y z5u}c#Qk=R5`#lGZeX~<33{t14#UIQ=cdvQw!dojCHLV^Q46uT%4(dS_G(H{!Gp1}? zq>clQdnG_%Emk<EV+;3BYKDHTPB=Bi}B|Oh-5^6q1)l%B&0|?e% zvtGdU+vv-2rwdRM+I%kwg)FO&)u?pZTW4f>!B|H05CNV zuiNqr(8PT-0CfhNpMCfJP&$DhOnLj8A*Phauanelt#scn+kHpN(MJp=0wfS9P&)%b znEt8#T^zi4hApAUqTAE5u}waq=i%St6bB$-#$Kxx9g%H}-Hw+PoIwwle(lN&1Az1)pZh{|XI9X10Y85Rc0fnPA* zPM4actX8(Q0ycIP1H*pb=iehCeB1ECMXxbIW98d*u(;QByFgE<7J1j<<-YzPK;)eh4-1X*Oi4@I3`m;@I47tG8c-2(YnIxYnNi030pXB21e=A$ z2HI-f0U;-tQ%`#L%v_NLnaN3=u7zi>!6%nI$pE>tx>ByLJ*nZ>Fpe?ExEj1;JZQc( z^DpErx8$A0$gooSY_bNmcA+X8ejDy7njX>9oLh&D&7trl@|*tv%&Vt?3@vt8Hbeo%d1O&8{gZKB~U}Kr4-VGrpBB2=0>1OLd%z%PY^a` zpPV)(^GNj|kfq9s)HdLKqx^GMpNN-{*KkDc_`6!rnjotbk1gDWpav$Rr~`5V$wvUM zQ_f}2QrY$|<=w)0cR)m$1ai0phue{0KUFg%0jJz7^YIPdUFU5EEq+G6B}A?8RE>!1 z*YM3gY`k)^*`?NuX#W5%d0yX3w-W?V%7oN=ik!^S%Jy&6YdH6MSC{n>>x7LDAgrp@ zsHHq}AZ58wZ;XJAy-xo5Z1nbO6Fol2>5$Zu!?TCtgU#o@So5vExfIb{IvIm~maRw8 znO&WjaPH#eB)yx{{W-9$cE&1j#Y##xBVR@zX8=-6JJeMrQ0aM76w*EfZpffY|7b{PLYcI6F=O47+ z&{`PRHJ(c}fKgkn+Yi;g2=}?#N$?k={{YI@vHt*lulv#I_UYsD%ec>RbH6zk|Izs) zW2n4uC#JwjxuF!V%Qe|?j*dPo-XL|(ryR79vxzq4TJ**t#MD5 z=+9;2Avn{t$n_bP+O> zNHiOCKd&g%#AOUP_)hQ9Gx>?6`Jc(qeP$jvav)DploG{h@mJjDr-Pw)_%g)B;@ZcP z7HAglPF_V+GXOTJ@b~H0Fg#*S2UDxm0CrRI?vgL#KDRS6y2rIf?bF;-B|N~o47%A< z(zO2o%WX>5MYxJ$Vs1x^F(HL1*Rk)Id3WUD;hdy>Ovx-#*4|5bltt>(g-^w|S{~!u zA%{^YY+Le1*z}_2-rU*Bk16L!!h+0FyKDi;<_Ls%e?*M%Y9POH7g)_#D|&vW~0a7>CCKCG8?+$K;7cd`8FBt${&X5 zsNtA&8*WJz{4*y_BQxq@o^g*RFR1=eYI?-1kjKfB;v{tW*WWfdGWcU;;n#FXw5>}2 z0LikQCgC_m&*P}45;xfQAAVv^ryDNAQ(1=G-(Y@9{&cREKX~lwyMf47pHFXWj*}t9 zDsIqRMHi`lX!+|$*YxVy)V##G6y&37d_a4g+-fs|9f^+Hz8docu_&#wjtIP%arlih zTaJl!xv-a)wcH}%%19Nd%7sY)?M=U4U&Bp#AS2C``G3pB&}v5mVN+?OldcCPRQCZiDB)H(Xu|!4k5xafDRZ z0($O!_RWTyFCRB)q~j)o?9a=cY4r=eKGx~c(d|?K0QgT37KhvT=EDJ|-Bvy$MJ@9W zoc{no>XO4U7P2fVDk(wxR3oln>P;3=z#ta5jb0s7Pin_H76cv0CcJz5?d_BL`8aUG z2R0L}dC!#TtHE1Tw_u7+<$&u@d`R%hCyc{z${WgqBhi02ZKvT3lAl&01Yv^Jh&_J% zoHaz6EOokV?k}{oo7-Q^Uo1tdM5`?7rAQwWYzD_NqDEbca7T<&xOxz)N{|rG)s5wpQfac*S86b&I`tLt ztv*?e;ZfbkpR1A%&rFL{j!Ru-JvijqgqzpjdLImyo;+uEIHN;!mQTvNdudJ8saCgf zL{+MRwJEg-`hNV)$)**vn}-;PyJvSd5&17mj@1wp1Cd&N-|giv!{Idv@jUAC^54y| zv;mbpSlLS{E%a7{CNoA`IJxw)JfA*!>+;@f7@A9RWd&GPwcq=2P#dEbA~s{*Q}cz+ zhor8TcO;IH@{ft#Y1D7n)S4Ri&7KJX8*$~1K+-WhoP6&Y)gh3^(UJ9ny1W%W7n6dQD*+;{pj9#$v2w8@N59^BYx>041GYj3dV$QbeH zdjpvQ97AUl9vMVE56ga1gJ1My00{@jPUKW=`1Gb=%orBzc@M=G=HJV!`$U>s2U#ts zg-Hiv(v{52Ql#LSljfa&M%0=@WL7B5LQ=FIJu`2IFsE~dB3#m~KTeqk)YS8LB=TBs zwS0ENDS{a4bzT^t^<6dwwnHm!NGPZWaz{^>Y`~BNxKhdDMfBI@4yCBxmA2KMu%dBB zAcL{mwLTkWHe7ssoKFvgfL`n8iEkRnN2dov8iKoW+M8|RU)Pvk9dmXw5#}GB-e=SG zYy0AgPpP?bj0m7KB%cp#vkqSeXDS%RLr=VY(0dAPzF>%m za&=i{B6djbZ`)J3)FrtM>IF(O3hhERA2XSLKOV)HfdP+6<>{h~UR!`x;Xn~k?fy|6 zhqhc#rh{glLM4-EUzC^DzMinkzJ!FIPp`Q@(=la)o!spDjvh~R)3n&M(umQK$!lId zJ##A-m`Gcy$*C#4dQH7~AOt@3W4J#@^xG4Mg!)<`svKLSerA!8QbSW5T!ACF+hLQQ zQ%*_BIG;1Fs4lgcqp5aK#dhLN89^2Cpv-)DNH*>N05KVd=tt$(n7>W=ZWe^q*Wr5g z6zC3awE1|&7ZiF<%s0%RmvQS4B1;%&l$LYKgMae9zImk2gN|FdlFCNGW|{d{X=W7) z4mAzw@vTpZCbi6sK7d5pGRWlIvJGC&(?zmr<&K6l;}V|VK=Ag>krBib4aV=Dyy+#r zqh^;vI-a#tN*ed^8+6TPUs>6K&BMv(_6u{OJbM0*GkV~cc|1^7gB}t$V>k@P z%jiEY{&3m(^Gkg?UeQD`ULc*%vl8=Q($EooB zd7G=kdA4Agh+v~fgJ^meN{S$bM)@~TFGXnOHb58yJ~vpA!|94;$-)8{*T z>l@hh7}1#(hiZ_$8mHg<`sR*NJd2O3fXXaAi%x>WT+&pM95@>q5DLMr1J0qh!l5;WSZhI(F-qWQmC49Npd-iSvA`ExxNY z!|IT#vF1e`YAfG-z?L~r)Yq!i3_*F)3{UmlP7xuK?Jp8Q9jQ&RmLdbr4?xoO44sItp!bPGLd zKUhd>&ylX;pFzwVvoqxHw8Ts?{eQ|@KiB^NNJS875mi;018v{8bJTat@rpLnl+aG> z?DX4c7H%L(!~g)}*S6F>hG&dowsc~Qw?f`|$$Y;&dX=duO^D<;p4*JqNu&q0N z-Z@k_r3x*BPsDhX*UPrLBGNWB0>mKnUnX2{iV~#v)G6Q6P=poB3_|ZETmxd99H0M7x$do%?tl`qO-t z7}Th^(8Ok5o#u70w-P;+d~Md75n63e*PC48HR)@Z-*z0XbO)#1iPjhjW;H_T@wb~bU1Q95Btvf@3c#4S^#!X@ z>?@d1Cn2_+*?5gaKC|+dm8|3Plv3*P7;c(6{6N%KZ>E{E5D|{<%LagO*?GU0yy0o( zyU(f4z#^V8(wmjod_MV)k0l-448wux>E<0W?M>l~D@Z;n5(x*U-|gmBJiTF+tFsskdE+%PZAKxt5v{C7yrIJ9+!iu|8HYD$h9d#Yfrx8}-Zd zAaW?pmxS=Wn?<(0&@~CP+m$WKLge)w>GbC79DFU@NPH6hql!DWf8s?S(gt| z&UB3>?d^RjxXT=hr9)PW@3m{TW@*78!ITL!rD1VxWevrw2(dvTFbsNDhP0(C<4m?D zi)JyxY4fj_VS`iEC9}9Cs6!(t1HCu#uY3e?3Ty!I?)xh1$?@B0QQMhEs`Zc(KF9-= zdu}qh;o*%j!wTHH^7F`gZMa*h-_%uZRbjdNvi&ZcWai`QC+fJpTVC@Oo`Dq4X0a=U zp>(Z9l$ z(>ld)002-^a4Y;XCOQBGmkWc8(Rs$B<$FsDnJ!dtFVun8ui>_0PeT*9Z5mzz`P1`n z&(T{$`U1(^06%(Ak~x1`W0x-6E!c7J{Y)qF@69tnt2u;R-pUwyW}%P2BT>qpCpGwp zgtugJ*C*P3RPx%3MZMJm$#F8)L?5%^*RE$`fN}B;Ai;kyE^KtWBGNY%p`fh~UAlPW zGE2F{jsZ7<+3IlV@+{Y}30hM|3O>PI$6nq!ERite=jcGjZS7iKvnHLUevtj#amqm4 zaiw+}52G}C$r(E{lZ>#txF1%&7q=36ks~Wcv5;!wgzrqn!-xawa{Mt9aeK@csFu+^ z=~YGeNT%k4WB1eU&8+oY0)vs`ccMJa<~=&;BZACPV?_aq{h?9RQw&Lvw+~g85@9yi zi_7Y76F0Cl4fMyXIA}f?r3899R+Gh#dj!f2LoXQBk&>Sx+K{ z{EhsrADLH|K48@qj-LuYqR-Wtj{g8a=}wtXWyi)gUEY^L<8D*G%@4^RFKF->tRP7* zXCON&g5te?DifQ0<{)h5ogl_7^G=odH|9Sj+{3GB5-UYKm9E<;Bd@(Xb@t30cWx%5 zPsT0u;MdK(2yWtF)LN1^KX~u*!;?RT;mQa*{{S~>7Ep!M4;Gne$Bift)3?$FR5cKn z)Xq4h9wX;(%e@a;iY-@0Qmx3!?bI;@fl=7zE=*B7hTO9_)%>w9sc3X7)}(4!DIEX; zn;x6yFei~=JU%dcE}3_y=}^T4Od3NT+x-LV)2CdtV~j(HF_=k`*;uzRHTNz}@bF!Q z0qeG7j8u1FKdW@JU-KQNmka$_l}c~vf&uTpxX5PD9Ajqq<1>83KQphjOSIbtg>pFtReCN|Ld`dtRAI;M?rs~mq zKSX~i{{Sw$yXD(asaslsB*Z_c^kT!P*w?A+l8D;Nk%LiUi|PG0UbdA!s}~+y03$W+ zPJnHgS@YT94s<2L!!`c^BwO7`Z#e~$g_v#MZ>K58q#(F@tbA{nbSU4Rs|6;RArV`-m}X3A?cb38Wsdt# zpFl@0t_vqh05`~XR#OR4b9DLZWi(USau#<_qbqQ5F^vsOA{fgnRgS@7sKHLv5O; zp0+9Hl|0pRVWvT+-AK)F)cA?p(i9*9b_S-E$>Ei3;X)%Zr@i@C%a)p&r@#7az;dmqo(;*_`_=cpqPf@p8*s#6$ik0W(H3~PM=mS=sFIKKjziz=@81X+uNG6y-QK} z)D5;f_1`SOJVQahDdOCy>Y5avm73+gl1Or($`B8UyHNbaanxzd4Hpp0#My=ZVELIm zz>WGx;EE$azfVEo^T-^0Wy;cHBdTAb`Q{so2hr9=am;ZGw_kHj{5yN)S@G3von z<74J{rP9|=ikt$_?ePk2x3N8Pj6}vX6FfXpv^SA$?kr4^v9C7;z&$w=upMc?;g{*9 zBeRLBh#a2QEMU7q6A&R(YGf%Zjii&sMzea5|^4^*<07EF#bhzV@?e7pYVDjnLrr7H70^!Ob?EYTT6_M_t ziDM_Asrx*7o%2N~2%XqR2NxudR=$SsQyO@bNeq8r&;U5~2d?MC1kZ`MY#4+^7tz0v zUTcd?)C6}*6TyL~H5(tInP+8YI45P!(Pa@7RKGnm0MS4$ziB+jttO{tc4caD@%Qlg zX8!=XJrf=V|FFwZ4E4L1l$a438))*Y^I($30#KDhJFdz zFZ|#0)$~Y+QmCLK0a3(w{JvOcb-QLwe2LxUhW`7^lUvxTAdO=W%YBIzT8*ps=B8ev z!#1dZ_Bed1Y@mYb<-;T?UOaZEiQM$BOvuN8$<^cnM#~BFPP2LHC8d#emDmJS1EBeJ z%i*Q2ZMa}=-i_q%%iG^QyjJ(l@I;(lz+xG=HAqw2-!e4#JV{YKT+#fFx8JQ+oWy zXXx`8xslDs$>@4NtK(u+zfaT3j#h z=9~s_#EsC?@$1_&F-Sqx=M{6x05Voj9zrlJSS7NC%}ozK+?AsLD&5 z+1R6u@RUvNp=+pGt<``H6s!BU72FUGVjSS??y~764^SICA6lEt-c6oAH)vs{Yg>hR z5E5$;*@Ze&f9=dnnCBhB;?KfpzQ@z`oh#0|4Y!-XL3JcSjVW3ltG|cen+zF-L2NZz z8kd!GdBSw_~R@4=4 zW74j9`k{v+yt>qMJJ+o?rA2d9sK!BhJr1B&;psM?oQbYPe7mWcEugr!{{Ti}q;qaR zWD~bd`qYk<%P{J<;VJDs6ks@qUgyhJUz|F}mUULN)?jGt(nb*O+?_dmBAo*f*L|}f zyzt51`s>QSnKoW_jy*ZTi^>83H4HmY{{S2@-Ly}MI%agaHYy6ww%!!${@w{=qym=e zx}D0;^){rWQG*e%p#6DY6)edKl-^)#c%z00!$~I9T96u@e}>s8picHHY~{Mv7(=U0 zk%Xubp5wVEGGObok_|60TIh~+ZYbWd=M$%eDnZL5w-+lh$la^{_EG01-+Fw|$?U{7BuOQ8^ z_Mooy_P{dRQO8`rl}5}EMW<$P)ADs6*!1+?sselk6?hizmf-@$_seQ$HtXm zRRnbaZ@1HtGPd|fdSJJHVwxD``i$`dFT%&|GO#otcBWS>*5yMOk0v1gce2o*^qt`K zXFm$?>Phf848Z2(#vDvj&OTt&wHq(4Pjt3+Zosqh0fN)S;N!IA6#2Ja{Pq00@+-aG zp{U1ydP$6+CH^k-Ae#O8Aut*xH?lp@i~_tB=`=<8^6l$%F78N7T#{X zDIpb+QF`|#qO>^p0zFwBM-bVOH|5umZO7KM{{T4MKR`Lct@G(a_+XX@_qiBzN+X(u zu9lF2UZfzC%9-@oz3Alb&MW0;!|!u!yzaV$Hnhw*7~ir^)13Ds$1bPnlbtfay&*R zi&XQI$)EXVU?lpz#YX!FJ%8HCl34im^+>cHWhPDNY6|6(#=vByUp{#z+s{5JtK5f*=Z%im~LdRNAZC(53Mh$Jsk0)exd{KJm=B}1>?GEo%sM$Fv z8|{+SVxh$H+SzfNcqiqx)xN7_Cx!-fB8p0GMMm}Pccx?E)kZ^;qMgLpMtP>{^5Wz4 zHG`-~*t168$~+B!j%zh@ku={4jDcQz9##TgU+D`+F||*%EA-?JEu1Xa>yl@r>M$%Z z{b9t8<%#c6;X%@rIN}B-+hY^e>zW0fypJ8&RfQv6`*x`Iu52;UHXV`73}`9&t5^ov zo+kvVm0tDm>6s=%PO@N=#Q5IB%oiFSzb%~eMzK!pp_q$-||JDU4uyvxIvlMP;Z zn7*#^b;Q>$kxwBt6&!Y`C;a;6Sja}!y`2(wEK~DC;2xN&q5vAcwjL)Dm$WD_#1~?0RMl@bM#Py?;@b^48of+_9fj1%ZIrP*#8*qsKA4 zGC3fCIlNEIx0;o@qujA6(McTv>?i0&gHx70IRQQp$ zQxInB^%3y-GtV+<$5Kzz7Hc2YIF^l^3V;WXQTOkc$I>@W4P2&cqD7|p&hFnuy|vU~ z`1vU=!o3YBKibT#Jb~uslmZ}S&Lw}so%EXGwlNbYJ4J@z??k0BzRwwEUedA5t? z>!{=U*p5g+s*3zP$7*fYHn500hh?VKaTIOVv46pAt{eApuIG`fjg5B$<(K$ix%o4m zY(Q%>Y6XO5t^Vp1sraY>=~KQifP;;fAtKQ~@~<^`p#3X(Zz8J-SM2OZVNJ49mr~*x zc$=0nH>+zhSvxQdQMZTr*C9BGi$@h~A5wWY%a-YAg56}EU1(Oi%e8lj)PIMBS+F1Mgu={kgA%wPl$Q@yUcZwIX3=`qqWd3-!Z!n@aO*Av2bd7VTh;%@c3%^=)7wvR=w-yuD#S0|lmE*VvY&vgA-Q8i;n4O-5`9*Oioi(CgyKx0ocBK_Z zbMvR&n=BcG*=Hv0^`HE!yDvE0sw&n{D^ajvPUeR$o|ZWr{26>fPXheb(e)oFO!oHi zgo-bPJO~4|KAghT9(puG&h3a-9C}aZskGwRisjJ@YCs@guvao=*l= zkjvz=736Z!y%ST)lml(HuGy}f0h4_5af^My{{T3Tuf^cj(- z100%kxxke(f6p%@NFGE|5-~;;0Ms4#`?9Xl)9}i}yqOgFQ&Z5V)aSIZgC>Fy~^rySf}L};)rFIv0Mri)Fu z1+5XsdV+i@nNfu`WFU$NA3DW%sohI1j)q94r>3eZPat-n-)zgvP!28tF5g6cQvO;? zYvow(HQ1D1U9&k1H;y%G4x{1u9r9XzCx|$UWbuo)nEBS;@5&c%JTbFFEAowi098i* z12H9w!#g=Rj@2Pa29@Wta}O<+_!C8KjVrwxwfFbS=0t-J291_|}*PEz1G}d~~sqx5#!rQcp8#Oz!Iyq-+eW#)S6+^;aBI zBv5M0gMIlX$In+jS-5B{e|Kx?tyOlS(zK!f06w{$q&x=QW~)Xgyk2$YKQ%|L+w!&o zo07Ez*KfYG-zAVUyXpgVilahY%gjhSNAo~&wL%4s}>Ja@W;Wuj*E<^b~I5AAf^cG|fd#&9Ul zs}trGZ9JnD<-oXwiu!xTr>GU_^!R=`7@Kega|3T_(X3lZaXzGt^-#1fqxOwE4-B*D zav_t&=AGX8y4LEt9o&W;>kOpO{C!1h;YyFYF-hV(xwwero$3Bk(2~*JiZ#ztpHH^~-8nab=I;Vo2P9LdV0Ytv$0#s+qbBxQ7j%X!!im z0GM6EQIX@IC{H0@5s}dXIk*`ziM^-t>&)<6!qD4G$%_+48}$O8j``DQZov*y=uxT;aUP8uXW5iaZmm3l~k+nusqJRR+ zjh0u*Eb^C~V>hwc+(g16ILjXsLOT;);NZ)XxyisDk7?vrK z2l{3N#}kz(htM`2N^L0ekBAf^N3D5|rk_uSS%_1QlSm>gAgvnSdx`A|o+^Acpxb}H zGcn38ha^mn>~m6&Prkm3%er?ImR6%LKn*Lk4*vi=$2j0iv(n%I(>c-q052fZQb?_$ zUQWT7_z~f-ABJXW@Q`iT&r95+=gkh@JvP3jC5#?Ode_3gJlW?Xhj$ObF*`m;ODoMs zR62Z#>cm)40O?)L8^dhp2As}LNz|M}lj<)m=ogwwLbkv{&q@XBLDIdq@yz^KJU!ej zvYh!T`O5QHE|!y|i~y-rpsg~!UZy}(Za7Q_qJCI;3Og$X*CdQ2?kWRrXnOCM+C4bt zTe3z{FFO3e)gjUEVTxu&LiH_PmH26x+M()l_$VaWg~7jyNDO|g5B6kkv><<6u2?Kv zhb=&k$xoLw-_f^;rQ8$f%OEJru%VzMHFz78y^_#(rfiwQA#2k3V5BxQWd8o4dQi3Xq@w%h67FefvVTZ4{rguO{On13cTu@9rA z#Hf0%!15!dMKaF-bZ*NU+&qKw{{YG(%72(zey6X*v029;WpK1lhqur(H%*Sqla6*Q zzWwv3ne<&qTxu4wFQ8(olR-mHloSBoP;gY<=9+I;*udW3IHc+<>o~08|SJOOb^SNp07O57Pl)$5Gq^L z97o0C2&t#G5t2t|5*WnImO1&6twbU*+uaXHjw6BVzd&;yc?VZ8X|}M)zvmr1->B%< zbLqO7d35;?!dMy)mxuZG!-FBW8zc-jeS7AgFeZnm$qt=BBu-#}K7FZ~6Vwc1gSXP< zuPAIEk^;_13s9~V{u^eu#MH2ayyEg$b@T~iJMc!&E|TZ zt#M-v7N{yA6k67SfS{#1kGn8+dAJjXa$=X>c2fX_*M!aXzA6$9^`YN2QkM|fjG@CV z+2`fF)*Q~Es3~axr>f+UN&-GdH#!Y14kG4Zn2er-`H%UJX7({etLea1mZM+?V^DU( zs?`IqdN}0b6d#{{Wb=2aa12f9q;3EesV8$^yW2JRpk!&+YT^j4uS4>GpU$Cb_TH7Y4XpY3rMa|8_@%=ISp$*@CZA1yd9)e& z7cU-b8*_RNrx@0BX()%0UT8;MhUf6jjz}5fwuqA=^0)FVUS+Xc+rCpe1F_s5-9C)a zOGhtrph)IsKR4G)=E;h(SMP4*1Cp=75pcFccD^g zM_P&xyqv2P?Cjr%1VQ31{O8nO#!pBmGNXu2#2%!3jk1k)FeL1B(xbcL9d7dDQ@KNJ zBB)>}g0=VizlIp&;u|u}kYAJS{{YDEDK5Kd9G+wVq(gLni(|M3xt*nt4>g7e$lAZ= zFO)QkDK39T@K!`Vm=vKMIF0tN`JA&q4@Qi*I8DAJ{J+xvrRM8dbpiW{ZUl1!+Ks(F z>gK-~JWaVL5eM4daPt14b$p5Ct)MEdwO(i|)Ebdr50+$WVrVmEw%!u?wW564k9uc^Xi3?U?!S$erArc>OyE z&OUnbcAIIb!wg6lf+=MigIW)s)ygC2Ys%bYGI3J7lgRO{ciSqQ zhexQ>L&6+I>V8Ah<-D>8@p7E;0japH1AQBgo$}ac5ES9|j(Ja$=m|e1ZFRtxcAVpt z7jy&;N4c+$`JC5kw8u8#!@)B7_wx$FT=F0`5lJXXDz$HgdQbsPx6DXRSj`sGjFUl< zc{amX(QWMG(W5v?SJtz;Dwx*ySu@!$wSI>GbxUu3Qz44MJWrtbD7`aqXME zKBVx}oJ^SNTQM&)`Gz}GZ&}MCqXWG@W``$}D5`RC!p`pvOK&O7s2iKMQf3MQI}U(t zRjmizm=+1QBQ${zfAZIpG)M$e+uKC1APx$k1XHI&y?W&{#4g-iF$A-#+vqg7nrKzW z1vCVYp!9x{jWt1teJ@%z*{@2}`8D#)eSi?_j8^}I#Tc{`vYK_0Eq)jA6%N>@i>%<4>17_ib@~aDq~J62(VN&q20f>Lt6V*T|8xtS)WsEEZi* zBS8Y114?uo4*h@H!ZiQ~0}RZC7svj8{K~q#nrJlWUK>cugYZzEE%repzt3-{H2Jk$ zMG=RHUUHh`o?&67yhGFbUk4(@_8b1XK`eXXySz_`>IP0H~K zE6RlRt!Z4ZHct##bn}puk=N2)-MZ=%$s`eg#Dhr=IwX(QS=!KowS;r!LiERhCIejrCD&Uy}{wwkL;DdQUvxjjJf`g1>kaO~YiT;E@L zTU=Y)f84uzFsLlfYqM-Rcdq%53|;OJ#9}sN+JBh-t0K*$P7F>?$~Ui#J0EPx1Np24 zj&D`6^Bi7curN-e>k$GJp8olp9G)Pe-H$y!GXDUafz@>zQr5R|7}g+o5OyGeU!%1% zTNu>o*q9z0FBtr*^5xdGc@4Y>UP+xnr|heB&6M+j7Zy=Bv-E1y$yb&u6}7z09lUXH z0FlP3C_8uzu5?A1r42-}-=G#(kSnehvelyS!26zjf1)-@ek;_FI{ zxk|^=XKDZm+*f|5wL9hnvC8&vBk43Ao8+G@%ctAiP3AzprL199nDlL{LTOR&?Vm=xg z_2_onzGm?7xEY5EX{`AUZ4S%ymlYB+77XAMT2vn#+1ZR-1Aw1WXZdIOad)r8_g-q5 zmAU@x)K`y6R1Tir`GE)=hj%jsC6{R@UzmPRu+XCocHz=8T~rfYssI!{&d2Y|GU4#| zPHaFI&0b~v*3{s*k5AGM?hpV06*cj%QZnp%^AS#NIEe?eeqDL#H3M$!7wZi4Awc9S z}$0KQ?ADnZJ3z@XOHN5P0yU~qPLru zqFqo5)}Yd(=5t3pV3pIzk=#98KnALzKnx%gsXLP$G-8eMdW7L^z`h)ro-(Qglj&G0QZ;6+Boy|e& zG9rfI2aW7rUC@(Lb(thQH(?nICV7N@}PW@!ajV&}q{- zjK{<@9PyKcK4sMzXpAm~rOwl_B(mqsaY#3csD#j{J zewuyxm~@xB3}=M1zswza?R2QMOHgFwKq{bvQQm^JsNT6q)o|<_vP}8BQ%Kiin&LfQ zQdUDJ!$(pG`JT8l0WH`Ihb1pHYdTJ~s>2naK|MYtE!BYW+utw1c=jyLB1MGW>ixW@ ze`k9gJrhbs0pmeR8hp3yL_3Gxn!Wv^)~s_Jp1lSs9tItm_{wZSN5 z7GA0tJujNSHqztEcM|@Dgg8;mP<@)_vs5VT;$+a*sJ>a%?&j5IRlX&fs_H5aUl2#n zY=oy_(@#u!v#-hzD_r@rReN}%^=%`qNCum1I(U5ZUyn;HlG(+GGBo-(TJqGEKv~|u z7|Q$#L9KrL&z?DB=H76Kb6`4Gk?hk^U1Lz<+&4;(iFYTVuGnz_%#?V-Jdj>;*R^ji z`geLXjR`@yRv_<6ijKy)gO^ru%EMsP5E9)V%y%Ahw4c@{OSKBLp+6G}jr-=`OQ@Ek zlNf_8W%Q4cblqP-vw=LxbsRCV9)vu3O2mQG{{WuZ)aY>dV|Ss^VKE!MM^N+a)|q&^ z9+z(=LZB6(80Ba{HaHbLBEEn@b z%$iocpr@2BU@|j)?4k}#3GOMl`S$%_W{Kv*E)org&H5jhE`KZ@4I9mdYriW>f#I1D zx7Es;0V(LBwD6($x@NCckB4~jdcMrnjOvKEDkCRH8d)J$sgyoU}q;0 z*~sj@RC7avBk27m-rD<9TYVfXvc(CUApmmjK@+z%Ls8w~US*q8@*VN=oKh{uiRu|GE?H{H zQb-l9;QJqz*{q$yRvxbijN`#RY@^mfrb$Qv90LlUvgaw;BYXheCr3U$D0UNq}nS3T`r}_I<)vecC(;d;@ znDre=4^Py7MwoKsEFqBO6hq}P1HTu7Tu0oW$h_;#rqW<+;&x{Q=; zq;|U0{(95i^F@Itv7u;Yjrh(8JJbBGyAmn*Wtg{d@=J(px5@g|>@vzV3zK-LgrRuC z$fu!Gw_e{d-zS(;9W zTibi}jbV^+wx9(~Ys7=GQ(lzV?sCXAWu{Sk=6ydwRMfRSI7pMIF3|RFIN5WTjeMs&+}jw!%V_eIXxcBgKtLsh2_Vqdy*I{U zw_JLQmAry)`O0rEYjR%2<;zRE+3pI7XQL>9(}}G@nt0Z`_sxDm!^zs=&lyUPetP`; z)BKsDE9y>XzLq~q-r6b_QdeS00IfZ;CmQMkTN)2zQSe?9K)w4XEIU9E%i z^daEO9RpY5bpUPFm9K!VLjW>$`Sm<+e_#2=pDTGnJ2%wc&OJg;?+pB=0hfA?T}69= z+j?dBAzYfqNR~zCU(0I^7e==H#?$p%W2oA^kjBirSKw(&5bax3tWLI^!bpcTrFQxeL=i{_s@`IE{T%2{jH znuNB_@-=o%MXFUO8PmaU&Qz`t^B5K&>)%ALZm;V4O{PBMkEv;o|l7^hX zVm+5^$IIF=2CaeD2#ZW_e1qqW0Z-N~?_;1frsyf+a{PUv2@T6g?T`&y1eg3(W`^M+ zxZ~8agF;Vw4yOclaR+kd4%i%lWPV)p&zZDtX6Y_g7BzC{!G33;$2MWi7c)!S5uZ2H zzn34M>7_`Ge>({R)U|#SPP-h8H5*%hx9(!S?Pq2QhQ% zEVT@G$?X~k<`wdUODoiH8h}niS8Da|mq%a18l{R|UqJas^MV*|63<>D(&9=4HRTiS zO^?qracYFQpvK=qrxr< zUb*J4%r*08lx_r#>0C;j0*aa%Qnm1|W*q!*qU&{lAElN4Qh9OgJf&?a#1c>{LmkOG z*YD}qrctHRgB~YSsFeqkP394EuE~A}#8|~q({O8C*3MTeJe_ZdAZR3hck_qniopRD zZr;>2-z5q%@@+XQa>2Zb=6SV!Wd|-XlSfwQKs)s4PmWcootI$@ds%&P=S%qXoi;SG zWAOkSeEah6}Ynyl* z%yT_1Ijod=nkhTck5077%NH27Ie0{9zJ>g-)|*g*8>^=bV>I|p4Jl2})A(jS5=q^_ z@lHL1IrEa+`GK0kN;62b1P`-8QMb<_F>`MknMZK=SIio1?tysG&dw8^O-I`V&>DEt zD>=-L{G8l+>J(EQFU@If>cA-|p#zZVzgiFBnRZ)b18P@sAR(A0S4S;#IfY_-Xs&9BL(-bDq+!5rJ3Tm7!% z!+gOpp=@xDGrQF!)HO@%yKNHL5#^79#B0eLYSnuZ2Y|{bjnke2>F$~*mj&&(PcalK zIS^b|e!%o5pFE~IbCk4+cws8@9+7C#2vRkI!V*ieiV{Jt-*?fOlEyI&lZzLOeNPwG zZqJt3-&>J1a}iYp79JZBO679H#x`R-LJ~wwx_-K!x^WccDvu9T^Nx+gZULbtq;>i;AQv}Hn9NaR-;($GMVFbh?Mq)pbcWzLjfF!~p!yE^ z44}hzD=-yL){o7T;w$}gcQFju_I2QIPs*P;`93>6 zWfo$7r0r7uIFr3TSk;SS5fgawzfeotxA-rlu^tiGbe6vrENBD?hO)Zv~hX^|5f zK85oqkdpq)4{DHWx$m238XGw}U{5wJ<%|1k{aV#EX*oksSZ&mH@cc6) zhTQzZqqFJ1DCqj-l!sK%6_Uw!1lF7@`n|g5yH$_5)WQOPS2xg_N1v{BAsXJqJw26V zinIXr<@a>WV9Hz#PM>}rh`%|jY5iHa zn9m=w2pmD`YtZg@!ZPr=km5YwZhlv4_L@Q^-SewB0fG}&UgT5THo6?#T-^OE#7oS7 zKT$RNW2r$vel9D}SC0@_e2p?4qo@G8FB6Y<%3qQ{mo4T^TH)N03`gN$Hfq%W035`} ztJ`N;sKzE=O8KYq;tx#QuMr_p#nma)cNOb~c z75LOBLDr-0A9vH5YN0*`cC9=KFQ#?P zLf_1qR63=Us$rNYJ|NIjVego^kBu98Y)6DXK=ZDG_g4-H+%V-{FM@ zH}yFX#0Nw#o@Ikga<-I>B16OqP;Jxi%*>!dG{$lr1LLnY&V1t2+65kr2B82vs!ryk zZGAX>^zY?0!s;GZw~pyZ3V_jwAwd4hefhr7VvL0s z3sG=2yUl+yKm=V{vjpU!R)&C)O|soi7}m~49cji8_WER+ZL^VPMdROBUsL~ zjY%MyRGi1u4hBRXacflaw6e64PzY738oSf(=zHXW5@U*T#%W*6{z8XRbs^6eYA8Yp zKSAFsnc-Zrv+8Tini;MJ2OpZ^IFGTu>A=%e!an9$m%753rKZrJM(nQ7J{!Y+swI|eW8O0!eF>)h%Y<8|{gh4yGv6m7SA2-M4m69Z4 zlP2ooy?*L#UipkMh#C$~T{xJq^uNms%|Bm-FJ?}1%;Y(3`}g`k+R4BPnk^V&L8q`@ z=$3jMQbiO>vJyDdbf~DI{C-)UG{YXubur=zUA&M>_S=(%0mTZMeLp;}Bse!NkmB(T z6>E<$Bf#)juu!ANdVBZ!Ga6F_SZ~H?Zt}}*L9TCJ2xUJD62SX`PQD}GDuz%^HA@MR z*s~dI!@!YWMry)~;A_75k^m!S>@hgGysyjFR~CAu#j+3}Nn6uz5J{)pHp(NV;x0rr zB=dXLn>;!?8+jZ&0T3uFrR+eO^Zkb84!rK4jPe=N{J29nAG%Db#EVf)8;c48OScKc*WZn(lkrEyBzdI{g0t42j5N$;OzBnNF|&067D1 zpxq_9u(()=;#Qkeu>Rc2jzc#h5f7{X0581hp?+oQsef+DZ=2y|AXHPRugfotW0A0c zc|BjvS8#cAOIa-G#YK3J8e}qK;Ev8IjhlX0erS1;?_bu|3s_mHC?1;Bn*E{p=Qk-C zNyXGm*3VM%9=OKMtR_}_ubH5x-8=X1n;=AX4?Q0>>~Ae~IOFv~fJ-e!Kw@?S@60)4 zxjC4y68lrimh*Y5%j*T?VB8`Gjj7k$H@Y$6!i%`W161)pFl$!cQ@N7X=~tT`q!MfV zzkX};L}N77n@L-|ds6c(^SQdREgvQv2{hzbYzOeIMr-AgQ9C%fIc}Eu)64ps+rz1A zMpcpH6)1NtP(TCe+=178*yGenw^`x1Y~GpW?Lzk6H@LYXK0gpp2^;q(Y_}}@My))>pc1Xuk*>s!zkX$5 z)5Hf|DH-!ZdAmoqvI>^+uKxhMBak$v)u8Nm+vS?QWC%Mp$4Dmgy$4FvZLX!e2t5+@ zQP*!1?et_L0Ow%BakKlaI@a5T<C(YYyQ@4;h~Hifu)Sa zCf2@8PcU39rObjghA=7)#87tnGfk64a!J53gG~)L%f#1e9yFl#>Im(dOnP`k zG{#__Nlvk(MRykqR`{3VLZXBkWf^dT^tYTsO1g6DBE_S<9HazL0#3uG^vPnwA7x;|Gmzxmy`RWBq$#DM$O%;>FDlW2C$En6 z127K#ss=ijFJqMkdIy;g@%B^}=?dBz)QrIzy2 zN=CBPRCg5r05O{#G(+$`*hq>+cmiG5-hsuY-qi6^3z_u)%698$H+%S9F0K@w%!C0T*-;( z5j+B0r`~(Kywi0k?rupQoSUTwU)ekL+utQTmnS0*pMYEI-^vd)HnXM}B#=nPp;x^r z&;#$+HyT|*$+6_&3HWbI(=0`-jRz2r5%7WI^2a#vjfZce9xpe~znQ*Sw(|rnrbGZ^ z@hct3ru3owJTsolpNP|Rv_PW2F8sg#7_x&+3^)cRwEd$)U#DtjPMZ^~)klM64?hb{ zTFvB?E8Rp2s8hc!>P|;h8*39aVe)>5<>;<1Zmv*zg=_Kb2;Z*#_TMSf62>#)+`gOg zF25#;X7**+2L`OPsrmSLW%+Ia&C%*D^T(gO<#lnZ!7SYUA69}9*M&N_PPjBxGwOCy zxjydvxc>m0cCys8W9HpSSL+flC@QKC5CsXL{h_{gI!?@lp~PK0G*ihhC(%EbdKQjI zg83sJl2NuFuWYwVrj5Jo9i74xonOhCKB0dbENEaP4S=Ahwq2J?8J(MtX9;t7Pv+N_ z<i5>;NL|UP7w|? zAni(SyU^03zGLUc0o}&Ske*Mv^h*#dk|+ZD>q^$UcgvtmM$TrF7ZBZw{$T!HS^1LK zS?VB2r*Z)B6`=4w`5d}<$nNK2fhCUGc``U`Ay^~*-Lm>(pjVH%0;lz6-v*Fyv`RNN zKdzXxNE%y{#wgT^QlQt|_+_&ZgR0ApjlVqn>-n>Cy5yG<%qEGRinRDj)Y7B1I%cyh zjE>B-c;sbe?VeEbMxFVmXu8dst-S1NqxPzN4)p9sM+O;9InN28`eR1&j;G}7IH%U; zU#Z5tRf+ylKu`7z%E^S|`j^3x7V-Z8IsRa+%S&aaGJ@pA5H+QLoR0zR_vWnS_7XERE$@jLV^p8eEy?bx|d*)7Qh>e=GLeA`?QP%X$c6RkR zO0_joXbnfdZ8M-!hvm)uDIEmbAg)U;h*R=GxvxfNnLQl_G($EeGsZOO?YE>E}r z0OudI8#^s(3;V`NCXf&a9wkp-pp33D@iJ}6t3|08OYO~P&WBTz>X0!JY#oNw9kX;K zW$BB)mas@}^Up9|!+S3^6fuC6CYAT5Lr^bwQ=d2?h<#4nLbh|bo784v7#;Vh`@0;| z&nV=_PDeDqSn{rgJ-Wp@Bl0A;a9SNw*zxzgjiwmj}V5imP$NUv{v**PS>f&CYErlFD4(2=qMy-g`vSMd6C6BWd?#70JoCh{cn`imHHqNKMX zN7~#9dk(oAS&tnDD?XY6Hy59NaG$K(&euGeSlfc~-{9G+^pQ`$GG)BCX@+`@7E}KK zIKQXDBwNU%S!9fnAtRu1u=*)ef)TlSF_1XR^hWRWB)0L0K$1|O2;w@C;h8z77`tpy z6Av5ncc0<%{4H&2z+4a&LhZTjOw{Dnn4O!RLJW_EEUJ*~4eDAL_>e5_kA>@sR!dI#M5Bc@Yk3LNh$y+BrPSh{&<&MBc?>ng| z!AKj525Ju88Bu{eoLQK_*m^bHj<2BHTQ;F1@|sZ^Elo!+di3zYEM5e7i;)SL?E2r# z61CrzZ0(?8v$~41{id&4`{l9KaYEgc;0!6@78dumHy>TSYFWbN%P#za^d1%8#~9^# z{G`C7y5F53zq@GeQR1^gTBl(lr&IFq?eCG6R7@PfCtI2Ia=Lx1E2A)>MW+xAdgc`w z78p%>OY5&I`Eexj+;)>1%U1+%)rWlC>9B$w{uuDao>uxG(r+cTXw=HYF!(_qGBZz; z7>u@Y^F+s*8Siankn=`=Oq!BL!@v{U+Z=iQTe{5hXZ~ck8lIhJEmV!8Dn&{K0+rjP zclt9kHl&fVYi0}OzcaR<{#SW^ z-^-B0d3O|od6;r8q*YA~Xm_uVj%+lUQgdH5o_N>3t#mD}K0ZV!LEmcqG#QbbJV(^T ziBFT?zvmr1mNf~a^G)qm%^RFxiVD-W&@&SrF_v6i9j223j_Ggw>R9+ z1Z?_R?)EJv1bYaS$fBev8v(Z6dwb?_<j-SjTm>AWvuO#csZ)r3Eihos=(0JeGkCW!rHHfwAA;GwV zy=Zqk)42n_V(N349h{6Z;^xBq!ENYT{d#0!Edt3=)`P8kvh@eb~q2FhRgyBm3T zNQX$$Wc|bfiYPe^{_mHCa-J=yIl~d8Z{&`ux7O@$xqKuAatJ(t>VH;Y>op__MobZj zwq^N|sYZz$e3e-neXFtSzh4Sw4wP?YWI-D-T{}z~#i5co426`k5#0drKo7q~b7L4B zhi6m=4A8TA{$Z!KhXidLsA$RsUyXWD(wpYTG`uLgEK%`G?$66_D97eMDo3fzoaaSe zN=IOzP-HY(C})McSn2zpG=5-M$Dqe^99H1CEC30=dQelxeAP=7qdE-pV~j@c7V`f9 z<*nYK8+nFE*h<2@UZI6M(DwaVo2SA-w-Y8o5wdl4=V@1mm+xQ-(MTgd7ftu3$Dpk@ z>6hv<4owthI~^3n?e9EQQ;xzB= znL4c80>eD#(ERbZ)TC`jd#OGuy>Gt5BK^o#y++AA+Cd0soI zBS_?aQaLAc+>_rn{g;=6o1di9#zNma{%3x0e~Ns^`WwsRjC`3Lfgp}1gxBTr%DYEh z#%e8Dw4!V$&7N!2e6MTuppGKjvFJA^YJR-eMl+CghYVtAFY@>1L>_cl^tD1K$N=f2QU9tHTsMk=0ktvZeCwsif64ie?*aFNaGQCNA$ z%;h!9`)I|>o-jfxc#vyaob2K@cE)n(`YZC=Nxkyz!o}u>S+3?LNmWlOef@=U+%erG z87E$2y?Y5HYO}12Kop|%>0Xt}^2N6tgkCAC>epUJM%LaxR^k2_!$w<(J^VZPZ<_3} zFmvIM6q`iU7hkr!u+^uG+Fu3}tBQsPY6@--UB|vvr_XyyvnCNO!^N)ry{~ygTRNBJ zB&`G%k+jlV$szRF2KD39dL4&dyXHeGp@iWrxO-AMfx|b}znb5dIxpu0cNhNvlvjxkuw!eV+_{X(X}JFY zSdG69pd87|S!2I8v4_EziHz<#K4tu;{Li!0EvNF2=54z*)vqg3l2kaS!Up?-2qk~a zW`l_0KCRyKMVcL_i+!X%Y?Dg-!qoh+5BO_Qw=-J(VZNs;Ztoa1QpAJXw)=GJfac)j z(+xin;mG%oEBTf$JlYL1&5}EiP|pL$%Zm?(zfnpLyykwFSH$XjOS1O3B6VLZTWNBQ zGToXhOLyerC8DYM9)KOayJmE~Pc`A3ERGw5@>k13H1w-P%>O?ap~u|6t1I`~q#5L^tIj5#wuD(d>>#0}-oFf^7jP3pq;Fh3Z? zbllVfLPp;Su3d<1xp=ZMjR!^ZH<$SNaKmjbi*qwKt3V|xb`=A^XP6z7 zMmp`()8Xz;TQV`Q$(rAmKbl|jl3rl^!_}^4wrK6FiD;l$)`Uh)XGJXXMEf* z6NtRQ{MD~qSTC0n>BXO^U$l25ZLt3UKMbgm9!*i1k+wJf71S;yTbQAeRsya?PQ-Pu z9lP~Eeo>n|LzNv(7rFT({&C}5^KgXQBvD(-@yhH=aUBVu@A~suEoVr$+Kp6!+3$A$ z0P~KXTJq{8jq1rP?9~!Uq~PX&Z8nC@Wm^o8TEp%D#0JC3Je(=c_%hF2F38KuKyzI*fcoNl$2 zX%W?93&c?X*zLb_wp9s}&8HbTCi8s?9YzHg7IwT)A>`prU)!xeR%MPUyC~tZ`M zQHNIY%(i-^lr<4M6`mwu4vb(c;&H2X+QIdK2z5M-s$4<%#l!$OvMFz(29@0GO=kqL3ZwR zU8j)pM{6IET4$1NR$Faq`Z*&~8a8kPSLe7tExodw+D`~sEt-zonAoNMUHrDzJkB_2 z+KlsCFsiXp@S5xt{{SEBnAlA6ot&K}xa1G5e3^BB`F(9~q4~Dyu54vxjUGW?M3F!% zLGahF&pI76<$!venCgKv@jv;^J8MlV%lcNa1hM^O>MD?cL1t35YIo^M_QTpDIWh4E z6Dg_JSEs70DV~;D4^ZT1HbnCvayVZCK+QRPhs*G zJ&#*CmoOXlhvi;%T`w$YhN-fB}66`7!2su52#6op(pKoj9Os4ll8&+O-EO01j>@ zu-Mt2Ug)AtCg#b918pHZ8@M$4C+|6jn}#y5;~W>s;kMFxcM`12#YyNsTXpamSUg7A z<{p|&F32$>$iSkS14B?Y_R8}@xj1+UJl=z*>9+Q|7uOJPaN(9yu{7_L#7b^PNW=}) zbqiTFY2uf5PlZnP00a1MmB z6{CFZ=j$yBIW4Uy(#N|nAQ8O}k5hv;?*5l2P6WBUk6!%qgHY0?uqrwJ%76oJm13WZ z&Dlac9G(lPd9GWVRGa}wHXwo6?Nv1$GbfX((&34YCq=_>f0K;h0=RI|<^6j}lwvJ$BMH^=aufC>DSn z_X3?a?rYO5hIXi75`5?8+kn>%C&D9TA7FPTy}pdyX(9->E;zh4Dwhp!#_?*49SCIv zZ`0}Phb(+kPHY8@-$MC+^V3<>wA9g>@=s101yX9X9>n$k05O=+yds=w;jT*hkLD$n z?S!yuWu&}gMGQ7k;yBZ}$?5R%n=Y?dGIUSBF1*VwoplbUYw+9x2nu{i6+S(2&5wYz zV96*+_QCw$veY1J4MhYuYND<;s6HdMN5l_6atVjYpPHJB>sI#?TsSEc7Ko=*Qa}X! z&e^WX9rkf@cd)M6NH1Hd9aOUERF!LR?{)J?9iwXDutt5&CN#jq~<6Ozd6A`mU zIFT*hNZ*(bu1WO`MWkrga*ROuRPRp@ry;|}H*@twz*v0?`CFw}+QM&iR1mGhb1Tbw zjjDeBgTo_>2)6<`i5B*KPRvNE(zRYvO?}Sw%&kcvxfo-_H+Tn~e7iJqwagzFUxW$@ z9mOzJhOCp64$0n)=d0Z-Nlg<`U}2HKN*&jx!25Ro84MYWHgXL6(tk7gzI$2HJ2fSo z5w~9onshmA^KkCaaQM8QL$3K}Q1c(DGENowjx5Bn17dz3zbMW>GIw(H*v2Qhep-2? zd3WmmR@82}>E+ab;F6Ts@~+gcK~1}0)9HLO92hOm8ADH>CuX3Os4Z51wGoWb7TG)0vHv7_^%kDPr>MYSLUv!B0@3 zzKU<}nS!GqHwP|148D;60F`LkW|FouAwW=?SAG0GS(%4Ud^cT}N=dT(^!(5ALqV&X zTO-VdDzr4O`6GUy5Iysp)MOaVmdsjWWyDL}zbJH@tt(0TwdY6V5m@YcY$;l7GR+2} zMpx0s)=P}jIMjTSH89I|@zp?Z82EIiZ2Uu8wSWkC@0-`^mQ55un4&}KC_Pk~06aJT z8G|if3E8_#hReWoA36;`S2j{}TWgo&#-I=zYVA|^jNbNcV0JCp^!y^$d6LKr*P7ge z12@CH4G&6>9JgJAt45z#E|}f^xh1S+nfY)AGew{yr%w5Uj#TDC0&}#N$a?%xYH&e6 z_Z-K>E44@f(03VbK|;%ys?o&m9_jh5`D=5fDufKsG-6m@lm%TuABOb8bo?UR91$;{ z5?Nq~K`m&bh!xtP({1ToIBBCk0!n?ST*%T!U*QCRWvC2$P~>u(*&+Z6==%f6%&lP* ze8@dTdiz)S=DKjRP89QS>^U?3Q}Jn4xrpDW=xO$bOmb+IlSn%cB1f$#yS%t)Rh!|6 zQ*b-x5t#+d(ZpR8m(4yx)3lc{->8-rp#?}JS84(}AAY$psovd@$6X&jYKdcQJKL(p z6jZAaRjJvl_kG!!;*7$YvH=AjEZ<9|`nQtXnIeoWP>OBD65_P(GO6IQxsRh~*8WoS zHJ6$6sO7f;D~Kqs6+!rG*KO!V`EbP&HgR#|vAZbqxe;lCXLdzsT8~ZCg{U8Z&98$| z*{7E`%zjjy+uzR(qO^tOWo`PfP;247Xmj&sWCzmp-BZbyx`nqXQC3E)FsA z8s_da;Jn+*7Z<)>p6gB1-;A+0sT}~J_NQ|}l<}N$warmwmYJ!|FiFx(6o9KGR(+Y8}lE_`i7YzTxkc>BnK3x^`Rd}U9&e=guqy7gl~2w zY3AKh%GFa*TC|iyC29fipy~8eF%GUrV&!9mZ+EcS>Y9C)p0~iEb5#u0G!)r&|EINi!KN(qb#ZB8R@)dHO|>>?q_$&yz3cJ|rzSYCL~ z##9LDxE=%hYnDziEOTcu4>!~`+pjN%d!+c-QNkUG9yRNj8NrLJIZ1iOi9NQzc=mT6 z-J^P*neE8+rfayxv>2YRda$yOPP8`qYWml^wLs{n#=af1AZDQEX(AYvo{6Z<9m47= z9L>xHKgxTba7NV0>BOd9g9z}(?>f?arDx@`_ZpNXi6kf^?Hc$W^XZ$NCMx=zJz*#5 zN&MBKTzRk;irm{<+bt4UOKm z-l~WQH6tk3>Oj~zk)NjDF<$vw>Z-cFrw_+99P}iTcOdR|%xpMF7F`ZaY2r<6X0_2G zlJ(d$@>Ni<+z%eYxe3RB*l5R)Nba9$@21TQz0~XLh2;~HwcD!uA8cWRh}n9LE)XMc zqrWNq@cLX4K+LacBJu?9L$!L-HX2EIE?I?c5#O2qL(_cdk?OXe-Z`nDJC41u>hO%) zxVdtN&06kk;a5+r7T=6WD`I}ipy`R~lS z7|`WIK+&D#ECmA&=f`iBVx2b&uhii&cb1aYgNL596u|3J_^32}Li0b9(^BI@0TWOG( z%b^CRs33hA(8dF+wc3*V{{SyrUq(%SAbwukWi!PYGMT4^`P<4xBa$eP(Si8;BLmco zz|`rxoKgh(K6lXMyU;bYh1--oTrg^ZUw?en#~F_Cb-JAx17!mxz4ogOtb`zze@b5- zE@@i$3fJ$W`xDtgm!a}4v{ z-rr1u6XBOz2bAVC!%kza1Pl^zn)ET;B(?WFPA>K|H!s93nI6m+#Cp2KB0zlfIXYj~)wHgjSToIn(nE7MOT852&HBB;uQ=5^d}KqcbyP@f+}DBhte) ze=oJfg7gZ;WFvFEY0zeiCYt5MIXm1!`K4ZAzO~U{hQta^K^3m-4Lmv#nWJt_w_A=c z9@lT(Ea#pksVAb;n$(XU9E8X(IA&sYZS>j;VRa)iR=oiP zZTu^g>0xr9@9}2f8^2mSxp{l#?IsN!!+)bfu#gVSR8qeA-eJk%U2F~_4BgvonW6U=w zE{$=gY8(Wz3b3do`+fP7n^6)sbXx4f0r~spuPMo>O7}WjqQ$7*`7DvMZj19gM$6Sa+kJO`pcpjh{{Vhd_hEJ<@z{PC zF=?YE&8Z`k$$uy2)$K2Dbnh|7>1yM-LJ=C$f1KoUzFw$_P?Ifw?p}Rvi2xvkstg3YQ*c zi&>dsuz!PaNv%b5DiaesHsjQuC!^^W5y@jMD%FjOlk%@z>GaX`?%yeIVev2LM!)q! z`a8-9ks62(U^?cXU6PLpaC|-^Z_mAZ$rsnx>l9I+N$T8!9)#9`x>MgN)9hV`0LL4B zNB;mg={?Vr?!~;a4@PHNI~|7_@}S?KrGAVt)_8JsS!z<*_E+Xtnk}w$XQb*?0b&nL zyY?M?GcR49Ibhk7IfP#ZX*bvUmE5;h&JE-PP-YY&|-c@^RW7#`dsYNCe#OZ8`Gg1{rN=j z_`8R1DR7Hr*4}Wt)2Vq3i*W&Vqni99`Dw8t0dwMvZtL>hYp^4&N0| z8k&$RUmUX#p}KJ36BZsD`LA^zrE=GLa72PV$OE#HYH8np!!R;s7UW=rqFEQ^CFRxC zyjp^=j)&#Ogw*}paNJXvY{V8O?W8X>ipyTW4VY8!%qU?8a)`%* zFAMXWx7z!)hK|gviV1zfP!cyIsjf4C9GdWDl!oc=lyqpc_+yh+3pCtWgD~(TdLG~B z?U?(=n@5UdX}>sm!q&;*vV<5_pLZj3(CuEJ*97vDuySXo1Y767JAP_Or1^mA8dZIE z;}Ve6UxtFGule=Oh4E1>xNw>CW&Tm~mZyEK+0Eu9EVm4YW*!G){i7wHPsJ_RCY5)M==auRvFpZh&VPj{^esZ3FHc4SC7IkTTR0C>p9>cG( z%p7+%oO0qU-$>WRtH&Md@{FjVZ-@X1@%HUZ88R5T8BGMg%$me^PA;?{2{Nn{UHH_{ zu^!$V46&!!SC*BPMl+xt6RX6>h=eQC(2B5B}y5G&!D*y(KU!g`C@B>chArt%RiO@7r0+!7mqqL_40 zzHRfu4=2<9Sp2QE^39plibkQ>@u1(|H#qUeD2{|3%K-D-wo&TVt9cT&v@D0F;-Z8P z8GWXIh$#i5l(LOW1}sGgJ9N!#F>SXe7Fwehk9qT7Xwh^_D444n zR1#`U0sA7p`7CkXoqnS?8GP^NyZejjmq>m=>+m9}6cpUl_BG6dh;nb!_`f?hH85YhF(G#F~D@~668=Ht)UMEb?I=!t=j0{#C=~$zhtzdUL?w z@fD#op(VPFs5)j2vmcChbM$_mX}!gwTYGn|Hk@5~(!Pt){^eNx^| zH+=cY8UR5+HUsBDzGaaV4!@@VnB>lq^L>(LqJb$shKl}ipX5H50*bT^{MPkme8R9 zsPyZw+ikm6gRhSHA%dH5k_{A}$#1NAlECPe(h|(H;s9y_dJ2k;_1`JUlz~p(IEdUn z;qn)ktv@L|x-|>7K|d1Gy7->M*k%O1JF_~98@^ur+Sc38(LSqe#-RTIdf=4-PX7Qc zvRZtyCw1Z{)bsr+{d6rc?jR}YGgVd^472tv1dj+rj zahauNdJXBlH~D4{X#o=1j1o6vH(pqe&Kj(?9Ku?}gs`cvUvA${Rf;5yn=k=;zJu~N zku2;G9u!3s4BL*Kyfdlntq=oh2yV4LH1NxHx_IP9 zKS8kiEAm&)`Zk*t#+7FpP1fc^4-1M*ZQZX!lcrG zkT>zI4rYv)rMYmmnE1*?pPcbWz^**TAe89d-@|xO-%A>T~L54$o)vAD`fT6ZA*s z1XlWPtuqf!NSmB)R-3DJ%Jakp)9Q)(gXC|_PtD&jhJP*jZaYhhTX?-muI>TYB?;|L zn|<`odsmWNgTKQtLJRWaT(kVdgk0HOTc!Bgdoe{Q!)kzOvFJVa%zQZb+^Eb}%%fHE zo#z9mSS+O^EGA_pr8>|M2^-RQ9bZVd3&@)8>v(Op`x6{zZ9X^H0m#)~Ds!(R{-!QcLNnr>amEQUyRPM%C-u zqb-JL&u1TB*+dJA^W(~&nLc;&CAil7xHz_&{)F!5)B!_raUdJhY99{~*EQMrqIPK0 zYUL5XHe=>*%)KAYYjfvgVHKXZ_T$%&nBh5A1z-JOD?`4p!Qj34QLVvcdh-M@xq>7ohQ#nxvyeJqYY%?%FwTbD)Et`a>|5++svE1ive z4RD;MCwBm8!)lt^s(fAa(LP20>cO{HGPs@&<$UMZwCh@}CbUX&Cky8f(| zc>~GSaRPlzV^P;z&f3IZr0qfa!w*&As>T?K(Rbuau z-Ia6=IViCr?HMZWjpd4(QCCExx*lB*XPJ)@a-S|au?1TcDOvt zY~GSo@P&c&f)Y<2C%1^+z49}$xLg(gX%BI{{YFoThF&KjX|0XJk^Nd zM&tAC*EE`qc^gG?5fQWPO-u5E4Gcq}M{Z)ZXu$PNQ2faRS2cQ=P8+)TgOI+I@&}SE z{Ih8kaHvYC5P+1-TQ)e9{d^$%9qaqHsvI1T{Pe&0eP$i;=?3rww`Y zPPEZ1j5buMLUt5lN6RYK#9`Ptc_tz#J~Z=Hj-#ksGc`BdJ0hZ@? z6M5|L7&VBZaRiJVm7AZ5-=_JHaagd=0j!U$Jdvf@>vj?8O3MPK<;dkyKs$JK`?6Yj z85$2oAOq09FQ7;+F7&-JvIyz}^#if3I*Mjy3Gm8;WKR>zb-iOz@&>AqGP~JM-~md2 z-HB7S^~mIh2F1}6#gd)qJ2RB-C!HV77NW?aI<=>U>eD`?LPVMOO z8-B?Z-iLnKubDZ`I`f3(JHDjy-i2l5I|!EAAc+zMQJZZp7~*zuh{Py7U-N%jj^-b# zNaNyVGz3&1m(fhucD|$l(~?9!G4sciFTBNZYj^dTE+DtrB9ZEm8ukXFpGV=E80u#& ziP=6doNueNuO`JAh+ov)MtO0q7M0iv^&fU+6T&xn$>t_|r#@tY8*6SU$I;!HNv#+f zk>T%{(2a6)^&O%NQg0?*E!4DXEL??D@+0COKX7sq%ihNpQ7GHgZnVueR=6!ZVc<`& zhONZ*t!v--bIXs>}sQEN$nuG63GUf-cj>_pldTw0Mp69Q&Y(Ft^X~~2Ffwa`E zblHDLSrrOHRaEXrUZbUQI8O=Lj#I}T9*;M@(B`|iZAO)(tUv?p0YV4Sw)sxFCm`9x zgh(7ClhHI(4QQ~*LPGxV6S(mJ_uIB&VkSJ;X2ruB51W55w8`vm+Gs}@3Xq%Z#f@oC z5KRtT3#Epla+N%b^i{|E?jP^HzTbvRh2415`yc<+`0ahhc;mW_c+e2u=WKx8!iiM! z+7_ApC841eKjm-yGOWb(Ou$3ln5~P%smajn_1y1|HUcXx_1BK%J5@~-kWFj1QI$$G zv&Lri-6btG7!|H04IyfuVdGraWyvVDP9&yUWyGFUzlTz_6;*y)_@1AB2usA~;^cuZ zsrq0>Ls3dHY*t2c0H(1UY%){Vbl}N#M8z$^O3CFA}*JED=aqaL|33u z-=#MCGcq}8zf*`2v(|jIWp}7qE64rVKLA?tUgV!@_8Eznp3Wvy2<-IzAI(>OS-gTq zSCZY_DUPIdpak^qjsw-yW)yATnhO4-Y6%!N^Q}N1Dt$WvmrQtq!K5xQaHMpCfzi#Agq_=9M?5 zI0Ae(EXZS!SroVn!81Qb_ zEQhP;Kg$m<-Pu(y0a|Vvg!cz;9mO*PK29f7sLu+0J!$0#^_yX-EmmGMkCj2#^{4w; zLD*S!(bZ1&eDUYVZf)ggru7iM&A-Az^fVqn=5t*caTk4$DUf(xv!;nh*CA>l1R8ew zDVuFPf!UriZ+DvN6}LyA1L6ngT-spS$|Oxc(EQ4_%S3XrkbW-%Q?~V}&5X0yaZZw% zoL+f$G;_(8hJe?4QoB-{_~xHcgl1#l@ND+K%a6@_mAmvVo~qBd+o1=c>~mc$IL7OB zdUK2bwWSI9W;YP((H}}#<_ov5vN}}l$W8FNx!fsgpTjZo zNRCbXo+qez4WPJN`#BlnnU3I80!H;e=S+tQ1+!C^iWKyZDtV^s$#N`unwPV4#BcFN zD_;(oks(3VXyQqt_htOVg6?PnHB*V;K^q!Ylr%qv46zSvWHNE`e5LuDsNE!lGMR0oG;qCo8jRIs%Vn_Q?@v6T<_PcXR!fv-asVhrYuFC~ z^UGzb6-`=lah=&gg(q^raAh0DhM#x6GZG?=munq&MiC9L{{Rqau*5mava8Ab#2<)d z9AI2op7c71XAkFCXNV;gg%!BlnXc#hw%I&DmZF?qMcFp#I^$C~f1HNP@N8gnXU zW<#A1gWhTZkvCe`I-laH*+ySR_~hp$uF%9)KQO%jX2V^HQ4?1Ij)o<3NgsU`d=$r z`F>}>#BDLTZbtI_)dUYqm{OOxR zBQWZ?K{k+ioASKRqxz6QWxI_Dk-MJtrrC!G@NDJa%e}r!hR$6VScwrxR&CmZ02J=I zm6AgwY2IVY;tGDp`6tU3KbwD+7MjE^rux}Ftv64FRBc|Apv|U+wHTa8!+Hhq-{uG8 z@914w?AAl*xaG_WP@aRp=Rd3`Oyx=fDEmlmBYP(>pUhLRtbeZE;lGVvRAxu<&v zxBgoBvRy{)bm$FjqXdyfHLlxjx6}M`V0e<*)=nHe-p8tIQ~6%aulO?qQi#LguD}uF zOvuTLgf{7B104Lh^Thh@q|x2n7~`lMRCcdWb5tY5U9OW46s+=P-4;K^k#pLVb|&+W3$ctwV^@f%h{d7GTbp`VcC!N4AtiXM`rCLI5&N_ zrD%FLnXI9bIMzA6AOk4wM{)Db#*;%Fk=^KUX8>E}pFMtEzm;`ycM)fZzarhJdjU@j z)@rl{64|d*K^9oPl-f15)RMULWomCIBvkksQ?E>ppAP|b8f>I&9+#-GpQ>QDwP69Boh-9>0bRFu8&qPHCPReyQu$acXuV zV#DA-Xh&htXH~3#IPJ#6>e=CXyl@>o?rzl_twBz`st?blbCo#kS_GvDTj#6IcK*|p zP{_wkcI&qlH35Zb)Ocn#4UX-aj0Yy^#h$w*v_nm@m*e7Egt6M25xppW{5dq@>^lt} zVGl`prlsZ$LM!HWC8!Nnv=y&vkDfTCz-+nM2*@}?(|<0k?)A%oe8^tm(y}E8rst(R zK?f(4?P0$T2_A2zyr?cx5G7WQFx&tn{4KBpe%0-j;K+HFy!iXjTE~}O{_~CSc8;}R zrhppLuZNB~37*B(NCCP@Y2=jBub*810CpM(*RcbBo&H&Yn+V6c*~_!mbUi*xt59I0 zJilqHLVoPKPp3IKGsJi$K|Tfz50TZBNhDyh8j9{a=J!bfhw68@=4G*Yp0DOjH&nb6 z+rq6PDFsQX3rg0fVf1@s^5>32>1r}K`J|e6nRMCjB+}hujafGU0pHkWILk(YMxqCr zrl;h+DtMXfB#u;*YFCRB-0y~R2WH%ufQ^Ttc~i@_-cr)bLIiOkF6z5=+w~lyBzz%Z z)=mYmRN`gk(1ryZRp{7fSJT<< z6jUu#ngjQN^4|nAaJ?3fv^Yk|@8!?tbfV?_zpFX704cHf~J{-KzeBu_S}{UpK28+e=7!%tAbS1=v%L{c~a93f+;^2=aKZpMN+X zMUAX9*$MR!oxAV1h~G8Ztn@fyvCZD|-^-sVU3t4uZEwtjiF&G3ov3SCej8>U4$nDx zwVg#BpG~EtK1eYuMOb8NnLwa4J{#|u2M6VyhCG%TwwveZXO*mDMOYXTtgT&u+#J|r z)5ADVK<^*6YP@~Sbe{=ojc)#|l;Mxy5AkgG4x>#sh&h1~Jmbp@4#fPxQ- z(!D!m#!^Pkl2REC>9>@>Fs|EDjHHh8KSed80o2yCJx1A7Nd>TaIX;T={{ZG=%P5LK zNDajA@4XLf*o{X6iZy04r?=^zdQ$BIl`$|C3_+kdm#5bEy9sJ~205zvw@AD)JPfOH zjaNqlYIhwgjGSC9f{7lsw0(fGBvml7)w{?tY!JdaT?db;GOy^M~dxoRZA*=|x101dg==gacjs z>@xu75*s-=H4q|;=E0`jUEkYW!g;T%zOMpD73I11%sp04IPk^Q95E)t?2j<%lj<4* zzz|3g7ndMA3Rmdum{~E(5#877F!4$9uC)Qu1)JWbEhgv6HUYSrgHvC_!zGJ7MXEY~ z4BPArFDKgSzD`SJWuhlI=qXW8)<4?J!-Pr}9kw`vAD+H^@{ykEb(tDDs8kR^1e3qH z-`l=m;jni=^p~9Z2gyFJwk-8z1`?c^X<7h!pQkf2=h}kLAgWOO&WhUJ?q|1JM;QQ8 zhKvCIJv=hJQzSJ@C<24%-^yJ(M!L{pySWv;V#T={?_Pj+%cMaT99T}iq^Hg;6`)iO z&jgLggxrFAW;8QdrzqzU3|jMBlImFAB_-npDMBi%PCYiRTaE;aaB|EOZ?pdZBRtgJ zY_N?cQykE_RiXFTf#J4hz-?v5fjo5dKQVcsbTlx}@tEJ06n5#>y|V|3w|B=>ASvKJ zbG?(ych=gtem3^RmsB+sH03`hP%CSd`wdu}_?Z3|4(G@U_pYc-|BM3~4sf&P872NB_&hSQk6O7HW!O9>;el|kkS z4Yf%hFbCtCIrg!tdVb685Je<@dGj5G#*b^NSxh66X+*N|9}@~vgnd2#01Trxs7fzD zbv#DHDzW_P)9xaNPSH;pJvB!pb!t%4#QeMFbTSA+gQVB?kcr*l-E6W_t*@Umm!BX{J2LI zy*|jCs8i$rjSxO7kgannn#z1wP(2 zu5K`3@Qt}x$jDx!sQzce<^38+CL`7%kWqzvDn@Qbz92hJ6OJ#3eAj%wV7!Y^b0d}q z;9nj?;oq-1(`2>>mkdYMjCn|@?@ zS`BtHaXIFUf=!#@2f%IHe9Dygg@+Kt##SE{U3p?_ePSz1W+`nXs~J)A08kCP_+(>{ zMcF{gLwBez<>#5~p_c9|W|vK0g{4!*fbCtW(D%&9;<3csF^qzcH$GF;bf|qu?wTM$ zY9IuV)Bu*HMpH4-!^NNS{*-@}^sAj>;dC@DaXSEHcOZoy(B`u~kB{k3=SVxgtn!DH zVABZGVPC7Ff*h!zBzOC>Bx$$>HcvkvC!tAZ`jnCBnnJhLN5>?G;Z;@XL+z8{ILD=N z;u7Yqtxs*IO0v`$LI}WJ>eT+Vu2+)!xpL1Cc1wXgUnoX95RjHzcD}A38(iM)NMAHnDdi$88r6 z-8RhRif!Mht!Yfk#RD;AkUMPk%bzX1hKu#fWFq3sax|wV9VyG`$jeY^qYjvpZ<4&h z`HQJ*m#5T~ltonFu4tmP_`hi84B~Thay0}%Q}hS&zeusye4lHnMxfqF9b{%v%)iX^ zu4Q7VMa031FE#TYm9MlJ8tTNBAoDd91XreNbq9>OIU>b03yI~rlIC;7JFd?~H8if@ zFUKy$i;t72vvgjEXXcAYZUvmx6DV(qwyKSW{Wr-A29{(*(R}UszF>QpwF_pdQB;*X za^8opT(AI6>?4Sm&>mUPY&Bmghni9Kxgb>)JFmmwKJV3?4wp;B5MUzshfvV(Ep;h0 z-7A@qNee(t2sG{2rcstWJ2`r32{WB43(FW5OVaVp9SK@?5uF%3|~M!@#p_+kYcM}#f(&*mqXt@Vu}L=pOoN%%;i+-?4TIc9BE z)Ejae8$NpSZm+9(F8TE(j+W0N_NLYF=zX@PQH+teaAls0?rjIoQ2DafBA?twpt_Bg zyH{@Ab8Do_$FXzqYPf?F^Cy-f^F88vgZ&;B^*Mc=*SFo2_MV(%793qisfKy)%<$-T zYozFu^+^aw9gkZ4vq^jdXHAqDY#48lEbRQjelD*;Wk|}ZupB|HE4V$q^D9k{#Fr36 zaTt$N7W~1m(Dc1V8*4DXTaKmK4=Q*59vJFArzZ}Wb1$5A^AviSyP4TkuvqC@k|+-S zH`{Ed!SM#}Pl$1w52gPACVw{KwzPjMOUWiO3NSPWYH!%>w@klAJOb=zsxyNv^R}+y zXP)f;0HRWlL)4G}+vqrTctrU+yg7T`9A$*Onw_MED5G_tCY+6WZ}gnN5ioG|P!lZf zeL_q7IL8(?%DfBKpKE@-zE~%m-8JKY19oMm#4Kz+yYPo1l?H;NZob*E1PI$)<$p?l z`WsKWjyw5BDhh+$oONPAD zk2Go4I+gs<-KVG~D#bgH4M({8GcP7CBI*Qym9cBMnmWU034%3X7BN~8wQHF9IG`Kj z9wTo_^52j&tJqEEuL8?a@T1a-SGe%@rucE=;@rC|QUFuReBEcK+WCekf&h$B5m7*) zQ9@`tAD7R^CIuaxR%62}Q~cQT2)@!roRFeIkNDu1oZ}P&mmc4CN+Z#;k*2~6>fI|_2{cw04t}fv;sL1#ZoqV}&uqubDRppj#-~A? zSW6DJ@fF+6$PsrB2eX@=}5VmEAA)}<&SU}eomqsO3rxQwV@7w6jmY)EK-G&$g zuza8S>wl;Dh8S!#usOm-8nh>4O^>}Wr->bk51 zO!P7G?1Hs#r)p-GQJ2+7I)Xwc^Zx+Omv`zsuc9M}zQtF$D_VWWpv+Ks&kI&4_=V)3 zm%d-VeJ){p9IFhHRT=)xRBu{}P@dVIad3+P$jOqJx0tlsySUp0MY2m(f^9_XP`a0Y*Pb#sI(!4=EI&?Xq&6vr`60M$X;*yj=1llvEV{{Y=H|n$JjJHHuVj{4B>h{nIW2Z^ZzYF48*BQyYa(U^dF7o4@Fyt@!ct#Db( zP*Y{42|MPxXT&ZBS=rswu_XYdK{crZ!kL0#G8%Gpc+3v`m=EO4S5~@({A}RcqXj@H4&tJnN!x7A!BFJW zt^}HU_1}=E^EvcwrD$SM7#^Q3zIibzOzhdC?C~LNGR3CyEWV_`UbV6xfb2^*Lr>b< z<&)A(|Zlb-E_8Tuu+{Sb^a7Yqk{(ADZsi*1E4N}rAMHKRiP9vVgP?6#XhqsPn<`yhgLHS4c)QWz6Yv2pDJs= zl-d*O52ZnPg6359;XHv@`5N&fsG;p&mStj&`@G(xP5|4R$^7m4Z{}Yo+b!MAgt0*~ z4^C*CXDWWs@a?rSd2q%-8a-xRG4g!@?cC5Z$*O@rG@&NJx5y&0s+O_*Tb_Xq#V==p% zr^&(UiK4~)*ZGs@kIJnoKP*~92DPR^3Xyqi!P|>;E&{P1DgjRUj4%fMUuen^;yb=d zzWmVt01#Y>b&$r@k2Zt?0)^LwdygHf;3(7y2+V#83t?GJ5)}pXdU1XpX8-qhoe0LP>-zwn+W$Wn0th~V=mhKCy z7Ld!!(;)mL>;*f}ZQBMowv2)Tlh4c_&58WmZuZn^2z34PZt6g#2Y@{fT$Ia$Je(%p zZ=h>4=nih~;}gp2zzUK9G~S|}J7sakWb9!eQ>|amckSs*^@-BZRpn6R85}KWM#FBK zjk{MbhML+ZkihJN(e?dG(wdE&ul4JfBr5%&pmL&(zLWa0vyI8emW8Nm8r9;4ztrNC z^CyDb5*V->x5fIs@-oLw9x=*k<(FLb6f$%4?fG(bsPV4Dw)^FP+np$cp66Axw2fzh zi=Bl#SK6a}vNu6 ziEe7V0|HeT9qKbfs_hDv+?ujwxW2yfr=IP6sbl(mnNb5NX!?LUS8k%U&0Mk&ZPnw* zW?xO{Uzv6vn3f1M^H~Feq_0W={c|@Cqs0_l{KN?C^`UU)DDCU0jbpPe(cxZ3AZ4~5xeF80L-06ZAxd3z&rXyh*dN^Prpp(b-I(5ROvHf z;yXOj>cv-0mRsXTl_^Erz#5O1*_)&_8)4ws+4AR{KQ3=H?uJ@X?b z0tJpshi-h?*Ok1)ww4A4ogy4dY}I;!w$-j=% zg?2$*sy7))))E8*xbVb-+O$0_G1;I-G?*M zmHk61)oTPs%;l6t^1iQqcjmW!UPq)Se@vQe4(G&eoZd*wP+e}XH*#a;*R{TmNB{xj zpi{E-9YuawkB&Su;cLes!)!mzlU!*mWVK>ZHYyDP9e>))+{b58oB(ZsYW{DwlTDV^ z;x-aUl{8+2^Z?hmBeq9QNDeuli5--`EA)$q?d83>jfG@zK{cp7DdFNUPY|1zr80zf zXFsPdu5QhZt8soHxk>@VR1c)nu3_iKVpAOcCnkQnrL1~i)eTzVjY)G;O4qN?GNTbr zb}8P>2Tz(8y!2%?s{-3~`FI-U6eDtM$CM3=JZ4Qckw{cj0s@Xy8&b8VZa8QrL~}{? zi7f(p&`Gm{Ls8a;-kW7J(#Bh-7D5j;FQP1$vdAwO6#xLLcNOoyzSzSMJ3BFth;vHs zbeoGy(>!RwID7_#3i8|x$;&_`x07=cuOyS#f?LoaVCKiHO$CtGhx8RA%qgJnp z74gb);o@=fl3t#d(B1lM+<3n9Ud`L?&2-_z$-tbglG%NDN}r6i zMF-vf-cVtCIC3IIoPLmPRaW*T<1;_T2-p$54SoLn*6OkEOva$ZSZ24{48CE~r269n zcAXg$j{SO`zWe1-m>W1pG3Fl|`O8a|(&k|-Ks;oI+sCKhOqLmvXt}z4z9!E{{Js3& zi$T-lvRD!4p$yCiaX z^9Ht;8gfEO;s?UzDam&`?nQfa%y{H5*~h>{dAvUU(&8t3i?4<`C_~fXDo^#uaapG; z>p=eiiSG1Sk_&KJAwyQ{w|vRMEI9-Y8V_V$Cd1BJTI(^ookf8U6YaGs2>18Q>|jV& zS63W<5xBl@^FNm)v%8Uz31lQvn-3lQaN|B7H+_b2kl8HKbS+y{bc)I;DabC$dzyH7 zW&SPmVU|K1*^i8L&}t55mI33cBtN9GvKZmtwMMxay!_?)6yj%~wyGYJcP{{a60 zDw_WQPS@?U$&{XQA_k`5lR>xZ$qeQ@E<+gy-#Q=V`ojWgk}W1hQOpH30B>52jeIiW z3LCt(r${<7YkdhLDPwOyC_>13f$l4syxiPw9uYzE{{ZHflkaWhnWlx+&{a!N0;8oj z?f}XshPMviNuP&lK1`0m=1J@&`*4#c=7ovdW19^)p>5f6*6%OZ?6{+ukgLbjYFB-; zYl|hhnt9s|w&3!#3<@h!i?QF>{PQru%rsen(xkSbfy)p9H9flQGNDDnmRgk+Z6fC8 z8@OYD(nf9y-33Xe<1sSh1RRPjinohU{{R7%L|-+Ms~FPJJ~-*-?}lovBc1^U986 z6T6d^V2Vd-X3p+D7c&LpL0{Sgj(~R=e~rW(T{b=v@PpC5cWx{rSCFajDMWook42o*3 zb_CNir!ENFJXtuUyUIM9dUdTppjL_|6=1-D@e#PL;)kwld{Sjj*CsJ2?DuVV$U07~ zq04V@s_MUHQg;M@50yQ$cN_vRw_k<;8n=c1PunhotzTHg#we6}fjJ%}C_;hZ4Ot<8gTflw`66JoldBUQZ#!S3Z8AS()Ei*f(RBlAMHs> zR=unKe@0WN%N`w_)FLObeAB4d-+5knCa{Uh&;kJ*NHskvU8$Orst_&?d{-tqKQV72 zNlA^PaBI-0pzt7N{{Wd24jeHaEt&7+?fv(hJk9z}MOn))K|wW(qI5ng(-1!VS22nVQVXe4kL1s zRByT1pPe$ykr3IH(AnUAc56EsTGrk`tFseInjNXPj@gNmP9@33<1jnEPu8_bZSVdf z!ZwhGr*ay-dw(3w!$5AM9}u^?=$fXbrCy7hRA+&QAVEK7fbJ=mM(<{r;jQ0O`72k_ z{LrGx{{VvA%7tVGoSc08a_LA+)SK~R9Uf`3Gg{MhpA`g)rq`$QXm9s z{6Jx~2H<$$?bvb3oasiRPlbHdrCwg#6A~mb64Ay-Uu@9gk3ir^#~6Jp`3d=9Hk%Up zhgE=yWCZZz_K)n6JPvRBKT3I*Su^4nvuZjeuB~e>mv;zOXJV8ztq=6uCE60+mrnu6 zhs>9LOx83{Fs!;nex1K6m8BFYJ!_iCKod^e6ignstV^s0_*p2cO@`hXnna_` zt1fOgj`^$d_TlZJl@VS!la(VhJJEuzd-(qVOvIidc{0Zl9m@;1{IR{#Yjtr6NJ$I{ zuO%Mz2ALS?jJGbITac5o2L9CDh^_SoXku#oL~KI#ue~x-jcgp9CUaZ8_wxR6XJ9QY zB<8dTpc?T9a!-iugk}*Nw|EC8??IPHntMaS66!%MO{+}9oXKs5E-iy7@<*O-Ahdf) z2cpn!h0gtt9qF5n&g}|vcsPA2wyWl2=NJ;h)BgZTkcCD7(!KLDQ=i1-!z{Mpe9if# zt$U8j+k zHd>t9dU>UK=a6*^_`PLM-SVfVNvNlQ@HERjUIR?AVwAUG7l~(OF}J>iLd!tWrE5xc zsqgpX42+KH)JnExeo)gRYx_&vS9i9GReGI|!fQd`XfT<8c6GoC-S=Lt=TR1%LQqP{ zMis3#s6Q;)<=2CboIVZqe8qeDi8PR0>EQE}o=j4m6z&NlZx7X)FBhYc;Sj{^HD=Zv zqbLgJb5>K*tzJ|I?)q>_Rmsl5U0HOHrjtBVY5+>5R7N8wp`fPS##ss9Hx%gX*kmI? zn)-2jX0gi%G*&bRr2wYg`sF#He4NcZcni`$D}J%%Ypau}#u83dRy~1jw-p^d@ds)y z>lUaDi|Or8%vKU<9;j%(v zO?Izd=jHnIS_qErK75idE!Cj4wbiY)8xr1&Hv$C@AWrrAa~tyqio-y}X3zY!j?^=C1 zpORZ_>#|~{T`n}ZO;@|!F`$vW_$Qfj39%J_X4 z$4U#ErokxkVg78l^45<$SGI_<>Jj`viV_cxZLnp>9DJS5DI9#+50?J`GNja4Bg4zB z3~DF^Xm{TZElE2jQxbbViER3(@0yH~3ISh!xspc{GmnU-_a05M^4v|RM#@#bCQ?>_ zj{OGX$1*U+IJaY;MPp~oADCWky|_P7(1m!C42N~x^xC_DeaQdX>W4ECi%XCT^MM{v#3fH1A^11jYe-HkHX}MW9rMK*R<_Q z(KNkCfW&>GC>L)307h#ya}(z0V9Yr_a@MD`^5&t!)=^GX<55B>{4Gz9KEl@ieZbw1ylEz0C=sKeKJM*jZ+fdQ&r@ymD^h?v4{U*Ct@9CR39}Lrs zB$IwjXpgOGt7PHWN4qsCO}Y;X^sZ&&hZ)^xnePyJb^Nccx=sMIovMVBxgGbXUGluJ z;g;=F#xCDN>E1xK)UBhq(Pk=Wtwf~({!joE-`_S^w8CR%5ScQ!$X}WE*PdV3R@BH* zZYAX_`}`ia8{y_(vit z1qtwMw+X&&`dvvo7t}g+_`J0?vJO!2prN6u8~qt(TdHy;laG_gyxXp6s6M5CXs*b> zAv8ZT_x$r1W)T!ZG7ce0m*t+XC)TENzNaty17$%C;-(YBZ z({7vOq%V_!uFe73mGP2yg3>@GAeL!KBvWn9!^bF&N;@zTvAIdL7;bdC@ugbC(!zw4 zay}MP2I0DVvoi*7ld<9whTPtj`Bml=@(#60No#4BiEz~sv0+0&&k)iC2hDG6tC=>^&PVd zCYy(MCr_xihUz+mp1b*dT)cA0@Vzz!`2E;n3od>vwrM@`-luux%e!qLi4%*HGqYBz z-6`$-Gi`?uryEz!i`@SJGB4%Pe7g<&3=p#buiOJe{0?O1#kH3N#7AJje68j+y@?`F z)N%&RURCh$`R1cMMloT4m&>=BlyXYZu#G4eYET~na)?0Blef^H46zMwN54%z zTVWaWpi)WYL&m#MZg!`)(Ssxl(j8R|o-O44N>9?!q@JpoS*RMdW+H>9 z(viq*>KDFElT^A>A_&ELxcB{>j~?!WErwU7{!qg^o14CT2qwKhk1zOayB13fp#yfv zqw-uy57n*JS|E(0VryR1?O&c#Te*W72EuD^q<@61WxIqbqr|O9>VA{-ieSyNk;Z8) z(Jwzr>Q=gJZtC|khNwRYPKWwa208I;oEaw)^smj$7SBmkv(oPUK&i~px>bFXI7lYg0{yKaOGyM(n$YYIubtT2=dzB-e7E zio8vF(0m|x8u!BpkT+<}ILDDs^bH#CQ8Qg@C)Bo)slkbAH;6vN{j9{vlXOO6Lv-@= z#pS4_Xn+qI4lckq!%rXs>VOx1y z%2R09pdVRTYDGxoz*la-^v%wrFvpIV;mUZa@x6zf8_dzZjiINi#l0|iP?fJ<{WC$2 zP)Xqpn!Et+_wOxec0ZQ30^;n0s9X>Ng*?b@=%@8&$B1dgx_IHaJu=TxI*EtsY4I~s zO4DJs!)@~)Ca1;Z(eDz4NA!oC@SJw=w-XvQ&bsJx@(7QC^KT#1N^MGOJhgG%)LGjR6P<~YD zk;jNl81hPd-eczvG)=8)(0M0CP2(#8;=Ns{ep^=@wmm&srG$soO`=@+7s=3RIz=B* zWCXDr)_`t($?co`c%zROn*%9Bl1X{_sRoIo3r$OXMQSLcsp(Ui-1&!xU0PwRmsf#V z>nF}S!&pFA`t$|C=mDv&+k59djuM%tFAh=F>fUiQdhTssQY_K4o!D-9d;3=~wL6{Mc*}w;gU%WjnveQN zPiCH2$@MzZ=lA$~3y~qf-&no5QuM?OM(_H8aTCxuM}w zrk>RLGa^_37VBe|i15kjo?{V^2s9;kI~%KBn^R;@Bv% z)uSGpkQkBE-@SeEuM>x2jU+%XUb~A*T`bRQ@zG6bLC2?lzm8^j5Qy2%&BHIH^S$Th z1-sn-j3Fgl4?e$x|JvF-&qBR6%g++Ghzg#CmWw~W6XP-uC zqTFg1c57>>N*{_IRN1=b*AAY=7K1Y*K`4$S{UHdHhNFPTr3a02`M^hV)2D|V>0k3o z_fFC67gLFAFsh;|fMj9?2ldQ-K^&d#eK-)X@;xKY`qrfzBr=#SxRy0)f=6I$nDNAE z(n~qI51%!^%nR6jz_(Yzu8zS8Gyqn$sjkFjm@!%1lwwKUoOw_FLRO+7zm=3kz{spN zWp0!n^y`%BvEIRyXBcyRhp2v6c}w&M)!>FWFG3Kk0OixiwQ%9d7>*fpc3OO6Bj&5$ zBwSisq^=}^b|enDlc&MM z&Bn+oTc^Hi)imoh7P@kll+};IX;3!zrVVEZ6vlN9OdYkANaLCV{*d$prF>~kvq)vY zY&8s=T-7eETU%C(RAPxj6a!8~QirBypeM z{%!oQlHviXSfCQbD$2B@P*>vYa-0}=gQ?FF3l-5nGc_M3TY4rkrZ(d7w#UM?AAUzJ zqFBbw`e6DOK}~U8fh6$k0#ATqGLhm z{{WsoY5xEW=yBUw{4ZW8JJ1b+_tj)bTcw(aQf604mA2?pg{wH@2yCZZvSFUNI zK$h-&blcnLiT?m4@3ni2Yws<&c&+5AuG<4&?8)TO9LI`0orC~82ebLhPrldutu~a< z(raj0jdviZrBBZ&I3@)iZcbcx8h&nB`CnSOx)DPQuxB8%lkh0(@*Ww9j`I3Tr84kY zZn5Mm9TigM=0-EJ?t|>B9`);5oX;41F-&57UQFBa^5$k=(W@aU?N9?9$*HNS?a*ci z5s_>-I8wOwu4pB&$}m-@m?TwK_q7(}k(*`A=}4`G;M)@^nch z^BAC%@K*wzDO!{B$YsSWV%$5HEttHwP+Zx`dmALLHzI>$LrRKMdV}<4BzfD7o;H{M zSNU(t%Wrq*zc$?>U)st|x)KKkQMTVrJbv+A?t&njF2}O;kvo^reo%YAKB)5@)Mnnz zScn!)*}>}OqN1aq@XoJJcHQ5~9wXI!-T9lRc~$hUCwWjoYAgPfeLh?{cl-QnP5yb8 z9NY(Y4^e^|X{xN?Y#aP=A~SEShQWgc$wT>3zdQqr{4z51%sFo+8cx`hL%IkLm5 zgvR?iO!_Hd+zWi&=KXf}Ua+{+E~A@IyA91&K+(twpV_S|>_sve^uw5ChqP=_6nx$n z=G{2!{#m;J02Au+Pp5J}1o4JcDrgOQ?0b@Ssn}+#HWMw2u!d-oBn=mX{#5zm=kmW& zOMP-td7#{v^tiDMgL;Au2hqN0A*MJFrR}uctsKx8vKP|Y&yu{c`H+$Mr}Dj_I*kk5 zIHP<@J`li>(29K&&8{i&2Upr%pBv+WdA_6O4S!VAN0j{Y0?%<1pHARY(;Q8AENFVy z^>}7TmwV4h%O^1TOH%UQx1-4|_Mt7iX`zbHRb7}!I?$c^Q{N?Eb84I>4Z!U4eLK#+WYB!Ub1&ueM&nDGLkd~4^4N-3 ziSR#nM#$ri_8d8DCnHAQ)urk`m0nY`3Hi67#eb;G#zqm!OreIW}`!R;PJ2gWFzO*vL`HL$1av9s$;B4s{TVkCXwY2 zGU=M$k8u+S-JL|Sq14-JE5{HvE0B5Y&G&EpMz^>i0*rj>w({de&OjyApQ$ zhEg>h8BYj2(Av4P(fqG(saZ5~-CsP6!2P8a0Y}mg--KT>;7?85@|_P|l1Z3IuPfB? zT7mcjnNi9j=L}{qLzm0C(&*pfZB%+mB!Vkg$fu}!5-Cd3xW_3e;Rl*4^4HHx3oAq0JYA-r_@4 zBe8wW{{T4S6{dk=X1Y#yGZRwZ4#Wx%yYb3!$YPbb`16U2Mfv{hOR5p4qR_Z3M%&ha zpP9#1kV-Vs8Apo8H`2eAIy37qLv;12_=))%Z|rdPUZ0LuU66n~hEe&;ugB#*EUmoh z6w&~RTI_yV(Ca1O$7frq&B4j@4V}HtziAEZtkN?I@?lVS_su>mTw>iWOtR#F)oEoD z0HFg^a$ULuQSZK8kA@Bb&nu$yFDq-Y>H3hgi<6~zDxU+=wdvtZ&}N-vu~z>;5UVxq#N1%hTCFb!p%e>VqN9I(#!)F7rc;jz+3UVd(HiMvyOm4asRfSIuX=cl z&Cy};rA#I%f97k!quH$Y3O!aJlUfr`5zuw;?VC+rF9=f_GvxWwZ!}GMR@M;9X1jCe zT97(z+li@8|a<2TEzc6y`R+=Yw3Nxz= zw$smW+s98)UQL5k)Pq{>@8h;>zaetAiGcv|KR(YL=$85cP~?;1)itT`JCWg&$)%%V z$AJQAhqwXf5VX zF(h|Uv9^eYaZQaWLH^!gYK80 z8T{AtYg%h-t=O`x!a&T!Ziiq!_dj-5EZkD3GC7Hjy?4l;oWoUyIG$ws(^905j*L8W zWs^3}yCmdZx2Nk%aO!A;Av}m6lU>OtxXpB=B-6O&i2TR$>Up0=d$=ji1a4)AKzIBz zDlp@NY-e(QUF)`^Mb*7H6qadvw&1O3cJTJhY*Hg)?Q&v_QJWcGuJlE^!vPjn9rHPf45;rt8-{tgWf`D@H#M9?(cIswExPjV|H5f46 zPUgRc7#{Z{4hv(DdFJ9EY@SyvTXrNJ$9f;vm-r>fj*1dz4)^Ys?*9Pp(2mY}1wP*_ zsxT7VwC8}w$?U#chV31weL_PDTW zpK4~uip4kv1}{F+Jdl<;jQ2LoImnI38tzW}9-a2^%~{isZA|Z)L9AjIHgSQ}aEyn(X7A>OWFhDNVl69SsK6_sv+B9?wyy&JO6^W6CWj zF=~0h`>MX>O*&=LX^_?M5uO({{|@83F2bjCqW z^FxA#zAe^#gDY!ED@E!?WUGVrSGeLS)E(>NoYk1Qn!N}kXQ}8q72b&~amHKIU>kBb z->%<&TO8%kHQ z&)N>Dc)C(Z7Tl#0N7;U6zpJ)p%z!D%xSotx%6694K4cosp30t#%}NCdz*BLy`**I{ zukeOEmlr1mPn$LTsyc0 zx3Z8aPQ2Te{{V%4jL~3$fwJId;gjxvFW$wdMlJ2232#cr$qLX4Q^Tg&)8f?F^oJi7 zE*A8S7A;Qlc;;R#j?2E|#D1}w$pJa;$UqXyZoewv)dD@Ls$2ofn5Apmu@uXWg3X6x zh){S3<}a7-bbz)qhL$+X0xLtX%C&iT1s4lbrZ-{Yx(}No(e*Q-Ypx`-X@7EBp8=sG zuld(C+I++v`8b(mNTBsEGTd1%i6z`@f=&z*ms4M|DgM@NGE5P(jm*40eVC~=oMI7tb&i?HyFIXoB6j@m8v)~!oJ5HxZL73Hv~%qfowTR6EU zWxLTllYXV`E<+%RS$Q=p(zQQ++17S(hDh$}GGv@(eIA$jt)f_YuG;S6#n2Rp9hZHF zTKw{!($fMiF4j4QSIb|O-cem1S#GsL1G}?vrAboTZPvM~(a4idyHh_6H1ocSx_zC- zr=&O5ASAkjN{%4y*0~I)!Yi$hd3nAeF5f+7?Rm0K1pr#~?@&JM)|^!1$5Kh%mFPZW7jlbv4=8wmkFWtjr(XMb<|aCvoRN@? zgW0dO4LVyvZ^#zhif#}2p83CoqY%PWIlS{-y@%@3+Qgd;&@VtisI5QD=Rc^-LD|^C zVnHOajzrPkYcgAd5h@cvbq-c-^!b-Su92E*#cHwfi&z1 z>)y4@yne4!5u68w{&iejYV9?>w1gQ6T8^W_pN?wt+@y%djo`jb^46?Z>K97U7@DR> z8!+l94_ebM;Nozy#zely)3g{hyC~l1tH~OuWB>-OJSo>R^w=w#WVHNaWRuLkM~g(U zI*ytWCuSrR3&@?RTJ`KVu4L*o;sa#h(||X8QLp*;T+-)fo?cP&;6P$1d<8yvuJH(P zB{Pmpv&#Nnz4If*sm$*1lUW5wG+|w;H~m?R2$@0E_=bz=trN>oS(7+kDH@I`O~~;* zx6I=a5wm_U383_Oyu)wh$Ud_v0E7T2+O^)fL}p+dthu;L&o#d@>b_%G?c#1WvM(wf zn5pSOO4l&wIpi(S)o}(D50~yO?xKy9#b|!jMN1E#PPtq$7#-YP_mI;)c!rS6BqEUk zTGG9UJLc~Or~$K!sL;v+%4v7z7nmiq0q9d^AW(hP+vk}%bzDv^=~cAOW1Z#<^Oc}s zw*LT5Yh@EMks*(p&3w~g4AMobJ2yDU<63na)8*r~VoOc|w!@!`bpHTH)T7nxp2{ZS za2OO}x##rKqi&mg^H-A@;;`(oNJ=*JOHCFnTHDgpV**IhjT`YH`*Nn@wC&S6Ee2#n}NCy@J*m&idJxRvTG(>qk6Z2QjvU$H( zZAKL>9AQ{frA25*%DFt!;zl9FZJqf?%qLQ|iut7iP5^OLsbfJ}owpq;lmW)dIE-a) zQSxu*y#7$VOS#F4)723@N%*`EN)EXkbCwQHW;haTKG)Xc(Z4l(u+MIh{bP@|=eBI( zBdCv?xW|?xQGCJXZ!TQsvAoVn(Rjt&K8>^7asm`r_@8q?EA#?;W|Wam0m~yTpEBy&k^0=p z0|*%;4+|QQTVg==-(l^L(?-kC!g1lALy|nw41_qbcskreFDvg%I** zKbjs*o6MG$TIkEp;7;mgG$c4FRJ)SJo4ZEboP=aQbJgjeD{MF7ZY z$ugkj_%DVL1^;tgxRL0*}YId`|=r^h!I zV(F(}izB z7G96$pEFx)dS$kXOLG7_FWL$RL*NEw=Fi6pE)4D^Tk`T7G%%aBMdD2h3IKX-(xQ~k zdm+7>v0@W8Uh8qLJq!^@iydl6DhLCn#B|M`mo#}dPYi+dvHe?6xw*BL!9l1}%nJj^ zfm)2eEJ6lZlfwD3937C)5|H2Q~M6Uj@>zFE^F((R$Rjb^zKnFNdha%s4)W42*q z)A5@u<2vT~XI+I-a~-NO+qnqUJAu<<*yd#S6x)+1hVM@Df8~w;0GPDa)@*?)tyNm? z!kY?H@y1@L?2LGL%`&|<%Hu+i>9Voq{o@1Epzq^P!!%iAa%Yw&9?ui}%=3Hdvi^;o6y8&$rQ`c-vHerJ)3BV3jG~5bqN54;ew;a2i=xPKueM9*( z`B!iGe**cBTp@L7M+8zi74Nlc)|ro&DKg#4)M`Yry(?cx?`)V@vmqe$6eRWVT7B3u zLbnevCM5HJCYhntk|MmSSjynn?23X%&%RltotkUQ#U5{Qz4DB@_5Hq`r#P)YcnJGS zdQ-sr=G0>oG#fN}b0cqD(L9L$0kj>4Kn+ggOy(l~T<{xN}6O)aGJ`}D@JM!McM*OXh)z$*F)75CBsp@w=9Wz^k zJ`Ux)=M#E`-j{dgd)W1jN&rz4lnPg+NFY%4{{TOpI=rVNkCq^EPi*W)p9r6oWD-!g zGz5;Kp4nauJ2>W4mg^syKjGUsZ8UidvPwuSH(*Jj`DL-64<`5-bbPU>X})0dADAH3 zbjTe~FzqAlQ(BR~YGqKv#N|(2z$m|0{{SyM;RXJg2A^}qE@MPlBU9W8AAiF)7<2H) zgt<6%B4cNn{%Yw`Uy(Jx!j%=;y+uC?Wm$1-;p=jf$>4ehnPa3}U0UiejwkzuZj4Uk z{Og*SVu(Aq015L)%M`Q4Ev>T!Sx}-Hkxl!5W>cFb7FeWVuzbPhKOop!T3pYs&l=oI zRzx3fe*XX?^30t%;|^HODD!v@jj2a(H2Pdqk^qrK4MAbjoqG(}#|Uv{rtv*RgB=F$ z=I7SALFlm|M__7mFASp>Wq<)4o{#xC=E;1e=13h6ry8&l4S=VP`K;Dsz51sldWY;) zrR;jfjJGzjET&k4t1kNyzG28*X{HkIe23;M`*zi(wV&WIux91GYG|gO)cdms8R3`tD=hsQR*mioS%sf*~5h~21E}x^GJ84{ZcPUuhebUf$gw@l{$PYs>T91?B7&S$wR(7V!LJ^@ zoO$X2dcU0RZ*6U3TeUu?1@!oejp>uml2L<=BX5+U@+PsWYIELsjzoY=*vBoGBh z=3JM+mk($j`ZYk}_+UY6kzF7RMhQrHitY7kq;#cDwK+sTkr{9^e!ZJh6 zhNBU`C!A`YS+&w4xt=+=ppdYkAQDFP8+^OwIEcpUvt*P{r7zR(Us#1;v?bz4MpYFg zl^~v-=r+o86E@s=%tI*iZzN#Y!(y1Ytfa>3VTO0;kx5j)%(l5#1sO$QC zzFzYHSxjX9?9dP?O|v^qM`<{EjABN@N9JG3+pj0;V_5Q|jxop!tt-VysWtg~b;@-k z!9JE)fywDFpge=-t1mcON2Ffzhf;_W#aX#A?Y3h0Lq9gSjswCIi{p1`6t+>jE4d)D z^)wwR?@AoU$_xTwoWSn+Uhm46*4o$UI7txmY8sw|QipF6PD``$@4K*;V==bRx%`Fs zhhyd)7B48y(F@BJ1(X`{Bz5`b=PsZ`H(<@gD4{iNZG5>4+&N<$q^eZ(`@a0vPg;61 zmLZRFkl9>Ibt0LXtlu3Mpx(W6bAmoBH+0yu9C;WQ=Ki8JTirg&H(^ID>5A_~1MmRr zKoq|{epyC%Mh4xUqgy^66vAy5+HEE)IUCYv3{Rv$`ydMK-+l96pHfc2s~kNy)$>Ki zlThpS6_eLjW9n2>kma>T`}7C(WbtGmTTC;Puziu_?OdLG+! z%sobOH))hO&B={wpP30ZsMrSI2_Zm?DW~_Q_^iU{Xa|7qtaCb z=3~rIhTreo<(+IJ93s~oj#+HSb1jhgj3Qxj!^S?YgO zw3zC#h~iL7R8^^7#Psmaf5kt<;T&d49!~QnnSFirxnlnSK_`@a{?mMh-+eMz&6LV9 zi{B%ZYf_}v(FFvGDcFEE`}1>)PaK1YHG^fIJ%i|)WzM!@Z%QPqkSRiZFy_;cEISCp zglzb8^8;MD)$ZPBcX-r;=_&g|dTs5R9C*d<=i!FQr;;SNyOP*&kz$EJA%@N2QS41l zZKE0+I43d3C)M6t(^A^mq=m$fI1bev4Lm-IW@HZt*_`F#i(ywf>e^kktG!}+DP8^h zS1~eVFqMu-+N-Kj=kFzHkjZVR+(fQfgAPkw$ID}x+MHrh;x0x!KyLI~pUfy1%5Gwe zh~SIU1RBt&>G$uLveyYih1ht0n|zt%dF1oe+8dU0AJ!U2-i1OEK&MI(T6kwW85v65 zHd9Y|^A@{hpunp;2>1aX5z8DCvWo&Mg`0MdYp9rAG2jFI3j!din=&A%di_?A;y*-av%x`E20dXAnwx@LD} z%s{(bI<75?>dXHC%m_-$VGD-m_IU5MboskPRR?>ehZi@GNq;1oq%b`d9fK;7Qcm^v z=mv9gmmKW7gN`IB{{YTTc|EniDcMJA(Z=Y(Kt3Pan_kez`=CR`cCG*p&zL;7m zi;3KJWUSLM^QY&MeqQPp-c$1IkX+3jB$6g?gb&$JqM#CY-|o()2Zh~a%fOdUuO-#3 z&z`mRCswV+?{^-dAM}t){CD&AT+$(WH_Vt$j9rmGC3y z+ooYg25puBx3PX&ep^`nW#8%z=LnKsY67~k64sl9Kg?;@x6_*~CX{t?wK|*nQcZXA zyUl-;SBrW1U9Df)T&j``%m}Ai73sx=D^cIrWxBuJA4^|nWS=5!^tY5hJU=xwI4pF3 zHr(lV*VmA&sV5SQ0}Aih{WRa_hfR=V`h%6Lj}OrG4P(uJ;|o>tXXgE+Hj>Dyv zNcoPm!gAY8H2gl9a_{Pb^H2QZE$zpce??i^TV459;ekm>;U&5^+8b{{`yhLJ(u3j5 zZnM(n#VU^Dz2v(0m;9su062dn+LFV2s94=e>DD=kRbjb6IsrlYdvAtVuTHfvEY9c~V zsA+ZzNHhmAsLbx$44?{TQt4O!0GAqt_N6@QYkJDX?ZZ`9kPltdZ$a3#b2=EfIXZdH zr$yzuUZZQ~lrrlKlHCH%(gI1_dYb+{yarp2h-Im`a!T~s;IX=sQH#>Ni-V+S+bS{r zrXA_phbWdk*y9H$HWz>96Cet}%3~+&9wXci)cP?Q4>X)0Zhs$Ycjw>C%a1Z?Rz6YF zqx!Y1Dh#o5Bo?3oo<2W^zFu?j3N6_2AFHRu=i26jdv~WK_MD6&K!tnPYUT}Y*fEl? zb)@Qd@x!BpnU(|}yHG&sTK@n{%ifzIjgk3h%hUN<;ypuLwRDXr@++wak6Qex(=wq8 z7S?6O&FhkR_Sek1t&qPCG;3KoCAxxEG_6e*rk(rs-ztt!3yYH-zHrv8FYh&0)NPKz z%Y_~lr$N){%1oQ_ZYZQlemNsqacG^rg_JYykUrsX885mKCB9teoA3T;r5;k>Nv6*f|$*#PGVQZ)x=+GgJ znufiPbL?|ZlQ#)*?os5-v}h%se@TD>pa445_8C1tt8&6QP0@R-N|5QNja}79sobd` z8u)Kq>GZ%xHqJwfV)?&P{D{@RH7~9&qPbW-IT@pE!6UtE7ukg(VuSYF29aMO^y^Hcf#@kYrrMNuEDoH!+-X0s|J1YQ` zu1;5HLW}PW4*CrrOlx!sHz%fb*y<6W^v5Rvc^95F@pz492p*!9JVkctztfuR+LBAH z)@nsl;vdYfF4=2G^i`Z-UB*izr^8zP{yj2`vf>*&)bRnw(Y;|sW5{Cl4aueCFrh16!5 z=1}l?&OI8!9U9RAxsgavK=^;BOvTe`I7K+)HyO4&<{Rj(tYD7)S)^$cyI0`_m~ZrN zhb}UAEiw_iEI-UTGFe+TrKAp1@Z=drRwJYyv{tuwoJB^Zx)Zd6NGC%{q)a zRPofv{+UIg0*nX4QP#c9a|bNED7pG=FC6Li+~1VeF?m_sLm#I$2MhCiSBq1%yScCdwveI)ZP&ML`uk=H7A(B(tI;Y%d2d6ww`nyEQbtyfb*b4$ zP3hM*cq(IOQ!Hlbn5UhikS&#*icnBJXsx$}2LAwlVrPiA9&ng6A8GzjLi1@0aDE}_ zlB_n{vD@1+yB8Vaw?BY^yTbnfJiOM4s4bM_%Nmk+(wiR>+~&iya`8%=G-G|(UXh|M zucubYkqm?tRvUm#dXA!=12mbp`nb#s2`8^|iQ`&O_-<#I-&Wy?*oInDfSD z-ID}gpgJx6wbq06n}=A?#;1e#I|Jd?fab?dP>%0Cs}(Jtb#LdrHZ525PMIhTAUv1? z0VB0~Z%@N9C8-gX%w?#dL6iBX%jZr!sYT8=ZbUmpiH2c>Hoo}nab z6mA&qs`YKYbm(igM^nT{rLzbmy$Ag#{#n=T)3@K6&I8i%>LzI3Sw2N zlkkyU&tAVQjtxf>UR^;2QV%RFFqgNdqE75+IG&XuX|;ZNESbBLgEbpGkgaBI+B-m{ zg9GuC@QQ9J^YP0u8f`hnGo5)}Z5Q-{0L5q-hU{FO{{UFaXOi4F%XiM#x}Czv^D4Pf z$)pZRr@asK%&b`ijX4-J<0}Kc^Lxn{f<_>>dQ-1Tf&6m*5hG4^Jr@E~r)r;9nG6Q8 zh8)y)sqdJXA}E(KXM|hsZz<`P_gX|guy3nK6Q0|%aTWZ1y5^e@;n=+R$_)2I!Q|^b zKwN!MgofCcQBn4K^xMP7E0Ch)Mo|XXmzng)A&B~Mv}QIHsi`#Tep!|$!W?|q_>G5> zd8!M0TPU>)5>ePOefFxF3V4bd?~%nTF2fXPQ_n4J=JN&28gt6rW)%clmBS zsRK_1#BVtue(t{wN$L*cr-p5D>O4cctDdWjuxrGcRuNn$sSrF%g&-10><0At<u7>G`4gfvU6L&lJRzb5l{=(v-|SBz#l5(c#nhZ#~oe!#<4Y=3XeW z0)!E;9zVl3G$h<~fbRMa${(FBy1k*1-O)dE;L?m3bu|8&g_92fw_B;x_di8Erpe}g zE=zb`kB4nq#)? zit570Thk;Ly?W-tLdCgJ&Lo2J(#`rnN5IC2Yakv3)QrN* zkO1Ep3G;mkq18^3{{Wag zv{B-Cq6zU-`+?Vd$;YXuGY)Oup8Aw}ls3>9zj}%gP!UB?Hz%iVnLJ=J%LA3@ni-Q) zv5o|hM5^Sqdj&nuZkb@oZnHKn1eeX4T(=s0kVb#F_>_ZPkIylv648oMCv>OC9&Xh% zruw5hg#(~8AxD1x*_1e9HgZU#Z>fJP{OsOi^=(A5Ng{?Iw%~XU`(uwO4QFw0UC?5m z(4Kuw=#i3DRM4_goA$5Kmc|k+Bg0l+L#b$2I<(W=HyGhwTuB0q6zx)ccFYY#Y|~~O zLPqIF^8WzMYvtWm5W(vkBy2hWDO%GpF^>vcwr2EleI4dc%sX4k+}MH@SF#b?!#6sP z47m1g#jGzUi}NI3N-e-oW+RhsX};gbIgGdn8#hZQ8e^yV;p{G%-IxSIylG1Nj@gZe ziwv#R=a&q&dXJO5^p{k(mQFD{0r7%H=cO}ar|lyt(RvLIzlJ-rJ$B6`A70anxfH5} z}I)pVmXGo<3Y2n{8=T$+}>PVTe`Qy&|9lo;?*~mCIFpBg$1NMIm#@;TwK1viAW}EqTZ7mJ8 z%z>a1daA;o5j5O&@X5g5%mLx&x^=FfN&?y>jFQ`hP)$0Gw*znKnYaLk<&Ht(^4WoE zBJ$#7n^txXs6k{q6Yf-u&B>HVG{+YKwqxZ~Yp9mSQdT8iM{kI7{{S#EUE&+v%#NbP z26cCHHi>to$Q_IcC+`(0S~rRC?fsc_GR6mqx5hmmL241laPiDzKT(|rC2opMD1Xf6 z{{Y2?XtI_<%k&@1tuNIVN|Cgjfek?2Kdw<7JZ8o?xQ&)^b!}y03r!-RMIcjP0Lx(r z!IoPho?WAPp4Uj!u4cQGG!AMFd@21iPhezeGvVgsKq3x2PZ7OYgIe$ zdyK@K%tbi*Y$9CVnW5b%VJ@m#XbKJsxhnf_?@Y4{h%{500`_3Kmz*Oa;#j2--ht_+ z`*E#!)1V}MqI&yf`Mm-M}TDYa|#@0c=#^7Cu1 z6X|-*<(ug;+oX~NWqu`xapCl21~ZGBv5bs^%s(-pg7y=qa^pJ_QX6wq&{r+X5iQ+z zd_OmsXdZuq%IG}1cBX5EU{Syy4-TWSt$P0eW^A;R;f~I$G-h@$vHXkXttVg5;rN&025km_vVW=W0uZT zw9(WHdF7X$HMO=&E98-_Wn!v>xHQ-v-+eu@ytgL2S~GSzJj=|QYwCB5$bvhSte+JJ zepKB387(=dAmlML_MaeIK+?x^ICVapey}IMbNAOaP{0Vcl+UOmB|TS8^L?(Ndo`4? zponrYt35$bdeC$~PGV%DY03nXX=j`?jWY7hxx%GR>p@OEYqnN2pbK+x=Cbn(U&$!% zEdKyV%Rw0&qW}U~d`%8x#s)>pk>D1UNBL`SY^F+W zDXBX?&Bx+BGeGj}b`Z;CpAy`2Vo!^AKj-vj@A3fb9o#g*38(oYC~o79T1i^bx^7P0 zsxs*Ic!OND@njxi&@Lsm`mM^OkS|0cz8)LxOvcTpFl!h%ws?i_n*OVFEC(xgiGoI{ z@T&pTSKl>9B%`y9snf3W=GmxuMz8s|sOgOHXyMJPlA(YMR)eV&rulfue3{~jA?6yt=gy@n z{ZeOnI0D<64+_)uWqC4_v2y$>4>@gSA2_%QYdnsuR0<0058x^C$AAH4(&f_|-S*ez z&zHretP&)G2;-sj*lj{7#;3Q2V`Q9T$-_D_4ZSPt(OEo?7$sCOPZE9nN48^~Rk>KO z@S7|bQ{%1_mgZ_OWo3)o!ku#@$j^2F2^Mv0cWGr3%P^!-4k0>%-!tLcG9!#ty9mSp zklbr<`MaH^u^xUf6gc7AM%SrW__;aj01| zW=4oIQ*t*H@XeoyCl?gs2bgq-m}IzI}p1c9*1q|@0y-IBTZl3K5g@- zk#DrkMBiyhjRL7;8*aY;0CrSjVq0-$6M3KS?Bf_1NYN1FybMqGX!0|*Ui>ezHIW_T-qR6V5uZ7>_FIUw`{XfILtYC zucWi- zu~In5DixRl?Oy}arfPEGAnfF6@r!)Ds%tV{&mFwHOtG+jN`BV=0O#8>F~ETA4k0Jj z-dWNuwf#C})ZDbHs>oFRpV>ciW;vMZ(We!)v#%(5j^j<1+sW6gWQti^jP=@t&~osn zOqMNIK8hXzVzX(=}PJ7?!-%Etp1&be8uwP-`2K z{*Nt#8q^K^C_3i2#KKlxK>DeP`IpPZwVp7=Mu&um6J??A;n34EA*r)e!zP@AOZ?F& zveRU`wPkstn|>@R19*JCoXD0UMTNzSgwc8@k|ol-)ugQQDw$Vu%%Hb1wLE)e!yeY< zW5Zn73Au@N`Rpu+F~C|-;M8(j8c@)6sQNO@a=nw24|6{9x18pGFhQqI%M23HO*&WQ z?eoVRge6WsO+2Rhht8jtcHU;N^!f8yknweHr1cdByXNaAk~w2*9W))qr#)X5kyVL5#M+so|+N9ITGg~Vd%KTI{ z3Tx0F-WiuH#*>gnJI9;AJk93&&n*|QfD>6By($k-6w|-AhFyYI9cKy2EtvkDb*p*O zSmnBnh<6-|)Yqp?y3-7!Wy{m!sXofkpo>JbhB%(6!DCu477iAspws1FY$75&oQ*^c z?)oG0_sI{bT*s*0Abwq zyVPm)F@xq$G-!6(hP1L-FBvBse&BlLII;1{!>jF0JWnPybLD@7^ka~+Ii*z4P#x$u z8)n?;>^#m)LLAtK=QZ`0lRUc~mtqAYqq7Pr*bT|~{yC=B&x2sfIKdB^^-s+Q)-0mn zfXe72Fg&Ga{uQ&I9B zkvzBOoR1$E;!#Ca8x6i*``0tEQ#B(Y;oDIIu$(zV-t z^PkTfmd)~+nX>b5Ce351YXoZmhCB>xnF(*cQ_dC$y=r`iD$mXVj@W7}=%nYyg}Je{bJe3hvA z=GO8Hi|Ck{AXZ9rVrx;if%-E5Wa8%PH8K)3$NvB>e4{U$um1o}>gZXCG7@=pOlVDmt~SB>GUd0{!*`9sCH)S>&@!r5+vMHvVDx%KKC;<-G|4+aexP zCjS5zL({pYTN6T@LzdDnCwWrt{SDTwBF2e8P*$t~`FF|T#l4o;>nmrcU+XryRkA~3 z1D++=fxQ$|?tcul5sc7l$&$LT_ zao|8S#=g2O;7!BH8wwCNsp?K@XiH~05#i+c^Yi9Ai#7^dUMiZA&Fl;7K~I(Qh$ zo3MWJTqW~=lqNR1oMKW{Sgph(^RId`@ zhyVb4fm4;j4xV{TcDI{cXmUrXI>e-vEa0zDJ@Of4V|PCeaUr|zkNL+>%;mIH^2Vy< zvXGFHM?yClsfI!h?4Sjvf15g54Q-m=;7Q2r8uRyG+*w6VY_v3Lel+{?%ot@k z&@RS!{3ot?mf+|S-RjbYZOh2cda3s9oj}4wEVwhv!Mo1CBK+Srz2+O8PAC;^tr3AO z_L!dgfxca!h`VgTkb%3~b=j?TNm@ps5^eDc_37_io}$dGIZ)Tc3NIV;HnRRyo-H~k zsWi3q7=f~N=}n3D-zb##pw=~ZiSlQeto*~My`=IaR`4n1AQU}!2WlGEu|4UTnnT2B zy4_Ey?HVPWxMhOMK-UsARY3%(>~ea%V9JAohZ#GTC;6}E8_y>jYYUi-#O%sqJb9A; z0L$9BMr@`6i=Qnat3v5|P1dC=d6QgP-ZDl~8c-ppVc%?{!#Pct8!j?AK5+c^^IoP} zO(ENgNc;kgiJ>6=BDoz*j72fi>5R{*Z{>E8Vdd#<9`qTelZVAltldG)ZXA1pT*E#C zv*~ZmsnbYCEBmnGye?Qq2{eC&R$V31Ezd5k^x6c|*speZjW29RYXXM9~S7Sp{ z@3&0G%MTlqtbyBbq2#|MUwKE-eR^1+j;cF)TgD1B`R*Ug4KGF1?dOJ(-o(Y^a6kojpd-V_$2G7r1+rQ) zOWbuIKgV-wy0xPjBA50^-(Wt_{5GynG>eau0fe@A(EQCy9cCS4OO2zIT=Syz_Mqwy zjc{Vidm=cf@fX*z>$cySc9xp1i&VIbudIr|H!d_HooU}PGRSAyr&9rYF4ZiTOR<*1 z{xDiY%A{@nPt)|~KA#7LCVT`%@&wZAK40@R52h;tAyX(uB=M>7tvCJ|o0m`G?h}eb z8|aAq@->G~FI^Uz>}Wtgc5gI7 zU3ob8FrF(ZUzz-+51HqC$qK}=vnXc-Qk{1j@0dEs8Ov@?!yp54ky?3TPtiA?VQHfY zY=$dtT@+G{-+lXjIfsWydzMqa8xJh}x6xzsKDPH$s3~t&pahOUkL>%iG=O#vlxL|u z_sutI*3V(4{_o*p{n0{>r!_j5S)knu%3qzMT)4B=<(^)0NQIM-J5!d__syP*ABHX1 zcw7T#x%m%Pzw>UV6`i4dnyy&X9}lPB4zE*VgmZcx%+i6$>mF>=ZL}6^%|bw)iLWk3 zoAsw(AAHquR>hBN#-BgmYdYVZCl-22%_IQ)97fE5?#l6eOa5DKs=R@b<2A zLkK5lPpQ;P383}sHnz7xb|{po>;)Li6g*|8s@_W zE+%;6!@JzSB~F>Am(=fFA5fiYMJi}|ZT*>rnj6zrOn??6`Pr*Occ?5jKq*R}Z?Xpe z07&VS$4SImBb46BPm#1;J6yeoQPdegP#w&GcH8gozGG#=Va?cM$V7I1IpmAW4I1(0 zv7Htl1wARXeTG>Ga1J2kVmw21_x^Gx%M$sQ%fnW;dW8X*>$M0RiKmA2%!$O$_n(gD ztwtaPm&yJ@(6qf3;J)x`n*j#q2tCStv97fr9N4QEkUYv*mT|? z-RypB{L|3CEwrc})n5C}TEr@bBs-u`Y0GaCX-@gP?D>Hmxx4Kwql8fA`TNM;LcRRO z)GxKYUUgW5q>_EEv_A+wBE7-swR51;-!j`f&l>9b1J52_e=d1Ze9?43`jaG3$0bWS z2BE39PwC$-$?6O-;xUbNMt(@?a%*0uu9ueo0O^dukwE>U&;n0Se|)1)9uz=Md%l*| ztu&7=*~6sSf1}L+^<|y{QGurQW$m|5yEZW#DDdxR%o>;HCC;%N_g9w>JT?;us>Y7= zr^C4FN8y_M**M*vn;mmzUP?0gn_jonFJuwTAP*9g$ORjX`u4{LG-`72ou5%!Tia`M zHNTsYndHu4i$Q;2Z);CH9EkXVHJb@LagNg;{LoEPfW~oAs*pq1(0y zgVm;3VnteE2j<_N{IjH|<(9W*ZoJzRYZOkd0GS8?NJ#0|?WyqV=M~kXy0_IJuA+gXmRA7sBVu`1q38uVbeaM)s97+v~G{{fdAnbev z4*vV(gblID5md^&zvNv{&Nr!Jrb5z4Uw|rv5l_B@`*SXF6p?jLw)B7b#}nnBEnMn; zV`BGYhr|^vSL1f2ChdBF2{yj!PmaEWC#7r$;4V*ScvzdC5{T8C7dq5Nq1IZ@n`f?Y0_m)%7l${{T3K;<^Q9e-e)Er@n!#vDKH*VyU?mg*D=QaA%jL>!3jKH1| z&5!F^+utNpM4UGT0I4p6+qQGsjZ~)Li4cy`{Mm1DFQ(L}6;L+?vWUosC~CoESAJuT zEy)VN7G+b&mOC!q8I6`w4RX(WJYQM!)bDZWh+pc&{Cuh#+Je3F6w286JWp!;w$v=V z#-ipI4>W26D*nkEb^eQ-%9}i8(x3+Cgei+kSWC_`pXm;il zCe*SLE4NR->B#9bnR0fxwhs#Y?~hQEO}LC9mVoWVl1|j8(Y76QB{1uCc{oeVzvmdW zid>61*oIR_MyWiH^zEG1mm!Sl+;&+7`Xi}cq*{N5$8VN(k;p0BnDIV)*C3wkyz4O$ z6#(`otOrr^%|@zrEIJK#l!I>^x6y7UylqNg1X1ioE3(v7{{U~c9?yxM<Nm?Z(P3#0)U5%a+poQHaVA@_%{Ekt zWpkiQbp)vHk=1yxKNlmg_O4wVVo;|)9B4d0^0dKYu6nP#JsPy=D^P#gbBp8XM!TdKs0av3{nXrh_0890NMw%*dR+N#J9B&?=KT)WO!Gw73j+foaw<;{ zz*KxEZlvWIu?S9!$Llj2^LQ8LrTW2d7%WWkI4lQ(n)Lo2`DQR9vsRzgD|t7RG>uQq zcj;ko8y|~utHnZtUC&L%LpC5?i2$9StXeeoo=@_mFfk%g8iFZ8)B`s<9WcX+`ndX? zKn9Ii)Q0Os56M^J<6 z77ZkEq2bL`_W5l_H2G67Obq!rSb@pSDXW|IzuGq+L4*?2)*IZQIy(>y_n;&T1kcE$bRa znH}Dt9h$1k>IDic_~O+!gx4=M&!A0JgTC%HeHTIYs*+16r-mg2Gl!s z`R|USlZBoZAEUlqjx(dBv=j^!RF|jN+|s`F%>X;R#!9;kV#~}i={k!+7%L2bBbt)E zH>l}N{4-yu%P7ltB7qw-chl^38+hZqC@y7o5s|rJT2KMkwq?f|lvAcOeNPDd!}9#L zw1U_Nil&MI{a-A~#5hLn(ab@j@!{n=&#a}~2G25|RQN|i z2jUNW&cPlS+f3zh-HU!?;l%HN%ya7FI^7NysT zr9~(J`DSL5ARD_pnaDdl$muJ2A&dYWYrq=y%*kglY=&b@?(6dVQS#DS-m?5t#9%EX@y6PGK_dMa{{WnM^KjNQG!jZawHal4^s3W{`P0A89W1xu>gn}(h9nQ> zUWaFSJn+l}k~s{u6+F*Mcvr(P`$Go_-M>kyp!vLN^7%SZVW~n&l{9u8J}rpbzznYp zd?4AVpA#>K%QAVk7(C5w{_}?k8_*NYdXEx6&bdZXey0jLg9OjbUP+Hxvih`vA(AC- z01muqzu%jDI*&ybc(q%;TYo3brq1_Lfz6tv?kQ7KP-&XU%*fNb8k-v>n!GWVD;Xuw z)NwQ9gvH zNS@ux1tWeUgMao}jR|pVUS~EDi<{7YE&S_i<^eC1HIqWg#vVs*C*QR@W)6HbX`?9H zWIvdHE}Kq~nichJRMkp##;nNFWuF0&n_q|z9| z)Q72|rx8O@oB3t}J2-K_4(aQ6BFy5qZT6k}n(#OIm zI*AdDflK*$sIILRrwq(A_}a9s4Nml?+Y{HWRhC>aXBqKweJvm5%4&LCR^|mar9nm= zw#ds)GRMuvj0rowd-E2pKajOQOHkS<#UxsEH2^g!*14vZjN&eM!^9s&c{|Q__x5m! z+5Z4|oWR_59rmf)GcaX6T$toIqfB$onzfYj$7!ZkvXbPHPCR;7!24!Qz&x0E{9>L1 z=FLk{mS~n8%CM>v*p9tM2*`n9#mSV#m|42t!UVC^{_-dW{W=}~>|>DR*~7`1X18}` zq*}qJC4Fj^UL8ex*W24RIA9_-Y`!D2$vnw*ac4ADBs;kc8&hTW=}#T;5VF;)&T$Qq z8m6T^<+{efWGhCFr*Ihe9r2l`A~G_Kp)`wssdKoym4nE?2tC{I@4i)ti`}ZLc6+Gm zcJrwE;V~6e<3Kx_j{Rx3%N+H{IXYY>dzaRJRMukF^ox6Ns(o1NPP7!D>+Uwqo||Y> zl`>;V!zYUN1dpC)XeYvIP1I6f%}*t2x}Ki%=Okhn9B?}qhXF6$c9&uGqKlza>soc%Q3waz|5L!UPnQI0a$J*;Ur`hS;f^y`bC zS*>EAO3;yBgXkiiy|Xi%cWuN>BT61uv7Id5_V9toyD+VJP;~q=3r~lP@i_Ui8>i0y z0GZLjH0I+^Qqn^&AdB0G1Xt-NY%_r#dK4Fx$KVUKM!NIuKQWp*8vS%S?kQ zVh5AOwI9oUV&ho)g7e^I2*{-F8@cfw<1uBQp>psMkDK*N^7r!UO$$Pa8AMaYia3u7 zQ@7unTzCnEwLpTxeBGhE?6Jy85wT)NR;TgbG!wZ_o28$GQxw-cryblj_g2Lv8#_{f zkD2T3nfWk?ig6<|H^m-$&<2^VPR{DJkhFB&Xm{V-6HGX=h>A{3Wf`IQlj^g^7UY#r zfxz0LyAk8_%$$0l2F{x(FgvEdn0murMHPa8BI0C84{@*r`-7O-bBlIb9E1ve0pyEK zKVH(UQcFn3qaVUbd{rb?r@;7h%V97^&cg<4*u3A)enNshWu=8UZB=d{(xatMZ))Wx z$!*l*2XvKmSv2criqRS7lrcMOhO_{9=KlZ@^t?{81CH2^gXH~M*5GRwNx@OR!);aW zKs%qhnXAlrOSRKs6Bdf|hPsyA4aLYWQlxSp5K>89>-6~Kbs4*y?LLrQv!Bb)H_5Ks zC4^yPNNXA?BnAEy0PVI7G&tDn+XY)Az?(KRt{ zs@Ccq3l4mazyfG9Q=2)7rs?LfLFv=#%YO-mR1q*$W3>P(L7+YM+c5IXoAqmZw+!jv@bYHLh@s@cFMk~`fNNvmOY=imiMG+;$Ko`m%A z8C>&lH;qS#hLg)$ZLXgtnHqX^HCd^@$d3O2ES4Qm44_NPF8=@~^!-9e;EZroDvZ1)aU5mqzF~pphxCov5uu?35I+vp1HM(CIqK|AAVU+< zZ>^r<7jV2iKz315pwR9-Mpff+3l5_+qXP6R?I|tq;MDZS<8Lqx@by+vQMZm=80}?- zT(&lN-6WbB3f<)ioV3&CD3Pg%Fbc+^wcmRG01D>&29s-(2Q0<%X*|9V)Fd8thIGJpBfQfhy4AtTmTy@ zC`iVG>wOngxAPu?`gQ#kRB<)wPywe(gO+BW6e+V7It&L&)27giTSkxji8w}jkQmm! z;=S^{4o)45fvbz>56`b6OC|T|OLjG7^*EoiQ$lt<`i{Aip0V!Wac{HYd)nFEEB%*7 z8}+9BC_enV20@TmcG_sjjo)SdR(ZKKYe8y_>C99oHSR@DDM_MV zOmDLjN^Em8R3jMMjj4gV4~)F`<)1NVN%}!ZYgwcchaYQm)BTNlbnrRKW*lbNV!>wB zEN`asR+z199d0cpG05pw<&s_Xv$4yJKyHt_^AqYCn%wE6CpwX} z0j~c5PC(2>#DqkPlKS#{_@)s^&mDOXH?NMv+bI$84Yml-sJ{68vi#Nk6`|X~ucxMI zz;kY=$9&ksRB;9a(YShT?wM!#m1;Fx36u9~%P3#KoX^Pts*Q#*zz;XbzHai9>DQ!b zgnEeeEQXaN?Mj~A&U4X(u}YDb40<9cK1%%3^6#5GwkN!}9<{L`uN}|d^Y-`6N94{u zLYaKcFYTQ?G_kBt=`Dlat{s8ur|Qk|dVw7^TH>*gl-me60qX z6kcQ0oXTV(v4<2M;12#6f=4$mElYRYAD1^eW7v&GCq|GZ7N0KTGB6$|WuT0Dt9ge~ zy177?GjXWpUuyRtW@bD_eB6yrr^AcqORaWkZ{t`cR}s7NAZ|}e2F#d9W90GK^-`Re zx1BucailC0pbGB9C~`$k+ihLIJ^JLedH6*KUy~`B-SOw<_nz)N$$K7~F(gIQg7a6kLGVlg7qG_?(+dij!hN)0MBAr3--!?MDA~tooxUw4$q`xnGvlgbYd4l;k zs*+>mryW}#J8J$LC(Znf>0F~APtj3+5>RkVM|sbiUMUT;IF=($3VS+1MoSE9K1oo%a92?tIj@JwASsKaEzBR zf~o-^Fb2OvW)5lZvn(f!F>8Anv|S{yM)lnW-aa5#!#28XpvQKTgLkI+GWBeET}eaQNZ8!-O-PBV4|-(?#rzJz>e6PVG{BcFgEy;Exh9@i1LW^Csg|hI?zG z%TmLe?fWDh#XEfSR}EpxXt~)kkRD0pNTSsBE?~21^Lz%I5xAh`VO(h&-Ui%)y$J?$-#j%z>xRUc|@xdyBP)e-fkB?pR3sW8wX~aBEOdCq_ zdRxD#GAnwuFHurYj@`1{FliXN7n=TXYu6r9w2s$H2@I^n1*v00xlvL{*w(pxvXQW1 z`2izO2mHPBMbGJBX{?q@R&ZE7YAatK^BF97xP`enFbIdz_r7A#Ji7#%oRY@v2-rvA z;ZiB|*C#A{TaOEmC(Sy?<_4noqs=;7NgRHm3ad&{NUGI(if_Mt^AtmX?B{34#5a9q zpove1cJ5Twc+nk(B(4I#v_T%gn;Is z`B%@&=3RE$$IQ~G2Xoos6a5upd8R^Z90XV`!+EN!jW#j&BqE z#z?Q$a~hy}JpQVJ;j zwgbcGm6!=i!z>0vnnn3VqQeaDs`<7-YLTI2i1i##+HT!W!?i1bo&#=S!eq`rE&TBX z&*ojUR#^eX1fd96S{cfa}d z&EBgFNV4YT6$j4~dB084ttQs5-jM)6JgBM%hmYTy!>th(7-@9kLd)U*05&6epHu$; z5>E0-1Io<`aomD=d{yb!G4mf7TZO0w2h#NK%dHakQPpAk;)pGa#6YD;;%Ys&rvBeN zIN%KjSBlR!rTO<>k5Th|y{wL+-rY)&cN~_W4!yH7a*P1?KnTC3PF>1Ha!kyu#0dpx0Tny+%VbQ0Ji31fY{o4- z$$Jzc+Dn26I|6E2hksyx?8THivyG2?32U#c-rU~GL2}%ezFcsF8x7+z#ywA=zb5?s zXQeagUSI{Fl~`5Qw5aP-(DdAYW?+~Bv2_~k#Ggyt{Ga)GrFp+tmJJdEA#e(W-n}{l zu=}%Iar&q?X?Gj5r}Fj3c~hki@yjEd6}u11R4g)Y@im^M9Jbc(v6!RgDMeZh&(rPq zW?ZvIW76BFjSo}gU(HX<{{X7nw0b(ZAh2f#V9aPXr?JgeOoH}fmLg9ixAR|{?d@XI zonBPbDo`?$@)QJ6AM@KZ`Ey8eYs;$wH2TZQIv@BiMhJMN^oSa5{i=7ubp|5cJaBQB z%RimJogRVx3+0v}clF31@-#m#joV1ZodE)ruTJMS z7^OpZBQc=+>;7?y+eHmE^duzc047073RZw0yD{YvDOd)W|^seV|kuUJIm0p zv4n*#!11XYpK{$mel zYX=7a=IpUR9#2ER@;h32A}t=~Q5@G+^^uO`mH_^e2 zx{d(yB1m~k8lk=}lz04XFaVH`~YCHTiOpI&-n)vrYbV>+i1V zvT4@ya8(V&R02R+wSIKX-YlLhHgI+Nu??P0`DZoNzJqsic{J-2dPAqe7wsRo{rRh& zV>7#fDe&(3ML#a}4>RhQH&?u^Vppk=$6fcQj&5{>KsT9jM&DTZBl7wmF53z0mE@3) z0ota%KO!rX%nok1DC0Xklk=xU)O5{i3E+lDG6rSXkwR)Kn6M{`+`JghK4~V49;9ND z&Ul_Fi)k8!PSeVq6&tSmSAVDP!-6uZE>2xQu>8 zFe7MoWnLNS=~Jnp>$QG)&32BoOw?SFr4b1yl=R(K%eQ}{b`}fN)}GZJa=3#{T8sih!|jjC6|}RG9TsqzJ zoZ9F!oMZyk#Zsns`Bi&yd#Ai%RW0}cVU2zw;=7-j8+dQyo&K6!LEPa8FV6i!+fnkA zDLFq`Y4}E*s;7XfeIlQz;E}#f`D&hP`9bDBS8ri4iVG`5V-f%XEJp0zPq-Of?%ROG zhpitn>C;*2b}`Ilx?l>QwN>hO>EH)oE0>9J2NrUOFASb*OZSgLvWZ}1l+Plm{jt!R z{h>~u!!c)!hb-!1c6}xJefgc`pDaZchm`coo9{G1Mv+>Iyc6x7O?7J|JiL6&08 zz|oTzAJY57$hwD<{{TGn_VYKCW)RM!gvh7jj#05!Q{Z;#_~v9Y4t(0>hlp&)b$>3} zd0JOpW=4+T2xXCe$prWh*O_(?CjvOgJG|3Yv$y=i*56Z2UVA%;>{{B=h-I$)`RcDe+lRU(CNX{y^E-=--+89mkn0FHy^CmXVg1l9B!5(v_j9ryiA2 z#85M)PWn46dEy4o z&5zEHHF=|1x0dqi>e&R$X=f3mD)p^?pT4KK$~+=@xNyvPyq`XKdsd$FL7v`eJu8UX zt1u?2H|j_E{IdrnOl4u(#x@ndEsQ$fm{Jcj+y}D&dW7xCfv?LijI7&^U~hGA&VS3T z5*>MOJdp&=VLV}4Fub@*KG+0x1nxWUy=j@?1Ifb6rj$<4IETo$x8^7#3&{XpKg82; zet7{93$Vum1L!Zxf63e1`_{IQk3krG0E+S_{Hpco{kd)veA}U=GCZGWep}0@{#oAo zI+eO0k&20^7;RJ3e+v6$c{1>w+~3OAMm^@gGHaf6)ovirAZg4a*F;A641B272X6fj zw@j-Ze-o2|tkRd!znA)UpXbdgD0TSLO}vV*s6ZA*APTV~dV|d>`Ann-HzINanne2jzKe7EBId?8?3tC~xFBBiNW?oE&Jlu)tBa?T^dKZ=3Li1_XEg~^TF#<(ZB86LHx3^s6 zbuz4$IXCEG;T_*xYg&|lQb1n3fG2-!&C99U-h&YbcaNi9YZHiIj2lqFi50HrZM+Ug z5tdO-leMygvPrB#ai_~Qf^?Js#Cx8H?##n8iZmW@g`QjTztj}XcvY&^YIdppS&Ntv z3tUkIy;A=GQx-PDD@q3{XhnK|Ty(kUJ89woZ28~Mn*GhCw71cgdHT||p&;!}y|>G9 z=GoRx7G7=nVduM>%cE_qEVcN$uiSU1eALf0uXiR=j6>aZ%hrO$*$I=8uE%z*7N@}P znPX8Y>>XB2R%|@W%vvq&?U^!x6S9gSH34b9=9}ikOM)AxO{No-l)4)UE%f)&$Zt%F zDN#Uqb`(ENaxsx1+2q6rCL?3y0HX}+5TR1>_&MJx=-i(NRs8XWsOPUy?P!-z59&WYREFT0(kg~ z;~BIYZ#emtEiWT;Zq56`HUJ&Z6XRNMn!_q6!GnWx`vSws{#f#Lj90pRNy$hAg#?36 z{yCF8f+KfeW5O-wKb&8fF%U%^sg}-H4~Mj0P}=@cTj+@gn6+u1d%@I@04BZv0F5bJ$H}EL9CAU8 zY#CmquEBX?p-OHF@f&=)<%iWB`8b>=Mv~tvX)tQxxTq-ngD=@0-aWom$}r_5x!APE zA-!|Tx^9H=&u0oo+z-U6M@{(nf0@mWXzjDB)@9)-KbQQsHmM|&&PN42lAG<=5w`Wr z9B?4nVU9v*FEDA=t8?iqHwsmNET9l6Qbhsz962S&uxiOK59&z2!a8^Sv!`DX_hui4 zT+bdqWB=0mK@&-*%J-4TD_w_5W-!bo>9c9Lg*_L`zGQxDawH~o8@e8}=yMM??NGuZ zDfW+&KQOL*(V~k>saQ>J;l3J!LA5*%-Z`(HEtq7%!p3Fu+v!@RF4;_V>Us^S*KF5t zn3o$iE+Mnf^&MbpHyUQ0r7}p9QfWvOHKAY{zANM342UkjBxTX*x__3;!<2)HC+$#> z2^-KH#xORRW8&tz3s~l9H0xrrG&C;VcW#?kwL0|o%$W`bP{v@LMdjglZtjYGRTWU8 zq%!su{Bs*VK0Zyj^D&KG4d#ya(k*TkTZm=^jz`1XVZ)ff(d6v3*(vcCnZGCX4PNX$ zs(fdl-;u9seL1wlo{fh*>Ru14{#|MwT-M=^;x<}HIV}%Lj-M>pPgCjLgytm^C)W43 zqRY$cCB1pNsUU4ioxnYa{<){cGGypsr{j1wt>)oq#w3xNBl~*_Fg<#2T!_GOo!yo^ zU=5JgzI?cnL2#0Kf-)#~1y7G()tRxwz!MB2_kAtp%g8+aXt!vfUPhufLU|TGG{QxP zSE!E+m`9xzG>Fu-WD4dW2S5kKN_Y&yh6^sw#S(=Fl-+9fcP?g)SV*AI1G7`NuoU13SHX(P#~xSsUOFD$iM*R>h%WYVe+TuQe8Vse<63a zl15%CDaA-N9yzYnWQi`v1PyHQ3*Rf;&(8kQ9(W4!Mhi|L0Z>V$2=Eomyf6|QIQiu` zmw8X}{yXYwS7U%}%GR_V8}v09a3JhkA*q%?`V-H|1^1NgAw@=OaV#prgwPR6pTGET zo57F>Q+5pECwGp1OL@q7Tg*SB&3>nGQslJ+Ergr3O0LdGDS?2v-$VAuk zQP{`GD$tTETGyZ>r(DU_9xdHg3?Ob^Gv><_*DdWecw=Xbg$_wI1e$dA9diyM;N;GB z%)E(P=647!zfG*s&u4|=`k4a(S0`&|304IHLII~hp9z}@RX}J~fIhztk zCa=qhot{bOKPOvU!zIl)OnC+%3bCb6-;pPan`q*Rp!nm=+A?XgJdG`6Qc|BqXghbx z;vR!Y3{&qUkE^tA8n-YM&`H_xuS8>sZRrGPOH>KK(MI z&cn~@@mg8tk15n!dDqI0=>z;o0IMT|({A3!E6NEr;qZv_d+(6^{{R=6H01LC0GYX4 z>M(tmBWEMT4yQ3;m=Q&;dmW!ii+dQfnAT(asVTv?>s`*(&5jAg#)Hygp$lVDCYu}{ zlOSp3VM1tIwQF7X@XUGP5*A%t@9O%Cb!=5I_TUHRRO(8FoS-cW^usUbU}i^G~MB3=*lhRRN7a zG^IZr*^xGn3W!L4Gh+gw)6o8%l3t6ep!_)Tw%%6V+WHs^AxM3$8G5b6C(gZj-s1od2R>Ny8! zg^+(QKt(B&j_wwqZ1s&ZQI76etzn1=daoc061!J#^Y_h`3_;MD5@`eH9W^0{YG|$X zfkDg)gUh>QH52Z3m`KLL{KaE2TU}=9(WF!=$S5mLgpZIpEIXq-JWb2bbSuWX)*{pI zW(oreMh8*Ief9a}8i>(nrSp9ib>+w+aUlYXIf4kS2ZvEw=0tFcPGLvMhwJd$U+L39 zYQyVMFrxr!#2vvt{{X8oz|Z5%=%`D72WF&RHLEXiZucGWx8EKitCLZPDsFjifGAkgpPO>;8_4iU4BEQV)ij#~L( zT2Cs41T&Uzgc_RcIv(Bfu?su9d|QTFZ>HPnEFK`wBLTz#y=h+iZ-*o}Lu4^;yU~1` zqPDN9M|XOhT>M-}?g*_aNFxiVQYJJg*p`!r-AMCX6B4zPBb=n*0Bm$ z%4d^guNUNYp`}=i=JgPiC2jHn(Er_yVTa+$P3LL8qB{%A`s zqj@xzJlR15z|d5azrS3pmm)cMxxB;4+J393YE2gwZY#(V4HOFX-+aib`9wYdL{?i5T!@ z6)nEN8XfDH0Pz=TJ`gr#K1y%UW&i+LWi)WW(L%o4Z`Pok+hWK7+2^z4kvp?ZVrD@l z^9rnt#ae@i2q|B{Wjd49W;l7K9$M6G8Kt|_O=MLZRBTU58g%dYX17bHIcH_a$A}eQ zGV8Z+Lp{;}1SlAlsGuUd{rQ)dLJr}u>CaXRp#F0voe^8;%TBHEv8wWF0kr@JZyIDF zfDMauK!fU^%WuwmA20{f?j#>ujxj+^#eK~NWJf=S8Yiv~>8+=W!`HtrP`de~>*=g{G8=Ci_8M47TS%qp{ySkav%8cgM#bv7cCmS3Ew$Xv&Gr$3eX97-WKLmCK0gm9(q2gOEw-&$Am!>o zLO};|MK&G$a*R{5jpnmLgo7+<9-BT`V!__ibsh zffk^ShcRfwn&h4GL)bvq1@EYN)P)oTZQR$cQzOKf4gs=Ns^~H5a*IIhtx6ho+|ZFs zhYMVD85CZD<;Zk-nc2NV7U){0we7xHjxq(=;~<2~Ub4ElU#{tpbC7^k0u-O^%$&H) z$EB)JLFylsdf%BW&D8Xbs2Fka=t1~=JaZ^^X~_;Io)aE#3)5r2^1h(D7Oxrfy+EQu zYeK|S)34!_860DVLD*@CFGsNRy|t#g+6=Qhhd>gw0G^#`zh0S{qLs>=O->L)Ak}qg zE$#(`=&J`;VrgHNWooV_okV6}Q%yHa(;$#}l0*a0*#V~=w>9s-e8I~ttuf35l20^i zGir0a-Q={jPu?Uz(S9Ds`*Tk$l9_f>&Is9o+-p}Q*6UA*pH6{@Gyop8@6+2hKzMPd zO_SBT>pv|<`lg$0dGNATXn%9WZL5 zLALx@$3{8%cjW&7GHITzp1(%2xm5v)B$aNWl-oC2JW}AY=Hj0V(X>A&!J{(ye)YuA ztMiMMY8UMa{rx{yVP=N`rtG{R?yvc*F0C}HD~lKc4L)+_RR*P6hr=V3kS)6|UlKIK z{M+StzcDmKdvYG;in|lY?OOY9loE3~PY=VE&xkzT`6=dKEzB>k;Aw4?nou=(*R?z3 z;|XKt?u7{153m0K=M{XPG*;JF*S6>P{8Bop1yEMKea}x}nc5jfCYb5*c)Y{tuQ_Yh zdJK}-TrgREAZj*04?*6=+dD?nd+J(dPFhY*(W5Dg@_~V9*2*7 z8L*hf!*pgFjyW%tFJagP^xwS*091R_f1Pt#hY^vt3s6kCJnzq%H|c#P*-FWA2rJm~ z{{SYwIkL;8@iDqnVowT({&7Kd>o~Q$$pkV_@t9*QTW=b4+aaRR%M@+sa7gg%lwE#E z-uX4eT6CV8x5No1l?Q48U)Pk&iqW1lcTW7xXRF$2UX9Z^)+Ubj+=yq}vF?036Sm_qWt2eJa3zeF*I$>qxYDid=hniDm0={3 zElQ9G72Df3Iy~G)%5fOu`jMV~)Z5L|H|U;98N=3ta5|movGB_~Pf=onlqci82T$^J zI_8X)cL=f&2isA&@BV-7X1^95IJvm-a0HP4Qt3WeLwlh@v8;x&C;45?2H$sX*^@rc zh>eE_PzW}|{MqGw6I8UG<57r9G%80A0z51Jb;ektA+v{yRVyz9^4I+1#-HY!71XD= zc#>vj2}Rj!Kr7oWj+mI)a-*s7d9c4SeoYS|6LB<-@F@6Y6atm$(=f6`M{?xH5nJUz zx0dU9r9hsl3T&Y7Q`BxwWZ;M*+i<``WM%G`EyShu4rR{eYG?_j)KCXq_sXXsGeL$! z7;Yax{z2=fM$~?xKQ`0vLk9%ZAvCET;Qs)fGe5F&jCnXuCmiIyPc8h@xtBuoME5f} zI&HZD6jS0Ze+|23`s{HzHgV)kd8CnQ_BzzuZP`p~M**lDZ_s!iyX4^;J2?69g7oWM zR$VgUDKy~AA)v13m-gY$ad6>LdC49TR4`l z2oxs1Kf@tDDsRPvk!i1%e93vIMZyJmik>VeO%F;D-v*Z?t&FnE7U7V2r_Wl2rk2W< z?e&I7X)&#{;W)LG^JE9sa357M}hnDS{X|r zvgx%afNX~R$I>-DUg8VERf+mGr%cPv4esG@R`4Bv%leM3e79DX^GKU= zCNiLbxfL|0Or~)lY|BfR#5B&loB4Tptjh)7sT7M0GE@qH4*mA6YudS&iss5vFxWnd z^IAWaG>4l`f>|!4UMLhA3W{|7emOk4nB(Nx9WNH|j`Yd3JDp^mP`$Ip#Z_cllB|08 z)4e)Vwra6ROtQ%@3{%tf56l}+FE8lmkh6nXn1jfgSFd5Z3F5S)6Y$sioWf{K=3N=MOM=yY=(Q*F(GcJ!Z{KIQI z4LM`9ktLpHVaK@QE469V?}j>fjl-FOM<($={mN>H+R9nGz_t^5hS5 z;44w@(=nzDwsLgm!5h7b4?g{EBQeH`pb)Q9$Pe{%EMp{CX^x~5Z<{|eZY*_+r_`?{ zV{L8#XRg2!0|h;(M_k8*IE#N6;C=ENQ&Z)(>zSho}$$$&RJ z-##aqFK=dgNX-Ca&0FW!`+8;Z#sH$*9B~7Q^$(LYl+-l%^c#Wq=CA48hbv*2qRh_70Pv!RB;^!umF7t^nqzb5-1Z z{v$Qx9hO)z*k)gupOltb#gsO_pB^!<0=(%W7skCBjH^acRM# zSl{LE<+T1}o;_76S)b!>l&Gm@JwXScrekEhn+I_?M+kkbqIokzv(u)sy_ICRiZkl- zUx|que@cwoW5hTpxLIo7nVxXIn@88>HZ4fvaybs%kB_%Z!#G6tcN%j;XXtPI;8KTQGid5OB)c7Z7-=1I-T6unHErC-awG9XW5nAT|00EJW zhRnKyAn>gd%gw3T+-di+(p!k%<6%*_=nmgJo(xBZi-#P3Bg8cAcTn=L*F2P7Ck93Z z$li-jppD0V*@G$gdj{!LHh4Fhe48epEJ9n4PC33gD8%w7uIIOa9Xv2XJz5L|pF@6M zYF>XK&0e9F??N9dnGTd506U5@?%sD>r z{KeEJ^9Pc>T`9duR4sU(qb%(WMZ?nWH1P3ZPt3nR+_t@OW#o2{!x-W&T=eDOJ%@k8 zIcO7;V$rES4$jdvOJ6F?@ye}xrrDCdx{l{!d+koX8MB5@4m8sYJ|N;}AC~@QI@TH5N>uxUL%(dMIXI2I3yYJ9Zg~h9(oT?KGMqM-WLr=OuqJY<1~UCGe@VY(Iaihq3Sx2K2-VUH;5n{N$IC8i|9`y`BM7#N{?Ti z{WN9(sHJ#=)~3C->63<*QjZm`6K2aV)GzHcP`19W8;hFop(KDieLsFjhk@Kj)ytE5 zU4_n<<-J2#k!5C6D^-{ps01ml^dRr;n@tpI7SpML2WQG2QNKF<^~IIkeB)QQK za@_v_8fGS0S+=bBt~);S{Hpx3K6i}yqUl6wY(I213fz7jhwJ{iPLoM2(!P!aG<-te zD}T;S`S#~Rnoloiv;Og#k_0@8(w{$;Mp|phN0XDM(r-@&{Hgr5z5K|ymgX2HxLbJZ zFi}zz_7$Z!%#o)b!tK8;LuA&^NQOCXG&pU+Fw4Xt`$3fV`gS;&0P2JZmhYv1C-i%( z7Y%rRs{=XYtwKqy6d?qHDY-vB`G&&G;OXmr z^Uw1Z4LM@bwAL*zrX!-0MHJla;hhd`MMOqC++NenA~$@`>w#e~Q^ryVP%Fr>@AAwX z)A0E`)-1jtd~fHicHwUYzb9#x>-N477j4(yuhW>mCl@y-M~8RSzw?WJVVhf$eLq$l z6$KGfU}`o$Mjbq^PS-w5FF^C|v!i)>_TjGCR_)7h5^hvb3hmhVW)`D221h3h;s(z+ z@~(>wl(#zMb3Bc6S9TqTW9`mir)6pRf2On(C}~wf@lE*>cLaVJN9F74a!-${YSHb~>abz-FV}RSwzc763X{zeb zLuV>A+5j22f&*8>zlLN$fL+XU#$hV4)9tj|X?)kHvdevT;73tb30}jsY5sjOT99Nd z#Flv8$>x{&U;ZE|t?IJ+TYA6c0a{YE+P&-aX1hvErCl7j@PTise4+V&r+Iz^mLbW> zEy<5AB>c@NbF z^CsTm%{j0fdVD2K0Y55cG_yxh9g9B>A@a73<#FZz05CFLxni<6!serW=qv5N;hfe? z1`=+;j23g}UozPFgdgycMY*#aS~3SNL%znFpMKems^Q7WI=pwu_CNgN_m|`I7LN(l z)C+|alf&dQH?iSnorZ@=>9YB+{&VZew$SO8SGsHf3we0ED(pe0T6kgYe4ZKE%NXJf zm%v|@f0q;arr=x{inlsKr@)TC*_!dGu;b-`h}rA9wvBuFW3EN1+guQlaM{#Rm~KHm z0s1%h%0^;H4g_#;l>76y^8#NtX!=ZgN{5bVR!QIXgn$kz2k|uN(>HoJ3Ct4H5IEk) z`A6n2@aLDLwUXRRc_Q-Ud^YHPv#!UIxjiA5hBkQ5n`|Z2t_G7QYBN!y#dOOZFzXLz<-2#f5=U2&2?09SlNwZ1bU%3+VZh>@S-qck{#*Y5 z&O2%U08@im)UTrYkcnP#8;+FRSG7J^hzN6Rlw~1oAI$ovy9W@^?S)g0pNm2+D5y@4k81%17*KYkzYGszo zy~HDoGEE0dz48?C`LD=2>9Eu$kJn(PsUvkMGKvNb)5LWffs%ws+%<8Fp!y%mKl74) zR{YkEFDd?as%U!32J~*p;S}I(!5Gqq`IMTPRd=m6I&DW5#iCpiHP!UjmA^0l04+4g z?R>#&s-*B+6LA@mM4x1V9hpFSgn4U_q^31mH<_%5W{%G2&9+YmhJO2Qm(U_SoJ3AbB zfE-U5UonjiDRf&S>O(UE)fL;uxkgA>c3OFGhob7y1;(=#inUTtRBp_a1P#Z;0rvOJ?wd#@8*$FEQI`mP zf90R~#!Uvv;#j7V=-ShivKlK6=eFSO)}Hx^mk-kS-V+)w0ok@dK>KPx~I-aVx( zKoa=Uy-4j}?aXNkJ3G7);14(a=KO}yG`}or4WO)%&Fe)f&CHOB$Kv@YAG5tX5tZkv zYRT$+&G|E_>i+s zA`21ctqS4RNSzj2SXd}vXhehx8mEZw*S2l7ByiYtdd$K*g77U<^Fq_i`WonoZmE4b zlzWKYuOz=_78e_yPK79P`(;?HNj3i9Ag#&UGrFH;)$F5V5i*hm!BeM(g7?$B#81ZC7 z^66Ud*C^D`8!0U3Mbs{#)=jnBJcc^)PK5TYeY<<+91j$!)@CF=hLTs*CxYHG@+n>? zkO7B!{{URsOjgCk{KpI2Je>;K!{{`esI{mRJ8jqK%XFB;Lh3X4oSt#!kE&WpE$T|m zDcYd@lU;!M<~~ktHaL!~R>$+keFoueqN`W!vwe`cY;#I3UO1cC^$wBwscos+BhGk| zN5)Mzr-y%{xhd+*_IEh*aE;W{RD4A=M6j6fp4l+=m{rd zL*BneRjtNmEuugsURS!)-oheWw8*4yLP_b7#lt*wTA@)W4QftMs-dqVLDsc7r-TjA zbFdiiqVS?AHOj2 z*EV^@htj%CaNlv1GPG;GE8J{J`DJ)PCCSnV5xdf(^0ZpIqCFHz)Q|;7+>LtTll9{bb3h9*4&mUOIBQS$trP`OFvpmqT7*n#wIPPv7f z457Je7{n4NJkcfP(@$!uzL^1>oq;|bG8yCiQBFLY(R%i?3TxUZdA=zXDmae4GcE+q z8@XDHKno9!e9NwBzE7CRX~H{@c#xq%Z=S=r?_9>pK-th?)e|avALYlLVe?I|)o$D! zg7NWh;h20}MxDI*S>*Xs^Zw5BM7tJ@?9fzqHDw~Tsr$1(L#sH)0d?`xiOY#O{GszL zpOfNEL6id`u-wp{s0UHMTrw3aa?B{~`d`W)n3i69)JBr?b41_M1GRqdqc0f*&k1Fw z(-L<=et3CuT^jnzeGSBR(|{#Ks({0Ny6^9j?F<7Hc1~;@613y;z2qvssA5zG1d0LF zFJGQ$wE4YM%<2Iw@6Q*bR8OkeL@648c=V|qbD_w6E|*?LLqUO9T|S*_4vgg#*G|jczE(C;Hx@{{BzzznEdSAHe&c z|I_(5^?4hTs}QGPr+=rdb6Xg2y6H~Ri)otCSp=JaNgw5X8E_!1eBQzNW9FH3yOb?B z5y(I!im2RsW)80%3klRfNIg5va7(KbEt7hQ#F6lkQb6CQVrVm67?3QwsKA1iep-HH z&*dFf32*-ZdjSFxtae)MQBA?`QBQnMpShlBZL{%8U1%cUxDhFSq zCkz46WSNP1pXI)`nvS=5Bt*p=fK^!5wPVQF-lH(G0#41@BwthLNpCDoZWttvr;9K3 z_sIZ2VST<0eOEn%;Tt+C5g@IFVWv zVC6vod>ia~cFW@+?9MJAm3jM5vGabX{v);wVV;f{1Hd(R1aH%!>z3+ge@ly>AjcYc zFXl4MZDAFZG>#Vp@~7IR2j5(y6ziLdjzkTf1%0B6)m4d-s(_kw`>EG5@K3qVhH)Nf zZ6{5)(~?iDFDZ872qK&Hr*WAyXUzvCvVSLP`j?iqNG|mEbrr0;?8|z9+hiZ6z{{Sq-&k-@ZT#4kP<=-`2`BPGd zOr1j?+Vyr;Q@WaUBvUo9%rG660z+`he9vtDYq@KyG(-glDmTAftMbi})QrK(!ID!n zr=sX{*~%k{J|f)cq!0&*9mn=%)omL2nHR8J%N~zpZsDs|tW%cc4#K?&@W}vT;Nm!I^9)NQtz{v?bqUj6)Y6lpwuPWQ7%7lj;yVU6t9f;8QLj9#iY>(pK#Rl$=s@l7QVwSRP|I-Xa^m3R!=%5Bbonf= zm`4+VzT8oc`wqKr+YT^B#i|(ipE7Ft4avJ!v5+4~in8rMM^>kWa7+%4d?!POPg1qi zZZ0&q>{PGrsI_u_$@~0s7E_Vt(U%VhLs+h81pA((pi+u8*l0ISALtg60j;kOliqvvCZ9sbg zk<(+G+~Jy04`qk)J!7@CHZc{I2s}cPDmUxXZ*!X&=(xjvn_EYAALcJ2&3AVummp*` zsP9AUdTrY^xiQNTW2n_eMwj_JOS|$*N9EmCKVM9_e}+OjQ`lFD_o>MEq;qt-yl0qa zIt~kY(T}Sj1|ooxJ*ip&zT%%wVPwH&w+Y*Kqv+mdTa659y1?}BZP22X9~CR% z?@jVqC*X~p?vAp?iyPCW7uvGM>&xM#IS>II_xbh9v1@q!F27l#;oLL*TJh`_DT1Mq z8||-J6VPwhGIdZqE-oyUvwH5GVX0dBr4-I+NjvgmPNIV}=Mf`!KIrW8)QnoWzSB`4 z5v@oJci(ZpLAl#D9iB`M?RuPMLc()rZ3W%cy~VIWG@Dno3EOVRGBaZtC2qJ(L{WN$ z&AqJ2BqNKnZ03TXQ}FrbzQ%N0jwoOzOai<`k|Yg>7Ly$xRdHq30WGCMUy*Ei8$ zl)BcShw7U9hK+~9+_tXWy4SDanK))+v33{*J^uhw(<0Vkq zk6eKR6dmR~gC{jFCwV<|?<(nfR;rxL%Pge;`wGM#+UdXFn_ka8EO&8ra1aU3wd9Ql z%eDgM!Vt4E9=jiZl{;o$O&nv%=XDd{d87i;&f*!Z`J> z%I)X%VUkOtgaOKx;CIJcJ$IH|DFhhJVrSOK>DhR;KkGC_D+sU?g*P z_~#h}zw-C;_I*!KeQMUX4{!b3D*Px#4J+U2%-mScXB&rr?Df@qi&ZjTR5BKzdJrk! zZ=(c(hc@h-HCRi5lLtixQO;U$am@ z563d07$SO!9mCK3(G|YDg{_>2B$7d;NcTH*+cEOv2a<8>B@~;<`dY^vmXoryoVif% z$anjxk?;dfOy?&xf6PxWHP)TN7d1jx;HeZNU~;L%GsO`noBmi`$)~&6+(U@8Q30Ue5=ZbiYO`i)%o&T9)8wO*(;1^Q6&g zBTTg*oza?ipKY%%Mw2ZPLmwgAY|6>5;+G4J4^K3!&+^Y6nAcW9t`*TJY2i=fnA(DI zott8K-xgnJ{&T;$WVRDTlM_X5L=`>@+wROWmQ!6mlYx-=ZsSuncOG2Vp(@toh~0$= z+pfc1+7a3+>M9N2BQHyo5nsM^1VyQ z`i7G6+nU_mQIBu{J+q(8!MA{qtzu{LRQhRQZsY&O#4whm*y{&yn$)Kt4wGBW6ua0BK5RqxeISx!C&!3c+3nI;Il1S9} znw8$Y0otOc@7p#)JObR@SvFMica<$QSW`{b2#)R($Vow3??7u`59xqJ%vo`@TCNf1 z^vL|GVrUZC71l)|#>6QH$G%}|VZdlH)02=rdquL+^k0t2L%EKfC@Mka_g6A8R0X>X z5RLATOXd`}yNV7ZNgYaTC_t{=YnZ>B;Vqh+c6L?0^GsLB0f?!fLtViKzQUvZyq-*> zAaKmgc_pxUtLk@)Y)9_+fx!qA1Xi2oEF>9jH|UO+&DKpKt+`K8lyFf)LOex2{qo6d z=HQKs3Rfpmv~<<=5lCbz+>)#}9mO}>BqUDdx*nEq;UqOwBAH&$j$oHv(yL9*I+d0YRl+OudbjEUH*FTtz<_N`tDO-a^9eemU^%yZ?FfQ79U?a08 zTisJkuq_|~mMT9NC>m z1UOiYP3#)de8HqmW_3%a^yOIvM4;4-x}VjUQvmMgY2-3}Ph~n}9%9jCjul2p5`9)e{@|YqYQ+t>k{d2ex9U}EX%rp z!>IA6Ovr%a=Irrh;*Bz2D(UH=~X}xm6hK;#+GH^UY^KVCeT1D2lvaL$& zY1_V0sKRD#8l6kyT}R9F>Q@oRENqcP-w_~%JBs!BWq1kXU2o<Okg=%0`hFu@yj-v!-%`t zLE5M0DfoD1vqvE#Mb%}=w(p~K?8uLF8=@x1y5RhvkxRj zGqaK6gk{yuucT9A937c}-1v7He~1f#Jc32?{{WdsEl8vcydRWuMt7?k?_AQyH}5II z)Q~wd9R}TOw8RVo7yz#w#>d+?()B^BPaz{^G=D1C`P)S?>Z%k1(j`C#h$M}v+;z+d z;^GfWrkKnqzHEc?{$J7)Lv8Tea`*!6_G?jJ3~}Nz+0|>|EN7aIx1+t4^4m=sG;Buu z0vHd+!{?YfoJR>|hC*R7VR2&7ww@X*fClM7vG5)g>T=EO#ctIq8kP`?68Rg9{Uu{9g? zrunHR`8w?Pdp>c#cyCoM<^;yg#5YO}$t3+7WFsyvPI1H|4kG%y^1t%F0Ufrnr~xmn z#zk6u0PKD1vFn+bbi!iGg@#7#GugB&2GsQla#i#}}5E}26tY*`i<^%#pA%Q_d;y2BZ(L@Ug znGzKF<6O9!;#W)b1`$wB^>a#i)}!Z|jKILrbXv)E301UF0G3v%!YK_|iTfwGJ;*t| z(SaD-pv@zbW_xw1X%cCYSSnxyu(k5q+C zRH#1?G$N;J4ASbZ+}{*LJcG@iVz-V{t6fH`EZn##6`~#1wDBJM_s10YMUc@LMrU>d z<=tb;n(fQ~0Ei)!T*}Kp5~_O83f7;~wqkhPXLkKYkO8wJxAH`HQ~h4XHif4L(*zE+ zsG#|G+cC33oXtKi0lUoa{I9KPI=fG)2?P<*Re{>0tw+8}6kHs*<06@Vh+y+asi(vZOiO!_k8?w zJWq%>jW{C15L!V&MHHymb*|ZLB0<@eH0yCh z%7A!JntZpdMHIfOJdgm+&(VN8{8h~)gs$D*o>00kFptaE5$KcLPCtC*q8n^G{-QHK z7GNBWN%cO9{GR-j(l7k7`tGR#d%$F5Rv!UiHZ<;k54(G%9wBbFd1Orn5v%@Rd4f(_ zrHpf1q$Grq6sh1l3euUW88}YvejN;_8+w1`*Oo4{y*f`cYSHtEkdEz7hvFNMHwO-4 zNZG~kNHqGF^3K^cT~^-V7lcX)2s|6%{4)mynQq^M9He%AQ|4_p-q%m{rXOtaKsTrR zS<=S9!QQmm;$5$xd4Ohp0y*n%LJnVvT{?f#4ATPR{?F4r)p16uMYh(C^FXMoKsX&}l^=o`-0aoG7SZthii z2*Yvf&}UB*99Xt?antb)-!~Cn} zxAPa8-%gTf+|3&nKOs;7>9HA)ib7o7Zo2NnB-eC1yBD(DIzlZW0g-6x%d1(voSSOA{63JC7XQ-`9H7S zd56nW>9*5@>7PxM>}Wte{(EMR9!YX9SJ|0_qfeQ<{pG7I7g?6m(P=McWBcZ*Z+~Jw zSTaaJ(~H_zrEgl$Z1ihCEJvbQTC4JmJCdL`GB*aJs6W}6m}A5l9YBUY9;|=JUzX=X zyS&zz`fyAbC^Q8C`}WD;(~I9{M=8&n;qUp$%Pl8I)l*ZkVLZ%9pN$FRcLJjJAh*pgZ)cC3mSKNOL#^d4HBTOpG=_mZ9kIwQ%tm{_| z>7s?&lypjg(1HiJ{drWe-tN9xj7YM z4k0=2_P;WD_5)|>SjJ@>ejWm%pm+?cJoee^aOZ?!v*$~H$t$nS8>iLo5U7!8T1u-e z8^3R!*@cfna&GDJXBi8v{D&8mq>|3IC&>_-@@^K6`aNyXLNW z4;PcR$0G;QK5x|H8X(d1?UACRumA=nXh8Zp?Y?d2AsEnT%c`SKBmA}er8k$Bmv%_; zMJt!Mm5)URlme98ej8@CLyS;kk1@~O#HRfe=zQjzpoPavmR*?9~lLx3s<4}<{XTqIGn5+ZVqqJ4$d9s8Pie+{pbMjRr8!F1os2%*$MdvI809I=bZI;{NE|^_KCm}3du7OM6TO-Fyn+IfByA{A~;POKDx#CGfB{kaU8h9gmD zhZ&cuZ)DUzGVHX_vFUKdZxbT&;s+x^*Td#|=2lH$#~Y6~bB|RLDdGNo{K2)oSCZg{ zQ9@4KkAbG!9)$GGRI|$~UTm?g*pHR(Us#eyw_irrrv?JOKV*t_%VA~HPbj^YdE3sf zq?`u=mxzduOP!^M7c{r>=kmVu&-$d-%JhW+EI{0nb`%7WL%Gb2 zHWQSy&5pj8)_zd@zP7Zq66-u#>L1;xdKC%}T6aGE^KFj|V;@t8Ej<)owuz_0zg8*` zx3K%aw>gaS@a40zjw4FmX4RVCPD|}FebN$SRXgq~J;%|V6!RRI{Mh4%39$2BN6xoC zd(fN9u2$YfEQV3kHyVm~fnCpko@oxMQXDgLbrLg%&z>}0Yf}8Oyj?p`yOE+-spNJl z2<=LD{{TLjc8^)%8mCV(dOfZei_J1m=8)XDss&nrPadQmmEO6xoP2R%IP#djR<_sY zweuy!_Kx3FS6Z^3tF>!Sr!*14!?|)Z>dW-Y@(=SRnmFy3Xo`*KMQi@vWa#twQnzcQ z*W788{{YTOXy4-xE!;prEwfPXUAFu{&4#xK%^NH=na@Y(?~?Ck^1zQuvD*AdzzTo> zV^Oi+q1!ph;scX_HAkv-=hkgj+DLAl7*IJax#dDg_C6nmY&5uIDEYYgby*~Dqs08N z&TE+e07xSXPGrZ(H4L4N2ptK{u8$uJvCzOw*<@a3{LQ=4FRc8bY7r(JqLIk>hc1m? zwdud%o2*&5j?Y4IS=|HqH+>$hKC>3Padr%iwDF@zIc_LGA3>*To`RXtXrW=!YcUP` z*$WkH05O1B}? ziShpcI(5MyF6%E(Vu24%u99tV_x1lOynSTb0KpU_bnpF zLX+~VRkhWwk_){;&Uqe57#5C3Uxk6MKxx0-mt)jb5O!le%HoYv`SJY3@*brsjdNDK zd1h%q=HQS=kLu}|veb!|5YwD-;Yl=a%d3r8&vkDSlvu-UUx~e{I^}aVX`Ug%9@qZ> zIQ`^ZYs}iTo?Mid7U~<&WA+xL)DEC++s86vr`g5JsNSDn$vB-IkLh8BGNI+N6qwy<))*5szDd!{{ZGaopnoO9+l)P!Dj$~rGOL+ ze`p`I)MleJ&lA_^h%m0Np;G48PqIkNbW3wW8)}blmP4DCWL_)h-!wz1LviK!c!(J) zz>3rwfnS|-8$5?68&i{nK3%`jp59NaL<)%4kQ5|St$)vK)`)?-=e?n+l;yL@eE$IF zd#me9tH!!8x}ZrRG9QTv3g1mPq3h$7WY%$P91)bxJH9V%cxigfZkGj-rCv-<%gb|4 z{{Sx4%qtGd6f8dZ(eJIi&jFoPD#)!;y;_wd*R69R5)>fk>zPJ-ZV9)zAwd0>t|aW zTq&QL^(VX2ABf}%f+^rT54`5WS$N}3S)lOG%W1V++m_SrjTvSH1L4m!#%3Oty$+69 zO}?7fG*#1~O;YU^sAH;uO7!2ShG*c#;rffV)ad~f@ITEN;`7qOr)beqF+n86)*kQEADD5cWSTi#;kht-%j; zHjr|w8jyQ<{Ifp*5gW0DK>A+8qt7I=t5SiQgKuuRjV!XgoyLgqJ+DgB6584IOVk^U z*{QIld;YxL>2UE!j!xS)N)MBNFty0M(W*6#w0z;UL&=kR6Z|t(t=5^Ebu*Zg;(sja znw5^bbEV1|R7yz?UL|YMYnV7P@oZcv%X<&dUoYx58h(QDUPz)(M3v-4YfXvHk4*^h z)1NH9jo+9boYO_9Yb2qkt1|>uUahd8{0?X(8=HZp#~E%OvH5ePP30Kl)nV9JAvENvQBH3D`b#y17uKQCp@&@cU5}$?1^M;2F zwcYf3M9KokSl+!huTOrP=4K;jcXg+Pa>mQ-uPFHwMe^gve_(&om;hWh+kO@La{QRY z4TmBVh&0T6_iuCNO)+htAkPc)RwBC&)yyqku2}^JS#gQ%o%vrzk3-X-xV}m#P*^GW zY6&}@yJWQba0R^9uNMTZAidNL)zOB|i{j+%zqVPAA(^KRbKy1~S?9~ypouieO%g^U zmcRfh-^YB8T|ozgxj3sM0?>Ss2P1!FJ4y>NKgt{B)QpTGFLu28elAL%q9p!C`+R=M z`+v>-nH~b-?Ee7&)cFJT({hFR2Uaw#Hv`8prvU5BLR!DQl)}I$sUR_~_3`>LJR~pz z+4h|XhBcDd{es4Tc-Qr187^nZ86KBoud70+^(99_Pmf)*6C^CSW71MxS?mH(DH2pL zroy1p^<_}QDs$tKBVyf$o%IV?Urvr`JrA-IeSzO%dVL*pFCGdOTuj3opS>;YE&Ft zT3b6X?N{?g-^@_Asd7>4$kmN{?gv~LboT8y1Qa}tb1#}N8c84GwvG7~-;mfZe!UM~ z*;Y+I1AH|?9N$iPdqPWF6pT@=hSC`}AeuJ7^&8aFGA95zI-Ha73&8&XH-)|9MI0@~ zqXN8*d-NTJNj3RqJzIQm*nHJ<=2K@Rk;uT6W>BNQzg*a0!(l!N2m$6V(kgCL1(GtO zkng`v`8dMMbRrR#cN4&(<~R6Rc!EjpYJ2!)v%_r>1nf)SKO=uKj)6DmiDnCLcGNu1 z%U{|g{J(}^P67@VuMx+*UWMnYX|ze(RMNk=Ey$j$Q}G|yw~k?Cvg7Gt#VdOElzho4 z&}{AXwPn1yGD^V*K~NX3Y6|^1W;`Nsw`V*Tx{u}-mb#UaU0U%;ZG*5o?zG!_o|(;R zu~}-JL^8k1+dAp--d;=(sI5loNUwjVGjy6s5Z8|&9G;Igy|fdh+yQI2EQhG+)BNk3 zY0H4qkDfeRp}gC!Sy)3Av!Q2U`^6nc`CiyFOu$=AKsy#=gF*niJV9aqENIyC!()`AMO4v$`F!gh@w^5EIlzFqsFLM;vHva$=Gbt#`Q}0i2 z>6;wmj97KP7YpSB4y)zOekocnRYZU=QL$0km%VdLNraq{3*`2T%^El(FK9uEL(N@< zC=X&j;Cl?o$uL8%$*A>kmx+19NDXdel7Y~$0DmE_^slx;GX<8GRXa&MujWg?EkvmT zva7bt-rZ@~;Usl-x`Bz4_g5u;bx6Xc3UTxtaWNb#aU>0 z7N_gn{y9u^f?>}TW3wODyo$5NE#Q#HDhjO|apOWT%dg5Y0Leo8`? zp*8WX2kOiWy^>EhT1{VuUMZ{IYC28SdW2E_;x{0X@S2|0J+{qcv_~AQIa#%XEOvUX zhvo=1+h0!b8iE`Rg?Nhn;0or>_@hP8;mPXV=YD$gCEu52D{Cr!UC?|)e#xzO_S-cY zi5NTVFb8%c<{>=QSW}fp zf0k^ZEV@1-4Hi{vbu@R6aVnlN9v}+Pf&OPQ48Z2+ct)+5&1t6UHc~yT$hRZ?*UxhPT{Qk^-!ABl zsOd$uUD_5Xs^4p7+wK{M4$l)5?R5D_=A7zKS;cD=#O#Uad?K{_E4ij+Y4ArBT%6fF zK=5xoYu2;P^;KccaZywS@Lhi~rd?XH= zQ>JS(MpbS$O+Eb~SIS;@^`sEr1@wucnhFa0)3rKfVtg*IK07C&o8S= z0HYQJ(zGCuJMUbcFlJk{_^*@Fyo{GWmJFIhwQTNKteet>hq$de{yDM1o51Go@MwS* zQ?EN%#S}A3G(*s8m32LK>GbB$Q-Dr3;bo|r50y0=%VTi%KUq@dtVtB0ZGiZC)2Yo& z1V+tT>=Gi=`(HIhqT0rniiK1Z1(ccr;n($jIggtia&dIrldVU|*V=}g7N_OPvdDc> zt5Rr1d;b7TVW*V$4!}eZhw}cW*9B7TI9$ZMH{6Z=yl`YDI~NXkcX~#f4ZgcL)2^Pe zNDA--0$P;XnPxC2vxkaRCyr0$DLkXETw6pw7X*UUts83e>MD24eO42V+~*=u+3E>l z4gQwerky!WM&FTI8Ws!Eqo(!821!-4=w}H|i!AbI<_4fq^sQ%Uz$7()U=8V;Jtn?U z=H_ZO5yvhNl|%W5b#HR^8YJu;xA;iyT8dV^yfPUzea)D&ZDEsKdHVkVQ?U`)J#LT< zpZ2JJU+3+Z*)k zCF@2-q^@IEU;!k4AC7A>V>x#XP$ZftyQ^iEUx5^(p`asg^{blvntCoz6`rGRD~{7pCSmPP`dZleLlpG#zkEK*%@kz@yw)8U|{2jiAQ9}#d56bpLa<_3$R za9QJGz=25CqlgrxK9ScqI(fz%oc{pK83&#Dqs{tF?cI&$oH)^dm6R2t?03wKMlmCC zb!JjL!`f~{_tpXnZ;mjbfni#L2IDh^E+|)2Lo}nwjLGX;O&!e(0)8s>1KZoSYxpVI z&s0KhYvsk&-bq#yOL53GHm`@iLRhWH(PWlWvl-NUp!ZI`jB3=W`yz+uQQI-{W8&o6 zNsh?92g`}3R((jUlPOS&Hv7HD-Ir;xN2{)u0%huCn!d2MLEb>c3kowYKxs~==*ec( zaF=I`1%^STzMZaFy;>hpcLj*8M{c>30~w9ne1BCu-%|6$Ix0zO$QlV-fsr<$Q~1+0 z8S+-a+F{gxIfqU4FErgnSB%1Hz;YiD9c%KCk*f$Ncuqj!qhMd2oqt_7C~TkI3uWD``B@<^*ALatps9T9Zn4-*3Y+v>Fp3#9Q>( zFY0JO2dMtc#+0v{lZJ7RB$D^cmueL)1F9F}$!aO$7P($b zl-oI<;YQxgE7*(KK_OVGG?Xn}fdzoCd~x9MH!R_l%VLme`rx#XNp&Gu*}lo4;%T@C zZHdb#5eHNh!W*SWhFgyqsxH4I=4DI2Ed1FP zjpi$x*_askdTCD`_ouitu4BSADta9*Sz(Q{FERPsPo5d=jKA+r)IIm?e1FcFgQ*f5 zhW$pb()jyd@_oGex@wj)F|3TxhV#5FTCUodxw9koSZv zkct9&k+-!fdge5+@XE?#A~`GhAIREm^zNXe+^Ux)KrU(0w8Wb`IhuSk&CTXNncj1n z##hj;qA3(W7UX|vdJ&b3k|WgLlS#wNo9Tb~#a}Y5=9R?B>bgoxj|!c>;Bt5)#mUr4 zejL2tR(a`|dNKi3VMYh#QMP4Db-SIz#5a7W=8L7B)H4DDQ>R*;g)->W#k%a+_)R97 z&*j#q9)}&(tq8e6Bz!AFwMZw#_$V`gD-<{N!VM7ne_T_K<~2BM;(v=r%=YchnB;tx~Ve2r+@t(Vp#D(Ib0 zhFheU5ZTAai-hc}e|WaiHG;+QNTqpy9NA*a#j|8(MdvA5Gz ze5X`+9fWbmAb3r-z2!SSPA{#$8&;d*AaqZ2S`5a)k`b2fk5{4LFQYum50`cOc&o=*tw&@haq zo=K={T0XaI&oD=E@pClk*LwHNNr5rCFyb(m3SZ>y5*tl+*HzFa3u?{;(Sl7wY#6Rr z81)>S8N#Q#>kW6x8cp;oB(sO6;-ho6R74?EF($*9=t9$kB#Nj)inpkhTRI{W6=Q$H3h63GxBIC&FFZ!>v? zgaijF5ckFXb+1PG&;cBZPp!=uDK3PvG+5peaX&aP`$8t&k06pk4w!;q( za?42(13?q!>$kdx;9w9s?l;(W%v||QoQ#w1c^&1=)t%S+6l7a6)R3gnwyys4%|={P zCuajRtCGv@Ztg&7&OSqkpg)1B$efagHx5xU-RG7ChNjcpnp-o26F*iv178D5=9HOu zu6`{i5V4<)a~?Rc(h&_THJ;AMXARv%{j2$L5>+O&PA$N-8N*g=)+_vsE2Q z17~@spMWigd4FDqTaj;V1d0-?#MA-@QdIOkb2CYwb{gECFlV>Ab*8!_TjRx+ik%1m zkH0eYSVmF1iJ*-X&s4M1bUidZ!kI3@a91N^UB3aE*<+3|yU@b`;Iqx~@8_kJ#QHRH z>7*<|P7<2@Gy|ad5tT!msmU-6Jcs^qqeQ&a{KzzoI&ld=T0yq-p&K8k=&yX*N*rRF zj0C;!zCSf=b)PM1Ngc9!ics!?r(g&1%necSqfulua;@JL=(bvineW;?X{C|{dbD9r zBU85C6+723a7@TLopvFGmBIOOeX89>qUpS&jogVT%7Hpoo6{$V5@j#|%n_LC{e^uhEzNqv44b)Kog*=CTDFuHHZqnKQdAC< z18m$!9Y<$l;|r(D-eJ)-TkkQvlJbt;CT9_;G-`?p`29Jc$#R`K?QR{mQ@pvg^5lGP zsuopmiK#^=YSZZJn^_+UF1JgAh`jRaS%qTs?oB?h#B)(rQD20x71;j(n9h4Fq+PfX zh@#B@04+6LC7h+j$}EvphbG>Y=sZELZ1gjT`kid>@g1J+app@~7@AuyBVtD#jX>C* z`IDDd!ZvcGA~`-U)%59n$>s~mZWWSmuo}Hp=xbkk=Bx7tMZu8W9p_IjY5H7twpxP% z(T-Bd%AW`yWFFq<23(+Q-G@wTi6XL}LXP&&QkEo+)Ds*462Y8zH661KWOEL5H39>7 zz4^n;c6v;9*H-q(v$_DhI~HHRrW~0J`ZngyD`pXMaUQW~;^96SSNE&{*!Jpc_+!Dd zr5ShK<{CGYMvZTAsp;fPER%6p<6a<- zu3wToL8=7I?p_DxpEX)U@@n%1XF$W#E(HOgUAy$#HTW@Z=VyVZ##;BCFXg{wj(2ux zITo(l_NH`teK4)u?G#L6`Wy0&)?283Mk9oh122IJSOM+hT4q4Q!X9%ze-|$ZdXJcV zpxUkEGFgD$n(hFt8~Ll#Y}RUIM<**51A8)AZLa3f=F^%G(?CmtNNxA(KhL&Tj#tf; z$${DPrk}1{={HRTYSK$_A)+m62|I1qrfe{g(aD{WyCKv()vai;ztvUkNj#k?#P8gL zzE>>L9NX~Vj|D~R`X+~~d7H~8%y*_%E-JMjX$S1`=|kGNUO-5;ygE@0`n>l{^6T6x z>3WT`MHHc5TX0>(#MT{b$tyO^?`{kH%#7WH4>>lx|`KHd_OnLPpfk4^3 z2W`JzbP=Hxc=TRvG;r!R9H<>7Rsar!5GqH|b6w(C*|$?JAo&Z-_7?UUn(0ue^j%LK zhRw^T_U0cJ?>n0fmPdK{X=|w4Lv`jE*=%Bmn2lP6_V3XCtis8Yhniud;5HvLeq_(( zeKnE|DlrPf$Au5Y)K}Qo!zz|eFQwY!$ttEd=Df?^bPQ1 z!yst6qC=5=C;3_A9T<7S-e{YR%n}JbH(Dz2AcIrasLY&r45dN06=OF2IrEh3s_AW~ zKvcX@{3}sHY1iL3x#4i(4%RsV56V9<`G-Qc)aBDPyGFO2C7_s6wFK?Og(>tCoW?p5 z;Vy$&6C<*9<$o=CLeBo*%{DiTB}c6Zp{wjp)y$kgMC{R!f+)R*Q?t@Fc~|sn87CC| z<88fn+-*#G}PQneMPWydM246RiULmjKRs8%@+7Dc^D4xq)Ibr){9(#Av<0^K;84@gvnV_yL%= z+ofqvxau)k+32+%xLd?EA2LDZi!*a7?IRYm24gm_1(`7imEemudeOC77b4rKW5dVR+;beK$IZpTH8 z9l}NBAIZH-%(KU9615+2TYdh0K90WGn=Msr?r~`gIn_TP{K4hxq_@3|mee7Wnb=Tu zq53k3XE5BkpOo)s9zxO#!c~C0Z53%F3W7=8SKl>+*=~A4vXQdDBzWqiq5L zWou^Q9Q50{6zTNg7b8LC^)fNt^#+mU6LJ>!Q;@qj{_RPi`F~v5Xz*Ue){KViE0GSL ztVLxS2yHlqEbBlIew51d5sp+`ta(jUqdepJoonUT8fTRw;s)HeeY+3Va(bOmj?r+k zXCd)+wfV_==1a%Z?05xc0P;Tc+imktIhk(Xrw1oD(?6EF$Cnz!{{V@2J<|_|z|*gO z`I)BA7>`r1#fU_`OH2H!@+Q41>e_X(#V;V=4Mh&X5_hN-+ooR)K0L<5v;$<@&)=6? zWtN=N>C>9VvdmWNt6yEn)Q&bnQ7hO1Pa2P( zbvxLXlw*+EwBN_4QMb!3(q%H2lh9!!D7IVYEo|$W+t?Q6ZEyCt{?R*7pB=H*6Ek6! zOrj=|+5Z44HLp2B^6OX4X`~`nC{UH(vHt)+o)H@EMz9y!*ZybjwYlkl% zH=_AgVdPIZ$6;{%R_#>={{Xbdx6km&K-8@<#6#Wu@2FepQY<%;1cASKPj0<@H_LM7 z7Sos0&GHB4C!OrCF6N(3fkO?WaX=JoYJ4`^$2GIZ#BHlSsK`)xh1RF7YSTw$X&drr z!7gjS0xR~8W96~3a7M=It%sH#7mDv(m0VP+L=8cy+!~hXJ089ncA6Y6Xw!__GYxLm z??FpAqWBS#v8ec0a!(be-+0Wuix}ucMWeivr$Oe;LYERXm69$f<>Z5 zzazB`O*Y>)@RXt`Cmx_xGM_AYn#)b|6|5S<1%@&hgShM8#16Fa&31l!xw?HsNTR9v zv1tBmmiNrMY-*Z4xMekXf~oO$DvxxU@dytX{6 zWo+|9##2C`3IX&}Ba=*F&Au4CF=b27f0`d$wrw*_h|2s*Fh9*t6PY>nf-&JKI<6x5 z>&Rc07k4_1&zii&Jbt?p@y8D20(MY)kO2BK4-O$dZbWf$ZbLG#^3*!L)9Gsn2u(;~ zPMyfuZa(a=ONLYz4HHBleDCGN&>%~zD`;7*5v2X%f(rp!k=$2$9lm*+4ArxplNi7) z`Jv@2Uoie-eq*$=R!fyipI}n6}o^>Y5}vaw!ZI zE4ih4Q)-RAT|LfYXU1phEqJp5J9*che8&c}rdw%xJCL!)uOZ_>8q`z+@}SKITp}ll z>2T^#1v0%};&$@>i~1%}CC{YM6b)a3r*;FSNi-f9m=bnxj!F-q{{Sj~E#{ua!dqBw z71_tuB^3(2z8$yu{{T$dK63MFf6CPdXeK@{{Rfgo^m7VpyK1wRH`=k!uL_1Qqunb zMEPm{wI$4?y0{{o*!*qxpYu7-Pf#Rj?0Y}4WhmKs@0&c=sV&W?=K4U0x05ts`I2blE(g`Gci>UOT2|vAR|jjnsn5v?Mx_ zvv09A73rC>(Rd?wh5Y%;E!jtu?ar;B$>pCe#p-I09AzC4?I9wSJ|8@*4n8M4B)}W8 zeR3;?Bn_&)MM(buXyi2>o=(p}m}VPueL1CGO{#feHO)#dsOr%k zd>C{ic3SOG^WWri5>;02^xHdM^Hf^CmkbiLP)_UtBYMzKu3}Fm@^irI`D*ql;`2q~ z-IgoCQAH0L5DJm=-|ycwIk<^*J*TKQK|j>3B)o|<^a7!1IEtPcx!GuWrA z#4%JWzp?3?eKtWMWxpN{>Q=E{ zi{@WOU8+Z6*!;2`qZrAKO$Uf}dUuud2J=m#%WQa*N^`9%_kU(t*_t@y3TiN4JI}R3>Wb=Brgz4bFQ*yiit1~~ z?eElPEN90mL}PP)hh1JlXQ%p7qHqI{tvb`V&WjAHHe0fh5wL!9{&9Jge9Pt$ z8~~nt4Ju7Zu3_cMF5Pd0a+Y7AeobkXkijG*G}CcXNUHo@M*bfx#2E?d?BNjz(R$K; zMfq3DHa}doK$q+}84tum5-LS@9@OcX*>v&Y;%xCa2FQ;sc``pxOBxq-HLW(=r7N(_ zRyh3DImjF7nG>CDP1R0{R_H{UkcOkx{+QbW;vp{68CFH?&eg1koiijDr9 z!N(IhSa*68z#f^bTMc%}A-G_xKuPJ-vCZ6v9BDbTi+JCgZ8Yr~(d_iZRF*{`vh03? zl;ntnc6Azwj*pI_yq4EelIi(G%I9_jkx(|Txjj5HQ3xE8-PKPi==7f=k*VIj%+~=x zAUf1<@lbnYvU-lq*fQ|!`rkynv-KnR!DT%`_(eu+@Io*fyGq4IMPdtu;xL zgkysI`t|RZ5M>?Qu`y`BD9K=!&7x^#X18PZ7p)C;{{S=c%xpr9ING1y3J(ms{H{J< z*DkIv09I#N5S1VR)u-KG3VY^VgoF{av$>;Qq(Tx&{p-U1$6`}9pn=K9-HtT1QNNoA<^Yc(YTKyV< zgKo-HP<5yDt~%{7yKBBdbzORJm>SaV3;7hqP!>(T79TIb_~st0?@k6|e4kGF`_8u7E|&_} zNJP>hX8?_Z9fdlLzFl&;10~Z$7sLK@^OMfza`kP+So~Y{`VWR*gB81B03Hta5?x&u z<|<7<2Bg)gwr!w56x#@KJ!aQJHriU&ql<|-f?uj}xv^lRkU#^!`JC70$8B=P`_uBydHl(xTWK2lkwFvs zwEIZkLHj>1yD%XUGU~NB<)@VdcbzWbw7ZSuG!{pUEJXtVN$*kMcks-);~X3z*x;8K zqR70V=GZ*RZF6l-afaY3K?mU^x6z!|TohbAL@1@6Nb|bb>Yw53rSz?tOGF02YSf_c z<@9EDmPR42F$M1lb1d91c(TL+ZZ!k^_RF*5GTb=lFMG-V05or=3N_vF4U%}!*rh2(Rc|6BSivIx17pto3Htcx6!$dSY^aTDVA&*a6mW+DgE^kYR z^I7!UwdQ?WXP{*#We2TuHx93dWuBt>J#S33(7fu6s9Pen&_h=Qd_NCgAICCsP8pl9 z=HMwtr{#Nhgj?Joc8v(;y({z`_Z>4{K?a&N7^5@9UIXTzD>Ta`$~6lgO-cS;x`Xok za~=eiSVTd1j;*B5RV~%)6}i|~;x+6$W>kFLtn!-K>pz#eI>T0WD)RyGmZ>0dnk+`xCC3*Z>-w0$Pzh<5w z9mOl#_2v34XNFyr4N2&}Zu4!vm!!C`EYcROPTL=~(zMOowE{ujW6KjApDb#>nYR+o zF79M-BR>fsZU)_|MryNajEkz&;UsYvv-vOc67O0nma(+~KuM?rZ*ky7b3aR}H0z;~ zK+t<=*NP&w-xB0fr}~QK!Ww`bsRWJE9Y@V}w#7u~iicuX?EJic42-)%E)>rJc$c31 z%V&FVmU?OuUadqQ2{h^7ee(-fs1oGlX);E8AUuGtXoOc zWQ-WV;mc|PP5u7>u4d@}0Cl-{T6pb2Qsd5+3~2MH;KH0(9sZ9W9+{joMtiuLf?z18 z9#_}xQ7waurK=4w^`)Z3{Dlo` zKo8yzOx9^-#3{kn;xR18&i??D*Lu)`cP2-HXceT#0|t6}cbRo7eQY(!kRuULSbQr%wrYPnE8Xa^YN3?(CpYk2YW`DOwpR76KxQ4v zpX0XK-smKAVDoj^VlmH)nDTyg>(}~}I@lU~Y_kqO2%!Xz*{6E{037F~gMhnTvWKbM z=@RR@baK&>MFWzkAdRa+JUf28zA^+lJdqHS?qA4hA+^$>w$xBbD#WU5zr)`*U7a99 zW*m_lDEa&H^2R&KbuA@$7f{B7;RN_@GY7P=f?TYax`%>It$&2INN(o?(pCiZ)-Fp2xOE)EI1*2Q7l^D&NrHT$u-{Rhr|hC$H4sa>D!;ty8xKbFq57x;?687^H)76z44d_D2;Y|wSMxS-1JGzs90&V$mJ(R^w{p1nT3W3Aeo%`%E(UIFL@m@wu@&X;lQCe?M2Vn*qmnPP{{SI;-*4w1E5j_34^k3im1s6mOzHbO)+oCDL^uxY(^^|N zSxv|y6!_nc>`QdY^?3LiWg#O)2`A=tj+BX~*imieZY}B)P)XmXhH7V+^mkfM-3thv zYtOc62;j<%Q9?y(2Lo|yQQHfx@1o6K%CS2wX-+Oo2GfC3wGN#DOp9}K8OlAQ9h zvS;U?Fw1oV+o9z&ib8-o)1^E&8Afx_$;Xt#o8~KMeC=g)#0jm^Ml1jfI`=gIk@7h_ zSmZgl@&wC>GV6<`vVtkK*${s4$kDZUo;wQm>*HL=7=_tz^JS3aiD?q@;v3&Bh7te) zNX>Zi`hLmVHQKCk2I9*Y@jj=#d4Ep3ON(o*Vk0WTR!1C3TKBJgz5a~E#ASQA2TkGf zeujBt&l)tIUk|6U13-+G0)$iFrgyq6Lqc(7|rO+Qw-VJ+k_z{6;&ISOyJY2WF}*a$cgGiX1+m>@@j2 zJ&WAGAwMkq(dIixxVHu<=v4!$Bd_1`%v|{o7p2 z@RBL`WK3lrQFap33Z@0+>**v&W7fy|LjYA5i9Jx7~`FlEh|`NzxC>h|p|lPr9bjE+VO8Xl zYWDyd{{SE3k&!tVYpMpvH_*THjxcG^MLeEcc5uvCgSQq_)8$OEAj6Z$=7$vci|LJT z&oJs1@|usH^)DwpEzsUfWMU8AObQMw-N^8w9MQQxYLc6d~&e$ zpD2D~o4qo938d%sVf(gi*KL>zR=?-IUmZsTYEMU?nIYr)XPK=uJ#ymm<}N7oW)0Y$ zop#^nni)!^Vc9?ohj*;Y9gekY^~hMlCZ`fl5D$L1Gs};gi>SmS$(sIK>z7_$iS(&v z_(K(01pqtdUV|ux!NA7}4sH48&++K4E-xH5)b$sB{v&gaU0)2ga;GjAi0a;awexK4 zV$&hEokwyi)Y$GeJN+4%lP8TGm}Ax)XLru`KbQK3r>IW^GAUFf@eD;*au0{om_r>K zS@wsDR(TiAK5z0SsJDXO#T`Jm8aeoPer0*YYyL={=SsK^8Dy^@O?vK0=}e;*5hGG^u;vr@ zy%X|d^BL^!(hWkatKw_Qr=@dUmmh+Bmr zCV+L#zHz`PxHzUJXrn*pAM`hh)pZF%pISziLQef#f2N;?XZB_R9m_poX8AL4PAV^ zJzLcc7cWfn9Z!yAn22s%2xcJejQ;=^>3V@nC@ncvfqIH{>spM&%fTmMk06kzoc?ku zL2m{B0GDk{X&Z-dqP079KIBrPG}_oe%Ze^>m=U0k()B5>wBZ%pe;lf;z-|F6)3>f;+WSty3nP_|1ugTQe$9Y;;J%xp2ei?g0M%xv>-@Rp-B@oNQGU^P6DkBAEO zp*?zUm*c>1XBJq^&}F(^zLTLh`s2aFfpmn#^%Wpg#g;KxB}e!0)%~%kb*2 z(p_#qVrht4d1U#6%tGGOQqD4^-h^_f=%jwJn6lH$ET}V%=9AyfKg?Y>^76tDFX^(Z zOj$ibgjSt*9`wx3K=6GrcQA}`Luaq(9%<6G4I(XDPnlnmFCR?Q)_{@U#+k8#)US(8q(QzTHWU8zPSox2iqQKs@MeLHM?GY=r$-D&Le>)vaPEDgN34$JUSXcwl+Y2Z9_E^-Hx zh+|xfB+>LgG|KC1b8b=xU^bypzWEs8Gvw2fHucxh-rh@18ThRm)MXozn-1MK8Htw+ zqa}tr+3R|Rt2Uf1#jg-Sb14IQZ@DLW_-0;AWXAyQKoY-T=3vAj&H2ISPbKTO`n;M} zmWD-QMF}7t^%STz9kU+>F^JQb9G)QE=aPO<>ajd`*Rho?Awoc@C3@}OpPbAGe_6#6p;$JVCb!#iL9fOodJWn762Y?_0 zzgp(EBn+LGjYfmke6Mt^-=y zDU#evvhzFiBXTnBCMiVOb0eq{8?bF}%9lTxTJgHJelawKrF9<)rFR>3+XSR?moLT< z6d!PTavL8lY0zl5kb!6EtZ^kbDm&0thMpO;fQStk^N@FVr=KFWvyjaKfH^Y&sy~{E z%jcTiZkRy&T%j>0C3$6ct3ezBZWgp9ln@D}J5#kha}*j3C6XbR=zemG%ZQp@qC{#y z05-;ypf#cVdS*b$vyX~W27@fs@8hv$)o$E~g9^HQU3ahFn0#CA*Qw7&io}l3T4mO( zT+1;P-JYz+#DUhmsguD0i<@p4n3^afQnS&NO26eb2ZsLu zjv4AmmhABAjLy$4{{Wnk{HKRjFnOOzK!#-X9!d%+E7X(Q@i`qvkRMQXImXubf;Tz^ z{7_v;Ryd#IAes~6eXHSIgkmCWx@|zdPpmZkF6k}pwS5|8hRce2p^oKE4M$%b#mNhm zhFU>yuWezD-$jp6P##7LKzvHn{n?v?C^2%fVkAC(^FF)!I^N=2vZA55DLZ%)b3R)_ z-4rHxxJ%`Py45`7`iGfpr710eLdc}ilm`rOeqHq~8=ACat92FW*ERxMZ0;q>Q0zrH6-M+zt9>7l|qTPP13q zhocGd*OT`f>JJO_dCw~6{Ev^_lgFx%H_@joqXf^+ zKbT)vR+7Z5vmgz{cUlgF_-~c!a|xSa0W6P^H4Q_|KbcyRq;fM5{0Lh7E7*t{{T8>r&Fn)D{RA(_F(dPm256r(8p{#f~b&&nEI zdfIVxM=b4Dv(qxrB9sKe0?7AJS@Y%==vnf?&ZcMc6_vbEi@EUSB{71-sRF_lM z!4|1K#O3%R@-4d&@pzHefOzjr-D#)`k2hVOJSd+pqv`tNrlncfN~dy7U0X5rQ4Urd zo9y;G=&wA(a~x`o9juR9oq;tJ@vduzIZ4Cq5y#E$o>Kg|)BL?lsUsIRjJ0VWdRKEn z{(pvN!v^*oEN~GF^URu+rG2M4&i?>1{$^^rubX1k zqL46I7t>V~;0Hh}?bpXKvBZ&W`SKIV^^fOm=?Mm(Q{{SXvwD- z%?F@IIb?dbmTjWAwT|_OoT|vOFY^izKAQK~YL=cul5u(EoomdRHO`Zy z$gsxlt;dK8ecHY>!>5tx?O}_KG*ZvYKl#Vs(HCp0UGe(t4qlH!2~)8HHt@!BhU_zz zF+ulki#!P!H&KpiDaDk~H;pqcIYt2A41!y{YhClCn$D#5>S+bHAf$VD>zeG^?-1_b z>oW0dA3AxHTGjl^ty<|mRgB6jS&D2q7N+K#iVA%5Td2r#N`tS3+uUyat*QAN>bkzO zISnfcK#f{dR)(j2w#!bMScQ`GIAy{&de)PqN2oxW{+=l@jY$J)f&s4ik&GOI$2NQ- zCek0w4LU2k2<48V;;acfjn}Cj8GNO}DD!2WLSgxge50-C9&*%mUn||k9I{6#nV5nZ zc~VcL{R8J(XHnUC_{A{NVjyh&GXDUaeDdy-<&Vp)W(#=79at;Of8U%Gl_#%5UzT(@ z{UV)_(}_ll<}b~gjX%%cUW!jI>B=uO*$j6M2NG(v_(yTj_;mLgSd81-`J3!^wA1T-w{l18{CcRelpenUcT=*}um! z9%XNST@<7lPMd?=AV_{nN}-zaiDpFP?pvi zqhe(B4*-8w)jJHp|3?;m~EJ-!9$ihgSMI@o@3FTT-aqZJSah6!|o=-O^#yKhIUy+}g{$A3jv-5)| zqoLf+Eics&R@vk=M>XGrQ>gntv@#leMmxDV@>b8Z?|idim~3)}X-ABuoeE;$SeoMKVib`fXfNp%l2+WukwR@Y9~;o@~&HslzdWHch6 zjmaAW`&6f0@{HN|-0cpOMBHCt+xeD1HrmgjYIgqsRlSlXUJvk^w{Uvazm8$ges1gv zd~>Z`k0#wOl)S@r%HHzhg^lS@eyuHj6_5_7PToDn*{sM69DQE2avL$-EAvNK^2eBN ze3SW&9BFX}7q^@*?(QNx0y|Xpr}52hZApRM=5yh{VKHdgo>rt8#w z^~|A=RfkMwWh9SW(QTU4PVl3emJUE;^naPnZg4r5Hbijj!7h^B-E6KAO+LsJ0*9fg z{uzlJV2f}`@iuuUn`YCzwWvXUVp%3;;~%Be8g5Mv`%~%6T-bzn34{bqKEV8^^Gq7n zk?UGT_LY^Gj|u~sSThQs@33P8TOil0TnOYtz*e;zfIH+4ZUb&yBsm9;dCGe&PU*A6Jv}27`Pv2$!XKX}?859+hKo6{Y|#`_pP>>$3;t!ZlfjK>2s` zH~w+1*>wqg?Hum+Ao{FYlwy7SYrYQA)A*jJL6;wg$&Kk2mmXYLuc{+(;JrrVbggUt z-g0t060qxKmQdZA>%W>3`Hs$A8%Gt9Q{qJitZDGm*!=T8TJ5+)56p2L-xnPo`qN+i zC2|TcsLjpKPPO~8tQovdOP3sxBWKcnPyEWY)#gny1}!QDPJ4>>?LkvYQUPrI!&2b>o?MdY&0lQ(ou$%~yq%E8!?Q2ee9fW$UfZpepBIp?LVneHeb{HI zh9g0orem;qH=I8*WL+{#*bN+^WlHrRROU8KX)PokW%ES8n^$rmxYZDe-NNvC7BxFi z(zGLSzGOovF|u7`@(^i?d6MT>^9Maz+S!#9gHd0I4)q&!%qe6s-M1b-GfbPyLr}5P zq`Zd0J@Uka~(uDyk3BT6d;oMEH{1lbfr-z;;c)EB^pHzsA$7HbjUa zRrVv>pc{O#o^AdO9adXI9hxk+ySAOIVZw%+NWtHv8%>+n3jq*q3wwdKSg__zRB_g4y00Nbu z*zNb^^!6uiUI+lM=g%npdPUUT2M_|eBdvS?0H1Ezm990rUZ)T*E4}h`7S`@V@ncp{ zy#VP`zG33k?M|mIkX?k2$lgpAH}9xjJdgHAB6i=y_~b;l-Rb)-00wdSg`?T(=@tEn z|A^*Jnro>*E+iP)T*q z%S7`P>PtKGaNLD=TKo9zzGdaZ;u>Nw+^9Xr%brVu5eA2Lspv$s0504~@Z0ap^!RuU z7iu)ZTNkPS0E4tY_sHq#^!#%#hCR#qSik?)`2%Bl9f~qCo%ZF_b|lxQhGNKZICG6E zTgI0Xw#3C5tvq>nVBxl|BJ@oz${V=ea%k!atwjmmr2M+&Sq~347c}UxeQG%(n8gd# zK-hbZxFI0qi3&hz)R%SvPeRlmYpBMliHdBpvjgb4_)o-y)KlBTD4d#1gE{=1d%Z`^ zcDiMS1d__g0}h~#^AA-n2-}cxfFGnkn%+;A_f7`#5H4+$0s*fo3haLo{c>2(i5hUD zK8X(W#YFh=^z|f4Z~KTkxG2` z%pFD}#?OS2vk>zym@Y0_StlZ(uhIaf!^hvQWWYA*G=>in^9|y>lnQF~NjtEn^ zgm0QR$X->O%{sEf3}ux^E}Lw6ZTIDRoWcQ)rhXgi%kL9Div1jts@9<-N=F z@AAi7vbFN;dXJ<%TR7vlg$)C8AXcNUz;x|Vm0-mV8*sD8%-Ku-05$Zlt=Y$XNN8qr z&u)Z{l=)`2CUY5V#uB4%AN;+(lSPr9B;#!E${13dMM0;&#<_>ja^q_C_GumF4=T@U z^ZA|=Cek5{C?cY@8+iC+gvUe)5G=i$$i8x)U9w-T76ecqQneoEY|O!^EAI8;g^#rNauwY)OuEtrR&x!b0SA2x~Sk# zS7sf$^sa3tIEKzX4K0n(kNIt+>P_{tZW(q8Km)fzX}S6{4j8zLl^h~GkoJB?9$0s4 z5@L>F(Rzcv_5RGRSdKYZVMQ%A_j+BzO@4hv978*Cp*8RR)<#nx+ahn8OXj;PcDtI+ zDETq{>V)hLWMrYqq9=sx@Evzajl;wv;Uh2##dobMlEoWxe=tuZx5<8DO)l;`9bHPt zLQ}COy*{6O#?2ZoHexb!d+m;_+JvIk1mvQotI&Jxn6rm-P68lRe9fW_9?)vgvd427 z2Z0=zf_JA{SHNw92Aqw{ohfmRm)uSIZqZGvbM=`cPzfI7Q}yP?Gve4X!6{-pyfe(Y zWyPbtw55GS4pCTEp?qnY{Fuxf%-YeEaHjtNmYJsCiH zi_?x<9evtakf{=dsYClUsp(pH;~d6Z-Sp!OvE7;ZGxHwG#>VOkv>#fj3hJhZVf~%y z@0j~aTexzEhH5Nw+UC<%xRNVW0bS9V)bB;wpE`X0j1ZR$>Ma_bKNzz1T?%;OTX~`s zMWA6(P)Xb8)B4jl@c;@hH%A<)=pu1*DM=*#*Z@>DdU$wm;h0*faEcCWGI4AYy*lsf zR|48}V&JG!+tk*i{PxX$45UfSlr5azX#W7egI0n*QMd~y9}s_E`O`OAogmK}i*B5e z%@1*Yi@n~CC# zqU|)~HwEb`>HIY_DS_*7yx63Qn!XWVnCk~*K zy8!&wxVLMGT8OR2pr7TaV_(&n8i{d7XK#x)0jHRGBU-)kmEzp#auW=%R^$OePM{x< z{BsY56s>;j#qBJ7Cuckk80_?o zChE|UtD=%7_#}wdytfr2wJTBh=Bvf0oXMyHTfH;Lo^G|!W0vPwk+{ahAdmLxw)ws6 z-C%&-uN-*FE6hLhkUDg6tP?6UbSenyK6N7_+8U8APeX*zr_CDAnBUG)%X?t!>BCTW zqY~aD!>)6=pl8X)$%rsp4LvO6h(#a@%G8VyckA>T{{Xdv4jvwEvss6Wlk8v1oj$^K zc(pKwCXe6*d_#S}IiC^^&3&JYL~g}=-}zf@sHB%R5-LX{?NQad4r?_LF*F{Qc_A1i zzFBQ=^6o{3*Y}YUYKc}*4_Xj5{BsUjP9W*3(HhU@;z=pA^teqS+N)42wMR^|9;=Lb zu^V$o={7ey`U|U>NneDbDu7phn+kp7GhvX(v`PJ?0e#Ii?HMAwMQA)FyA2QdcWlj z^tPZZwzppk1>b?*hJc@uKQ7syqShQTY}MuQA4DH98MNorE+c1?)2AM%+wnVQMyFTf zIC#Yu%|2w+WV)6amFO0FnCbCuXe;v-If)(@ZgLonlD|6NUB=0$*$E%h0Yb(rQQn($ z+onJl4pQQhS>%s2-e}DvcdGJ681eNE>rq;OeqK2sOP8mghHg)!bU!n+lgFs)cB*Zu z@JK7fgg^7x7oD;}7HdE&xGu?lT zu3jWl6}k=#%s-U$3;Od-pD_sV;zQRzF7!y^9*37AGAt+vatFn?L0+7F{#l0sEWDf% zi+9&PSGPJAlP0w}NghE-5>3H9zLA?9CX|82CvgrMeAVWk%vn6YJhvKf<8H)}8k0&2 zRP-J>URlU}EDMgBBQd+E)MfDbFg-_0)I75^ zGR16Xf?~iF+P_Us;B8F8%M*;Xc)lRr1EfzXYmw= z(|L`Xr@bkf4q@~!AAW^$xruuoUl$qLHZq_ z-Q50MMi8Qi;Gi@ehs$c@P8v2H%rcxKccSY)WU&0m(WZ*ll1aA_#8+Xkr+m+hW0+D7 zyNi?KPc#cpD%>UI$Sls>3a~#5bgeywMRQ&;41C=NvOXc=FFMxmZLUnx$s)Ct3ovbs z2l1u};|G&g8o+mXT4~q%!IxXXekEEH$>4d!rPARf#?(zUMPE zVj;xUPl(g*FZse-=_WTie5hJvDoE*2!j$&d9Caj1>3RI*T|Vsdx0dXZ#^U$W5!}n$&n;@J3OyiK&oy7x?z)$@aWL%m`Knl4#ikj#u;Sz7@jp9$R?Yc+boye)Bil7SIfscg6zWFb!zOD9 z;b_Z)i<(Ux&aM+Z(tO_pGE6KWKaHwq!u~yqxR+!tiZi5ll zrq4HcH4(-h+jHidZz{~MF=n<3zW|})4%-ghGX_8h9(aVkLG6BA{LS)~t2B1{Y|*ro zs`Fjz+z*yz2?&jv@Xj(6@~_P+VXof|6HhgJhp%3WO-|n;e(a}Ll37m9qbH(oNb>v1 zXNmYX)}vl7H>ouS zm@;JIj_$WnhPg4VLK!r~8l|&_YX0z6ovX1u{{RezY+NzoVTh7;SJQtpG@VI?hw#la ziZC=GenT~$4Mo}B5i*sdRY~n`>i^%Wr^xl~)nRo`w^w8tnzG>Dx-L6Nd7_>MY ztr|{02qcw%14_^je885e*iHf>!yweW#pjQyEtCkzUYTL^#+6 z_Fg{P_N``Qxz{9+lEqz_{t$a?YI|lbJk!i~Ws)LB*x%*$r+cd2+%#vMzY+)rolonb z%-H$3x}8bK9g#Y>nROi<&8q<-s;~-qY^Q!JQ?-4z$PZ5^6CLF|MHA$oEn0boZ?D8d z(u{lWO4H)4JTs!uKnPnL`6Ol{^n0%(32qR`9yCSbq$ywpI-bMm%pHCsTuw)i!yq1m z`BC{xai!}~`H)D`MwLr=z~B!f_K4qc^QL0xa2XqI&ydaOKbpR9yYjl5MlHoRnwu`* zY*C{Q}p7PF&u@ss3WU@u4I&Yw(-l!oRR>oD^DGU z*{Tzkb8co_u@T{Ywd60$jUUMNu<0?}$tB06J{k&pmiOt?HW&qLT~wh6^Lll}!{Mz2 zNILfv8}HY(Gie!&QQ5-D5t2`jzdpR+H8e|S;?f`}q;0cpzv~&G$*J)ryR()q7`#LB z`&hNJON4Y*ye>F1j=-KEd-UJ%%q>_vTRT3?F~%-yZS{HetzU$TLL5ARn$WSW2>E6t z0peYDzk_kf@4id&$}QXx&N)Wz&cJR@LJc>jjcJcjZO_>7@M4FFoy(`x+acGRk6PYaM z7}+DT{J+rjl5a1p5lH(AcL376)Mh?d_-+LDdvwPK4-dpUM5P% z@YJ7&ZTCJk?SuiGwZ>dLnXUf01KA5(=2e7%IU)F0$L{WO%##Ds9GL1ao5pl|OB1X$ z%*v*fl1A~S;=e}K%vj)wHrJ-q4om~i9&*rTx_f&##Bj4vFh<^^v8Uns^6BIiL9;Xf z+^|g|-BBcxN_q{vN1zm1n%Ba)7-Y9kn3zh^{Vvkl_tm{1sRS{biK34V{W7^obZ?2` z+&wxyB13Ao`dC(rc?&S1G!zv6+UBBKz5}xix)U*Bk$In3FXg3(${3MXkPXW&^!iU+ z%9gu|E&4n?3mN>e^8`Lz)1b7SAM3XgvwU64A8yq9tCG{y1DnCS=y;;L*CiKM^z=vs z@;ffn+s7ju#z%KDT2V{_;Vo|Emc@fjBy##{r=J(CR}^(wrccAnF0F4Qf`t*<2{Z^tol%t_~Ud8q8nzbQ10PT;W2*-sfwc%5^si34W;S_K zMk&fqZPRtT-E#e{tlgHv*zo`!q?&fGY{t-HmZEk!Iq=q)jou;o>*jcEp-nWsBm=6E zw&s-`>)$%9Mm_;S)?=8-JAC!|U*;Q#Wz;PpoGe!m6_6f;s~S*t`Q`-TYMqqkLD`UL zK3LQ$dMsooDDg2xBx_Ns@8dc%-8A637gK7%w zJ?mV@(&Q25=4g9JN1Mk#Gd!cGdE;G^%u6d9ct|ESA8EkY?_I}1;fEH};$_-8ft%@k z+2)VR9cRsYh>ZU0Pbc?n-;Y2DUF)`H&Spi|;mBgoe5?NeIQOG@ZbiDegV(qKl3RL^ zH*UiwNg>L`s4^(uF?sV&^4fhu(jcu95yX5VfY8)|zE>=uY}!Ps-Vf$4&P(lPe@jMY zHC_P_5&=7Zt&FjmZsF$4Y2HDD%`@J$=@KjffiA@H6g4~6l=jRsrtuB1hNd`&H`BM; zlq!gBB=scXJ|3j~9XI)APD%J;gRIMt|fTsL`=czQUPtt)3 zrNK4cgpxWAgjWf~Ly4)GgX(Qt%;Mijk@ZF~tl%mHe~Cc=k^!e$5&Uw!i>}F(thM~p z^8WynbhxC@Q`Vd%9)ur?o1OO+{>%Ufgn~h0asGJgT8)d(9lJ!cl8Yf92?KLON*a4* zJ}iT@#6*J%m-9CE-Z{Z?Zap%9n$QN?qK9MPGZ+pcnapD}@@TcqL(E!?a9VROS{B}w z2Ak9G$z;R>mNE*r(%+X}VwX&NYaM1@JY9etMR(}KWAe>!AA>4zab)2y(tRHJ=F%Z$?{=&if9pWp6F{t?YFPysv)Tc~A!4oPGXTg&k)MsJl!O;w)qH z7xMzs%JYj$D~=`p9w<~6J_D_5-kCi5+S)EZX=e}#7nAiH%l8*|$Wb1zxc!>#_vXhz zh|hPImbZv*^WV=u%;Tp-G|d^ox*rd+@;|lhknK%R2EoBIGcSRr({+C{UjwKUb1P63 zA7pqQ*`UD_o=v;q52j=C?BA8XTU&u^U0V4{#<7Z&Rw96PB9-g6&$e{q8Nn9|$2Ysp zEc6(x;u@vIU|vaIQK?E3(2?`+n$s@!m}>Z?LFxYhmwr{g)^8V6zJR5qd{!=h7a}(; zN(yh=@x&gj`iYrr^shU4^Gfn;64|us*Tf!_Ja)?R>NtLuG2GMTpUtn$8+*+LJ6m}S z_cH)ni1*|=?mBp6JP#L}u*E(NpCS2Q>w3PfvfRZZs~_F*>&mBMetEN$L}N-v4=3o? zo-HpfJgcQ?wn2r!bc#Ztlfi&A`ZHgfF9@etbo^4adp$lsC+Xj$HUcnNBd8_Xo)!N9 zKDm!A#g@q)15XX}snz3=HBC`~5>?}gLHK``z7z*CF%AK3xbgAxEI;zg%Xc1Q^AXhb zFHlDlR1k-`?_Sv9^*K785%j*{(eLAmJC82gvqmbd6SGhX_22k-V9Eza78$r6edlM0 z+^kmM%OZe`u~U&0pfvC&81J&>)bab-caVIC`ZhT4BvrSzjm)gA)RH&N&X+~i$C0t- zo$FU&Za7+Uc-p0yZBGj3KD#t=pG!o^k*iFJe=92>}lJ8dS4 zCzHf)w7ZtnUr*9jL+Q+U$O8q~)9uoPS8a}E3|w6q>g5>i63%rC3*Ru^+dQMwwYJ%r z8lIzpN>{xzS*yk(Tx@cY=J!Z7TW>Gv{NhCul;RhuW7DU4ZIt1c3z>^P?B79+t@P#8 zt`)s``gSYrPnT@p=(AgXc~G>_NX8jvaz_L$$kX8idS$w>DZ#^#komUu5H4QLWDyCN zw>p9Fj~~^X);rqwE3GzW`;#l{DGwi>JPCUzm9FSIEGQPkK#%X%*k~dD=RrXw6E%Ug5p^| zv2YwWqKhS4;vH3~)33H?c2o==he^@@JR^pZPz1KA6+N69k3F1}cM@aB4dH1K@KSI;jIr z&nAX3y_rtd52#tL~}`hFTXCe4>M}A z+gV88zU51Xs70U#tVeYo7%=5Ib|I@IPCid|)O@MuE1xdfTlq~*H%r1J9?vfytWI%@3rapaREo!>0A`^k%*|)v%9v^;}t>l#*5_mu2wx}@FQO! z9A`>$V0Ye|*YNN1sQ0@(eutWVcxx6~WEQt>ysr6v>UfXF7z&VjY-vI~Xmb-+mw;Ow z+JTR9@vG@{Pd#Z*XRTW#mk&bDPZm~E2w;4D{{Y&|Ym;)-YfPq~`wNP;a#jB>B;+CH?RkJr>@ zJ_8!zaI!%2DekjlEY>s+=|q(#n{@unt3RqcIZ+%jx5(d_o^txJ8fJ>DN{%eaURCd2 zzr!{2$N-?@MsWt-LUb*2%_R)b&a)v7p06M{^d_UO-Z@3eLYzs=8CZSq`9FDM zTDjJ*BWVnSh%K-b=zI3T977qkmY`!BupL6u^HaV}Lq?m?^xNPH+lB93mQ44_#fG5B zpgiTQ>-unx8;Kft4Jw1J3GeTa$*Y}E1 z(BXKJNYjjwF3r6MZk6%O471`MYnKSLyUW)i8>UxaO0{S!xdc=1-|oy@ah2OBR{$mi4(v|MAUl%;Q(bRQ`ByYqWjZC>NohQ>Ei8QX{p;k7o+ zc8^0XMC`j5##1{p$b6qJg|9Ayc|WcW%w(bCT6C`4_s3nPI3+=};U{9vyvO-Lr|WVB zh{o+0s!)#)@@e0C3g#B7bT&J>iD<~lyCL%Lm6uJm78=BBup`vt*1HdUw@EXWH8*TH zalF3%*H2ASe=FD@Qr_i$C0g-M9sEBWx>AgG3RP)E=m@8{%t&Mq$l+rE3lA33 zZAO=J%vpyg*=ta>q44ROQ|dNa24j%Z+gr`|_WE=hb-)X3>Z($;atQs9H`}?%YBdrt zpw=oUchWvWnkZ~gxJ4iUDmNydervR*_I4Xq&sNee5_v*Oz$l>=HT$z-F@YyL6b!kt z-!m=0=%FwnReRKL+Mjl0YOrxd8Dt{)XUw|HLSI5+3YOoG!aPT|b94RK*~1ZuG|M!N zM^C-81_x2KHXHKq_hxh_8I9ZHsTj5h4N>CLZ65L5ab8L)0R!Q!Nbs%HDnIkm-Z?$?*bs3wZ90k@#FzU~ItFIfY_O|rDasX~ZziYs4;Zd1*`#{ES z?@fpi#Pm%=&i2!45W@lCBB>2SKr8$`vpX)ROzh<3%mCS${{V^M{{Vgu?)mi{JbLC= z<_CL4m;cxJ+j{}CGKQ}j@!PN7d})+G*l^=N5kl7XNL!jW8V(@|8-RQ7fKe@Sk&h>$ zd3NSka$=H)g94}F1k#-W>@ycMc-&mHO3g_6jq1e1mnze09IJ%Ew-kHbsOb_~MHSg3 z2?yG*Q_}=9TU7Jz^bgCgCMTGl=-d*0G!y{PwNGrPIj0j>lY~Bu{F?l|hsyqEkIed@ zKAo?`sz&wp_swpyb^t^*o-loL=a0-yDrk(1S!A2+Ase!qcI~juh6#FhXNZWM-yB$Z zx;ssJ>IRWk%K2S5SE)2A0O{BK&Q%P&6Spfb41*CC@Y`KW3%CQ3rsuiu@*k@wpD2;A z;o=+ByqC0G_Ke|aMS2VT80%u*F@ejG=mH}hxwi&E+KBlapNkQ9sS*{{1>q= zF>Jy@NZ7DoMoS>#3^GD5r2M((GpAk0s>T{fCk-UYO44IWf2=FGuj7@8P}!sa2JfhR zzY+5Vtd?4<21~lSR+Zdsw`{`618%D(ZW5L0-yUEygqyK`&`VQ=?H|Q8V)E@Wr!<{%aA|Tq+0yktAyMCWCrZemSVm>ndxLIa;BD zR-5##b6Y&59uU_(F_Y1}pMMXSEWK-hKD7vBcQxp~`H=}*g&YPfYhTfA@1+r^Qp`gD zLFMsoclmhInUp2Mr+#THUPpsbhtkymOZY+J{v>p5slH>K*bqS7F|fYW{J9U*%n`L1 z)>SlM4~Ap-oE+M)`ppEVTk}8Y?iYI5Y3Ei1LO#d@ZBg82!Xw0Xc%k7i9S6?F!sd5? z(#(QmMQ^gi{>eQ){H}yKIhk;i9wgOuiM0_Vx}<)jq`#&ex+&P2j;C&!MyMHbbub`w zVw(1q4w~@a+7%U0#4*~Scj>kq03J@q1~VlH?dQCbeM&imWG}-SF`}_ODeYaoyXEtU zJespS=IgTQi8dcceP2&&e@-Bd?c55V zW0ihbPjJzbCkH>V=d%7?X}Yecmv=A|>uzJBkQ%*r6$E_8%PBJ8*|P>x_is0U&OT`) zK(y98zN;O}p=WAVwd`r%Hn{sbCl!uv`wV!C<4r@!_a00)6S^85`BdyrQ`0m)5yo3} zxU70vFP8NM)bxnsbw0d6xKwI0Z@mwRrfo3fw~yB16QF6q!!y3620CWUxm{G;P?$%S` z>DsjM&GwH`z$med>zXF}S9@AYDAAB7n|(ez+`8${kDJvr%V^|< zV*3#<7G)hy_3QLz%M^I_PAno{Q^q{g<{260({0DY3kd^-8w!C|+hed4u4sEkJYJV1 z$ARHKbi93bc=aW()yN2-l2(-!BERJx{Wi=9juFD&9Zkx^F!EQEXRx;kG|KB9D(sqm^`RO zgpeRCs2C_67J!ey9MeZHhH2F1!eu9(=o;1ajofTOQ*QJsS89Rwn0xqVQQ5kK5oNoE z_6q)Tu)OmIsQzHEV9{|$G}soUXlu|{H#w^|&E7GHRh#R!7Ln_sF#4G_nlK9m9ji)p z@8g=>nhp)irqn_?4W`~+zmLt<^V&$F+E@6Da;Z`%L2e{~ee)j?Cuc8D9u^hnZ_1a{ z<3XT1PJj~IR+RZ=xgzaxdfr_Qn|I}hHumW9dX2jV4J@-_O&haeFR9i_< z7vuc?CpJ2a5jgG5jJU&5>6%i<`+x(AhGqZ)JML+mZxT7lH~52NYGNRZWz94|7s^5nWPy^lsa+!_iU zf}a3-d*&$2VA&iTX>|H+^tx2KTnw^2YOYBXC6jSamQy%VObj*;p2d#8b*aH+Z_d_f zACtdR*P-pd-;8C&vtCF_JHE3^apik4^|ncGYEMcX#@lAo77-C`5G8{&iGF0fya_GQ zC*mVz+LYh%J@XDkNVa6;kCRThy3$%J9!)f~TCYM*)u8YhkTKhfhl)pMp4@(2>M+l1 zG-HV-vkDHQpdEf*JM_j_xL$)441)#pPniCps6^8hRRNUIR=e&7{kIv1EZj$CIP{z) zXOy&Ce=}bsH*Z+Ww<4yMUgD#n-!>TXY`L_iPkz7DblVpH01he%VO0p6el5V*ZfX2; zVZ@z2P7R(B3l-jOumfLHHfs^ggO-xG4QY|2x|2e8*kxU%hSMP$*$3 zmh{aDjZZ?xzlK{pyiuoNriH$9{K)bg^IALFpy9;S*K(w62g@+vI0o)sqW~k)_`g*0 zmaXOMl)KXdAOn~tpa3>CAHd|J8y55VFkd!hqW*8+X-;jmn0dh(fGSA<*RXH1U-LO$ zQNk_8j*3L=`kTs{zn6U5X9V#$H?%F=r?IK+m*K(*w<88a!%}9NzK-+RJgiTm;Ghe? zUzYXE{G?Sn%$N@qhv)wQo_w_}uCinZc=Iecq3U`Q;s#*GoZNRVZ1YUGt)y_EA8!>7yh_BuwjIHhdZT!X4b^C*(TRQs8paRq!fcb4x-!kK?=mVLk;mjDW zl4sH``RTF%Y05?AwR>&jl7?>t*m>Nb#L!MW@1sHHJ73ZkkgG~m`jOLcZq=Ytg3j5f#6BOn;8BlZ=uwX zY4LBL=FsAvSghlrc09fsQENgs@yr}k5ZW$Id2PGXeTF#B%Ijw-&NF1Is+yc?acjlIp+(ETBj!@SV>80IMq0WBj)# z7gs2ev*7Q{e==J6zV=&`B;1B2n2t2unh(G4%}k}@ot+e8WhMNo{PMp1yVju7?j|j# zNWo@}O({|-LE;B|&cnq4vtf^hIHLVD^G>hjugq-*JyTD+jjj~~k_ac^p(E$pGV)`N zSXt)QH9|q;K2?^^`s~>;UJimV9Y@7p!{6pJ8Zrg9MIdEQH}hBJJ9$sm)~pD24rC5{ z54E^IcGb&9H!D{jiO1!?=N0U-N1^IgzOy*=;}RtWSG{{?WHn+&h-$$h9&cIy0F}Gt z{T}RSy8V;dOyE_J78O1|*_GqR6Q3M#%DYvQPuI#{=}jEg>Isn~RWzyiM3)mDq{39fZ@h_Prrn)KL6k=%CbU2Y z9y^V@W!UAlmki~UXX$1BTfUYnX}rm+N+p&x?6Zej(eN+qA2@ z9Yarp>bDWRP4Uacfgy<8Q?AuHFl;+Brvf{vY93Otzl-YfM3NUO{K^XT{{Sc*{{YWy z!|-^H$qconUy|<|uhnp`DraHY0YSSG<%l7xyRcWMSBxE&B0{BpWpW&M$FBcyPc`U<%ewWR9 zpXIR9uM+n{x|J>ws;b1DzEu^f&XtHyDioz6VsLW)s$=dEi>^9`1n=7ciYqlIOR zaptT(&f|W+E?d*S0U~*}Kn_9oFPHUyFW%ck&|0K2GF3nTHy)#}Y?$GfM`sLo8e?8) z)vhj3!=YNa;qa+tEmPn;0Pa8$zea2I7)d^t7I=(9;lIy$u5Baz4-x>$S!ZB`7BX}L z!k@!4^pP0G?g#{wf8<7wHLjGGq5~xI%Eyr%LW)%Q<+{9rLuXg4l(?xU^RA@~mp5ug z>}ZWm$U9X0j@xBgJcFw(F(AD2${(0A`6phE2xI4GF{3Cn2aNzd`V8D@^N0^8J1#D- z(tjxFuz8Xc)^F&MFb-0JyNdVyd7UiLnBS9!9DGHeYrbK!@+F_?4r}#=07tl@tt(%j z>&<4PR~$!YYljVP{ObI|{LGuq+N9P{xo75iwMZ1@zE!7~$tx^%Qj|r9zJ5~qm&?|1 zCY!A~BvH8L&IKBRz4oC!_s!uEI~Pr(fsx`V$LEcwl(mQ~{{TTeao(^Dj|&2-DY-v} z)Za1n`e+zbdAWmC>Zv@l%iow69#^;h17~iH>5xS2QR)`lleXl0ZJJ4H&LKhC$AWvk zKl0C3)ODjbnDve-8bcBVsa_zB$J5_4`#xtOxjKH(;Xg~;rMoW#;M4%16Wof8hw(YK z)k>n_X(#I4@F$)xBGvUvwuO&0a}hzf03C<5Gn~OjTf2j+9E;NYf%#DkI#21qQSKz- z&r`{khMl^7Il34{aXI>2BUBkyh2)JD?)k?m$1Kt>D$rC9!!^)=oZXII#~d_SADEFm zvovsNC)JW!KCcmrsXJ7HDmopzbm)~!^+?02rz9vwf-W-c8?Lxi`;^h5q*>Ji5A z=;+)oW^PW+PlZn4p8Y+#X16f$Hfx?R2G2FR@_o8SUP*msl}#DCDz{nzxC80RhLB?x z;$)ndWcDARBKoeDv~^J@rfRfSJ^Ji=<r1kE8XJ~YAGT?+J$ifo8)hW(8K=Rp$8^s> z>iTv4<$@V_&HJC5VsA+{mG|I z{{Rf6Ok2Ox#yF$9)b!m$PrtHrq_|6NCDt~r06*>J6U7M)oAT+&8!@YR6ImA;B+|x0 z)xmG&?YFqDV3=@oa4^Kc?)9%NeqTl+hV(!rXCH0qD5HOe!}#WQDAw*&pk{6_NWOa= zBt>g0GS5&9eQRCDWn+YA$vGxqH+WZ?{Ldee{Lc51dPd&j6{su%k74h&Rj7}FD{x__ z@g-q{P5I}kYx>S70Sv@=idQl)_K23juUn-tHeONrz}Ff+uW503;kF+U z>qgv@?rHdCd85AV_%Qlj{rPzIceW8pr-U*%LIa)DccneI1Mk6;1Y{j_CSxt0VfnUf z?=`j1?jO>gL{Cmi02^+V?e9$I&N3ylvd0m_x=EpVgUlX6WA#G*nH*(~T9q_4s#cXA z;+eELe6k|Y~B=m6|~oEmr>#>;jQMUHv1TwO;@)GTk;>hnh!;v7%_ zyNYz|KMd$(cw@p>ETt)1=by^W9_jTY5OXPbb|h`^n*HZ7u^QR0F(-G@ADMb0+v)J> zHp%sy>zNb)yQon>dTcxQ@$k!aP#EJ*R-QEaC&_+JO;(6 z=@TCU5NE{xeO%L*2Z%O& zE&0!LcKW>0HzKXfjr$W&et>dWvs}02%SWad&hI<𝔡eSQSLl9{Yk0VoNt4CjCtK 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%0DcV`jjH>iLRopzz> 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

aS#BK`ftOfxRjy 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 z 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

  • QEukuS%N%V1!_+pv^TD6 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 eNu0`1HzWIKb}hdpwdiM(TPUzpB^P zq3$&I9HKQO1J-~8@okj&BZ|vbvpBjBdAGff%icwXM6#Gbx%BO3Vazih^q z5JR1z;vC;@`AX{R$zD~r(sj2Qq_HnGw?p=Nbu>+kOKWOU8*(bfO7Wrbr)-uzVUTqhz=*g$Yx6$1(q2tj_4YVLzyDU(aUxjH-Oex%W4g5}OWdS#5;S5}v)EefE`H5+7 z?d+BYs65xt7OHkl++J|6CJ`~IF>B-r}&z7EZeBqjw0;giY6~gmitNbW|M1gd2o%Y z%%UfTm2ZT7qe{@!4%l*L;~TnZY2qcxlKxkIMBT}wUHOAkG22@*vc)XBSBW(sZQ;}5 z@awi5SoqHo*f&cDLf7V}{Nuf*si1j#P||Kpcbbfi^@yZ2SjN<2UFk~v@_bwyhVRQm z7_ympL-G?q{Ij})UJ^C^^l~eOpk!8E>r>jfJow}Vy7}scGqd0IugxA%Nvdk`zzC`J zlvRNpMQh)~uZ~;dgAPnEc7*aypFP@t&Ott*sXmLMGtLaWm{($>uUem%Zsj^RqQ{f%P}DiA+wo` z%0`}@{{T4QuU!6NX!6cx^x|iAQ!h?b_=Qi*Wtw~!&D&wYdl%21aq^C@5~d>_D$jJ%(A2FumP&eOz*FE^KD= z%!RLDmckHTHr+?^{T(aYGx)`NTr4^LR6`H^+SLc0E^NZUrUHg3R)UwY*rJr{&I{_21F3$|ThsgCL4NDG=#Xw&S*F zNtYG%V}~^wFQhz&<>&I%Q`A{xr@&X@Bacev+Zi~8He<(T-oa(2zNc*^&Zx;JA@&)E zA_(4?F-B86xp9C7%g6lr<-2_oN_(3rBeByGrK4H`&;EOR431yjeJ(b-7au3(59VK) zbqx~YZBtBe)B1o#ARE+rk$)%nwNd8;Jw>J926o-CzLLt2l2x|zsj#S-ha8iA0|eWUqP{{T5HavD7c z%`q{SHXLR{w@Oup-+moFZwyBGyX z9DYwC)a_G7npm1~3ddG*ML_T%=5``4b<2Z`ljaXGdA@lrWQ4e7YLZ6v-=MB#=Abrm z^x6^ymS>=TZ%tvLN#%A`Yj^6v8j9~JZ^{{XKnhOm>uU7Rxb zT;5yxljIu)l09P50Mbram1+%#eX#0uv^boP98Z%F^7oRzLPI~9Zj}?%`w=R1`;=rH6%6Iy={mRGEqBW1@pVvgL>EgsU+%&SQl zQVHhaPQ;FjT2y=Hn-sgN~fMM%(=9(=)X3<7pG|4Kpjv z0t;D{>1=TdvF*2SYQiW8S(0C2|;lpq)-w+vxC)OYHkN*IgmwMNi^<56?PxO${ zaU#3MNCvd7;=5+w4zBidbhwTayD8MX(*8}nH*wrX%%xb4L6nMnZPL4U&3v+WGPXJL z5^d-f{$|lU#{lylr2ha|jzB&Z*n3y4GdN@!cX4v+L_$sG2=sF!Uo=s}Z9zpMyOI8W z88fDYMYsnk%4jjDWQ$Ii1t8hVY6U(J0qNmf*NsVm-;;@+02+C}pS+*uZ9QAgniIXw zl?(pzGq@w=LObSMVIVl;$-4#-kZzE9BFj$mz4RVpvIaY-KuHlRPDitk0DMMfPEp7! zss|pJ`guO1j>;R0FRNTerN}$eYSZ!PGZ(`IFqGzAM?bBm-L`xL1xcErxLGCv8 z!H!%7*W?GQ67%M&H0xvOl5X4u0G;_gH`}dqA2v;!_MbP5`M*?}8#pv{U?jL4AK~|? z`!wix%poH_PG&fWqkOIZ066RBeQIl4-8nhHg$a~3cc?VmaZi`infT)~uy*=ff-tVH zWAks3HE$r=@ZyPec55q^tz1&OjFxOi4(_^oP9tUIG3gLZ347a)cXEolmNW;s2Y#Ka zOr``+aN=cw$FhIr%im7!Js(#LN{`)5$W?&YP>r|Ac$ctnGD5cxbkQ%Q(kF)Q2WVuB zuL;!jH5(E-hVDJG9yG8YOOp(pL)iSo=Gpw!rTu0=4egt50NsEcPhvA;lOWFx`L;(^ zXR=qIC+U>*;YF2CLP4!*y?ygt;f$L$VH><}^IypF&k?wSE;m;4RaU=yiQK-|) z9^uT%8{`=7ljOO492=L;_x?>c8uRGZPOQ${i+1@}aX>ofJE_x&WT2e+ ziR8+>o#k8oKHBffdb^=mr56y$wXGVbhVW_Q#FpDRH_obqb&fa_vmvF$j4&K^F7aT z^5>Ib^J7SC<&Gmj{{XW}52IoDJE48}`{d*`@MS3fh-ka9DRAf$@ zCpvaRN+KRf=A8!nMlUt&ZUtzx9as+F4{sc&CZ0o^kCPp29s}k*dgkg+sUQr|u^$kj zpgEDJjX2Z8;coU%ENJ(76nr3%O1CjbG-PZPFa+1FJ6A7;VB+KkL4tXg$x|kvb@}Ne zCBdR@L)2ECcJT1bpUl@cX`;m`My>R}<&L2zn_>}K?-X&jB~$izY{1v$^YF`X=kW~( z15=|gJXVbJ6c>7AlE*ORZp1Vrzg^T3w@vBW9a-Vo#F+zje{toz3*8AIfqgly6!DU~ z@*9Thw*DEg!P&3^(lc@Le8;YNt>jCOA^E7OooXPNjW=JjQP6|mf4?f#gN*RG+I+Rm z=YC)FgrAp9aUPq-Q#$-a(YTt_@u28>{;bB+#vt1bRQQjR*?g1vwQs7$4wtOlB%)uj zAOum5?B=Uo2$@@t$Ke)l-xsB_wYEgSdXTt=Z_#s0FR@;PkhiyU^`uIuZA@GYs!9KyVD&s8?Gfu zSsGN`n1UN~@7!eYmyybEo9OFe#76`?mNg0h9nA*cEX}GOO-4rcc~6?P`-n!Xbh4_Y ztf>rfke*`t`M?Z!jcj-tCCqi&}+`b^LpHp5hO z=8C7EbSUh+;`b>Egt`O?5D~MAA8w@Pm$dQlWUr^kEFrgy^}wnW^CPsDI8u=~uS4=gitnY-C0TW$Zu{uHN`_nPc2L zJzgQ4QGEINYx$q1d6ro2En>%&AfFyaN+9Zj689t>3koM_g|U%1&m_wLwjc# zKv>i>npD&0xcTLHv}YjOn~$f^aT>jl68`|sI(}fNG!>eL?wa z=9lF*oXCiqsyA(o0QTwEHW+dWpycRvD}Oj`X4X8tJb(c34r&yAqe@f2?T)ZneE7Y2Ax6d>59iO)x(kH|yyifjebN+G)6={66q%9wdBAD8njjOjq*KWBU z($x5#n6979K6L!E{H4@?F+8_FnEtXY?waMemOmRt1$L)VTA$kXrdOo~G25Gv40=4y zFUh@QUe)8%Eo&mQoLQT#7pWlaN@h+BrzxjjtC5I(u9lilqCP^KX=I zyuRWI!H!cQQi8SkjR3)lXRDPQw)YYsU&%+q;Mt=csYZ_ndr zrywg`ygMK5%mhv++4%eg@nHk!a&<$PX0N#iQ0p% z1Q(Rv*vV!QodlE{h1dRGG0!dhIRlmM4-!Q6(wx(z~B}Z;AFxi`cqiAv)1&RO=4L6JM#)7vH(j3QC;ax&e@^Y<*nU@gB`v> z{LAy?8hQG*oD@uJ$A>~GPJ^Kxa*Z@Nxw)FmqCB52-fOa4F_vISVk+d+)STIjU^&|C0-^ckSC_ZihUKyW0@S$-~#vCnQXkt3rQS&o|Iaz#6>6=fso)9 zx3lP9`NvPoT~^xhqn_GGtZtWS7!WpKYrjm%29t*fCHfbm{!e*YR2N#a!!D^C4@|IH znhO0nUx-VQzy~+FeqH$^P4ek|OGLGT2Doj=KstB-06qIx9~Xs|JYa6iyvQQA0y#L% zEP{fRI}Z%k>T+0fFvNoV(){%Nn2SWzkLCuKa&4AiOCa0hr$9vy`+de?>EvK-$jOXL zo97=Z`M*`sJjVvDqWX6?B^D+Uit#N<*1sW7$2M6YD~ZPJe}r|{0AI|rWtnI$?>-RrJqX#%2MEb+VB%8I-yDNl&zehi{qoo1{U>{E>k zLG&b!^HXYCAy8L((DkA3^kwpsMm$|gZ8oPJqe*dO3fprkDP5~xDi46~`trG%Pjs0? zAtv)#Aq2a6KMi>8UzhO|$wZb0R?B?9=ew1;w`iQKZr+^~f-Bdjy*x7$Re%w*WG6-T zZijml*xR=fq1Rx<^&8Y?oM7K~aSWRwJl(ISmuwlAi_dVa98r(73wJ+0*|5iq6iXlh z;=W(Am0fi;R-SFiAOI){JAy{zZh+hSHaAi!D$}%U%|_%j3i0!&1_zlZxUD~iRAu3^!vm3* zCzYVm&(?K$mzgJ$R06}~IvfUkPEY0ODbyghz2m0o@QAHjsaBz=G#zWP-nl@B8gW1l zj2Bh%{{X8jQfX=jqIr-I1}C>Fc0H?-#zr#Ll<_m$9V*)E(T3LF)OJ-48DTst82FK*`D<9vZ8S@COJ`@4 zu@4@?oBghvVlx2M`F-|6+E|#NTPsH5_g}n_o~pGQSKl&ljxJ38or5Xz{+cXaTe^l7 z04T1&e_UpF-H(OTDe4;Dr+e_x{T^nqhN$1?li>t7P$!KY<^5{!L6FI8tg+K{C!qWP z0FF}}V6w<%6SL`0DfzO?SXZ^XlqJI<-P)s;{Rt+%*>s}hVb6OOaSxTQ?yZ|rW~5%Q z3Ag}_t4_HZa;3>4v(qBFGg)0k05u?mG&G^ev_}~{(iYOCo&gUMSy_>Jowx%^{Hfa| zz~onRHvGKOY%FbcDDP2?z=#+cw4n!}r8@N=(<_WYVJ}O`y!1Y?E9m<23y3BJnIse- z4)yOr;rC@QjdNuu%y*xZceYmzsc17SRP-iM0DioTvv6~2@cWtOnfdiKqA!-- zKT_qYi!TmNU5y6h=17+pB^fJX&8@#QbZ;id7N2%c*UVw3V^db^N^A$dCVV`SBp~z8 zHU9w4OZkgdf?X5Jku(hLfHt{%rDRsX&$tJnx30%1~qw*|k zO8wQu?#RP?Wk2$(ZG5slIigtt(zO+Coq*V7WKwbf1*^%S!hs~Q1ug-iH2|sk4e*HD z07ON-cHhYHdDF{&ja5eA9zbp2d*KkY#za3$KQ#XU zHf(<>^c72nS#^7gdUnV_YSN;h?@VpV%bdVJINBTU%xkNkJ^7dSw{kbaq>q4X5kMp8 z%xsq(%U%!OZzPvT^HuMaZ^X8R#ji8XM#JS(^2rQfhgqw^a<|()MDxy(`GW&m+!T)L zG64^{soQTH)#|j|Je*j|fZHJRH{|Y(=4)eNdlYA5`|2vS2h+dbnz>|@9o8LCmd}>F z(fBA0NGDZeh&9WwY#203G6XVrdI{MEm*^6&U^+39z6DqA5@N+U4j zM}Y&d$?={|F`17y?Z=h;$7>dqr&yOyP8)cl_gA@XUXgx@Nm!Ji5eU=TW$Kb2|{g^!tr`4~A;aVdIXl9x9|zjracmYb}JW z88C)1C7|M>Qb^?7R=WTXT(HT+IE`vV_FBH28#UUugN0%C`45(R#7~=^c>X01mZ$*+e^y|D2yt{2E( znSOG%^Io<3DiBSTyKzBUsbY6y^z_Yse5ASZ#}uj$CB=Hrc`!i>f&(b{6pr<$P5%J5 zHTg1d^Jjp7QcG{k_SEM69is^Y@&U+Qly=&^{&|V0)(m`|&Yw*j!GvpmO0d#3C$~gq zmKOouQVlEAigW|%%$+u06j^oJ%mWG8^jGCS=hctpWb(stYwE_|535mKyARis%Y%&U z;p5G~`&Y}K^OIg!^A+SU-`*q-Ft5Z2pdGn%8DudSjf*_mkehyB{&;yW$y!z3zWSB1 zlHGm?gn-E8??AnB63Ad#Lskp&v&`S~lpbpQ-}52zr{(-l6|L-oB3Woi=vbeZZ^tra zlZ+$8l%IF`f5^7JLh{A7n|n)(xtrpcf$_T3=4QjPu2=C#5%9z3+EN?nr=~J-M zWts0LuAoEi~Hm2ijh&0(bzKF7YC-VdSF6AR#Moqa2j!n>2derwd%7}6?o-yX1 z=sJDJm#!IQ94(@Cb|>tG2eIvu1Br6RgXxQDZFPo@dqfKyv4TnuiHIG~-IQvvGScK7 zUJ?1hA+oxXI2)2g1WFHLI@jqnrd0^J6Q2p$cjc#+1+SMb^$ktRi@AB*@?Ey+;Z5oK z^1~E(hC$`NY=FE)WV>lvj9Cewq1&MU06OJS%ffeHL&z=sxfF=gsU-m<0#D&nm&$1n zdFZTxF5gHaxzeb>w&l~W(gxXqtB9C( znpz^5J=(pcw8jX^MAT&iVElX2#)qXcxytqpCk1X3U4QELep|HEVlDBGEnUYU$Mx4J z;^8gxg~rS0e=m7*w^D05l96WxSo7&oS{fd?vGEBmu#m#FeMT$GuU;-eO-A2`(U}G` z8m35O+9r%6RJmqo%gD5+N&`*L&mtwVh?BeYkIQzkYI<$0_5HCwx?Uu-xP`mZkrvt_zGsbOPjskc9xU@abt_;IDD}P7gB_h zHwuf$0@WQTcl+y`Ibs&KSgh8z*C zoqn?~5#96qdCLC)&G&FxGJRgkCgcDIsM@S{smz>_h-i$-8$EN+uP>Iae7~#Qy2)qA zdTvEcY7fQXQ`-zN@dmt-A(ns6M0r-<&E8I3cGdwT(5P_xa%JC-3vLqm|t9&cJPNtg-$A~dD z8;tlxzdFvU-eS6x>I_7aF=HV8mHz-S{?=MexZ@akJ>`m<&#S_I0OYNG_pbSH-He4j zgUBD2I**)}^md+&^@&d<BN}}N zu_PcsMM+`@j=)x@YUUZ%aqSli7GicU(F?E0+y4M5Sw-aiHslLPV+zq*Fja9%d|veH zPvcXp)aaz^btA+(ywlGgmDlzaDTxALsODK*|Vg7~{jjUr+f;4NuI-x+blsyvYhL6EHjyhpj$jpPp;- zPl)W>r^Og-8A@ntW2qeu^reWIOEVEvUMthK#1UWPn>`rg6zesEhFkS}7vye{qMaS(82ZC&JPCqrg!>a4LExoUjB9-Tr+8Cozum+pgw;uVV4QmF;7pot+vva0ygsRNNc@{y~lFwH3B`nf)Q(iZ;!OS_JF zp=eoL3h^LPy?5}zDTB$%j!2PDyga#gB>G%>rl8fNVWd%7n$Qpk$^oZAuhVfGwDRxG z5=*6ih0}y?CAx{@sRyC>cCU}W-I1S@Plh;Y1Lpq#DqZ=m;?f&vS>Z{G-SHc6UX?ut z;+cz=9~UM%8Tc~Y^3Ufloubz+;m~v#y$vqM;o!9X@Cq@m+f;wIQ>gc@O8nZs)Y9?=hU!_% zTfZ6s%a=}vZMx-poKd@U6EehhVH%pRi`azqR_un68~IEs%q(vb`fWZwMlg>JYOKe(O47Uhyla~sZk#|{uEU5KQz!h;{HD@0 zt3#}LUfFG;oP21TFE695ee$6Y-LBAq9l5?+{{Rooq24B~r;!tbN1)i#_M69Tw#kEDpcuEe10KHJkhGBGxs8TIo}Quy0uz zN5V%C1vvw~Xla>PbyXf0OR3UJFyb7ZQRhu({4H#^@yq^>hzyE1A;I63d;k^6aai5P zIzmI|>z_Pcd9v&3*2)?-UgE4&&<>p|;q+jhJJ>rcSOj5meI5B(=BrqIzy2S#g;rxL zw1$9nJ8#y2f1ix!E*R5{F_L*Pxc>k~YhGr#(#k`sUEM@rMwoI-V$HJw*@5Zu{!vVx zpDzg6%)yQ~WUF5?)X;CxQh;r}GYdTzZcIp`iqq|^w27KODBVpptc|)z zL8pxvb{(?>2_8-_hYWjyk!yZv({$_jG>J7BTIyC*07+1lJFhXx_%8Q^ziVIJXU1F_9`zw)5VBb*813kntTw+MfgS z3sXYIgw#`@`^d&*@Y~dAaRD9KcA;tI4R=Lkx%9tCM-c_(73U>3J%RrKKMcmtf-;Ss zZo6GL#O#UDue9$Vd2$)F;YoOs>p@pLl7A2L>6kibaL;zJtO7f+FCl(r+Fxq&Uf+62 ze|Ss@6=+s6b~N|<{C)Otj|}bCiHREwi&6a9(*FQ2^|>r9ZUlyK8ct)7Qbi~zd_M|~ znO?G?FG+9HY6xZa9(0S&Ri93omN7~g*nmgyrf2Ce_<=gCKArm#^O_? ztxLgBOE%k*dH{dVr7`u|GXricvKfVMEdE5;d4O8pd8#<&q4hqjyC|rx=dDL<&C=+} zjkwtI@R!iv;SVc+%O;=x^ZiroulIlNzxlhaXMRo|O`n;6|JLJ|pO=u?TC8_LCuE4f z6J3E6A7qZ1=kuADCyBw7nOn;Kv8Um+IEGVJ~!ciiQ;LE+&p#OB`Kw|(cEFR6_u zNVpNODuazzuWHoS4Ds*_4CR-JSL&LUp=x7E1XDsvg%l!HKWGYcApIGYhfrh~$5GKO z@|C8gwi2rl1aX&B#2RJf{Z}he;vGQ-k8GymhN6W!;yY?`TO#F zQu2NCeR@^l&$Cv(I3b9h(O*@Z2w#zA*e>-x{{Y7>jD$n3luV7i8s|%z z*2~tF3~~if(V^W&-w``?&30+o**V6{=g7W#{R?{tk@PR192B{vWlakJ z)I0q-uGE2t)EtXB#h29*Yd79!(_xC*HfxSa6HwRUG&SG1j!W}?F2$!7Szo9qJ8mVs*nI3|NWA`8Umu%Zl9|kSC{?{fmoPy z#&Cth9u8?wnKd~ko0JnDO-AgySJ+qX%5&;vK25oWou4mWYI^;~we_1tStGWYy<%u+ z6!j#J*Y{;H;ym1}aImN67-aJWp!HXs&(-$>{Gv!c0-K8Ml9o;*yR*>G!YRl6;|`e| znx+2$l`qt+)7nYtIPO%brAN#0!+=!j*hf*~y(;(1w%=NH)g^eot0fg!2K!#dy*}?8 z%+%nr>os`{UQc)@j{09M==TKKM>v)=U$qE+mdGG%KNKBUkZbF+W0FX}G^*_@!*|Kr8 zLM9y0Ddmkq_fuU``XFox^#fLo#B`@>5trZ<$=IAk4kG*0@{F`PI$K-BL8~(od{5uE zhIHB-bS<8jCA>%eayMUFO93EqWkz7Yoz}b8@8323r7kU;sGSGiGUNaSjq*-E!nmQINyPpoixqP(M$w<;S24+uz49b7SvtrGVquzJ>CxzZ9~)tc}8PLRG6y18=&SkBdJJ z&Q>f@DpL8D4<>3)6m98SUHogkc(pqKYro((!6_VO!zfF`J3R}_zIL?p6iudif;B5I z!n1|kSNVoUI=(Sdc388CeNAdN7J3x1BuoRxx;Waa;k|zBvk@3)#2lj$&M0p+T#L(S zg|upu%nFAc2|W(o^M96pBzS|Y)aE>cKVPm5iM-*7feqsJydE^UyP9LgV5>>dZ3o+wSIw2xAP|uqUGuH86DX~f1bAfV?~F|IzV|C5XPf#b6$rpj-X}c8F-!V zFY_(0l03j}B-LV{PoU(F8iV$>6)HtCxd=EqjFyP<=7pe7Y+|?7)>pRyB8{C#!A31PEz%XPzDi1&^NFyK165o$G#ArPO$UacF^8TBu zYkppg+Kotrj6UX|(a1f4{{TM>&+Obh1C6IsmyR?N4NiFEiM0J)ilY1>)Dr&yA=;il zuQ9bU@g;7z95$&U^dB-M)$BHcJ~no-GJ+O^;2>@)b|b0H?`LN-6vKo=ljRT3O;X2N z)FhilQZ8a+`{l0#Kzt8XJ5vv7$P;0+9C*2~FDTwy`LP}g@R41lEgYf$0Nu3NTW&i5<@Fh+*XiFaNN4fl#wfxI_eQwfp5<9fBL_yrvqz@W+{u#6w z23c5kIz34u(OOQ1-dEO6pJ^C|HX<^FQ(?H`4?*<|V;QB~` zJ`>^nb7Dsbwv8N&i|79UK24?Qx|q}ouhyPUDi`en)c}*=X`0MfVkKqRXUIp=^^Yp~ z_Dw>??6nJ5o)Z8B?zI%@y(`x?aF?cob{&5J-Qpf~@)6W6zeroUS=)|W0)QC!ZLt&r zv_1Xy&VO5gfn#SN@fYS{ZBp*yJA2~{cQctu2ViIvas$J|rfJL!rL(-!;u8!P z{0HURHd(cOP+hr<8KR7S^W+ZTeDfl5;S^opq{Kzh@A+yu&BPD@6M5k~F>;8X8ep`A)^PPMH7_stfP2OdLhx~w8m zzN|aTN_^{bEcGcI$fsoh3V=@@n{Q3?V?4YkXPc4e`z!M6$;ZlL(UkuHqevCXS7BbX z_WuArnJid=HqatN)aU%K^3RxVQ(J-*w!Te~&*{ZskfI#FnSGfWaKn(-!E@dQbEZ&Diy64V!wA%Bx;8F2m{m28T9Ue%0}IcKEUx zJnQoV&8B})JJAN@{Ech2{`rlp)K=lqcD8HSBfO=khksfQUmYYsHz$|3UfuGHB%Q;j z(`Md-&@Xi-x#ewny0V63?d_XfWJpnRr&{01UfXs2HKc762FIR-FO! zcCR+OtK1|na7=J|q;aX;y7&$An>dLrr#}wC_WuBrVT;Q4a9G&O9HuK^s?i#$W4YhH z>`rD0oMD-W#yEr4yp8314LaIgRH}=KYRo{bJV5^3*>-jT^%qT(Daic%{{WnT{MnYz zT)Vc4Q1<3S7*IYF$KmVzdiKil;yGutvC-faZzBAu{Num!-m%3CzL6^dEJU6v3F^IQ zYly&c7Oi|nF=6%>oqsMZKQ*+k@dklIbn3E=s9S20Q%WBKa(OZF@^u*V$nF^@<$krS zK-RyOb{DZhap~4;sVGEj2vDkOJAA9#u4Z9{juFky!H$0i+%~`Sj9M)EWZH$stm9d^ zMlxKM<=7f1>`FP}4ONb#AUqisXVR{6EjQ z%P`A_o3S069Ajt5S9LITv%?{Ki zw6A=})MD zgcD)oK5)~cyGD}0@M3DBwfKIH{`r<>dN`2+0-hSWM7FBeGkgeIrHx4Iu&0J%=AQ!T z@Npu)<#pE&i?=*$L9SZyw7Dka!L@$f-_P<+yUFeHTeO;Y&$qi zWDkvWb&}fH+sM)Sk+&Ito2dl*f!`%9K*%;|8gpzP&wrRLq1%rySk&;fiT`NNL|8@ zO%Ey_+YFqkfRTQQ{!4$(0r|7ea6zhhk(WxelYfZ`myJLbUe)(KG6ELP98!Lo`78c$ zcgUZVdL#b;q9xX%ziwInCSl+K*n4e*Ecjf_KAyR}qWAL;Lj1m-;CY7Kpolq03`<3) zfC@eH8}k73ay&i;3#~Sz`IC8Xt@(QGwB0%6RaA`pPOII#0ruZ84zP|+QPYWy-&*-@ z`t~h0I}K7+Nl^kNO*vQG)2>Bm?x7;nr?b>)Tbjt6!rNLnc8f8PPbE#hEe$u|Ol?@H8o?V9<>0lT)tJAB#s<7q9w znykM_-!QScD6vAod?XrzDdSAZ?5I?&#_ddmL{r=}jdaT-HnB~^)QpY0h1d@Yp83#7 zP^U&U2Z%iq${(w|7WOi3XkNYkM=Ii{JdP%Qlg)BWF9;NB7AJ8|qcNu{a$^e&jvIk` zhfR(kq?(rh06y59pt0a$-hR-uy%R~3R@Nk6u*^eky({$Q00BY%zOzt6n~Ed{=grsU zujz=J&309LBF+mDvkKHucKh=mOL+HArXwdehU)e_CTN{RMM+*QKnMhoevmU|k1roL zQ!&87wJU=aY}4aaepRI?4MyFwWdlLi%$Tsdo93QV0un0JS|B@CgKRt@pld0UX_r4$ zVKH-2APN8g3Jutv-z)%Z<>8nweezG{1?|<$cK7l-Tfn1@Hwv}i?)Ii(PY5S>CK(TV zIM%fYwarM}Ng*VodMZT#?53XI$03d&Hp5sgR8W|;43AhKL__qR`dU)f;S;rRE!F5eW{{ZWU zPt#RiHzGp3PR!lw;yv=5vmF)ygR*_3{$ACR_g;U7p_C8}NF@9HJ7y@zXUWUS3Ld2T zJwDX$A0`8GDN{rKV=&0F%Op4t5KS)pyQjcph(x@@MpIx|f(fSe-@`KT z&%<#wTl#`Ays*jp(1qBc_5gVJcgv&u#seiqj>VzM%^)$z$PVk$qpfOb_+gRZ_qY$%DbRUZ{TeJPU1iuVlWNtKqaqx}vN=BJ%Q5(w%kxgYIhgl(>QV|E^$ z<I#SNb*v(wtF;L9sNZFmSwFCPsLJ2H^@!_o}Vctm3crGC;@v;nKs@08`oP5Nx7C)D`A^D6nYs70=w z&23|>D?@4p-j`Mip#fin{Ha=R^kQR4nH-)~t>|;iIlB7t1Ymq>0H7yf-yp_A z(?tiOc`_LJU+SAq7iAw16&)yPPvem?A*L9_g(zIhK9hEr8ewLRE!hF3Rcl{|rr>nL zHzEe&6AK_laP!UbP43tj_f=?%z>zXE=t3;+q{vduMP9!lMHu?3) z&H_z&w+ssF$oE=Go9{15?g;^hP(GYK8;c1TA>q_#wS|tWYw@*I%|bhN>A$`jrf}2) zv3eJfwY?w8GsWg8WvuAI<3%TT6d+T^q}MIPN#x5cgm-&2-j#jl%ZYsN=K|kbxEvvg z%T_q4)O!*1p80o$)xa5dv(1iN+sUFsDx|D!k1(*0RS-~lq175 z8ROxXtI%SxyXBA0Psz(`^nE}_LP2^h6fJrmr#2dVg>^@Wz8%&yOW!Ud*xo1ZfvS)y zK2^<_ark&bzK!Tut82H6?IO5aalXX$BmKOWiB2@}fc+}`to->`^7J+{vrT?!93e#w zXgc`jNYw%x;|mWE{L-T8)A0y?F+QfR*+(=l>q;w&;?65WsfUw&h2QC=p1 zD|RJfV<+tZH|RFYql^)=t;-Y0KA66m4>7UPZpxVYlv-@m6s>yn%BUA%6T`{!$L2@n ztakH#d_t7w%4&L6lpyt`J@A}lG7}T#`R7yetai@O0LbO3x$I2_;=OWBQM_Rxn?&U+ zq2(D*v(k*j^rbh;0Y)$09oWRy7hDTEkf7IPp*5#}qXCt)oFsBfuPr7nDn$h-6jXwH zcCXJ67*Xow6a&aed( z{{T(=z`WC~jf8Y1kHTDbJ$D5C*^N9WCpQlyr5;aj(f|bwRvw+ zJNC_fT>+HuqtJGLXn0ZFJSN?){Ko|PshgFl5g;kfXMvAOT@Dq8}6T>w;76ZWzRd>T&*E>Ker6(hGnU%I(ehZA-UJVW$5{&C0h=gK}xjNR%etExx^9PB_oAAer?M~5dU z@WJdKo03SYiuk%jV%vY&(Y_y1l zE=360K&3Y$rfkR(i-9X9-izfOZY@sHZRdt1RjVw)0W3fj2jyQ3V~dDeL?lDy@69jD z3#qOyHJvd7CCeHtdjaBh{02f;%muek)E_v@-HOa&{ z`;|01`~4PGy|kJ{WO|_JNu@o9Uf5%)A);6>o9ds+Kl#ZmSIauIW6Z%`*cDfVgUBfA z0s4P|%K) zKNdeTe=4;l#n+) zDo1_t{u@XDK34NbmEnxDK_IzU%^lXA`)!*1_{c0DIeCK7?W8FfD77`G*#nnjnK;J~ zTVfLFt#iADSeI~XPMz_`6`Z)4zvUO4Akw_oYo#lNvAU2!aMbFg*X6%VqfrtZjWp@> z59arm;nMFK?%hApB>v_wC<2-gf44Navy&~|mT1_Zlxf;TdgqlzgFQqAo~h9A>-S}u zXS+{^Wg2|%<{e&m;Fc#}^c7;YT6JF4`g3iDR_Zt@;bw&>( zw4Vu#A59jbwb+lpu5YyYM56ikX+*;z4`cGLmb8V{64%W9W_zeO#>zJ5$Jh#y-n$%@ zGe>t9DB^shulaEKcg&*J@xw$W0J@3-0jVApp%wl)en>bN=fZbqAD&{$(%#-_Bv!JH zGFN&4O4J{nHppQl9hv5k3(}04eh{Mubcha|j@0>P4oSA-B!)ezYL9nq^=oKIR@<2driZmUeH6)K1)0l2 zo*k^(&mHJ85;v^@=}q${I|e6b+E+iB*Lwc|kaWKz#P9VxWiIQz45S6A@d^gRx8s!( zV%L!I3Vicm@9OY+uoVNY=lsrED05>XLUE`0QPSkP3-Pr8Y91YQpVP!k(cl=*e9PY^Sl)@3tw8mxxik)Y{*aq{<=ZS1uzVo0r` zsbVJh1wPOQriQz1@?GhNLJhc5)fn=750F1RJlA`xHlA+n=F`m098W(TkxeRJexs+| z*D|x~Obs-N$csCB-%{TB^Gme)wU?XWYiaID;82EB(M&X}ra*@L8>G%Okf@FyaM1 zWd8u4Oq8d^8+v_AW0D)b67mPl4>$f%<^FE`hNp)X>pv;}U+G%a zn&|XcZ!MInPK=?{f$;^U0R-<)9qX6p#z3O$&a1}e@^3pG56QAirFn|gF7+#g{l&sK z=6iCHKm+JM>t-Y|N(Xj&dGYd0{EejCY8q_%OfEfm0G1~1L0y6N-jvOpg++75Nu)kn z8m^~dqh7xaMpyM4(qaHq1dW9aI_^eOmIh4_B$v`2VSzlM<%_F1Bv!a4JXQxy}UN{E+b;TsU6;jeY;d`@0i4#WweM$aK1Y8 zx199vE%4C%hY3rIV$rrR^*@$=T|DLH_`pbemq%<^0n8!MSPP zRB2KbYLT^S=lFdmu*x7MF=LadmMG&E^Nkzw$5iuHzXp$@PbIR-ekTBciQ;;7+Pm+T zf=H$~ZgZ#E9)5#L{H@R}JdLGECH}v5oP8)yDT0we)E{QQt6{LoW`~A2UF@JDD05(6 zmfx4!-=K9H_ln))VI+1i74<$7v39QH_1xFLQ%tHj!5baie1pS!R;JgUr`InSCBgVz zO9I?!-kVqYbjiqy-K32Zeq8Ad>z_kkJa>Vr7o*(UIZjxRhpy1)hM|Mr9 zTS4XPX=9YaW|UC8fCd|NG^J_x_?l$3Ib#D!H;6o(erL3o>7eOP6fmQxn}r2I9kXAH zSHUfu+**lDP)I*EJjbYL_m-D77INxOEM?Hb#dw7(0r*tcsp>{=Gt0$}?licdUrK&n zd73}WPcA{D>j=p_im5bgC{*;XvCVX{aC%G8>2dyGSxEl?Ge0Py@};a2+DgtIw6AL8 zf;=Z@AGLcZMm88Plc2Ej^xSm|VI)$DlBbC99t3agmz)Az-DhWI7)?p&ujg+sc|O)# z`51boCxwM&b=N_L)Qb{wR7{3>ZmH+py5HW8vdPZio4ImaOnXYwtdn7r!` zr=rB%U`{d1az~_%PNu)ZF@_T}>2JlD!aODCo@(;WwdE^`ue|3hcTh-2J|qO#fzxsG zJ@V-jjBeui!e@o%eqFXcOuL@z%htc7qQ9hY@h6fOr@{aRp8o)Wra1BfX}4ACi`Tq~ zpYcPDC!(z|V%F_VnYa`R`iv)6o!=lkpHHuCMjc%|j( zgF+8aA06`}9HSkJhn7T+Xb;Q}%SoY?e8*xH9gi_bsO4Id-@|W~OC~NY!)6TL5wd`> z(X_8Hd4B3Ge(pxr$`=LC9fw5+zai9k^yz~PMy9|Jd1K;(VC=F!(uYM zK;GKCE}`jKPv*>?LzrIqV$i_jc8*5mhMj;Wv^_T`HabmL2-$?;wU?mjU-OaL-<&R^ z{W)Q66^tOWh!m`jp1WFW`3Jd;q!6wi{3A`#ftfk#Vn#`^&%=3f|M)#2{+8WnB2ZS&hX?Pg9A?W3rVCxv-;^1i|R!*2IM(#b(2&~x@3 zHs7ajW0Nx4+Hz`$JD`6se=jezi>bb%zN~T~GN?7;gQFk2DCN0d6OHqRjm>TzDoED| z#Z_5;BUA0}GTDJv-nmqZs_fz; zOeTLMYT9nK7p@CK2@(+9Seo>v+t)F5qEj0;X-r`r6V3F0<))2$`a$&u1#F-~JG~e38Q_oe7R4Gwh9V?}P}_Vm00NH<{w#5NG6y$J zmbQJB=YPw6JZt{|S=Bx}a1`|%N$f}+Pkz6CZM#nqkEl7>u|p>EdB&sU{UcMmFlj|2 zC}?D$B%1xB-|o#$AaaLXNRg%g0GWT0(d)WQNowpG-2#~yjqCcywrtK4ATB|R5R=ugVVDW6id^p7y-aqqCDYI@8%WHITG$gbu=3~HR>xc-dH!@Sl*{xQ|%b$X$E8lonu614^|k*R@4y zhr*B+9CJiH8c)l~E(h1{?ixwrT1m>BO9Qnk4SstJ)?_?pi-*h055O#scba8F6rTA^xEW5 zfp!PMyN+v+>J(WS?4pvdMZkgRoXjA`5F*KFuAObAn?;gm}k z^Yw*{Hj6BBFR4$6jp)Q5^QK^U07l&0phh-c3#-XAP{}2~HI2fOtFhrqkPnGC;mg43 zGES$n$-gVCEH#_$YR_DdIhhDZ+wFDPmc7B+qbtdn(}>>KgsGn5`4iRu_!sip%y~>^~gH;o)h9KM2`+-jR-!XD8>UR(NodeUN<2q{D)Kv@ z?eVT;LoqS1+opvVhsEWH?=?${oo$j?C6S~^X}A>wue~YG}~KEV^z4*e90%MP=Oplh*450LF2to%Q>A?&RN$- zWq^nWl6mj)PV-5YUoiP1_DJ38eK6k%HP}+Lp*v)yrZ{~=laG=EIeBfz=ZBfRxnU-m ztJ}mUT7xMC_5y?{sN3IsoO5wwk)Tp86#4Dw0=$ga9Vz3c?vBy;#HFV#Cj4pLcn|> zkAbHC8QWInyF(p zScm08Yu37w`K!xN$mwA1Ez|%Clm?8YTAh0a%D9M^6nQo2vz(HBA^G>K*xmVl*Ufrl ze4?CksQX;Pf&-<6Bs{7; z>HIS)6XE9JcxN1~>dsbw-=MDyOYWAwt4+wD{5?~tCRzNb`l$291% zy<^Xszm~Ln4NJ??1iF$Gc_V$u<HwjNZNND22fTbMHKr~ z+yJ`(aOa3ShhK+PB5d+{7v=Be-lOG98%w*1o=UkAAtszk{gtmzmRsReY`GKF%6kW{ zYu;^53qiTHmhaFKAw_=Rp5Tlz)=;EEHfj0G<{u>|oGzz(dxGkuJ2L}SJN2)Pa?B?n z+y|(@V;E95N%B%@3kACXTWWweC#sY4&DK3MvJX?J)am?Lc|B`Q^M9B;yJ0MTUb>P9 zo#LS2Iza;EVC>-@Ob&flSGaGk*j&nW1b%$0`&~$;-%s$&oNy5?WMDXG zKUTlz7`(-O=RFq7OA|>evQk@@YJkJ2%)F4Xvu2Ai2ZrB3{%(F(Xd5*OCCg>=M1;fEwz&`^%s=CV4E0PvS^bi+9GzC!%L^PQfYE=98+Pok;nHWb^YRhKV} zc5cUrVjI3oZB*aR(@VJ|)0X3}Y@Rsqy6GD#?W?>YBZ>VtTF?%(`HYw>BrH?xU&s&n z$jw8_&`ITQG)mXHT%aUs!*t%iEE&fb*%)sQ@j`jy%~0t#^6DBqsWcY@W49oDcCP0& zSTT_7{{S;@o3$CGzqmJZus;=kDva4g0m-8v@eo%D9Grdt7%(Qj9ynkxn?%OyR~G0+ zZT2A4&{msmf{Q6~+38+D{EqW)=0(I-K3LPIx)KmxMMf$s;@t*Y9Cm}hC+Mf;_x#`; zzJ+LR{{S*37ZVuyEJ3Tqyem!cN<1v1iuu0M{Gj}t@>k`n!7|#!Zrlzflo$4;d+stZ zl`}8^?E0?G^78h7TTe!U)+0a~i(RNP(>8Jy$>zVAHn;kuZF6aJ>Bk4e^*?Hq{4-yc zR^($8Y5A}Dqxpe(<~xVcFXMnEyA?(t0#nE5xB1s240gHl@a*EqUuqTapns)a&k)zBY z(XGeghFke_=ZS9Miu&rw%!?|-C8JT7V^L5A4R`%{xrVAUbi)Y}u=<-%^M#fD%z9m! zs}J5QQlL}BjlUc_7cNtJY#L?6*2{Zv{8gk52&E2Jnik!NlBsRxYYQ2swuzQog{cC& zpYu74U@5c3q?gRPY+ib^hQ{DlHU*h#2VUK?11vb4{4%h?^-V(4LyjFT2td=IN=kqV z0y-KG^ZDjxpAaqWei90i;Av5gY+@U@#2lQTBzcoh z`hhXc851&}fOVkny*uViBuh?Adoc(jiWr02DHGJKI+DZ?JLXWJ>L-VE$~`hz$l~1H z_juQF%AGf+;Pp7qeon&_c6$zurHwWaiiKt%G5Aivf_joR-*c2^h4ON-kQtqwxsCoH z9B@?werj0n(=kRe%uGj{()52WE~5$5Vjmvh&K`8P54KE6pXLu}LHf z64?mm)Y(mX_#OLZSBJH@gxI&1M`wSnO()d}hSAFMY7iJL2UA|zi{p!@W2V!bg4rY% zwtik7qN+Mo^jdLd+Ar4LsT%2p$ zPyHeU%Ecw21d0F$xXWifwrZ{-oi>FG5&Cw_%)knc)E_>dhHK}Tot(Jh1T<`q1c-tU zLaHc9J-@dMjj@DHGHYEUn2y>2UzXg4#E6Fzc-WkNgIaPG@2{M7P%K1kCh)~!?4 zZc2(r?9-^*+P*oF!AYE-BQKibndFxJeJZ$O8=&YsDrf-1APa}YLEn=u(LBc$-^Utr zgmUXjfP0hM@5c;?WN5RC32b!`4Ma|%f`LuwdL4*0`Q~mQC(W;jMU7oq!7n&$K=o5@ zO-dy<_WUx@DdS%4Uf$Kq1~W;)J=v#|ypZ-+me>9-!gMjS(Z+^m>5jj|8S{cH5} z%jMlOXl=z>N*XtMW1ANc*{jCkFOR=7{H-0;s7nZ{sl0%KTC6|jsvn~@M;{4ud`}c? z`3GFlCbW>k7x!T7LD*NZs6Fz?(dOgl!Aoo|rqd;gWk5`BoP}vnHvZh4PXmvS7klk5 z%YQb9k~ps?R!L*{RG+c{=yN9TlN@q9R{Aea&|&i;^OOgSh2j9OBijeP&&Lo=l(oMr zqO@tRg4R;i3r)8AO@8dEFt;>Bb$KtCytj19O{9MmV4fpwyZp$;Segj|<(^>EVIgke zkck-r9jHhhzMlU8uP7qRI|VJ!H529bduxzn)8;?EL(mhsC-2EhJ2jbje2`vg(%`ey zBTF^sZz3z2^ismR{Jb+95)sA6$w{WRHl~cN8mn*=p{e_`COfo9@Vx%!_A84?G?YkM z84U?4Du7a;SEo$2PyxjljJF9-le8^5+f!TXpNK^D3nd6VYrQt_(=OA{XE+nH>&*vQ zgI_{kA3{V@0V2CpD6Ijfx3*+UJOJIrIEy`@gLMp+A z?NQVFYmQJ?iZhKKY!2AlX&3NJW9KlH3euDXcPcg;_Bl9!dANriK7_se#kul@{CBWF zt!m^nv8_QscOs{?4JqT88qF9xxfr!39G^^RzG~6GGcAp(0ri6)E(V^&ec6v391W4y z##OEW%Lyn50Q_D4osQ!yt|mDq zA5MN*`BzBt_&R;Nqs&QgWbA3tM}D69i7N+ZGaf(%q5RXQ85&6C-Z|t{49mFNttsEz zGx1{wo3EZic|6)(0C`UMUunaPi&4mSC&1**!D9|4EdFr1(6t|}+?uL5HCEn)R0CRf z$V6Jo1|w(F+6JqperH)OmRd9uccRm_!nu|zLY!#kvqj|ocl@89OqkkO#2z&qqj5kg zdm4Wnr-jO%YcC4B^2OD>&jr#L_vFL?IRLc-eY$%biP^dwn90+`U%Q$zd7p((LIAH$ z;|yA5kjIjec?4=qBe1swvV0_N7Q0fPYixwF9*vmCA2um}9iSMqdHp_hw+!2slR+r2SLU{{TNN^nWQGT2}u6 za%~qRg#E8k!0Xg5SJvI6ySb61k?XP=ZTD@Otwy2B z#e~4`1D|@ZWk@2#_r2gjy?9zJ@53t*IvCj~`$L{{VhSif6(i5Uch2CX zWDtxL@3-{9V6?{_?(6On&n~*doRSe!N{XKxaR3VCfn+eW$$f3>f{5i=7xsqLpswJ1 zWn@{|u*|FZ!_W7gUi6{1mD)(_#Z;P++i||xl{p9ox|G=Om%Ov)zs*ajwT*UXSz?U+ zR@$`y3J?WHQgc_6C?&rZDMjKs=bE+eDe6;cI+>Lk7ARwHZR$?jd*!i~%*I32=)P3{ z0GyB2G|-WJEXceXwFBCe{{TI+Cl+0p8+}vxeg6PCKcrl#gUoSN&kz^^MI)%%n|&FT zk1&{~sLoi;$@O=a;rze+&$61`=C(<0KX{B;QI!4r{Xap$;aii(5*}@<{{YS^*?Egl zTTd(9N9u@-tO*U@t!cmBG6PLT#WE5vBl8dZ;`f;JnVNR9caAOjsRWC;tYe5-erIYQmNID9GhgY@JoZS;zXCC*hQl#{0jOmcMVR?_%vV}1 z!b3c4mX4pi4r@{d)agT0m&QPriCBG&`nE~67Epz1%*e3obe+lEXN^90=; zZqrb)f=&^|Cnn#5n$&&yhG5)8iA?oR%xN_ETF*;Eb$_T^8)32I5s=Ul0N$Bk@@$mI z51+J)d!0TTpD*gBMY*(hS!+&m$sww!+i)rOW*(sLMRDZsd5@TGV6!1_4I$(4HGU-? z9@#hw402}fcz>9@&XXU}_Dn=b2v-1a?tXpp6jO><&4Fo`lR}{{YTAd6GM=K79_( z+_s}7*Q+Gs_9LYYeq(GV4o)1D`zG%9)3Y|P#(|XbQd_7UK>PDS+BkRF?fVZ|V}?qx z9WTswqI;E>){Hl-psfKEpa->klb7isLw8-8@7x79ON)LPs6zPae6QGq%nQ&hMSS=P2&u9$(TI zMlwleiV|5L_MV6RznG>~rVE-vPl&Wz3#;p>($!t#2a!=-=yNY7N=7L6Jx*Ob_7u!BJKe|zll?&(PSYZi=qxa(Bvet&1qFVb$c9VkF+1sa$GoRM>zYfuFfZ`j!N8kQ&r^$X>^8UH5>ygKCaPYU)%}7`PTF?&PuD&^e z9LFZ*#mNC1eq3q(VY%{+;M9DV>ZYdz$JAB?FQrjh_1KQz(=u=nV{&zwW5zdqWe1XP zzvm(2vb@o+6Hc~pezzULC_P2kkVrKi{cEuVn`z4DR{&&l)t}lp4LymQwC3 z*<<3v>hJK^w)ERhkmroexT#hfyiW@!S@;qwZXJ_-joFsdzJw7t=!^jpR`Bt>* zM}GJYILKQFU>NofO4ju~FY}(xXe`g@>5@X0w*`XnAaOkpLO=$cC_C+y&o7E8$;FF= z@_9d%{Hytm<;$3D;nnWtg(YJmEUf2<>;R~t_xv*40Fg|!(;#dgO8H+=);!EaTB8we zz?U-)N01zP4Zf57a_QtTaCEv^OmQAb&F_@Pg{j)>u|o>M46zxfQbQ5jW3>jxw5Hjq z)x_j?G17Q(;z+;eDs?-k{G0ka>m}`GxIk2F0@kFO_!?#*usB>`C&JhrTWgTZ78`` zg7vPNZo?@ z7tME(>I2U3+nM5x>Wb8>Qlg3vVh-k%@y%Ycbar8bCGN_j{K~NNWxeDY&YvK=np(BA ze2Yk|03CadfY)jb^H({E2WO_tXRv)s`BCSaFCtr~mnDE(=iUPFR;6vlNKD$g(N1g$^=dK|&=1`|$BC~yxq&HiKa zW!|rJ`cLKUsDf*fMc%P+D)nkqM^Rb|ZUOe&e8iTh$kBEfb8SUB{I>H1K3dVR(!b?Y_Z|I(auWv;+0y6BBPXo+!$*HI!5z4jqL%7F?L0e7m6t3!={wM(WH*^3a~%8JpSjIN?W|kEyJDpDKQ6d9KDAX12=8J&i4h}q^fGc)A!Pc?Z`{{ZtEzEZVitB})NkV?j(fdjzPr@75;rZdzUi(Zo# zhbxj{rv667H~AD_8C8M4ROJ{)ZGT-v@laL1Dp^B?90p{Hu_ zT;Ij&$r~yaVn7t38+&&AX_!V*CZy3Qa7$;2{%d*q>s-_#xrOUir=x7^QPFL!T03H^J)EGb1yI|t>Ail<2g|l?blQ*ui;@7Ecwd?S z04l#oPS(#GI>rMajey(0k=SKPT7g6 zjN~|ryUC)CoNT4#FU{-U%zrb*=KTuRIM+;s2q1Gsc}~QVXa|2`+>@DD@R?B^9Sk*I z9Nu;Lx91NvesJp3ub*U&9X`fRJZ;bJR3N2l2?ukr-wv-)EQX65x}%y~ut@xk{veh; zAIh3@MvezLkHmfx_Q~o#Lm)Bujy9(##wsiH56gR-muqcK7LX&*6H<0P2HrnBqr*3| zqsyw96!pC`^7_i&^4>U*M#aT>4yK!X9s8fVGEM_CyMYX{h~0{Qa{f|X>Y_Wn4VC_; zj@J!P1t>Q(6tBva>@zg!_y?uhX+1-TzCHa3cmDqXo9|DtU+l|IjPc zG*2UG_E!?=mrBySL(^4sVP2c@0-pUdj5=&!Z1Gug7;`Tj(Y(K=>UW-npeE*^umF+8 zm?$+Q_aiX;PYkfJk?wl8lx=*mYGA#ZGZ|E3#MM<#b|azorew-wxvV&dJf z>8Me9_m{OhPt1KjJ2#L=ty!}wJQ_Ex2X-Kpw}yX5U6UJ&Q(+*+TwzXr{)(U2@48q>%`cn=v4DuZ=t9di)^n?xCmN z-zE7H#^+SLk_*={%&`W7O4o2jDk)lZsLce-xTrZRg@Vh zLy<%9o`-$=<=hg6^5p99Y<77CzJq0y+b*gVA~10PR;P(R9d^yH zhAHRwoUN7UHqk>0S%&6rm^o3gARiB-F4ITDcA8iVwBOE?#E{1fOX<*YRiW-`e)?rS zr5cNsmmoZ!HeN#&#mSOoE8GeS0ZI>-PsceJ?0xSBxv6d5CIQV2BkbYWuCsyJB%SXyaN%ca9_6!x+4Q@|aox{qVw_-4vDqmDjpv(VXoe|d(}R?~dP`d7=5 zN|Hw~G(pw5R<#@Luo?3YM{GO-k>+Lh`@zGdXh zazcr9IVC6!-alvNtF1!r>LGNHqE{H4mRZlDioo(E zx()i}*$i@yBGDN~3G}|T^6&iO&b+!pd7n~Pq57#=ggl2bl?Q(c^`&xngzL%5nel@k z{M*pulEy3bg!+q9BG;7y6S?bM{{RdgF`GEV1GDG9$?ZzRQ1gsBX0&9D7&oF9?5w}D zLEv|*q_&&mZyu0bZT(|9&hGBapb=+rn>_%Q^d7YiUy%I`?BpM zj7v-?$7j_3RliHQ?tIH?)q~NFTX_vA(l8vw2ZtZ&T;61biw;%{r;$QSttnyj~8O0qZHmP>%DtsMn8F{!U1`l*>BJR1jF zlX+QZ-b3@9o}r|Eme$O6kn&|5>Gnl9?Ad=BV-9rgfizt1Y3!NbXm*Kd}5_2h5SUSzUprD(0MXH-{R zy*@^i+MVg&A%=Ecrd*c_eFf)F$?G)IA&lR>&BT$>OvEuHfI#sTJ{eA@)9MX6Imz-G z`EK__)O}lMk>$6Pv!SCB(VEolL(?zEkmZi-^^+r;^cTrrnf_gGFQwZoc9)Y+Ta}pc zV^KnD+#cO%HZ-Mh@eUht^zzy4`hS!x{Nm^IV2Ptxizy?j*LqW-`bI|%1Cwye9w_FO zFfYt6EWx8$+gw>8A6Ht$N~u>mG8040Wob_fj6M(zIoFjNX5j8k1C%6KJMc; zFw_cafDAs2?9p4K6bN*DDAKx3GuuP;vU59RfDDkfU05O_qgM_)*fSKLoK3Dv)opg4) zv%KMT9l%G8PSkGy03-h1OIehWVcO%*Is?BQD+9?`0cj~Y@?;)jTcp$P;Hm_i^~^YN%Sr>NA&C!*_t;s+LS9!yMJa?EM5Sh;Z9Np)c*j+ zZ>!oprkOXz9V$6ggH3@O5Gpzxu6a1QInl@Bb9w82cVBs4`|6iy@JNT_=E0+4JA+!& z+zh69%sI7W(h(^( zmLMPmf(bvY=BpN<#PF9QIHMm^?63L9e=od}%jaE98atWjk*O5ofP+oNXDzXk70W~7KoxAnS{D+TV*l-+!cgKEsYdZ!O|dv-qgzr&^RBf`>S!MJ!Xrm^{oOM83eB@v9Cm^}ahRM)Rs zQ+@Jy`w&FizR_v;g`(~>tusu18a=Y4GRsejpbGaj>)|_>r$fHkR$Wa- zqScQ?b4rWRe>J~4uCH{|(=`S%NfN4#rj(~oyEM7rbrQ1l+HdetPlI)RS@oG7Nl(JZ zU}|Y!>zR1*h&UN@oT*f69jztg38g4IQ=q0@d`)yBg}uB;*vQJe)|C0=X%drGx{*?h zfEkA1^y%`+0@cluKD#yAMzU9u9r+6Hhkzt1E}+w(=4mHk{Gz>0awJn|%Sfmvd)t`o zqNJ`#6r~A2!zBR1bAFP4&NqL~ARjboGI_7f*6kX*ub~%0`*k(^GT3A4h)<3Bzxj9N zSiGBOZ=vayvD?Io6?iX)iSfyqH^wQ?oiqvWO6iw(K8i4-Fg+Cb5t#Fb6MRSynmpko z{!!FzU&_9wpe@*PVeu16d^v$BkXi5oEIyF(@8&SpwAijL$$+q5QZdzAz~%lX&3MU~ zq_6V}&YEVIrOSCc@*H@o*XQQdwPrWB3%smr&hS&yb@`c2dU{wcK7+_ zb|NA-b-4$LEuUb1S7>)$P`phj#?y%xcPEep5OzH}bj%E=h|`||!XH6-r_Gvwk?dbl z)a6vrVL^t%GIojw1ZV{KfMN`PW#VQS$5pXeIc9(9vm1mK506#+@@i4lfUK z>a{rzen{J2AX@3mZFT1R=-%F7S)<&#wJXM;cl*bNW=c^a+*oP2dA_UDe9fopK3lGr z3nN+}M2(Y=Fti^JO^#`^?sj%q2&66Mv!+L71UAKCSv@A0Hp|FRwGK*njH2I;KqgUn zZ%@3qZ!r0siES0nq=uXVDC$YtzCCM|40XE0*Scq^>$*OX1Qv1GaDw9DRXD2rRp>|{ z?YGE#V1{A~ERh`(Ydc7%X1TIeg%YKl&{Ts?w5DvZXC&_6WQgdAyZpd~t!?xsojH@~ znG22sGV)7^Y{C<#l3aP7+smF}lFcRc)b?`{fArD~YuT7BWF< zFMhSm41mGU6B#+Yg46QG`U57Ts38)MiFN=59m(;_u*}J)E}w^RrR74}jLjXI23W}@ zk5Wm?%t>&ioI&&lmOO{3>$1ghIpJCp$P%D!UB8A;9up>!sAlc?XC0e?XDwkh_=+F2 zI(#6FvcU>#%`)`814xHL(#q<*W8&;VDn)(C%M5sVqB&(uK7BS#bV$;Fyo6Va8dL*X zoY&;k?LpgUblxEKBpSO-rU7SW79gwekbw zXefQa-kE@BT-=yrwDV7vDUqabP`ROWCYuemJ+i(KTjN2MY5uIPZPK3rE8@KmL0p7I zqm7ekmRuyZGOr!#yhnedEQqdbA~?A%y|7EYM&eaUJJyoFN{~A5Q%{~oUP;Lc=JF3X z{$WSu?=r8Ie7I4y0T^=irC5rE2fu$D$iYO@jVaM(`nR0q)_k8Oj=nkTGLX^6+mqNH z-{;pa%PpGmWHr0sZ#ilAX*7*x(qK3-u})-T9O>*ih1+KjDU1DGA0N%6& z?M|mQ7$vsuCNV|yr~INz7!(K<(^)Ss9Du=A4usXXxAgVGtsa%Nbp^HP~0> zOteR524EgcOU*t_hIpr*-m&th!bJh`IfIuAlY`Ru@6SF`mdJ6A6xob9W(ITXz2dNLH$en*IcYo$cmd@7 z5&W9-L^?%)gUnM#(?lu)^#X&g{{Sz$E{qOEjKq1qp3{88q8G}3 z_*^bl9KvZQn!LGZDv0!Otur1{Hr~{)`J4wGvda16U;M8PEMj6yiZYb|FD|q_Ym`d^ ziHdT!nR$!I@1b10(?Y6#79eaYX}R&+E1ov&`3ytO*6M3Tn@^TCF-Y`z98jH)dWv-! zjVv_Rk5j|53iC#Wbhyd0Je9sBLN;BEelGxe3>CuKeNQHp=CYBcx?Tu`mOdx9h~Bvo zx-rD3-c-;RQ@Tkm<^mP?ii1K$dRCc{jzTPDhrRT#lziQy==VQTyx!Qar|}RNF*{P9 z*_zy#R8@}?=>iizkPE+yq zIs-->`%YeAC`;tmE~Hrz$`ZimH&|*nCH~V@{_lhI13UvXn+a>3osqEqeCS@alFg!~@CqrAJ>D75`Vfp`xWE@~TUP<=URorhE7oO7b|4S({w&s|w2 zu#Hs6YB&zG`PQPFW;AkwY3U(ZBeUmA&&mmn@73NjRV74#kOKYH{BrIf&%jNu{J$5L z%vw!^XY2E@iCG5xPhIK$XAUTF7M!Hwc-Q79k?(XbRi`A0HxA3vqNcU^rB~Cafg5$HsQ1e9W#BtEczj_l(0qt*FJ$v3 zvHQe@IjWPeAKR46RpV^rW77Czh`rD9No2XWyt=tnM&_Xtzg@ot7;@nQlUAECnca+k z&Q|_OL*`3y=Zys$^qd=AaasoVsNB=;%5mf{=H}`&v5>I*3_Cu^Uqb(LYnp9*jJ6{63nUuwFvAS1xxKs2~k z;za~cC1vgKZBVDC!!fZ#qI*I_%HEZEqgraZT$a`md^a&srD4%Z?6f_pzt1IG*l}fx zZJ(GPLi0qQls8IP=|bFv2tBs^a(Rt2glX$OQoqvl zJL~7xV-mtC>7tq%@7M6kB2YueKQTPfapp}*PgL=>S}GtE0Cnk^82voj&zsKlt9PDP zhl>-`SLaR68I7r!nTWUO$Nb`N4L63fSalpT9?uiuwrn7b|? zXh=+0d@<&q%NyS_`H~r}R841g%Q8-=cz_fRGFFsjJ&#`5m~}T78%e0)i`l%#TZ>J*&?QY^4$PRCziPN-;M6|OaB$790<3LH{uqUbdb22$-Y|eVf9&al0 zcC5Gm09f*54isF9E3ev6q#e70xvm+dBTiP6JP4+2Z-$BWpDTHZmEeg;GRQ)PQa0&8 z57U`^TqD%WQJ0Hg^Dp_y8%ey+pjzp=DOQR|kjO_>{h&>Hayf~TRVS0rBN;;; zUm!gCFPaRBkuuyhw;#6j961jHIuo!Jre@=a=H`BEN;Dpk<)6%3JIz?hY`%ci zuKxg9((SMA;#(PHMQ4hjFc0IfJvZr_9X!c$I7c^%dA9m3cU!XZ8FGoJ%$~G^?JRZP zr?r1p9Qn9W2=SVGSDdsv4=YQjL88J|-Z*%~fC?TU0#D1s_2wq88M<;|7~?d_KP@l3 zvtcyXH?hSQp>$d(Cy*~D+ND*9+|(L@U9(@47XY&F^iza7BfR(dZ-3^iIqmeB{;egz zt4M?bR1vrPA-Bu#&3MHk!&C&mm(HF|)HOfJO>}9O_9Vr`k5oj>yD|8=RPED$pSTxF zJsUK*!1|wD-g%zH~ZFXMM zQJIStry;(}PTS==9LEtMz`+7u%jeH4TUpxOURc}kl5{-F?@|xNL*q@eCsT*h#O2OH zCYYa?^lM#X%a++TXL%KW9pO}~W{I?ornJI}ZQnS5is){MKdK2N4>avh(Ejrv1oVR@W zr6v81)EcGr%H8P~uE?%j7FP|wAbT3`PKKE*22tKk6UHi_^-XHt^GilL5IGs?{k zVV&9PdStUfd31(rHvx&_O4Iu0!%;9db=Wd^XLflfpEO%tUe4D-SfaOdZ`h{bblZQP zPC4;|vz~iM$n2r#Z#mju*(Q@~7-?sI5|K_JNulew+cPDe6BHV<>WO^e`LE?P@@vDa zc@pQ+P!!8*TWNY0@!Sg2+i!f=Wz%pA4klcJCuR$O`R=zPPSO0c3)$VzGDkEZP&us# zwD+FPC2RGMf~!)T_5zd}{;bvF(r)aIb5_Q5U(9bdeq?GG z(iu%YbNsQ?^&LXlys2nJGsu1^eXF>rKYxx-Jj6LX*0u!7$0yZ#CzLGH>iTxd-9D2CJlj@%%`7$jU&TF|55vD*1QTA8Z_W9-dSnTJ+2$Xn= z5Zl?t^2VWkB{TucNcnQJ4xOY}MF`bQGtze77v34$izA zl|FRy@0v9~Gc2A@@>0v_&g}QI(1m{C10KuVj=i!xQX^+O41`TQ+x}F)n7`$=)BCFZ zqyGRRx^({lE2q9g@=kZ=M|=O#;+{{_?X>xqPV+nrAmz=Ks6ie2^!i3{q9k*8e$WDE zWN(=)bh{UAOUn0a1gJuY!62~eC^xM>cn&aF=<$e+-dBBft7@}K*Y}LJ&dPsy^{J&u zA4u*nNSoQ)V$B$Ys!uK0s7*p!m!FY4D*Pma(z%rbV|JyYp~mSvq@NP*e|NJsIOC**T)+!?+p0E zep^GXDTQc~UK7O^50)Tc3f0 z0aLd7_*Rr4W^AG|#nnU@&u7VgXVxz4<`5zn{;E0+_Y|X0c0b28ViE?Oyf_K6Sx1yS z@pa}XS{vm&;Qr~hB~N4H+r(y0E0Lxe*>Q?}3*|q|8+(O1ey+#VamJ+9po(wdmq76I zbt9ABJfo^wY8P)Ms!^jH5lGvJr%#=Hb772MCoe^mNYX3M7R?+jsEToqV!dcL+-5gu zk52AhOau#f1TPk+J5I85Slks}JZcx9`R5@R4kuGGWNGyumvqK&F1y4`Z8Ok0>J%tn z#<|sLN26z9qsO!6Kg|6G(t9)-qaUn5c`JsYAcMER_UAdQ5;Ak4A`9osEnWn1r_3BA zi~EwswOX2iPMeD6-?Qb!Do!70;V>L=eQWtOf2aL!C%U1M7)T0e0Xt9%^f?^(KrTmP z>iWx@()`h^M#Oc{J*F@<%|mONGnxBR1UQ}Qz3}( z@(r-catD=MYOm&Kq_K()H=A-*pafLZFMfl=Col`8*Nz@c3r+Iv+Fk^J%u5~!8{y(B z)}1Nx%p8y~`duFwpEs>o`A1XJ;VmLgBG?9gCA#=iaCh&S7)0b-wLCE!1lLaT(2hw} z*zu65a^0!Yl;3R1o-*noGjC3l%@cWlPmEeh#o^<~*Y;Fy#+~x*Ec__Za;H80D%y9Q z6Im}jb5s@#)h2`69ArvX*_%A6Yx$Kvva&5cugH!=a!KfEnEB>yV~`QDcd3_?Pd9fb z;E4j3BkZZ^^4~G1Lw3wkkuRORtLBx}HHME)mF;zirK}F5@9_XZGysO~K9FmcVefK3 zE<|{PHuLrU-R`k%cXbOLLUBo%M^+34O*Wz5f7g-JW;wQ#n~Fq6`o4_OTk5`Ao>-4L z4Y@RL*{I*=)}K7;v_M7ku_I9CKfwuk4Gn>}r;-1dV zScs17OU)O~ZX?vRiBx)Sgd}ySkP-HLet8&^5zVK;83XiJ^5b5-zVbDuv8c?(;_3io z^-o?xn~#3K=eEW=i-ygZF`QjrJAP%}-RTg*@WtxfO!6r0P&y9{$MnoS7Hb>1HPk$R z^4rK79M^LB!(QWWByR4p{2(K#1ddF0_WuBDHkh)B7f-I7i|UUrYjzjBrPGOMBoszH z2~UKY^#1^BGcjb1Q>unT67`6*xOGh~(Pmi2r^%xpAseU2f1dfS)oDccdK?)eIPUqM z^K;6NHLb;yL|)<+Qnab4r$7eBZ*1nX-ZIc}3}VAG@>YjFm*hP@-auo8iJEHtpss2Z z_u8}>y3%SmcL%!WQW!Vo`TRB;$hkk76vU<-RiVRRK0>@GUn(ha2n7FkZ z9NV$PPi3Ez+D5qsuWLNFHHVASh}M(ti7O+-HOl9Ahkbvmxwj*J1= z8g=WM?3uW?bXt8hfU@yVIlZQPX_TlkBuu##I6?#StWFyU3phiyH?UK zWe(Bslrr%lO?Ci^*KZui!-QpxIhbw-W*PaD`Bg8MS|2pphMAdE%1*?J8rPtyCx7!f zT<{z&c3fT{-GI-g+T7bAG4QsLs>U)DhNTC!YtWE>S!Oti3+U_R=-Mx<{{Sa-JI^n| zmRF8uG4TU~Zc(;f`<#XxrZTRME|8pgE$g3{K3uugv{k*ebyeiHEf1k@XI*bIu z!_~qbJa=QimbWVnt*7ZgR^2GGhZ}Jl6Z-QHNtl5})Jq2pwqbsH@@JB6HH({QZcv9F zrMia^?ngpuK7sdOo|+)+TlGXt(jq+q!7U@awq%~-*(zuU6zxydvCOzbZJkK~8Y$0~ z1Rq&x?LZSRiUGu$AE&lk!^G?A&dlS@#jfp!oU;D*ZXhu6>tDYy^TyqX$ZDUPAM=v; zI_8ge^%?IB&uo=Z&?*uDpz-(2Q;5oRU50=HY`o|4qs})~T~2DU7UMW4YSw`LJJ&AO zL&Fs3WQhji`{T*lggV12NVE*0(v9$*ls&i140>KarPu1U1ZE)&(pGiOl!tL z)8Venf6sjFMC%yuaq(f}=Er=WaW1dtJu*mmw0xBEA8F~vhv?`|YqLnqj`urBk|K2b zkIq^oclIkhfEHbuPX7Q9CWfCzZRd}QAiYFDt=>xaZDJNg2xE;1QlpCz;YxME;+P9{ zc`*ukKDPsET<*15DI=fV!rc`qLAPAQ&y$E-t}&y#$+acZyq;fKu?n-jL$ISOc$eklsnxSlh^c zry_GnDn$T0up_$ef6QjMVIaEM;FCA< zKqGOsYITz%leW>}89BaA{KjuH==aiE>c6{s{4s;LQPcuyx3SDjISZMd1|jL6l6v_| zOPJ!6%Q)oXHmN3?)92gewj8k%=Hh9E9oQ%QacahXsZ?hM1ye=EN=b&tyZTx!}h?5eCeMAb3BVNvWd z(>is!h#Ro|di;w20Gx}k{L_#09-!+5%aRy7kBD#gZ;?3ooXs|(fEj|tt{WFkVw@5~>}yIl`fy+fi)&7Frf;X%|2dm8nwLtB_c zY~kP%CzA!%uWWpuXwjp8r4d-e9=rH<6z$=fm|UI6ki>2BZn>{Mp)=e_<%u=hqSrGc z8gR1aGnJHtQUvu+?;;#d`Y7QkzU5kWP?9N8UZf3< zA}L=Rh~z;EoI{?k2Ea}u`2PBIPwF2r@aPbVSo)ftwB2}d2Z_4 zM7B#l0j~L$1e%&1>rdmAYA4aJ1b}^?rzuS>buBa=K~Qhh5&d&sCPwAhz;OqK{(YTJ z`q}{F)J6l6orQm1-SXW$u2x$07|D$W1Nk?gPoQ7OHM=%8wrNR!x^oR{zbHkE1OLt&XXi@rr2PCw6%!n5-{t?!2>h0@+)~FA1w&OF_Qg?C4>2f;+dYGdm00nkVB0B)VDo05d3k>?qa;bzGehv2 z9-qVS%w1NWdkvU12a$V+lziAVPbtOazbi!`RR%d^09T0GzSSe!!`~^8^wY4zFkcn^ zacL=Sbu3U-+1Lgw4N9o$efJqW85w58DdT=!^CqRBUNl;Buo4RUiujNAvtf@TsFolL z>3_=4&aE!qR*TH?b97!XmOE6P_o?aIERYlC91IYUxN-R1uPl={_`x}sgOagqN3dD5y_l0C@Gojif&>9rn`{R#3-&Yc3m z7?YHaq%8IvPNKhmQ zyi>uw&-+=X*5*AOzLN<4CJl9a=)*0dg{m6VQ{o`^&3+6-o!yjkL<$Uk-sal$818^q z_?Rng^Xh*L+QvhWb<;L?K%Fky`aVzsSgBRxQNOtFhDNz25eJ%BwiDYorqX?|!kz={ z@e~KGd~+Dgvy=ejuV!Mmib9;7eIloj*n%rj?lPb6SBwR^b&$Me^qNp2a5W*dMiI|`AI6gjzOd~YZ7Z{?Pesmz{f;PKrSP9$zkJCobx+vvazZs6p` z3lH-<-9fHcT-%RQ7zHFG0sz>N?o9_w5tjR;;yl9bPfO8!*7Di_KS@f}h*FgVbOg|5 zM6rgED>V7H&3~3Rx()ocH!+q~C7G$RkUJXEhs0wU@a&U>67xxPwz89tAdOK?=)hF_ z^rmEE$!@1UpN3W$W#5=3(<~vgZQ^GS$(xg@9eUSnCJg?OQbB)+;+e$OGP4!gxUs0- zovYHhK^EPII0BR3(=e=JDbNWeeoM^M5l^G0{qpgehU}+?&4k0!g5(o!Yqu6fBYxeh z`tcVoO|k$D-%5YZIcf7Yqb8l9$09>DJyzVR?iIJqo|hTw;AhG>s6OYtu(r2Wwnd_# zR3*3MNdq#tX@?g^3$A&7*GsvMMNqCBFCozF{(Ir7V{};0ne{02`O*m!m;`J#1QAd- z_RLJVKy#stm(O3AdSoqjmr#PtP`qjn!gd=|w)v~g3pN~>NK2dLFEx32ofhsk_?kn> zDfUG}3j2RVv(Y(oJ`?fi1N;kBIOlV`>LX7bZmIf8hC5l~!@1J`Y{Rgxq)gD3{6 zjJA^|tgB~mo~^P*LY3H-HL2giqqbpZCD@#zBHmA~{#{*Z)@^ej4Hr;U5=pMyzg7?_ zrW%W5S~Y{sWhsuJLr!WG^Z2?oGH8^zlHGpJNswJY%lom{t5kJ0@ig|!M4GedffV{* z@)Pr#C?tzO*J!FgbsM=Pf`5f~u1Z<2XH6_)PHaBM)U4yzt=8%wuIj7-*wir_4*vj- zP9AQ{4nZ@s#VRh4?s z{?7F9@0hd9APZifID{P(={;rF(Xu%xFuGlan9;-Sg+2e4BBi z{Br_oIdUhpHu+|DIq-9J`H3cj5AtoEsds*s`ddG%>JwG1KpWF3%bWyZ(g~U`vHZ;X znrZg(Y7;cVFpAYRB7hUI*jL*%Q9dbi#u0#Q`SwUs?&3%RKObp28iVm~-`h7493j@{ z2Qgq;m)7)|KBkPuMFoX+G^z2gPPro$qXAD+{IvYplgrmpN2oKfV!T1xhr{2mOs;@% z3=T74_k3Dahvpray3=@8LJtkMBdtX~jHfnZ1GBo)<>GvW`M3F9CX*zR+eAg7YO-WRYQ+GNSsJ7ogWx|LFqa#y%cBHt`~Lv)i~e$ADB)cb zTuNLh;<5q{QPPBpbjtGLXQj+>`g%T&ht3*)w`})T-Uf>k^}I9I#Bhg&Z|eJ5RJ*^HQk{pN`un;<@ryi`G-wES+`GA$O9l9x*or; zFU^88E-W=NFU=3mugG-rHl;1*m?khv0FRGE?m_RiYBS^T`8$m@7taxDR~l(B-?V@M zK~u3E{*(CT4+tilgOh~^uV{8R)`L)a0^G467CX>yQY-v2nF0+4+-4`6$fVTMLAo(U z;M3t{KWB|zfjagTCoE!LZ>!Y-{RUskl>Q-eIoZi?-(+aR4(!B^21RtbjIZ5caqB^4V`^#ITT{^&o ziZvT?18%jaZ@V$Gf=#zaF9_Ke=GbG<^u*Gv7}o8_Cn`g64ORo%rnu>TVQK zK30%umki*VuoNH8dXrxfN(|m=G^9GbImbu7>H3wfr300?6esoOev?FGEymSMJOVGvt9v=0OVyCU zG;$Ph^rb=GwD8QVG2t{_SQgH-kITO=B#dqDoI}%zAa0}fY2)FSP8Z3)9Jci`TP+gf zObZT}&TLzG80?BW6XCwwWmzCYiY3BcY3IK)omNqNY{~+uvVudK|!(crdJ>-&4JpP7n?LB^wlk61Z_@ADx<@1)s#aodu*X^ zG>_q$J4w)_RN@FA_U%KN0(Z%xctm-#eKyt`n?F+8Qc+l|H9*_7LGRb5TPe7s7)o_5 z9?Q#ilU^2Bp>onqBN|Zde0Lrm2QkTSu@ST2@63NYP3DWnhG`h-usIN|0I12x+eRBa z-dT5e(LwclQCOs6-1)j9ywE=tMta+1LdhxQu2M(glc_gr&ng$foRKL_Ej0X67c!D z2}aqEL)GFItUQqdH0wjiIl@@xFq_FPREZ*Q|ZPYzHMVA zp+7BAqSx%TTZo_0hIrJ3BokHu@BV*=Svc1w_}lgCS<>UvrGrzsSAyE|6gzBr(0;m# z;eqH|4nqlArlS-#@j(oY@JSd%QMsjRckm~-u zWs){wPlW71BdrZG*+Zi!5=A}?{{Wn}{Jgfc{KvApw{sP~pdvCAsN($_e*?A|SQP7y zKUX$=`M>79Hb2W_qg*&Fup|i>KM{5PqCX#&9W+3VmRYtNKQFw62BCSYevQ-D_mdJ2 z8uV|UhFLNy*kS~}oAYm$ExeJWLk;5zuC5D6(vH9Zu|CA+uM~@Hz>DPD*@V+Hv#m=t zR-Hvar|Qjw4$T=hdza+@0OiD*|mRp!^bQ0p@@ zhJy3|0EuL1<3hkb#QezoY11*LL}kAwLr6j0gd0S3VbafFlP6-}@mtZ^%X-qSy ziVR_;6D*p`%zAdSq76>K6^43*^$0Cm5mDb^*D3}=EN?LaopKPzBJ|SGN5kSwytOMs%Spap-^Mt-cigW~dyVkUH1ayAaPnpU08@^@Ev&An z^ANH6jrQBA0G{WqJToGCkpR($8JXQ1Yxz%U<$DX=dilPyuDxaTO&K8-*%S`Lx$o`M zBaast;x2gu5ZRo0n@%2M^7LL~imx<4DI^l3e*yUBZel9g90w$A@b8+NQPwq2(wfsf zrjMs507>-dgc3OTay}ogFnE73X&QN$?DxOOPtA`wdGdRUUoG0D)`ernvPtleDk;9^ zq<%S%ng%kU9hNwpakBQ$`N)4YS@~niO{?ox(NCy3MMPs>Jdd{i{`B06<(VVGH*#>~ z<21v+=N!K@CG)#oX{%xBXfVS9a4pD&U_kbzI(T&7F!9TRRPM9m5(|Gde=qf~DS48| z%zjCdSnMT{eMMf1RM)3M4@2L+M^&ddj~rfJVB?eOokL8y)%>)V7qf}!3dv67(x>nJ zd*)o?b7O6m`@AaF`oqeaP1V+$6C{&NpmAD!eZG4hwfD+2SbQ+yXON!HnSU}o#jV(X zxNSW_Ntqeh2O^;EM?*@~*T*5K$-o*hXw%;#>CdFx>HcW8jpMqER!Jl^HEoEeaC+vu z4x@M5DZmWM`tbuY0T3jeAU$R(r0-bi>GGHm> z?8aLr{%`!Q{{WSTa|Pz4sb!?w9!ykHLTggY+w4Zvr^=aTEjfv?vz-ERo!(ib{%`2I z7P&8ztbgN;5%kjHL$yKc(`Bzg+iciFFBZ-wzYrXrulfcHl#k8xUZuQZzLX$>>{yDo z%9N*u{yBH@Z>Ngf97GM+lj@78!3npN`sQ-PfNH|O2%+3lZTvG`JiH8Y5_u*vTAw!* zx4fKNGE4S=s60Uj#M6EM0JAT}t}`4Z#u$v{WsiPlep=aS+7R;}l|UDoYYD}{I})T; zl-Se0Pc`uD?J!m?-czc6cX^l0a@$(@wf#*>MMSnO_6=wOrF#7v=1w^gyquhv4yH__ z^MlB;eqVWR*Ufs|@!vheA!ti-9NZ5bh~A@Zsq(E^a2X3Mvgm|G2g<%%)pZ!{<-NCx zW`bv7Ac<-KJ%Q{gnHqea5TesPFpDJr00geL5d9V!W^Ulsl++La@bUY-@R$N_EHOwy zCAjhpm(|$aUB;#cAeE_5!>9+Lr?JZXYUbq~L`b6YFD~9o<^6ceX*cgZLebOPrdc>~ z3oV`(i5d^l{SWf*Q@GHFowV4!D}zbQv%e{&a5^aLJBsufftwJ?9l5q+?2ixB_WONe zD-9Ai*Jew3%wgqjU(4Hly4SC6nUmT2QH)tGK77L%p!wU)Kbui`-&Bi7(xrE{wj5=g zRHShav=Dsyo~Nc)tjlN8--c2!vR-wlX}UI}es!%bIV84XqCa2z*$rsUckX+A7{)Rq zcU3%wCc_Z(c949xuUhKxap5UPe@svgoqK%pQ^XF%sx!${`=86cR~B|@s#r#342vO? zYS01nP@3VCJqW|5Al)-~yu{CLwlT;GuJQq~E&OtfQ?5?RdB}|ykn7%Kw1H$xo8t;| zpp7W)ze*_Hxn^jII*7pWSWJAQ`7!2yG%IT!k!v{!FutI8vj*sR9mRUnrX4ntQa`QR zN3*zvvEMj<&O3f)+ulbOl5JB?k%GLCngm|8G^f79^&Hq`gz=4oY&$F+izNR5p;fd0 z0IQq-0KC=vWBuy>f0kL{dGvAr0FmL|U;omJ`L|fK^6j}v<3{yQ5ICq{I(?u3r_ARm z;>WAz{4*u;-} z$ac1P<6AxV@rA2q8EA$`ZmT7%$__M|airXDh&q>uM(x*`>GcpEU zjR`aa*X7$LAYriN?juqc6zbQ>_ZOE7dt|DxkX4qTf(Y89YK+FzUJ=C?113;SNrc_` zLs;^zuLZ>F{{T={CZljG&~)k7HHWmx*`(kS7W+raeqy+{(+pCxJZ8NJC!pz5u=!^5 z7Py#DPKqF!FErMC;U=7AbpXbkn5n4wR+ObZ@fl=8R;GM2rah>BX&Pz=3XsTMwvrQG8=rg=Dl-Pn*Lp47#&>4#z4ZWLMixR@r0y|x?vK`KPP|nFqH=$NNO$9n;&qO$5Zb;L{Cug8}!ph4~wUFA#5u9@3dV||+ z$=1R-MF(#@Tye1Y_f@n$T-9Q@CzKBArBt5nQ@4*?;PrS8Dbvkn(U_Zk>7&^P@^y{X zv8+=omE=WAgHE~F=y29Mb~;gGXXhv9)x_FO+Pca`yBzTS(n2nsQf)g9P^Gj=(Euy`(1DwbuUM=vb zBXUo0J7uyaMdo!_yeV9HJr6|lch=+(NO`vV3Vy88r_DUR&J#Cukj9%9-AaL z>Y>DZSh(AzXg|;K&5oNSVl2Hr9N-7%KC9+CZ7!M^C^q-p=CW9EYEgj9mf>qOXQ`f`z<=F9pH*^ujW}abr{{T5bscILI*hd^fHjpSW zuO3QGD1GUZfFpM=TY$zkA53Vvf@%tyuFV{aUMe>XM%#SwiE+Hx-*TSCWo>&LrdKG6 z3XtnlRu!cUKaN1$-251XL&fIMZM3WDA=9TnQU#3kph|Wg-sdRa_*|Ia6D*EBMJ#O= z;zk~gHd@t1J|Zf7Gd5WEvd|y~!R$Uw)-?YBFiR1V0}W}M#^kBv^axwzq3>rY@q3Ah~o# zMqQKzq1+k@*W2}GbhTV?u;avt?87en;x$GZaSbi^s0Sgw#L$ZN{aK|k@l7+HQz1p@ zf15(%LD6Je0(}-(;Z*}=-~c9{I%ZB>9tgK>rJY8D=MT!w7T?S|gqC-ai5l)ASTN;6 z4M$qj!)(dX4;1X+>$4b|WFBCI{$6SkU)Vqq(ZFSw>@v4qj^K|R%+DSkZVn)3c1pE7 z%`eTaX4GH^9fQtRfbg$vw&~Q@G@0fk<@mk{^(Q({<(yWxk?WpUxG!j@kU~BskW+}K z?E&-6W}+l=dQCBgNO3Ow-PCm$A&%XU1d$MOT95^3PSoh$-Le@n@QxQ#EhnpPPntZl z=2^V6JeOBRT(O}O{6O#4nYGXoBHbtmA}y~MSJ$lOXuUX=V=5&$sbu)O>}o6DHsVJh zrj8MG`?~W*hgi{K^A?(m6F`byCEA9YZTEHWj(rSsLb|ulOkylN&rb7hy{AtNo!*rT zq~(HK{h&apr42<#Pkhzj&-rbDa5DCB$+|=Njplo(-rr4%GbE`XC2B|%`F^kCnKPN5 z;n!i)_+FBv-^_V#4R~@^!JYnJ-&wuf zX(+5Rxk&)u;^;@UPBFwJ(s6pXdQXFj_kLByodvBL^jw3PYdN^tLF9%rM{T45fm{ZiL9kr9mA&S%Q6XG|`07 zqWru60Gyos!@1Qp+m;^+y8x9P5Om+@u3x0Z$2%`iq|)(=4=Mb=^F6(yevZDXt9)H) z$Q}Ox4e6Phy)c^R$1GdE0OUX$zsmfu^W~qH^(%cjCr7lFiy05Pk& z>_**3-CWkkG2#dS#8~G23Ddmg9p;twoA>9=J%BZ0)c&VBym_Kv?XReS^lRm>%$Po>awGl3>rYL|G}!$)m_!NTW2eYryq`t> zTj-Jb2Tp4(9z(anuf^jC#bO#$nHA(f!qD8=X*p>a^mRhAOr*CPs%+XSJ!;m zc_qp-K?O_7dU949{;`?59WSI025Tk=keChS}O za(~NqcNS6kmf9y1%6=JZ@ccc#VAJo-Z;8NndL98dzGM8K*Z%-VGg(bTaOA0w3W^%; zclOICBUb6mcqIB~U-B)tp1io)ecasdZ55u~7xuY+$Q?l)Y14e9hhYg{rTO9JjV@m= zUcH8@3}z`mtuhz8}p=Xy{Y{l_E6ZIXqvKQ8@qPr8J} z@PQ-T}IV)ol_Rq<`%B!!;{dO-cX`}-0%14wM04dPq@s1`l z$Og~dKg$0A`Nuym{$A;p*E&Q=CZN0ovyoOkD^CsZ@Nl=lP`B4QmY-&}aaltpV&XX< z?oLNJru;*RCa}0mc^1mzF&ru?fYWo}24ZpBY_>}L=_Q7zXFsUG1xDjTN*Z*`Jlma| ztTG3i;eRe_5?}eHe@3e{ouK%glroLL-2C^ZG09C?K)s)5>DtAW>`_I08RuQwh$nI> z)ON~=GG!@?V!D@?ZzuJyUCUKZr4@hbTC=n!mE8WZ0_+_ z;a#>B`>UCHL&Rys)YL-^{E*Y7zSeHJ#p;AYpb_>~yFT6{EbSaZA;Qtz&hM%`!7u1| zE$l6%^u+Zvuk8v`Gz6P^C_`otnl`KE+uzaisTS7qsU)9>sOmfHb2b>s8#wdJW}dOC zSXlW&&F{4_8rndCk?1xfVbiZ_=1g&LwNEd57PQvxH61+bks&L(lmd(gLG%&w`DE#g zGG8Qp-P4bVGq*jacdiv6xm^F4Jj}haU0}yMS$k1i_ zUcYJO57C}p*VIHCWn~oxKsGcU9yw%X5wnvlJ3RsmgnmtXD$fLu@FMR-r3l+GvrmbT z$KmpP_2*y9EgQ~G+Q*k(IIe{3kHiB)q*lH5BXL}Yo@OpI=%pHOmM=6IF9oz-yixHI zI5b*p4{D11vpe$unl3Np&quxfQC>xJVRdB$D{Qc#V?j=3_ci%epWBv93T?u8b}yNK zHTDcj!#+icAZ*&df| zEV7_PYjS=dH&M3xSGE{SxyH|oP4!RZ-{v>y3$&K(GszODQs-jAoez)EnfP^d;~g*$ zsVqF#cjl;LyOu#6yqt)r@3-~w%za*}whnd!wWqqznJulNO9UWFv<*YG2(D|$GTgbs zb{OnmRdu5%1=xn_6$z($+ zhzZ~ul|fNYU^g_vCVIAr(A|()TrQ&zC=_$*M;ekx-M&gh1Y@vKhRPXWkCw`gcP4-X zwMZV-+vS+>G?`CyRGMPDaJSekBP^f;K~D4{f}7JX=HwiLwqp{!mhEz~f*mB|*Q)gg z=i}pmffpGN*V54}-GC_36S?@7pp)&?<}}UnW&_hLt=dg3wTgxj%2mPMp;T^Z@4gd^ zmdNr-Em}EXn%uIqbGUzmpR_jpTV;@qb72^9BpQ#EE$^V7z>*6!Y1HzkKz94i4gf~Y zf_2H@y1$S$4Ho7b`($$^zehv%dhbuCF-AfT>Y;-{wTxSC_A@EW<3z#PQ>>E%T|Z1v}HO2#y|Xd`Oc|4Ze=_ zuc>gOjFFBC{{U-oQQ_C`%$Q``cN-=$RrJeoXJsa(EUFo(fEBM=@A!TgLAI!42^?C) z(<)lVJw`$}f@pqy&KUtGAWV@=uSeD%)>vBVU=@(LLAeIMA(F;;c{tL%X5{_EY}Vk7&xhl-0k~%zRQUe@^s0H1;^NBPqY_6(^eejq zy+_OX<`)j=mR=SctgqDMB2&Rsf<-7ut!R8J(*)yunsUo^JvRC+D8_Bym9@ihuP?J+ z)B|B(o>`33FBn88<4-bOsSIO=Q&nT}QHbT&=soje9D7rTm|o+ODl4DS!dpE$Mq;e4 z%xVc8&3bQLvm+gWMZ}#Ev+Y00Z_WAa%of+o0xE^yep`Sm?lU6}PA14?t)Fl~sp+>? z15mPc6I?Lmu%W5$Gb9UgOriz6SMxi_7ILH-wU7+s;&8qEM~2x(Y(R#YQQSN>-^y|7 zH?dg4iy63jNY!piy(#pavq?BvNd)Zlk1_sMH=6XxEY=l|>d<;oB`7GAp`hFKW@qK< zEb;FA%GWf@pDOu*>}4fnjoZ}U_Bl}3w~lGaB2?^Q3QG0pWmYe4kw+Y>$kX4G7gd*%qH{m9 z-o1Kdo+Uc$SY?J!u{_78S!$ND>fu%5C>b}XCY7M4e4<&1dJI^^_b-Cq&S~YHVoRqn zsJJX7iif9aeH7o@FtTGa-M_>!L0(#1YJ4><4|ZkmP$)OsZoSFNF+^b&Tul0tErPwe zKC=?&`psJ6N`gqJL9hTHr!Ny3cMX^)V}5U5{HXH2mF0Qb-Uy?6vJGW%(x#O(`Q{c; zy*YU%amK?s)x5qn87EXCRFF{68X9*Qk)wd>;QnaI;@)QbzI!WwtlB^vq2vz=5>JT$ z5=Lw%26&}!2J;4sE}*S2jG3bcl>scHr_Py=l1*7NadLRpt!E{it8C!3oT|iqucvLY z5IjtV<9D-uSblcuKbOvy5y)QHzs4LB#2I@iY~mj`HO82ha^PkD4^;mZ}GkCn;DSl^I$EIDSt)Dnj-FP@3w7?4PDc5|fAON`$)9&-l zJ{t?^6lxF&RlWw~dwXM1pEm4y3>p2$8&J~)kS)m^c(M&4JeyVT;=6H zV*db~Y4b&vsQNCRT3JT`p<1K@DhZ=)`1|HIX!u*Q!#*e3KbGI~i<0ObUt5nk&eB~t z6i`D@cxO42Q7KDjdxt~>c%;odm-!oQrbyS2rNTh+x^p!Hj@2h_zvoQqyFX55E>4?U zk~obAq5ffhOj+pG*3;WaVtICEYO!j4u7|GuhF7h@;qDg!;$fPPm$aP)l07m2^HZCW zPcAgA1xf9ie0P(ZxXr-&6Pe7sZqa9=dC`B+)NCEXI3O2c4QHiinliGzJoda^+^QNa0xxL zU6&UFw!xc>ESpr882uC;t4wwPRFJf<(_F?ew%w%^BW#FnRt%^Fe6ux&R^^4_40ad&$f%7h*)LFK<=xIa8% z0UNLv(e+1=wYw;E1iaBC4{sC69EhZXSen=2J;zENvWnv5yv=spOkZkdt^A*vI$5d^TuC1$CGNZfcG>5ei%-N*vdn`j~<*5tmB1P4A1 zmzY~opulbK*5hBb48fz0bO(s|Xb(a@jD(_*zbDh0#F3`Crrz5~(A%xdMS<{Q3EQ=L z=DRHToX!)BihU#b`4rRncKS{WZiWSsK|Lx#uj|`1II&1&w|A|WIG-i{Pv}>EV)FK} z1*}}4fC-(3#BuTV@y?4R0TlDtg|n~8sYU(nu>^`tl36rypBC8D=Rk6tk-1ZlKrCC# zIucuv3@KU~0Cul$)t4M*E)LNsA0}JJYplT>{9XvBQc-$``#}Bqb`mAcxMeYZsriQH zJ!eCE%YyB3Y=lD?JC_Twr;qT=H16_wnwq>KEIB5+OGAUzI@(1R26**RXoF;>fsLn>uygx0xiT)UC zohso9$s}qdlYyfSoK%24zaI?Olf|)gS@Ic*e4pnZ%e%c7&hY4$&c@D5fXgYb7Dr%4 z-rIwf;*f-?%F*T#94xc`a>vQ`URAf!2A-=J^h&p+005;0KAyGl`|~#V4KeJzhs4~x zJM!oAG5o7}8|l+Y8^%Er2HUUg4wUx(nGE>MMTd8rOC0ag?NLj@pcm@jnwnx+M|JsoIEPJ-lgd#l)ivS;X+lob zKW2w)mP}CQ91jve(RhEFKj$TU$$ukg`dIq397KMiR5>JX(v&su8Hi+JH!n}3Ad5-7 z+2k)WO{3WPtuE)ed+3Y2Wva>v+MAk#@0#K@*6j880=T4ci8f~6*>NwAuma7fb z!i0v>OV*I_mKe8o2fsttaksWlEC3B!dyeQf^3I)aXqv~C?L-p_nPY9)8k9d4#BZ9p zLW=4#_?tXu%=&fm>oEDYAn)~g1d_3>Dx`Pmu-ov=xNp0#(B%;n_D?omTAQeZs{XCa zY-21(j$3)#9OT9zPW5Jd0BN?DMCWoBTa>smjnsXpzX(1$z=H*CVDj z^!Rl=LW|J6q362|8WF5bb3NX*bj7Ad`vRa5Q{TVz89byqO++eoA4z$J8^1XDaW$KC zSa0m>JWvhKN`q5Qq<>N~Tbc$@M6yC0*;kXi$^IhIV~*zI)W4Msa;KqeHrBlV7&5o)ov9>trJI5DcE+~r;cSp8*c6N*(w|_%)iaQ%dax|!&;Ba9$(}% z-W;Au8j*73YFwY?=m&n;uR4zi&}h?Pjyc(VA^AUVp#DX9F6Pev08+QOy?I2F`V%aH ziVi$fsqB1x`(zHYek0AEvmuuxC;a3U)Lv%t8|xAS6mv-zq#P3Ab|-%mU&AZQoXmKP z`xqHzzKBoApDF5Jml`kWr)PUTL@bIns46xlo9;VijyjJLd%d4);W%+zUfn0>4V}f` z_;Xsfm(!XaaZ0OIV^523Dqhn!c0f9YaCYfR{{T&efPwfzH5uzt62RA{v^> zT^&sHvjyT-K2yH6)-^QNu8Oy)vfC0WI5%_BwEMUEGaEh|*tEkr8yCO%N6Y$cw9(t@ z_YEwusN$6zLmu?%Xg-X>!+=6ty%%L+2XerC@1#NI&3Ed0T%=v<6C@Cld3sT)r>H>f z`1|GgFEoLmot{9k$*UxI z2G5mzjjif>PQ4sjY;r6XY;EXkSqZ2sO4HxN$1x614AF4mrSUfpyp5dRj0t+CJHUcK z8*%}s;CH2PWgL64;W&=(mVY>Wp7vi}^S!IIw^dUk3f8Is6!rjSK0PQ0h_-%o$kG?` z$MYik?%Lb@TWfJXk#77_U^Y!kjsCicAFCs`T=DSi3{9P8l z{Wja?J@X?dV7Iq!=vJUHAcNm?)D4eavQY;RaI)j# z=3c@1SEcK>8gRPS13G$Mow;CY2KToBsHNw7Q=Jcj@gb6i5m^MbpY&CHSay%+qKJD z2<@71LG;Jl?OIUK{Eqpq#hPMN99hb@4>a^C$BL^UeC=Y1+>_T?dd@f{q-w9}|1i zw``tVhFb@o-znWDO+MC5ayt(zT)4Gh6`mkeFe|wCpxV3l@4g*4y~~&-A~;39g7TN; z2C1#;iLa7i(kvqZ3v?k(cI&@$lAO$qMc(Oq92jv)m}ZkE>QCMeIA1-(#>JPG#bm;iBsE!+=;zyr6Bo z;}zwt?bOIEz>|a(9>&DMiS{O2zQD93ly3lhV@6oSeCpx7wwn_&jr*|;7B`IGspB;sEy`AT5r4-1*q zyYwoj#CZJ~kDD(*>ho)izJl^!Ug!P%-`)CsPhY#PYrHu!@#Oyi|I_lfoIJ&Us!nd_ zLLdx(cGNXB&L1u-FE561AGPF2P1N!=+J52oL;%yTZw|SImf^5+vCEBDPxSPg*xpqJ zGW?2Cp!A@nJ@WXTD5EwYH;eAiB?~=57^Ja@qfQ{LHYiVEJE`t7bD-0K8!suU663eZ zADtRxdTzNZ*i`_PP(Mo2yY1Ium*>S2HhP}Qp4+{L@`KJYJKMvl$Rt<_#%eYl2&wiJ z%~q!*WgZs;v_Rs0;eF+OH_rMmt1(nz9_6V<9s-%mXVHiYZPVxRMLg@v`fawK>1fvk zs|v&oK|9uj4+>?ypR1{G6w42VyAbn#l7+40u+8bo49Gxw6W^}Y@f|axlz4V76rPnTv^g7CueqWX-gk3+HP@bCR|FBI(CPZ&JkNO^Zxw9@S?Z!Y95 z1X9*eqPqszb?vuI+To+0K`aS4c4P`;hVg15RHc_ zM}hZemJ?UA(Cuy_4|6;S11$&~55>1``GGUVyQtP>0g&nXy}VMcwF3yrZYPxk3XSRj z29+JN10<|)y6A!RK8DgYYacu5LryR!sFW;Jj&<6A4|DkAjyyw!+`~9A+49fkpX9~P zj#FDurrVh=2F$#VkGD*|Ix`K}jb9eUB{!s!I+LKw|=sNJf1Q0+=nBmg@) z+3E}=gYxI(^x9sn>S`>H$BUy>GK%gh0o#7PvW-SbMAJQ9zls$5J4uZ+*ca9)o|q-c zH26TTPNRSG+b4)t<UxHV3SL>TD;(dC=E+=<3qTnMpN2@l^k+l7e`pR zw-%Plq9{O?W;NV$k;52G&84gF1?Ifl`B2bw=MXAAWUage`Q$PYe^ElsAiH`rxmC${_a>6%>HQ3JDHr${ct(|ucpdis6z zpmUU0i-SN%U@N~(z4Mg93}t1nSC@djpYtO|)9>viu(gQ?)sL$ifyqNPMF9tKT&{8u zE=*@*iR2%Z`uk|w!f5hFiyh!7#Rlc5c#8M_A5Ka+47oIF<{q8-wPC2==?!lKEKLDv z9MZK-zYl!H;4zl#ru6O~n)4>FYhmJ!&UT7C2Hz_Af5;lr z+dD}xlINM=0I3V$!kdcMZ`GW%AVA%YwDFzO%O5dneqS$T1P0#bgVc@p72kCSdL8!L zG0sD65HiQ^dEc3J9ed7KD;2{K10EGps#J9y039-#<94Dl<``D7`A@4($#W!ZAtt*o zExqVXKAg?c%5db&`h}OHS^09?Otlubv7wQbS}7|-9V!n`kUQ3yyVGUh9;QPL`kt%g zeO`S#NRv!ku+uSWAy8R>@jVS_K3n!XIr43Ba`5W7{Ur^fdAj3CxNSRFkefDUq+H2W zJCQ&@B82q(J7$)5BfEvH)c9KmoWbUpyuq!@XJH@jm83C(YEL0X@!EjUemS2BaE+ZL ziIK9xzc&T8n{RKXTY%3Zda@PU;^=GPO5u%(J540-XM_Gu`tYFP85Qm~=s_JYdBjDCr@gLI4M0O~D8F=BpgePHvcEIE|t7 z{{Sw>p$Ttnt|XZyA*7G?Qops(5x?urhX}$gh$kVi@?SPzWN@&PnX?W(eh?nMnL@3;hv zvqy{7yU%L4p)H>2`M2eGb@&=33mRL%9g7-#B<_BKDl=u;F#tLGT$U;FJ-?H!tnMU7 zg0o1=9R&#BO*woZ9gn}$Ov1$xk~A4lA;N6GM|_W?FORQRVGIOKYc&SgCDtIHI>!Zlrctw&M5U5mqXR=2d^8bMUua>*1P@NJGw0Rr2(__3d&RF zjUw{vON~|}x9q%4Ks(p*%Vn32E!~}><9J7x{M`38_j-NGkFMD`M+Aej3KP(54{X-s zJVmoxgyKu5oi!UTtSthovV~!}*qYO}_$3hO{B7y#9#>17dkE5QL=X=h{t$QXOpJ0! z?C!C8V{B_%Z&oR;;FE(vTABm0pNfEk&;yph8+F`#W`hcXk_Oa0MD${SxO24$+pc9~ zmdV8%mkSfre8DaDkA3BB8r?1-2qkFh1c@O#y*ia|mtMJr8$6x0@E7M_n1-XEYO2hn zaDP&Te`>X*K6K5lmxQ}aa@%*>UzB>pAD9+a&*n(Pw-&_kR;dQ0{W~7jr|ZcGRGxcN z8F5hL{So}K^1tqW$ET)2M^s{V_8sUucxKKxh~ArULPXI>KQlE;pETdYr`n??ooh03 zP)~3T zyE*-KUG{ptBm|>H`M;nB^40X7sxndj({!NPmCJByMNxHny**23xW)efIT593Hz^=Q z6TqJk|$EF#`#j8&r6z=yOC(Rbt zntQ<`x#GN71MrG;uUh7xQJ;v@(P=c|BFp1{J8SXZU(ax$@KW3dVbD|P%#1LhWy93U z%?Fm;T8~Yol^!%5J@VoJYX-U`5(>mZ3LoV=*9f+frFw+`wr3n@Do0A6k;#~-2wqDJ zMqs9{ejT^2NU<9uG@UwI_w*o%-s)|YS8{3BVc!9gWgt1esQj@10Gw3wXPz1xo48Gu znpi7MDl&jQi4@5J-p3i^;Hu!B zCj{pyg@gcQE9LvxBKqH$Bo8WWumEg3Q=!aCE=*t#H_Bg{y3N$HG*L9GY&i)%Bh-`7 z9{&I_lpLG0lmc=2Vdd)qrxX$kc_dbl*J4J*16;iFV;@W1G%G7uZ3Hk7(~Yp=d{K+nt@PRTxFNfqj`2GZ zU&Nk+!j#N$h!-oxDU>taS!;&Q5)?d2KF@0VbnTg1ZhN>n?c?5a^K{;P^E7{#Fj7rA z%H?FcbU$pUuK`Vm#n!bOW@ioZaI<74RQ3HHJ4o*hh4ZXns<4EbmLjz3O-BC!hDJ3b zPIUkgk!cz&wxKqxp#-rZJnOf^x!mor{{S zh>DfvPQ(+}uG{7DF^IC!kobm!6!U+bm&v*&k9VM4D4*)2PD@bLNF0BgZT1Ja&1IgB z!Z~9I@67|{sUiHzv5!~t9r;M%xIAip$)G25zj2w+$F}YW&SYMTseWMSo=BhcZN$b# zje$y%e|JD@u*zTroAYJ>(;U-(Gju!MPVe+#WmgR_6bsk3^dFDXb0A@-3Q`2K&oTLm z9S+b!tsK_Z7NS=bw{K06RPqjAd^+6TbZmKy{ z9wcpFkmxfbj6tU-sIs5T-#S`pI#9HD*|lzaDkv_%>^AqzYXsPKaEXAo%06P!uOVpe zt~ob8CDi`Uh}?K(;(@mtIWiWINuzycCR9&NxRM+S`;V6Sb|b~f!k#MKj8ASZnE|VC zUJT3yIRQ$P?S^}#rIIau;>GuvCQuSF8V$>_fg zlu&?r@AArG32(ar|^_5PhQp^TOsVVGW8>GrZmb5O|J1*Y{qDsp(?Y^DM*Z}hSr(Kv+>ulLGahHTzY(TUV>EYhM*Ep33&{TfEqDI_ zGndm?Mrt-8WBR?q7D-UX+x99&d@H?kA2vJW*dK;%`~NSyT@iZSwANIgZ;kW%GJRkUZe} zeZZLyr}0#&=vY#R?m2!9LAM;jw-4BF`NuCkomS0wOa)m32Kz$2Y2lks8;B zT3N_Z87tG0(x-03)M1W08z&|~4sXoQKWJLlkTuowR0{FTT=G&X8l67;!{OmOxMYd) zX3eYEdFIsW7OlqdP#IA4EH?_H_~6MKJ29O_=J7O;+`gYRQrL$0d#hHUkE9CZCn^mP z!g4d+3tpB%CW_w_sy-J!z={mY!;!l-GZ^rM>S;c#o}G~mA^T)+Q(vTQnZKCbu} zY>m@=#Ws%C<`*j<-AJt|)QXSkkBh#@j0_(}`786z>Qf$@d`)YJ7hGxe-203NM z`gYUv5*h4xG@CNiP;{@$rF+*Yo^CCiyck49y;Jhb$*-w!^H!>YCkNGzy$XTSnB&1) zmGL;uGM!({W9t&dY&aK=ylJ&4I_6ZU?9^pO!{Oi0U&>+UDL+j4WBxj5wUq}-4upzz z8K~81>u~He`i>{Y+Hym5^LcMvC2rBUBRbU8MGoWNwqO%ML@e9QywReEidfmo$rU+N z5mg42r)uOh@+9t=>A^N0Ne%7JmvUVl)#`ZrkE7o*=0k-%R{JB!f1cM@`gDF;zL@slTbo4>8-YdJaC-0UlQ}@<=4mq$9tHV<`BfxRrmLjKKnO`z zorP=uVK`-t@ACC$xt2*_WSfsLy(%ft4Y%)@@tqd@vIAoI_WR2>cCra2 zU);9zAlI(I(!Y*fVDfRX02&bK%r4k2Ti&i_x{WVi&TM;u$|~1 znV+QfAFu1hrHPy|h?=imwlwz4jV=h5Cp5=5vi?|pOpnfuS*Lr{)3oC;s*Wn|weEWl zp{bilc6gTVCT&cM$Grl!%M7g54y(|bRBuX+_sm^ZoMHN0oerR7 z`ko*)o2yHumeGn*yhyES?Y`NAgEWEN%FCyTd-vtn{N+cO{Gm70rMPRWKeA$+u_SjO z_4~7PrtMxIslm(H!tLy9{{T5ZrRykIM$kz04av42g?jtuW=(W*a&S(Vz}RJ4Kjs~U z(2nB5;b|g(V`Ivs_;?J*^vSmj<;*MjyU7;baEbLLg+$((Za3up>O5(h-Cmr#tsZOU z`5(-_N4?PJ;s6nD-T-{FS$pp6vf~77p7}Reyp~%_671p^P6E3Ri1z8!W@b6?a&^NP znWxvjSJWZWuVmD9CNf`KNT<{^BqMBhZ~L9(~=NBUERP|7xD zr^7)&JB_G1W)=-FCuct{TNK3q05Cu29;SlO`H#!%%^5&tQfR(3ro?`%yEX$6>2P6) zlV$U&!E>Orme*dSQmF`OLI52B9jjis963%iOmk^Og~jVuOFi|3JX}W{C0JISNv7kt zCw`qXU}NG7DANNSmgqXXZ7Q3p1(IJ*Heo<{kzM})ALE+NPHdzPC#89t$PZxXbmVXQE5a%sur z`cue1^On~)l758qJPel&GNe+dER-~^{dW20b}eu`+)RQ|=EJ`?yo_#jmh)$q7wZXd zs$~GywPJnu70WYJf;9SZjM#pE{%5uE)djWZ!xGU@0kEL!Pa2HVN+R6+vf>Xv({E>v zM~&nm2Eka6I(8dmWDMM4aD5N?8Rwh-04Zva+ba6HRLm0M7u{HH0UdW0>VF)w84={& zk0?CfSowzfTMbMfFQ}7Bo8ye~1Bm^h{>KdQQ$G{AN1vc)%aGmJ8w?8OmTvDYB+7@l0z|=wxk%yYsG2bu*N04W2Da7-J_4w zr4fSE0tZ^xbD13ZFA`0y>a7qK*771C1K}VZgSn+cG`sQY~#CCA>gaPVL zKj#@*+D&&``pl87yjHV>=A`^!6H)$sjVqNyA&|8mgK58*wEqA@Pq@@4gnFVnMNkM0 zPqYW!n@(}IxxfK$7V_P|(JyQzXxZhtojx*lBbQ%pojc@lL>=9KieoA-)J-PAxO6l@rctMl>u^BzOf zNtBOA%9@9nBA(V;320Iza7g$-W4R`@>Fr#$F$7ygiRAImKK^N+GiZ=#V!Z5$N3BR8 zYzXcBa={T+9WFy7DtvLTU&$=yIaa9E3xX34M+?+HDRlcc(zU%uRiX5FEOGwRGcg0` z*w@1_^|S76@q|MX(EPb|=1oB9Rxz-aSq|rArFY!;Wm3*D#;VWl0j_~r$FKOf;aFzK7Tyj zSmyJym?LM+pPGJKlg&2zf0*$ zpDn?!=o)>_u@FhtaSL!#%mV{TQ>ZK%k(dzJD z$o~M$jbqGu&CD98Gd0r^KvLVW{agP4n9N+z7{#}0^a2})w|SdP5lrc7pe)EeL|xaA z>9;^e*^9-TQUpZC#RX9(zO|>9G09J1qD@y!%{ktwqH5;k*6~h2=zQ)&R>(4 zdXA+&pJYQ{LalJT*Z^Um=nngK8=B?`J{Hby9LI{0URnH=*K{2x{#GWkrUiwO;f_H- z%gU9Z@dv+7^xC;G!6`?MT$^a_sP=DMGluKbnetG_S#82*s@^8*@vq*jxD-^;k_KJ19faf=J0#7U>#K3%re zFLY~2uZkHVMMn?-05lcc_+k9Si@o78*f8%i`3es)#W$B_nplK~oSuvEYM*|)gHI0) z_sndhO~(AZiKmzOXZ~@gLeTXX-sb9g;f_Hkr!@w`rk)i(k{N^Z-1Marc5xAQN{ z`WB_+pV8|dsVHdWF`{i8YSgWKPTz^ltymDlPf6L>ME-~@TN z!&f+L6QB9Vja+_Wd9wS=Fej&FquPLlssl({?GxL+Y&6(>Sy^(iMunHs+WxV3rrTWK z!^sLn-w#kvZ@#^=pqHX94ovcqp!}$q>iSNt4e^)L^(W;!6*NFtd`EA8r#XE1hE3h( zi1=~c?_Zby0GtO=^L)Numga3r)zm1sknSX={eh)LI&5UEzKzthNG@7f zW<|Jx#~Kg{(Dlr`nD~RJGvSqlzeDoYn;flWCA4W^sA+B#C{n#BqJp32zH22O1G}-u zpTy?DlKRic;{I#CLK|h|06kTOC_TN;whcB(0>sXZ2aGSAv`@}GV#`Urj&^%zKUP3$ zq%BzO+N5vy=Gs5L=HHSgBHwa1nC-O9H8lHMNL5k-s@z3D1IP8|!auo=&QaIIk5GI8 z=6^h1>C;|FT*Tg^5xJlP-=Feuwc3mne`7l+5VPfW_w`jvmpJN(yUKv z_B&Um`K;DyOkA)y1J%5R`M;?7RpPL?=7NjOe`&cIR=(#kapgGqIC9h*efQ*r)4bDZ zADOjRCU>fcN9?Eql<=v}r$MP1vDxOM7@4^|o6S0Qfovzx{LKjZ=BDPW7VX2vr>D&C zP5NfPTMrCbT$3ESK05R2U;bZT{ZmCPE|nyFnFq#Jy8wTOhi$VHNg~yDUO#uLznTF_n=e6A5yo75FG?X@!ex~dMkbMJZ2=4YDkbx@imzwWf~M3YRXdi4rASAMxjx$Ihu z$}1Dn==DZHw5n-tVF#NjKqHBu;e z?MnRf9$6yheqe*M?HvouSC@WLyVHEB0OJ=aWgQr)*!8b!?U@)x-j}D->%2^SA%Xr_ zPd2z<@~q6p;%VA>6#*PnP*delHa+TlW~UY(PzBazGstS*S^4SY(c~{Y+F9rYVuJZW zmNIHN^d^=2{_M}y;~1zonD(6#^*=9K#rZ>`-D?g~9Zyh<6`>r4-wK8BAR71YwpE5_ z1Cx`6Jf4^NdHJUYm^8@s7^HD|ANR3_s;TgyH8ef&-Z7CPQLwf4|g}gfB)3y)?P%hx>)XS z<|Y_{5_8xv+J%KWfP6sq&M5P@hn_)|;a`}#MwOzZzo6z>Nh5<0MQPMhy^RhGn87ye zJ3bPTqVoM-dz-B`ArwP?MWkJcG}?#g?Y>(KU>9IC@()`4nf%Uu64FaeMDGG@9+fM$ z!nFN)my00>XI-qpdlPZVBvrX1+PR zVMVVTJT6Z&^XHm0?K@prw8^EhMdPI5N*kn&Fz+2-jC)BJ8eVZ zaOxC05X?x}ic{e=>JD|&b1r zy{N-&326|dO5pBHlokAPjV$AL*LzVnBZw9nGEs*P(C#{}w4B;(e< zNbT*=*ESQK;^8hA9rJvB`J1gx=K*hJ0ynOprxDb!B!fe_>U=X-hfo0FE>4>j9wNlF zFUW_mXnet~lCcK`xtes|fM#!wWxq!^G`vBx?a#~9(lt2D9F#x9$grrQ?LZD-ImfYh1M=?E@FdT4Aw=f#MYci+z$%om}8@}g)$6ivYWdrEl>SB zL5J$oz)_RZ+jZO$cBgIEY|e>{g*Xx<3Tw?DoEpv4Po!%RmyoKXo`6tL(v;lyJ$=q) z=gn}ZBS&!_r;6+Tt>x0{q%r0cd;ld#1IN7p8KdzyT$q6)yX_D8$NvB@TY2)zZ!c={ ztasMY6CXd@P$@z^hhM_Ei^3<(qBE&iMM(UMHIAiks(^wxCJsF{>G5>?ymKlTczHIA zXPlo$d5cDhUroRgLwyGTjlC+py^n@tYGPt7zYK>H#k`sS066udX8_d_563 zim>?q0L|JuLvVFlY6p$Xf}Y*8MVl-^;)~Aa21V<>TGkTQ$~(Bod8gu4D?o|>9XgNm z-#RT0Xv!8_F=OiS?=##BopS3#)M-4o1B-%90It+D@vi>>hHG_TlV_8&!wcCh(>%?m z`DajvL%5A$k}#|!8wNG@@AJ!axuXKplTLZQ)zO4LXVJ{Si514?y~q^J$vzb5P$}cnHt;rGzK|Hk%hCLi<)113R>b70K?+_{s{UWgmSczn%%d0g-a?i=TT z%b0xwp?RA|)wG$SiIPa}<0F?+Bt@w3-A`ZDm~-`P&r1l!jOtgqW|gNrnys)|BmoiB z5Pm9Ck)?j>WpTy89IhCE_5T1T>o-wp$*o$#T(}jY)DQsbY4?3Oo2SZnZPw2Sk@UPH z^J7W2^U7S>LjpbJvk6L2*Kin9-+jDupUXZe`dRN0Ws&~?&MSUe$)`(kuIk{#*B=T- zM(f9^KFn#*cFoUcON{Q(pBRyS0r|P>*~${e5X`WIYHR>Kz4psHQ@N@`fb98S$hvjL zvF9|==A^Ks>>7l9k^wyjLTUzJXfcy2Xvz$qcK&KgEOa<+?877hsK6Q!0RA7xIt_h{ zbnQ5}VL|ZzuLL^OhTd}GL_8y8G&_F0<6)*UE|V^xOJ}3#dQHW*mi-%CIM6RZC}Ksg=iP&=6_S z>sInCTn(nO4ndlhE+E1z)&7Q z?tRCw8G|g8Y1rxYM;NrPS-SrK2Kll^zi&?7?F%ts(M?LR_CD3jT;sysa%#L+rgqlg#gL zNfmx-9$(Z zW|~kQ_si?&jY`*1O>W9}f_TUyk4k?j9l@t@mSL1>W_(##W`0?_(!Bes2|Vd+*B25K zAoNgtZ`cuDuqfqr7CI2_-&iL4v^(M zQfHS8@oe=N{{ZJTu0{9NVz*S%DMnCtsOwTU{dv^l(s7C{_%KKd>iYix^1IBMN9MMe zo?);IoFw$xHv*yjPSqlw7;@&y!^1$?Hs}&Z%`VKPjSno zGQ5~XOI|5Z+322kg3nmBpGCinh~y6Op$Fl8jcR?mcxI^QAkcQuF(Y@tUS#sw(QYKS zbs{w^Rlj7AeZ8}9r7|OTQ>erV*&(*qBSHIx`xW@Pb*bsTZ6Q7v0(eAuvX3Qsp61H^ zKSzcGmnMx*QY+MV{uxB#WOrw$06xU>@8(^UHs)PQH(6FDBuYlZ#8mwJGgqiF17~ZX z66ewI=jPYuMw>nCvRJqZqy?ZVO;1mrV(IZ2mt~y7tiD;hzn1b-aVsBDnw#t?<4oCz zaJp$ri;@MeF0JNika0qK0%`A;flV1BY?j;2bA%8;%&0|6kMh0x{n;p*QvoNtXx?Q> zq8F3D+C^SFd|X$;pVu)pc}V2uXms(3-K+lqGfC)+OF*iuXx#iM*1hus9xL71YBJuz zfLv(y@jGfaq_-kkovD_`H%A}B;oPws+vv3l*hE65Ks#2XZ`Zb7F_7cWD4!&zZ6y*G zo?Yaj<6jVR=ocIdVr>MIOz1uu?gLcqLDSzYyI~_t{{YAzm7Ze!(bZEx&~2Jl45$i& zN)knCFavF5m+9Z+fBfR*pXGkPZF}dLAo|=(RY?frzT{M&!=_!ZJGA7}%4PTFsSUrJ z?S`41{OyCt3qG3_jI*9+l;WH!PfGR2O{j^LH)PV#YstU!kY1&uUrlOl z{YK-%?GoL$1HNWUBtx%&;xv!d{{S^LpE6rrT~83RvrxfVnx(0?A_qb3_~ss5|x%@;^`En3*H90h5T+KEIh0(9?Xll3ZP{6)hMv8+ZQz zKh>CU$VsPXIK&1+7N6!F0vN9plCm`!b{`Lqj>D#385am?zzLP5zPYW))lNlC12s)S z`TneO#LtsdWMWy~oB3;RVutrsAgy`urre3zqPy>xW5vSVw344RtS~j8(@OK^$Womb zy?k-V31K1+B^TCiVJT^21ASRQX&8!7f!e(*-y|{7ap#zZE9Z|j%WbDU)|nAHt;|gn zD?wEtABdf)zS(w32!?UIf$@ixeCu`jSvAz!>}Gvl;&o?oelWv*{6Pn>@XVbo#KW!4 z6O8(wN3N-HB)qvqJ-GL(@Ko80tJ4m#%(BhT8 zxpNy!ARB)4070NCDgf*9pu;JdY`F07w`>0ZION)dQ)_z7(Ym`}I98mt+Jk+My=#=n zkjffycJW_2{#_=4=4)*sC3sb$FEut`2W{)up*}u2m8Z;3#l+TW&9jdyTP#Cl54+~5{^k0>=>#5wBkMKkPGt5Ectz)HpO>o3|oc0~~ox69* z5aNtU(Me*7t+x@H5y+BTYMPyo-P;>Q@V!UN+V#XK5;X#%4m8-1Yq$1v%EYL);+4JQ z%KmY-me{??9F$VEr72#SDb+TEOy)Vo($)rMSy(R1WuphG(~ zJ|3V{{ux|jMV|cGhLvPqWK=WTM!o2yUTRHy#aLCmNh0QuK z1d>m+M}}hX@SUBH7&|^})a~SBFRH4nhKfg0d=G4p-Hp@ErLmGD%rgaJxF^TA(Uy`N zT)4QCEhXiFioY*{gaKNeva#tcf}^l~yZ-<<-RJqVZF^3$XK13iel9s|Drvoc&Y82* zZsBH+gl;d}Eq?Ml+Z$_XSDLaZU8~Ry@_B_j90tS1eATAMqghF-T-KnD315AH9{G(Z z@izFpFB9_igJ}16cNYu{^3>6)LYDoN9@NaeJ~II849-q$fAf#>s?S=}7TQ>YxKLG; z7A2fhs2#GLxOmHSF_^zB{MY3DPx9*WYr93|7d}R{ryq!*O zs7gX8OOJ$51Gxg3WTu&80B+87-^@{`$q%nM^yn0?Awnt#PnXKMTqQ+0$EM=_Kk^6W z{+Z@Y3eQZpxkw%q1S7ClBAqw!&E7Hyw+k3N%N6ssy?ZsxH`;Je%u+QAy+axj2;5WX z>4dmh1c}*KN7MBoeKeDS3@ig4RrtXhl6qFZhS^404zAAzIYd5V{J`?InHH^kt>}?Q z9HoyHW$rvaf97+Ylx({x*R?0Z)wlNS_R4BBopZ+86X^4yx-QES>VdX{dX%P0nbuT%8(&0aI%%XcO*HBo$! z?>3KevCij^>dI&-+MDh3u55A4O^%~V2z{mbG5-KL4{>DBd3RiB&8%NyTF|9Ce7tg8 z0#2xjVlTUfxu$uJ$~&uB;&fyMhafjUJf>j9-Dx#kPc`#jmTYH7)Fl8cLZfQzHu+^! zm^_@R!-?^CpY=^9d&Sd>2w+#`AwLNVO}5xm@5y*)qgF@)9zprBYoS_L+1hz!9ht$F zNr(cwf(MN$^mq)9hauI)#UKp_&X$v`41?*If!3S^i`?KS$IJr1^bi*enw(0(M(ER0SY&_IBTuC<462$yQn-Nke*L=L> z8G}gE_&l2PXXFewamTB9VnvqTL&Pf4k6Ic~oW;qbJsTmM4rTH;oji@J`D*Q3UV8ZN&uhT`_Ti?wQcbs4(++$0=qc;sGr`GKGrCbzcH zeLqFFjc5p9cLIRyDr!78+kDdH8@ZU|c|23|16I_0wP_uulPOz>(S+#{pjR8v9{@60 zGI%_jp&t{QApD*G0GyAjNOJLGw75p)w87%~0^r;4wKIiymB(Vs&bDfH1o>9G*%$`J(OlVkr zR64VksNzjV-+$qny-6|T?6k*@G>ZQKoNdyy)Uwr2n@=4+IX)tr6UA6i9@Rf}Gcz_$ zAx<6)LR{XF`4Q#lW%DMfs>#CF%dTWpUWJbmKm_*VeskqZ1 zVGX-UBDt*_fNBCMU)cvU{BgmvT!E^22CbmWt!wr^UeIF$(&Dl(J1Y46>0R=8GEk!8 z>a_f3!|Y3oyU!@4tJ#JM@uNolNv6P&-*3A!1ne*ZK(bi%7`(_|*O9)u@$#4wXv%h} zH2iZ{shPc<#-0MVd{_DFWHgOxIqcb^wfdQmh3U_c+MPamehE;b;cBu0EuSI{Zhb=P zM4iGy%odB*gTpc|#RpggOLY_Fi@jq~x6^c}o$fAPk*F2qNu>r+G9Vi!OZ2Pq@BVR~ z-^-+VYhUzjE*`~ao=K_1%;S=(RMeFpwXpEzT+nK>NSbJ?JHBSuG?=uFQS{phBegLW zj%QQxHv7=_{aLQZmRWZ#a?~0~-cPH;DnickNARgMEl#!ml?=1s>jB3hG*&Nj(jE zQlrABA*j^cs!dU!2xa=cnDd^Sa|W9zOVb|}a6w*`0CxOvWsQrAPBX-PNtcy>Exfzr z*inQEw{IT_Wn;re1QsOw}0*2m3_>ag6Q!C4cjkf9aG7qBv0OuSv z`*{4cnjQMA7k0u+c>{gEOy3D0^#+-w$~a|i#~z?dnlsHhU7elT)HVMALgHwo;cCE+ zRbUj>lpO#R@3vxU42be_q9b;T(R{6`YZ{rj)}j`gQ~^&0s4Py(HytxKLxNB=TwJ#~ zK2HAtoPqqp(5xrb{G$!LQ{4Jqly?bABkjlv4z$?soh~U7SQz+#0L(w<3BND&xAMoC zJo)A~iU^^L(hn^ZtyHn0BvX1<=iGcb2oX6^dXE4cU>i6Z>b^F@c4 ze8C^&&Xn-SWeOSfNt1pN#lN8$2dza}zJ=?y$5|MW;YF)HOD~^)HJeWJ{r#1fm78iacg;T2c$1;`7=uA;tD)#&@tG3-M7V_ z#*1$W$GCk}`Aez#`W&BFZgSgBOO`YqnW5kRSBDr9pz&YL zFDYso-;?h&8;L{~uNM&^N`&GzH1AB~j+!J>pQtm0c78-(f6h61i_6l|Y@ zf+!C4+;|PMWHl0ip~>X4YOY?V)<2iNTGezmu&~!|awOBfOOdko>!I^(EqU8H~k>)8Jb11KNlD#&3H!6$^4Bkku4V zoBY*f<>@r*O-e|@wVq)=rSX^Mhy3E*&y{VZ^CyvICAk(;6$2oq;F^8er`2c-JyCG; zV(L=A$sf%rZprdbn%t%Rxnzn*6f#q))a_p0KTc}KQ;%Zn^56h$`X=VU3hHsQfTQAC z)De~D$HpzikGxsF zxZKmjHW@PmuxiJKN9ug*=ieq=>zeh}kpo8xOsdTC0sv6E(Db1LF4M}KycpvWit>J+ zZ{^t&%T^Hb(_bkNcpNBtPVb<+h36an4#>qI4eFAhuxcnYq3Pmj^klSo<%HWDnT(I6>za0r zB(}}0>YzTascf9UA~?+j0N<$Iz5f6VyDn*EHeBdnv1N(to=MO&O9}L(<#{ZO(@4_M z>fdOc#X$$RLD6$%rxAo&Mj$1#=dUCAGs`-+*8IV(BH8LN$U<91ve8K5%~8Kjgm{xo zmIFr1w9mpK^nWM$2hy5hxcUYV znaKJB{&A1Z*D_sR={Iqfc@R+v-+J|^_sySX=a4jA?t>=|!RtSk9zcike_htRY^wzcwze{N%CeH#M`K+?IunX&^M&PrWKKxl4@h#|)1Zu}{f+ z`IA)owAX%x%u>K_dA~`Y2H`7mtE1?IVQQ0y+(+1 zUwSUZ-fK}yO|H{@f6|(JbPx|BF65I zHx3iT@n7*5mHz;eF27X%={o-azdC*yPl(6!Pyf|gUoQP(-EHg5WF|HPsUx>cRMCgxOYDVK_JQCP?o z748R(G9JFJ#A^7T5qZE-L^wMQt@N>NXZIu7*dnHqi|*~1*1-(UX#&N6C~evdNA z3jXCvBLVRcNZ!9k`P9=Z9$pNVT^73-mnX4#!VBs3nDtm~)Ivx?SZ>FNtv$y70OoSO z-N-VF4i-3*$&PvI!&$a?^(bx0wNOxeEK3IILt1|f<#FQSJ3AQZ#cuhhUGnwi!5Wjy zNlMZ)wE*Af%&8mX8bkyR?|$-Ln=Xr?>1;#ty1O!kuHi#af3YN2$K{52%wuK25aZ+)Ivo3Oveo)|Jyy%gaOp5RuR60cG?n;^9=rHvX~i5~pz1PXGUo6vI#^uCFw|^S z)sguutOyk*iU{@xe%Y+lWwP8M>0!4z2-Gj)4S4fk$W*xxP!8Sp%dyNvZp%%SpGao@ zVX(H2Xg<8Bo5ZLb9;^ij`I=?zr;gdIvwOI* z)XJYkeqYTSd0Go;B6;l6XN{vypfw4nhFKi`nkxcr<(l=Yc~4zUR>}}q)2?j?FN_dcJ_a@}8?U zmJIPDODsI-7=nI#b*A0(D=f@5cB8Yzp96W@@}taR`fKTJU7{bnDvQ^C-N^T)Gg~~3 zxj@1;V_KJ*{MDe@G$!6ytra~afg>uk1Frpc{@k(>7iGtelw=#cKK8>}^L5NoL2n=~ zPW(t6dS=TOSjT&A!6;xB&-Bm8OZ_(2^u6i_c$?xuzlPtA44SSjocucRFptqMG~F*= zNqos}eyV0c@DH$xXgZvn_;N;vH(RL&M`zt$Zt_Np=50AOEh$o6K4b z5etst>9{{nj%>7f22rz_7#WLaH~KWoqe*VVl=dVtvaJsv1M;tqU8ur%H)V$&>`v{a zxUrI14Mb`MKFJHQCo~yx9vz(N!)6HHYAimZEXoMtN{8fVPU>oFT;=7HFBJ|=d1N9t zK|_5Wr*hU1M9iQT=E?%lZ@<6!issX^r!2;uHlw^IanBx;0^Hn%6Z)K3u=rI6UL;rB zvCh8?#xYGe;$8{oU(B5%Z!+7P1$jh_qv7~S@vm?_j$NBPNOrnwk2L4Z9#Dr_l{G>b zPN7ezr)m+fr*W9E$HnS$vt|TS=}#s3i&XOVjRu)Dsg%u6Osa7dpxoEPrfu+Qd^or| zd^_92{O6?WzGm|awC*jfBI42*MIHPoM^1y{>6$Lm$aw5I5|0RFeqYjra>rz{@M`}6 zc>PUkIu7Hx8H3~BHx3w%L$k%dHa{q}9bW0}?5`w^U>wAZq=s(PBlY&l!hRgAJJ{$+ z8@z#kE&RoSV9RNA3&Tzbv$((8p=2sjO`jZmZUv z3w{SI$vF_?N_|5W{QL4^$rEcjVWPxAlAmY=G@z#b`Kq2%6700OM275-K=U-7Uh>Y6 z&I^}yP_O$-w*JI*rfjsb1a9-%yhkLqN9($j9$~ou01{hT{{W)K)!0-caibI1jk;z& zuNVfyv(f2gDBV1p&br0dn{T6AZgDIKV`8J?HKxP(soLq_W*Bz0bS$)a?KJmg zKA1^szk?7Dj@`3&l4J@EW&;`7;ND-czSXr6610xdux=-M`vY9C^0y;Vo`qBCn++2G z0LfEZUBOqhx}n~@Ll7&sKxx~l&1OSey8LjJ+urr5t##G5)7~~?bsF>NL32VWPM+Cd zm?gv4&T$@>(Vj-tEp&Z8T?s&BmOdy5*f12|={b~g#xUUxU7e|vPpvHSuaW+#<^g-J zTL~@aM~Jj_tts&D)}yCizouz0=*%*49!}#a6BPOrLGt7pW5sV|1veo;>~|IS`g5Vv zv3KUF)r#DONYS_A zYgS?0SFr7rc19mx5o*(7B<}SO&Dmy-&I@2bWoBouVYPl>?VDX}xSgIrAs5fyP4e6t zh4JJ>fFX6KPPD1aEP8PA@{b&zpLeIn`Zx4^Q1FpvV4yGBs*V1fr#_BcG##!ikphd# zZG64vi0+GDq)TlRx1}nv_^Ni~4QWx?2BEw(si3Scm$25xj`oMAc0d~_K&g5^N$oy5MLTuqrg~~ zouRgd@$F*-M>VRWEl(amic{W|->&^~QivwQlj)3Tq_%QPZyMaj?+freKs~Fn(v{d{ z{{WdW6!ZFw1RDvCmE@D=ZD!ld6R0;9rI_&>*N(n+>bO0;!Ge9ZeBx2;B8k;qUXN9L4(11(q6BkLlXZ04;4JP{{S&N z(`?Ss;W0Zn`i$i4o9h!>d2;UJeNx@-ZKPFai9sat+M=C}M&xGeFya(kOmU-S@fYSj z=7p%=O*fa~Xd!1GyVw;p`ykhGUiqjvd!4q3buXYlCw#I@FkRcmi9e(kwD_t(8y|eh z#|w8FZW&6$=%-0{J8Mw>w)c76t>Ebhe*?DNucUkfA3wTAArtHlkaw}Tb zr{7;5`O(8E27`tV4>#L?^NGKnspU;+bk8tKAkyv>EAr(|N_vsgp{Bz&m}?;2*6KB9 z6!^M6-19f)UW>0^Jn%GoJ}UpGE2V=b67T z?O?aOac5^7fO@M=WbLuo*C^l}8(}jvKjzkv8PctOtgfVWT#edpG>P3ql#QE z%;6D@zD>NE$w5H0V%0oP^v$$Os>vWze=FZUhp5A>>GXe3;&$m!diBcXoJE!mIhQ26 z^Dpx^>ruMd$o`}F5%levVFNPljK(Na<|&=-8cA+B)UhD7N9yaFTyYT_I-?^lYELPT ziYck3YhC{HjD@iQDtYC&ZXhvwl6Kqh$r&V|V4Kl!?xkZUrG3Y4oiK4Ay%R*#Z!MLY zM)*pSz4oV%f1@$;fhQwORV3Hui5;V6GzVgTP&r&N(_zY`ADW)|Bet1Juv1gili^z7 zmLbs}m@V3v1J*uGLqI9gz3colBNpv4**(*AeM8K1n;i<$Tb7W8NaI#x$oMTQ-zPvc z36T2-^1uFY(_Szqm^}Rt)t~?sw%AP7@dx7kGA4AejIuvezvmzS04;PMAZe0n_RvKI z$_1@O7%%G`ew>ym)0i~-B|7e#59SrtrK(7VRfx&;aD)fgc-Eq{AIB(>z1fl8@M|wU zY8qCczFgOqO9-Qp52YJ_c$@Jg_>unrHD)CB1nlHs#oqU?C8WAcjjKa$eJjZtsz)Dz zk6)P0CZc3Y!?T1pv^SeHo1Jl6%l=%q5;Tr#9)vANQhYjXhfjBHxpHkxcglZ~de)Z= z*1Gh8eKlr?q4+}|e*XY0+whsXxM}<|Ws+O|QtFz$y}#+3_NBA)WJUlo_#cO-j@$O* zmt)djHo0mI?5%D2duyZWAv7pBu{hhfwl$-^HB#MV|`X*8Z= zZzO0ozEIF+3@xUTNZeAq2K4Dp)amzSgVoK)#5e^6@5>slqi+lOpHPjTQPkVhg&wWO zfRR9aNA~4eBnIxw3=MAZyU)tabIupn>2_pU%&c0hc`o%|g!KpL!G}@8>-8E!PS0ub z=bs0WlHbaDjjV#|#wCg(RPig~ed=>CYCKJgK*VtDn*Ln*zQFCOyZ z`^~q}4^mQ)`h)gEZ$&?O$!X6HC1}IVltC7)X%DX@;EkC; zs8J;=^2a7V9!>a97dM#sssguy^H71JF|VwIjv}fu+yHfN$N*pE&o^9a5W}cET?l4~ zZlzSyugj;7Y>pV!x|wD+@o&t%a{FJNTa7X%g4#CV+=VMmfgdiJfhd_DOOzwTE$4Qc zhL`1?K1+>Tg!j(DHWfSWK7pAh4Mvo0c>pGq*xv3r{@CXK>_q z`YVPpwu>vYn@Db?6Tup_$4)=9@S4+l(0gQ~j0STft0vPdu03x?c*)+K>A4#Yl>BhU zG{j{g>>6j5;GlH?m0ndHj!uwex?SciMlB9&A6$-7ObM@DtM`l*ZL{=?Qd^UMbtGH^ z!d|^A@Ewl*GBScV#P<)B{{TBYs+z6p$K{|nNJ`8=uU@0@8BC*0OoWXG$k%>ax$>r= zEG-)b=8_tXz7tRfi18V2JeKQbI3;wC^6#6|{7-9ht`ck{VH1P8(TyrsuVdKt%dukP zEajL)*;oA4{JVm{$>vQV`RUga5T!utO3)GQOvle34a40 zopO^ZW0z!t2reFF;Jkh^Xhj>?5tkf*IHwt&?^E)1+?sBuYpE5Wf@N?Nd{hL|qNgv? z<)dwRAZh#OqqFD^$8HwSZ5szC*b|wVk3i<>hyu&UwN{(+AWyBMNV-j=-jV<) zvNF=7)OI+-9d2A~lkrcbid}hn;5sBOR^g;lq;)E3*D?-fj{t?9Yrem=f*UCangx|w zMkJD|yU+}*%DK644=3|ikS%=hjXV(6216wZ?La>Y`{fz1gUJw(>ipIG+43a*T+|!% z5aV+jGnJ2^q3KHIs(5L;iY1C$esJn>TE(GxhB7@eWHOE0mx<_p^O4COK5LF<0q9ys zn5{g}rR^>XT|W{dB7}jl-v&5vwB(VOG~NwjIi*+waghl;`WC0T+pyn!%Z6_Djv{#{ zx4NuWku;)SQgQg!oi^#ej#_G5nmCCyCz0wJyt6rVqJYE%UFo+>s0wn1(WXVD`QrOT zURHBU>WVtiwjHV|zSQZNG1T-94rrRE*?*M(0P~PiO=Omu?1=-8jPbM^t%rhP!@;Pe6DVSYEaL~ zg$q!4Q1{#0G3Sn)cxB@^(dW9ylJ4~RS5wnei+PP^PL-#&;QiT+lFOe054qspfATsi zz5TjzXXti5{qi{W=HHOp<(*#M=TCp%AyRo2J|m#{WamERj4PU1b`N&43S5vFD8a+x{@eq%9S}$1TX`4nn3c|N+gaZQoDj{zqzho z2_B7kGCr~VvHZ(7wkOJ(w8dg$#Zic*YfuRA%JN|nXMmB-hk5JDzoT!ONO*{U-Dhf0 z?pMCl@yerwz_(iR^uBET<@~bL zG*?}1IT&Q1Vgczv>?zkbnKaxxx@l^R_74t+T1&NyOx6d&wTdPpqz|Jo2xwf~R8Q^x7U1)2`Xg>Z8FYp}{dI)8I{4K$c0~OB5zJ0R(_{>-c3{B%_Xw z>~%d$LCA9J)b*(QvbOmSAo?5ftMeS`H)xlBpg|c*f+#y?Om!!di#Bz)5LnPF{G2+z=-e?lgwGmZXtG`{TU!8j8QiTSO5{}O| z^AuBCL-nho(ln=nQ}&B@H1Y7RV~w1Ts4z`7d$?y|YGex?Ndmhcqb!W6qFzr(w*2hY ztqeMA%;7Da83}HR4QapK(r%^l9G7-eE00Fl9(+){^yx5*7 ziwrXF^49X{ZZ&Nre(8514$8IeK1c7y8gmW9UL53|-&KFkDgJa`{#~NPKFp!;&PpN-BZ!ByynY_{ptR)+Rfl|#tzzzDInJrix zE?r*l#s2`zA23|`vr|g(g2ExlikgvHbp9Ek$(MH7Vg&B>ugG62pEGJx$?Cj%O`HYf zq1vEPKnKMC0GY__oQ zwy&wr`^Z>@fD$UFu^uA7PEnH;mdrT}dA%RV6!WK;EVMIo#*RT#-ka0LxptFFzRRgR zVfB~hHzmA&w%OIu$Gh{>^9#+*B(G^2l~pxBb`4Mgr93vx zH0~wO67gOmbE!Y2Dlzm#YF(S5q3Qtub@0o0$qiXC_cF~N^Uu}t%zj_gkV$=}yGv@| zRJ~0=Bj$I?vP*#EgE5?Z*H;e>m40X2 zN2uCEsY)A=0;aoAfL4R)IjtJ0N>o{lJW%2Z@8ngkp{i+m&Wj>a!Z^KVkn9u+iUaaL zeKLCNb~bF#SUaa*lA&&Vw{d5AB1La?sj5uQDnbGQ+<(DlJV}o>o-z%GzG<3mh4-AL z(zL0<=<9N=7owaL=W7KT)d#D*oNpB=- z2VI)vaQkrZL2;JcS>J!%e{_$A9URctD-m9ELB4{{TKb(EeuE zuTxEywy?-lDjuL#pi|~@t{OYIoLo}3&ssz)HN<67fm@AhN}aOL5M$jLY9`;MpOC+l z)_zO+r{>@0P!{%~t7R0ZNuZ@1dZQkT+=2>}OJG~4DgC-TlNt|mO0t^SQam7h-Yjg+X- z+%a#fq@NH7)cAnuUZ4};dT)=00JBJr9ysp%&&VEovehl^>@MPhDW{B08h`_uiqM0- zeU4#HTey^Q>=R!$c{fP&zMl4%v8*>dThet}GWZ>bPj76D@OY-2Zx}`Lhn6*ML-O-g zZ7TluS*?V|CWv&Zp2xq2TaWj96io5*eG_%&``1R*wHRcouPEXDqfxbJcCWo~WYlvsI;*F|+e>|vn8xh`0f5;*^EHL_kC(5!jpbb)aTWE_%K(HiUMorhNi{oolhdU$6l%8I?#${Z zGfd;lcfNMC(XBkY=36VzPSIjZcvuhujrtw7`DGZvx*)p^bj-2QdK7jNq7SSgSsI1i zsCpl>^3C=fMz?rTA~IXtwcj^tntzp=%g7#_depFRjz$x*bovPSDXsCl#VsBQP$ihu|9W*oH#isIL#sJv_P`(1w~>sIlY7{-&UTtg*) zdce@v#DmZszg}YNCQk0x77rEocDwn4o@I?R-zq?CY+V%G@f;kGyAHkk_;~lrfisPV z3|>8h35QaBWrmlfOZ96APYb(%^bE_fL_e(d>DK_DHs;j;WhyVZKQ6QgJg=d{eWcqe zM=XgSs*~h0{Y74BxcDc18Q@ zb04;(VH@c0yDKrAti6|2jdgoFjTzUGC}=78eIq%kM9ggTc`^x#FUSwgzs#F|%D*#R zc}iw!S`p8ZH3Ap-_?9)Vgx2RB0;iJ&GZA0?6h;rMotv+3SfXwmPd_v@y zYkU(!chUOhucP_HK(z9#%9e23u%|^*5NsFyU-PC@s=*LAL%hYU6N}~_&09T9H4Q6D zv${#8w~!)SDf>~%$|z_kK^55b?M&5ViQ*15c!zh__d;DV3tK4JnPNpk5YUegZS$?t zM}{=%b%tD9JQx0QQr|^gFHN_*<@#QE8KN!GP;B2x``Vj*lbVj#kutFDC8Prwkz&7> zUTnG0e6+f)yssdDG-WHl!B3xK{kZ98J{Jxd#y#G%`DgzCIYH&mJIN-F3oYbKJxHVg z2JC)+=ifFOeNRa_=RXu}1No!*8RgH+c~6*puPCwBgDZxEYM*)@qi+iM^f?VyiaEZX zZam;76}+@>EGGW|3~Ruf*h0rz*VLdJpL%cd%^=2cON6*XMr3wMyyc@s$t_uvjL*mt zwIPi=j|x`~OarS%TwEIkNW7n_eM$@ads5bMRb-x^uR4wUV9TaB^c$P=4DJj}%A1xyXe*Bn{{Vr;TeHU_4rpt1)6g}l z#`lrhEqS;nuf?}>LU%ns9Mfv_+Uxlh*NXzEE3mD4igfqQHeHPu z7mve}=npG-)UCXekbbbS7%k&s39jEC&uxIik1q*#5!75+mzOn5JuYOQUbk!esX>vD zYzJ{#k(c1sRQGMuaDipzo?Y^^3#sZpb<}-0B9Yns0YMrr#2~M5JbLCtWhu_bCcL@8 zPh!&U{QWwvn!i-gl8R(tK`Y#k^V>FfyFPi(Eu32g zSsRd{YE%mK12#GE!%Qf1VFgO5{B9MNUXd$~d!LuaV@ zb4%3qDNJzlxHBET?+nDtJ|VMDfyOMpu=1DWiME7aUBs_*CiHLesq-L;b1nSlY-P5% zbo9OfP^5n`tq;#^vUo;8Zb*rVp!zDq^7qXCVAHL&trjuL=p!>Ufq5l5kWW^@fSYo^ zAvlXH8vg)5^9GTq&E@T8+z1&#C`ZCtwFaOcaw+_BI{i_`HgtO3B#z~af6Bbm{{Y{k zr!I%>e=o~5pO`)U8fiO_=7_n_^yNv(wt=^sTQis!u^71kpj>v^}yI=SOzA};yA-7pk-zRl23p%{Btu=lh6WTF%tI=&QB~^%%7v<{p3iah%}{0 zQWfdizp<3r*6HDZZ&d`4Tnz+MV;Rzeqwpv?PO~}s|~$&Bmu~E=zHudR5_qVZJ&2VG7G9v=RVrl^%18?J$Wr>Tho`6C;LHA9^lWlIL4{;wWbY5%_ ziWMWRXh9V5+uJtyu~4@fQwN*Jyy4`tWf;|Lr{`?vidD7>du`CE%o)^*VSpXW);}aa zNkd@sh&fwxC5c_DvHe)$!^UVgM;W)bdAsuF)6JT9t7AcS6`6Sfu|LDxBbT#;#fNu} zQLW!AByFZzTzOMlwORO5B>;44_VN3MY9l`j(p@Heax=CoX&jn4Y0@N)5Tp&p!@o~% z-r1L@khU6_O0ArED0LmFPa4!i)e8UQD;Jdwl*`w$g0P^}zl6kKL50W~l&GK|PIg13r(4 zH&=46mb}YvVFT$F!3w$L;Xn+`y{bh)6#aC}p3BYoa_hAi%h4|NydU#m8`F@ulIw@0kLZ##b}`E%Efb+SKM6f6xvt(hJagZL$nZAect7S>{NnUBT6ErP)8-Yz~#7nrnHzp^0_L5(=bz?)PUAU4Onwpvu*ieI+ zy_cjgpBG1Wf_z^~H}e#;X?NdMv1SJ1HE<5$y6i{Dbj`>j#VS3-*#rhQUqz!ia{`x^E$YDh zJ^&7zoY!XTTja~L_0Yz5O!celh^?RNHmxtJgeL%g9}l4BIPB^F01$dSy{Q2mo++y8 zN6J2Y`;Q_5=OGZos7yLAQjo$Elh>vd}xNYomM3EXxa z#Wo#s-9*3^;p#EVqIs&p9=T|A>6eeI3kPaeg!DfxymLu7-t2K^BW68e`D3Vgp6~h@^IOORyxkjIAO*GFaOt!IEYNMQO z)k!-@dXj0|@XmuIxP3wAbL+!0PbKMkRg`B-W{C=!C6UUPW)!IBP3!biDVD4l(;=AT z+&wGF`elclBVR3R!cVKs5fL~%X*6IOSKJ?-M-dYgTO*gFFV(!bx*WE*7OTafw-LQ} z6zRxztp?_s_sg?scy|mn8Am6ZXdjtL40Bv+s>oot_~k8LRUp*#BQfIvJ)KsfCL6xO z@_(3N^ELT8M;NS%t3&}OayoC@W4Gg(WRk5@8Xu2=|!Z8Mu8V!^j9-<~w02Tgz}`SvkrWjfW67{CCX` zwlyu3QF*tReAtb3ro%1Jn&H*N$fl%JQBGvwoQd7U%NZEhdS8_Oxv9kVwy>qf;KUnl zME0*ZOEEEs)vDD$LH-$jC`K&hBTuyd04IMe&Y7c)b6Fg&ZYt`mwGppc z5BAUS&F+s)Lx`YZ88>4;m{xCZs@h(}sU#uIynuizBmi&teyq1Wa}FMSMm(M)=D+#H z>klw1>e@{2Z*osRPxeRC+vS)t!9v45J@R_b1>_e zk4LB4-yMI>Z%+3Y_SaT%ih4jZ1*z-(KUQXG2M$Mnml+Y+`NI0KV#vIdiV(!qQ{~e- zcuLOBw}*&sn|Xg-yiGlx?^jdf7>kIE{k*K<)Ov{MPBRl3liZBZp_mdN!pd ziF&3`78jziBD58*-Wkw>2;Jv35tkK*-M^HY z%LF)u2fpjt0^3J(ZFuVOOA7@@-*PGkvH9k!A>oyWf2PNAsXspa?WJ32mro1TB#*Y; z8*}}iJk7(aH0pIaa0|z^pEjkPzoTH=F{K47PV}!#fW&eeE%2DcHhFdCr!CdU6d@>E ze|*?R05}rJWR8a6ZUUstp;2gRGDM;%8_6JwqBrAKpyN*(9&fjg zV@!u13ru6h$%+0*5t=wupc!^$TWq9hmKm(u|IqWSkl^QRt^;`Wmzk9GJwnb|O^De=jYeUUFWLE)5t|Q>gp~h_sG1(=uwz@@GB60Ckm?YOW5wIOq?#t{n_$=XRZqLTVu`~m(e1wQ(AeG5^ zXKfs_%mX@onhu^m*-YTu2>`>jPdp~2Znipm0?Y7(UbXPec3y67IS7UWs@hyx!E+6) z+%B%!ckH_jlzfI+#$p;|JVMB{y)R7ij+B#LxOu`;lXWajNhienQzduFlyJly-f^pb zVOjZxL#11|;~NA7Z}D%?kC$9%^<$}?)DSmXRm>I==o&+xuV0^1YmLVk_S(I+KQq|n znKJ>iR+max_KTwrC)_GWDVZ8DftzwEQ?dKHWw^v-&nFfna$MZ`qB(6{52fk^J*(nt zw@+-ULyMD%B#X~l3|ee^Tp$Qae+na0u|Yz9$>!?O)59x0n3U`bU){xPgeOo*|V%8}zQ(d=0c_ z9nVbGtgk%X^-WDsdhx`vNk*j#sHh+8zgLbK`L@6UDH)^rI_J*XbggnoQ#=ew53W@=-%SJ(M5(X!Cjq49JuDN#>o>}C$ zWKkVDC?{|`pKP~^+9xY}&aLNm({x)2Y|u3Dg_1>Yw2F&bQ*E}|xlG0LXB@m7lJ7A2 z^54(8Hw$%WLndUR*^56Mbns1fhS!|77AWEexy(|8EWujy- z95rv7yw&-Mb*?jAT(O2GtfDFa3j^Ef@ymEX-KIK%7_F+$tJYmlkzJV-o+U}?^6!NC zFrTk^KEM36)O5c#d4EmQN~f=H3qta3v5amu{a^68M6en2Yy8j~1^V~pU9Xp}w0(Bk zL^fKmDNes1RSQu{S2AaehKyPGjTDPo{J(7u^ZhO`l95%Z9}qpp<0><*Ze~h5BQ10v zt%bN$RdRqYAA|+^d!FYd2^pdoghLX#)1DjU5~k|xjVDjC-32!3`m)d({89?8y31z* zG+=MXkf5zA+x-6kUQEW6OM5{^XSexirxzi5#+9K@EHK^O zu&j=qI#aDO&KhCO=!epj(a0%@aw zj!zBq&y=j>hFwchqD&j@5GX}z39Wk$-Z_L14(?>257hV%&Y>eWGikII>mwClDgdu) z)CzBz16Y5B$Cj2eOgw}6%^kg!r;~ih16###*Cu9BQ?|g00Z)Iqd~X$(>S&1Yxjh$D zUoQF5B)#(U!Y+MUGSF@he;N+kWpcneHs#JT4W3W0c~U(#`E86JzMR%M6cbu)uoX4T zX^Lftis25^w219%s9v`S!6{HcHKh%ElkJvbC6-8V4d0+2mv^_`Xt&a)xprL!22K%* zeUZ|mxHRed^Lc|7*61}kr8BoD*X?g>^=Hxaap~KFThjxMPH zA3~BvBiE4{D54ATFR;pt>720ez8k#qoH~T>b$GnyxGu!D^xnJsZ#g;dLeqer2 zTI*K#H`XKx;`=BC2_$V#?aF70`7Rvy&GH?_hpPEPXQqu=DeZ@wZge}tHk~B{8n-RLHR<>Eu2eldn2%P^tbZxL zHSIMw8Xly>ll*Gz-w(_0{u!Hy@$BoRgTv(dzR+81kX%{YH>)&ZT?IR1n->o^10Jl( zTrZov<>Z^`BYT-4aFMX0Q0_pc!>0cLJjIxIm~!65^N;2i<*e5bLvX9fnF%2_BW{QF z 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ΜqwsjtM80f0apOJ!#gE#6A~d3jjQ6 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
    D0#%q;W=y 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 YvxAf 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

    ~7WK^ie$D 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�gSPW{P7Fk=~`CClT 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

    v;BhALilt5X1arwRf063_B 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 delta 123474 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', gz.read(4)) + if not label: + n_rows = struct.unpack('>I', gz.read(4))[0] + n_cols = struct.unpack('>I', gz.read(4))[0] + res = np.frombuffer(gz.read(n_items[0] * n_rows * n_cols), dtype=np.uint8) + res = res.reshape(n_items[0], n_rows * n_cols) + else: + res = np.frombuffer(gz.read(n_items[0]), dtype=np.uint8) + res = res.reshape(n_items[0], 1) + return res + + +# one-hot encode a 1-D array +def one_hot_encode(array, num_of_classes): + return np.eye(num_of_classes)[array.reshape(-1)] diff --git a/how-to-use-azureml/training/logging-api/logging-api.ipynb b/how-to-use-azureml/training/logging-api/logging-api.ipynb index 4d9401ae..d483ab75 100644 --- a/how-to-use-azureml/training/logging-api/logging-api.ipynb +++ b/how-to-use-azureml/training/logging-api/logging-api.ipynb @@ -100,7 +100,7 @@ "\n", "# Check core SDK version number\n", "\n", - "print(\"This notebook was created using SDK version 1.0.48\r\n, you are currently running version\", azureml.core.VERSION)" + "print(\"This notebook was created using SDK version 1.0.53, you are currently running version\", azureml.core.VERSION)" ] }, { diff --git a/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train-hyperparameter-tune-deploy-with-sklearn.ipynb b/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train-hyperparameter-tune-deploy-with-sklearn.ipynb index cb7fe1fb..047bd6d2 100644 --- a/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train-hyperparameter-tune-deploy-with-sklearn.ipynb +++ b/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train-hyperparameter-tune-deploy-with-sklearn.ipynb @@ -120,19 +120,42 @@ "As with other Azure services, there are limits on certain resources (e.g. AmlCompute) associated with the Azure Machine Learning service. Please read [this article](https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-manage-quotas) on the default limits and how to request more quota." ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If we could not find the cluster with the given name, then we will create a new cluster here. We will create an `AmlCompute` cluster of `STANDARD_D2_V2` CPU VMs. This process is broken down into 3 steps:\n", + "1. create the configuration (this step is local and only takes a second)\n", + "2. create the cluster (this step will take about **20 seconds**)\n", + "3. provision the VMs to bring the cluster to the initial size (of 1 in this case). This step will take about **3-5 minutes** and is providing only sparse output in the process. Please make sure to wait until the call returns before moving to the next cell" + ] + }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "from azureml.core.compute import ComputeTarget\n", + "from azureml.core.compute import ComputeTarget, AmlCompute\n", + "from azureml.core.compute_target import ComputeTargetException\n", "\n", "# choose a name for your cluster\n", "cluster_name = \"cpu-cluster\"\n", "\n", - "compute_target = ComputeTarget(workspace=ws, name=cluster_name)\n", - "print('Found existing compute target.')\n", + "try:\n", + " compute_target = ComputeTarget(workspace=ws, name=cluster_name)\n", + " print('Found existing compute target')\n", + "except ComputeTargetException:\n", + " print('Creating a new compute target...')\n", + " compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2', \n", + " max_nodes=4)\n", + "\n", + " # create the cluster\n", + " compute_target = ComputeTarget.create(ws, cluster_name, compute_config)\n", + "\n", + " # can poll for a minimum number of nodes and for a specific timeout. \n", + " # if no min node count is provided it uses the scale settings for the cluster\n", + " compute_target.wait_for_completion(show_output=True, min_node_count=None, timeout_in_minutes=20)\n", "\n", "# use get_status() to get a detailed status for the current cluster. \n", "print(compute_target.get_status().serialize())" @@ -142,7 +165,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The above code retrieves an existing CPU compute target. Scikit-learn does not support GPU computing." + "The above code retrieves a CPU compute target. Scikit-learn does not support GPU computing." ] }, { @@ -289,7 +312,7 @@ " script_params=script_params,\n", " compute_target=compute_target,\n", " entry_script='train_iris.py',\n", - " pip_packages=['joblib']\n", + " pip_packages=['joblib==0.13.2']\n", " )" ] }, @@ -507,7 +530,7 @@ "metadata": {}, "outputs": [], "source": [ - "model = best_run.register_model(model_name='sklearn-iris', model_path='model.joblib')" + "model = best_run.register_model(model_name='sklearn-iris', model_path='outputs/model.joblib')" ] } ], diff --git a/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train_iris.py b/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train_iris.py index e41e6d26..bc9099d8 100644 --- a/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train_iris.py +++ b/how-to-use-azureml/training/train-hyperparameter-tune-deploy-with-sklearn/train_iris.py @@ -1,6 +1,7 @@ # Modified from https://www.geeksforgeeks.org/multiclass-classification-using-scikit-learn/ import argparse +import os # importing necessary libraries import numpy as np @@ -50,8 +51,9 @@ def main(): cm = confusion_matrix(y_test, svm_predictions) print(cm) - # save model - joblib.dump(svm_model_linear, 'model.joblib') + os.makedirs('outputs', exist_ok=True) + # files saved in the "outputs" folder are automatically uploaded into run history + joblib.dump(svm_model_linear, 'outputs/model.joblib') if __name__ == '__main__': diff --git a/setup-environment/configuration.ipynb b/setup-environment/configuration.ipynb index a197eafd..4e0457b9 100644 --- a/setup-environment/configuration.ipynb +++ b/setup-environment/configuration.ipynb @@ -102,7 +102,7 @@ "source": [ "import azureml.core\n", "\n", - "print(\"This notebook was created using version 1.0.48\r\n of the Azure ML SDK\")\n", + "print(\"This notebook was created using version 1.0.53 of the Azure ML SDK\")\n", "print(\"You are currently using version\", azureml.core.VERSION, \"of the Azure ML SDK\")" ] }, diff --git a/tutorials/tutorial-1st-experiment-sdk-train.ipynb b/tutorials/tutorial-1st-experiment-sdk-train.ipynb index 8ef7f45e..a838b767 100644 --- a/tutorials/tutorial-1st-experiment-sdk-train.ipynb +++ b/tutorials/tutorial-1st-experiment-sdk-train.ipynb @@ -1,385 +1,385 @@ { - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/tutorial-1st-experiment-sdk-train.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Tutorial: Train your first model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This tutorial is **part two of a two-part tutorial series**. In the previous tutorial, you created a workspace and chose a development environment. In this tutorial, you learn the foundational design patterns in Azure Machine Learning service, and train a simple scikit-learn model based on the diabetes data set. After completing this tutorial, you will have the practical knowledge of the SDK to scale up to developing more-complex experiments and workflows. \n", - "\n", - "In this tutorial, you learn the following tasks:\n", - "\n", - "> * Connect your workspace and create an experiment \n", - "> * Load data and train a scikit-learn model\n", - "> * View training results in the portal\n", - "> * Retrieve the best model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prerequisites\n", - "\n", - "The only prerequisite is to run the previous tutorial, Setup environment and workspace." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Connect workspace and create experiment" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Import the `Workspace` class, and load your subscription information from the file `config.json` using the function `from_config().` This looks for the JSON file in the current directory by default, but you can also specify a path parameter to point to the file using `from_config(path=\"your/file/path\")`. If you are running this notebook in a cloud notebook server in your workspace, the file is automatically in the root directory.\n", - "\n", - "If the following code asks for additional authentication, simply paste the link in a browser and enter the authentication token." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Workspace\n", - "ws = Workspace.from_config()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now create an experiment in your workspace. An experiment is another foundational cloud resource that represents a collection of trials (individual model runs). In this tutorial you use the experiment to create runs and track your model training in the Azure Portal. Parameters include your workspace reference, and a string name for the experiment." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Experiment\n", - "experiment = Experiment(workspace=ws, name=\"diabetes-experiment\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load data and prepare for training" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For this tutorial, you use the diabetes data set, which is a pre-normalized data set included in scikit-learn. This data set uses features like age, gender, and BMI to predict diabetes disease progression. Load the data from the `load_diabetes()` static function, and split it into training and test sets using `train_test_split()`. This function segregates the data so the model has unseen data to use for testing following training." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.datasets import load_diabetes\n", - "from sklearn.model_selection import train_test_split\n", - "\n", - "X, y = load_diabetes(return_X_y = True)\n", - "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=66)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Training a simple scikit-learn model can easily be done locally for small-scale training, but when training many iterations with dozens of different feature permutations and hyperparameter settings, it is easy to lose track of what models you've trained and how you trained them. The following design pattern shows how to leverage the SDK to easily keep track of your training in the cloud.\n", - "\n", - "Build a script that trains ridge models in a loop through different hyperparameter alpha values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.linear_model import Ridge\n", - "from sklearn.metrics import mean_squared_error\n", - "from sklearn.externals import joblib\n", - "import math\n", - "\n", - "alphas = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]\n", - "\n", - "for alpha in alphas:\n", - " run = experiment.start_logging()\n", - " run.log(\"alpha_value\", alpha)\n", - " \n", - " model = Ridge(alpha=alpha)\n", - " model.fit(X=X_train, y=y_train)\n", - " y_pred = model.predict(X=X_test)\n", - " rmse = math.sqrt(mean_squared_error(y_true=y_test, y_pred=y_pred))\n", - " run.log(\"rmse\", rmse)\n", - " \n", - " model_name = \"model_alpha_\" + str(alpha) + \".pkl\"\n", - " filename = \"outputs/\" + model_name\n", - " \n", - " joblib.dump(value=model, filename=filename)\n", - " run.upload_file(name=model_name, path_or_stream=filename)\n", - " run.complete()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The above code accomplishes the following:\n", - "\n", - "1. For each alpha hyperparameter value in the `alphas` array, a new run is created within the experiment. The alpha value is logged to differentiate between each run.\n", - "1. In each run, a Ridge model is instantiated, trained, and used to run predictions. The root-mean-squared-error is calculated for the actual versus predicted values, and then logged to the run. At this point the run has metadata attached for both the alpha value and the rmse accuracy.\n", - "1. Next, the model for each run is serialized and uploaded to the run. This allows you to download the model file from the run in the portal.\n", - "1. At the end of each iteration the run is completed by calling `run.complete()`.\n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "After the training has completed, call the `experiment` variable to fetch a link to the experiment in the portal." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "experiment" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## View training results in portal" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Following the **Link to Azure Portal** takes you to the main experiment page. Here you see all the individual runs in the experiment. Any custom-logged values (`alpha_value` and `rmse`, in this case) become fields for each run, and also become available for the charts and tiles at the top of the experiment page. To add a logged metric to a chart or tile, hover over it, click the edit button, and find your custom-logged metric.\n", - "\n", - "When training models at scale over hundreds and thousands of runs, this page makes it easy to see every model you trained, specifically how they were trained, and how your unique metrics have changed over time." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Main Experiment page in Portal](imgs/experiment_main.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Clicking on a run number link in the `RUN NUMBER` column takes you to the page for each individual run. The default tab **Details** shows you more-detailed information on each run. Navigate to the **Outputs** tab, and you see the `.pkl` file for the model that was uploaded to the run during each training iteration. Here you can download the model file, rather than having to retrain it manually." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Run details page in Portal](imgs/model_download.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Get the best model" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In addition to being able to download model files from the experiment in the portal, you can also download them programmatically. The following code iterates through each run in the experiment, and accesses both the logged run metrics and the run details (which contains the run_id). This keeps track of the best run, in this case the run with the lowest root-mean-squared-error." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "minimum_rmse_runid = None\n", - "minimum_rmse = None\n", - "\n", - "for run in experiment.get_runs():\n", - " run_metrics = run.get_metrics()\n", - " run_details = run.get_details()\n", - " # each logged metric becomes a key in this returned dict\n", - " run_rmse = run_metrics[\"rmse\"]\n", - " run_id = run_details[\"runId\"]\n", - " \n", - " if minimum_rmse is None:\n", - " minimum_rmse = run_rmse\n", - " minimum_rmse_runid = run_id\n", - " else:\n", - " if run_rmse < minimum_rmse:\n", - " minimum_rmse = run_rmse\n", - " minimum_rmse_runid = run_id\n", - "\n", - "print(\"Best run_id: \" + minimum_rmse_runid)\n", - "print(\"Best run_id rmse: \" + str(minimum_rmse)) " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Use the best run id to fetch the individual run using the `Run` constructor along with the experiment object. Then call `get_file_names()` to see all the files available for download from this run. In this case, you only uploaded one file for each run during training." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Run\n", - "best_run = Run(experiment=experiment, run_id=minimum_rmse_runid)\n", - "print(best_run.get_file_names())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Call `download()` on the run object, specifying the model file name to download. By default this function downloads to the current directory." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "best_run.download_file(name=\"model_alpha_0.1.pkl\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Clean up resources\n", - "\n", - "Do not complete this section if you plan on running other Azure Machine Learning service tutorials.\n", - "\n", - "### Stop the notebook VM\n", - "\n", - "If you used a cloud notebook server, stop the VM when you are not using it to reduce cost.\n", - "\n", - "1. In your workspace, select **Notebook VMs**.\n", - "\n", - "1. From the list, select the VM.\n", - "\n", - "1. Select **Stop**.\n", - "\n", - "1. When you're ready to use the server again, select **Start**.\n", - "\n", - "### Delete everything\n", - "\n", - "If you don't plan to use the resources you created, delete them, so you don't incur any charges:\n", - "\n", - "1. In the Azure portal, select **Resource groups** on the far left.\n", - "\n", - "1. From the list, select the resource group you created.\n", - "\n", - "1. Select **Delete resource group**.\n", - "\n", - "1. Enter the resource group name. Then select **Delete**.\n", - "\n", - "You can also keep the resource group but delete a single workspace. Display the workspace properties and select **Delete**." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Next steps\n", - "\n", - "In this tutorial, you did the following tasks:\n", - "\n", - "> * Connected your workspace and created an experiment\n", - "> * Loaded data and trained scikit-learn models\n", - "> * Viewed training results in the portal and retrieved models\n", - "\n", - "[Deploy your model](https://docs.microsoft.com/azure/machine-learning/service/tutorial-deploy-models-with-aml) with Azure Machine Learning.\n", - "Learn how to develop [automated machine learning](https://docs.microsoft.com/azure/machine-learning/service/tutorial-auto-train-models) experiments." - ] - } - ], - "metadata": { - "authors": [ - { - "name": "trbye" - } + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/tutorial-1st-experiment-sdk-train.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Tutorial: Train your first model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This tutorial is **part two of a two-part tutorial series**. In the previous tutorial, you created a workspace and chose a development environment. In this tutorial, you learn the foundational design patterns in Azure Machine Learning service, and train a simple scikit-learn model based on the diabetes data set. After completing this tutorial, you will have the practical knowledge of the SDK to scale up to developing more-complex experiments and workflows. \n", + "\n", + "In this tutorial, you learn the following tasks:\n", + "\n", + "> * Connect your workspace and create an experiment \n", + "> * Load data and train a scikit-learn model\n", + "> * View training results in the portal\n", + "> * Retrieve the best model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prerequisites\n", + "\n", + "The only prerequisite is to run the previous tutorial, Setup environment and workspace." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Connect workspace and create experiment" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Import the `Workspace` class, and load your subscription information from the file `config.json` using the function `from_config().` This looks for the JSON file in the current directory by default, but you can also specify a path parameter to point to the file using `from_config(path=\"your/file/path\")`. If you are running this notebook in a cloud notebook server in your workspace, the file is automatically in the root directory.\n", + "\n", + "If the following code asks for additional authentication, simply paste the link in a browser and enter the authentication token." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Workspace\n", + "ws = Workspace.from_config()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now create an experiment in your workspace. An experiment is another foundational cloud resource that represents a collection of trials (individual model runs). In this tutorial you use the experiment to create runs and track your model training in the Azure Portal. Parameters include your workspace reference, and a string name for the experiment." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Experiment\n", + "experiment = Experiment(workspace=ws, name=\"diabetes-experiment\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load data and prepare for training" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For this tutorial, you use the diabetes data set, which is a pre-normalized data set included in scikit-learn. This data set uses features like age, gender, and BMI to predict diabetes disease progression. Load the data from the `load_diabetes()` static function, and split it into training and test sets using `train_test_split()`. This function segregates the data so the model has unseen data to use for testing following training." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.datasets import load_diabetes\n", + "from sklearn.model_selection import train_test_split\n", + "\n", + "X, y = load_diabetes(return_X_y = True)\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=66)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train a model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Training a simple scikit-learn model can easily be done locally for small-scale training, but when training many iterations with dozens of different feature permutations and hyperparameter settings, it is easy to lose track of what models you've trained and how you trained them. The following design pattern shows how to leverage the SDK to easily keep track of your training in the cloud.\n", + "\n", + "Build a script that trains ridge models in a loop through different hyperparameter alpha values." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.linear_model import Ridge\n", + "from sklearn.metrics import mean_squared_error\n", + "from sklearn.externals import joblib\n", + "import math\n", + "\n", + "alphas = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]\n", + "\n", + "for alpha in alphas:\n", + " run = experiment.start_logging()\n", + " run.log(\"alpha_value\", alpha)\n", + " \n", + " model = Ridge(alpha=alpha)\n", + " model.fit(X=X_train, y=y_train)\n", + " y_pred = model.predict(X=X_test)\n", + " rmse = math.sqrt(mean_squared_error(y_true=y_test, y_pred=y_pred))\n", + " run.log(\"rmse\", rmse)\n", + " \n", + " model_name = \"model_alpha_\" + str(alpha) + \".pkl\"\n", + " filename = \"outputs/\" + model_name\n", + " \n", + " joblib.dump(value=model, filename=filename)\n", + " run.upload_file(name=model_name, path_or_stream=filename)\n", + " run.complete()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The above code accomplishes the following:\n", + "\n", + "1. For each alpha hyperparameter value in the `alphas` array, a new run is created within the experiment. The alpha value is logged to differentiate between each run.\n", + "1. In each run, a Ridge model is instantiated, trained, and used to run predictions. The root-mean-squared-error is calculated for the actual versus predicted values, and then logged to the run. At this point the run has metadata attached for both the alpha value and the rmse accuracy.\n", + "1. Next, the model for each run is serialized and uploaded to the run. This allows you to download the model file from the run in the portal.\n", + "1. At the end of each iteration the run is completed by calling `run.complete()`.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "After the training has completed, call the `experiment` variable to fetch a link to the experiment in the portal." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "experiment" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## View training results in portal" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Following the **Link to Azure Portal** takes you to the main experiment page. Here you see all the individual runs in the experiment. Any custom-logged values (`alpha_value` and `rmse`, in this case) become fields for each run, and also become available for the charts and tiles at the top of the experiment page. To add a logged metric to a chart or tile, hover over it, click the edit button, and find your custom-logged metric.\n", + "\n", + "When training models at scale over hundreds and thousands of runs, this page makes it easy to see every model you trained, specifically how they were trained, and how your unique metrics have changed over time." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Main Experiment page in Portal](imgs/experiment_main.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Clicking on a run number link in the `RUN NUMBER` column takes you to the page for each individual run. The default tab **Details** shows you more-detailed information on each run. Navigate to the **Outputs** tab, and you see the `.pkl` file for the model that was uploaded to the run during each training iteration. Here you can download the model file, rather than having to retrain it manually." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Run details page in Portal](imgs/model_download.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Get the best model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In addition to being able to download model files from the experiment in the portal, you can also download them programmatically. The following code iterates through each run in the experiment, and accesses both the logged run metrics and the run details (which contains the run_id). This keeps track of the best run, in this case the run with the lowest root-mean-squared-error." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "minimum_rmse_runid = None\n", + "minimum_rmse = None\n", + "\n", + "for run in experiment.get_runs():\n", + " run_metrics = run.get_metrics()\n", + " run_details = run.get_details()\n", + " # each logged metric becomes a key in this returned dict\n", + " run_rmse = run_metrics[\"rmse\"]\n", + " run_id = run_details[\"runId\"]\n", + " \n", + " if minimum_rmse is None:\n", + " minimum_rmse = run_rmse\n", + " minimum_rmse_runid = run_id\n", + " else:\n", + " if run_rmse < minimum_rmse:\n", + " minimum_rmse = run_rmse\n", + " minimum_rmse_runid = run_id\n", + "\n", + "print(\"Best run_id: \" + minimum_rmse_runid)\n", + "print(\"Best run_id rmse: \" + str(minimum_rmse)) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Use the best run id to fetch the individual run using the `Run` constructor along with the experiment object. Then call `get_file_names()` to see all the files available for download from this run. In this case, you only uploaded one file for each run during training." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Run\n", + "best_run = Run(experiment=experiment, run_id=minimum_rmse_runid)\n", + "print(best_run.get_file_names())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Call `download()` on the run object, specifying the model file name to download. By default this function downloads to the current directory." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "best_run.download_file(name=\"model_alpha_0.1.pkl\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Clean up resources\n", + "\n", + "Do not complete this section if you plan on running other Azure Machine Learning service tutorials.\n", + "\n", + "### Stop the notebook VM\n", + "\n", + "If you used a cloud notebook server, stop the VM when you are not using it to reduce cost.\n", + "\n", + "1. In your workspace, select **Notebook VMs**.\n", + "\n", + "1. From the list, select the VM.\n", + "\n", + "1. Select **Stop**.\n", + "\n", + "1. When you're ready to use the server again, select **Start**.\n", + "\n", + "### Delete everything\n", + "\n", + "If you don't plan to use the resources you created, delete them, so you don't incur any charges:\n", + "\n", + "1. In the Azure portal, select **Resource groups** on the far left.\n", + "\n", + "1. From the list, select the resource group you created.\n", + "\n", + "1. Select **Delete resource group**.\n", + "\n", + "1. Enter the resource group name. Then select **Delete**.\n", + "\n", + "You can also keep the resource group but delete a single workspace. Display the workspace properties and select **Delete**." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next steps\n", + "\n", + "In this tutorial, you did the following tasks:\n", + "\n", + "> * Connected your workspace and created an experiment\n", + "> * Loaded data and trained scikit-learn models\n", + "> * Viewed training results in the portal and retrieved models\n", + "\n", + "[Deploy your model](https://docs.microsoft.com/azure/machine-learning/service/tutorial-deploy-models-with-aml) with Azure Machine Learning.\n", + "Learn how to develop [automated machine learning](https://docs.microsoft.com/azure/machine-learning/service/tutorial-auto-train-models) experiments." + ] + } ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" + "metadata": { + "authors": [ + { + "name": "trbye" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + }, + "msauthor": "trbye" }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.5" - }, - "msauthor": "trbye" - }, - "nbformat": 4, - "nbformat_minor": 2 -} + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/work-with-data/dataprep/data/ADLSgen2-datapreptest.crt b/work-with-data/dataprep/data/ADLSgen2-datapreptest.crt new file mode 100644 index 00000000..db96837e --- /dev/null +++ b/work-with-data/dataprep/data/ADLSgen2-datapreptest.crt @@ -0,0 +1,45 @@ +-----BEGIN PRIVATE KEY----- +MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC/C0oc6vvF1UEc +y9JeGDXdtKynG11wTTIHIokFhNinHNSpJBLmNWFyFkqzvjJCPR4kWuqw4IXhCS3L +VoqRmT680SvUFFF6HnEaa75Bc1YSACn1ZsHuCRGrqO9BaTgt3mM0sRYC67+f+W0E +tA+k+EA0XnTtDdEBX3RLzvaYAR4yijEHIBQeeNemPYK4msW6Xw67ib1xn59blX4Z +a4Z85FjrekmoTl9493bFj6znDTX6wpKsPF7WLEF9S+oD/Lg4EHBi9BfefFxQpGZ9 +FQHToFKyz1tA2iaY/9LjCtJcincMkuXt3KuQA4Nv2GiTzz4+FEy1pOqHnyNL2tFR +1G5n04BHAgMBAAECggEAAqcXeltQ76hMZSf3XdMcPF3b394jaAHKZgr2uBrmHzvp +QAf+MzAekET6+I/1hrHujzar95TGhx9ngWFMP0VPd7O31hQKJZXyoBlK5QHC+jEC +ZCPvIW0Cz81itRfO7eQeoIas9ZFscb4240/Uv8eqrI97NCdy9X/rz3mqNuYdEzqN +2v9XlwE/Fyx79O1PQqzPRiQt3n4ss9NO169y7X99KUZtYiZAiyBBGS8wYdaGF69G +URZ3qwoUE+nByZdeRfFLLTy+UDCOwQZV+0V4p0J++YLqQAac340A1F4D60qzMHnv +KVKnMc+RrYYVFOZU+USRlphSl3Ws5j0u94CiLitK4QKBgQDivJVHNmk1JleI/MPF +bx/YT5gzcVRFhGxkGso12JrQiFPs05JmoRFaqNBDNoZYDn2ggUrMwZVfPI5C6+7U +tCe2vrjVpvcAO9reK1u4N9ohpUpkocxWQy0nNHlrorDTZnyKreRtPC87W8xpiwl4 +R/+nMgGd8vex7tGfchpThj8ZeQKBgQDXs2sgpE8vmnZBWrXAuGD8M9VnfcALEjwL +Fi3NR+XCr8jHkeIJVbSI2/asWsBGg8v6gV6Cdx9KV9r+fHDzdocS85X4P7crP83A +IX2rTT6Hsmc170SzCDa2jJJyLHQ6qtXBS9ZW8/dPFc1fiBf0NcmTLrRoNg5N8Px6 +Qt0T51q3vwKBgQCYAfhOetMD2AW9iEAzwDFoUsxmSKdHx+TnI/LHMMVx4sPpNVqk +RX2d+ylMtmRQ6r4cejHMnkfnRnDVutkubu1lHe5LBpn35Sjx472k/oTWI7uBRdv5 +RSYjb5GrsLG9uKrsSnKnLT85G20qoRUjN5nU3LiqzPZ0qviMXfH6ZzkseQKBgQCT +ft6MTY7QUGD4w5xxEiNPkeolgHmnmGpyclITg0x7WlSDEyBrna17wF3m8Y91KH58 +56XGtMoyvezEBDgAY1ZuAR7VyEvqSRDahow2bPWLONUWrmxduAohvfIOHJPF4jeU +m9UPVHgSHih3YMpwda9G87LtZ7lUVqtutvYRvCvuZQKBgAypo514DZW7Y9lMCgkR +GpJLKCWFR0Sl9bQXI7N5nAG0YFz5ZhdA1PjS2tj+OKyWR6wekbv3g0CyVXT4XYsi +tKRu9PR2OUQLPv/h2qLAeSOYdScfWoOU5tlb4tkLoUNmj5/N9VpqbvLdDh6hPWQL +o4s+29QYKEoNmOrcZ6oRkRP8 +-----END PRIVATE KEY----- +-----BEGIN CERTIFICATE----- +MIICoTCCAYkCAgPoMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNVBAMMCUNMSS1Mb2dp +bjAiGA8yMDE5MDUwMzIwMDIwOVoYDzIwMjAwNTAzMjAwMjExWjAUMRIwEAYDVQQD +DAlDTEktTG9naW4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC/C0oc +6vvF1UEcy9JeGDXdtKynG11wTTIHIokFhNinHNSpJBLmNWFyFkqzvjJCPR4kWuqw +4IXhCS3LVoqRmT680SvUFFF6HnEaa75Bc1YSACn1ZsHuCRGrqO9BaTgt3mM0sRYC +67+f+W0EtA+k+EA0XnTtDdEBX3RLzvaYAR4yijEHIBQeeNemPYK4msW6Xw67ib1x +n59blX4Za4Z85FjrekmoTl9493bFj6znDTX6wpKsPF7WLEF9S+oD/Lg4EHBi9Bfe +fFxQpGZ9FQHToFKyz1tA2iaY/9LjCtJcincMkuXt3KuQA4Nv2GiTzz4+FEy1pOqH +nyNL2tFR1G5n04BHAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAGz3pOgNPESr+QoO +OVCgSS6VtWlmrAcxl5JaiNBFpBGAqfvbfRe1eZY7Rn6fuw1jc3pPBVzNTf8Plel+ +DcuLzDLJAEag2GpRE+Xg57DNSwPqP6jZfHRE/ufLwIRLcNG9wRUwqlBvdAu1Kign +nlTZvTEAwxlQdvmIIT1XrTLZ+OwtVXcgrf0vInmueZKz/UDqsSDPY+d426S9eOWt +60h2WgXPU3QvBYfA6Yd2ReeP3+SHwBd4/1ByNFWBytcI9ow3pp2JznU366dfX4IQ +Q0iOTvHzXbfPmtsxqho6+hBbLvXVNWJMg8e22Pp/TyXYqeV5V09k18EgCnuA/9Gd +kKDVROA= +-----END CERTIFICATE----- diff --git a/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb b/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb index 30dcb113..43a3ca62 100644 --- a/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb +++ b/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb @@ -222,7 +222,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.8" + "version": "3.6.4" }, "notice": "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License." }, diff --git a/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb b/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb index fc82dbda..e3c9ba6a 100644 --- a/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb +++ b/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb @@ -47,6 +47,7 @@ "[Read PostgreSQL](#postgresql)
    \n", "[Read From Azure Blob](#azure-blob)
    \n", "[Read From ADLS](#adls)
    \n", + "[Read From ADLSGen2](#adlsgen2)
    \n", "[Read Pandas DataFrame](#pandas-df)
    " ] }, @@ -315,6 +316,25 @@ "df" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can see in the results that the FBI Code column now contains some NaN values where before, when calling head, it didn't. By default, `to_pandas_dataframe` attempts to coalesce columns into a single type for better performance and lower memory overhead. This specific column has a mixutre of both numbers and strings and the strings were replaced with NaN values.\n", + "\n", + "If you wish to keep the mixed-type column in the Pandas DataFrame, you can set the `extended_types` argument to True when calling `to_pandas_dataframe`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df = dflow_skipped_rows.to_pandas_dataframe(extended_types=True)\n", + "df" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -635,7 +655,7 @@ "metadata": {}, "outputs": [], "source": [ - "df = dflow.to_pandas_dataframe()\n", + "df = dflow.to_pandas_dataframe(extended_types=True)\n", "df.dtypes" ] }, @@ -751,7 +771,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "There are two ways the Data Prep API can acquire the necessary OAuth token to access Azure DataLake Storage:\n", + "Data Prep currently supports both ADLS and ADLSGen2. There are two ways the Data Prep API can acquire the necessary OAuth token to access Azure DataLake Storage:\n", "1. Retrieve the access token from a recent login session of the user's [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest) login.\n", "2. Use a ServicePrincipal (SP) and a certificate as a secret." ] @@ -883,6 +903,70 @@ "dflow.to_pandas_dataframe().head()" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Read from ADLSGen2" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Please refer to the Read for ADLS section above to get details of how to register a Service Principal and obtain an OAuth access token.[ADLS](http://localhost:8888/notebooks/notebooks/how-to-guides/data-ingestion.ipynb#adls)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Configure ADLSGen2 Account for ServicePrincipal" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "certThumbprint = '23:66:84:6B:3A:14:9E:B1:17:CA:EE:E3:BB:2C:21:2D:20:B0:DF:F2'\n", + "certificate = ''\n", + "with open('../data/ADLSgen2-datapreptest.crt', 'rt', encoding='utf-8') as crtFile:\n", + " certificate = crtFile.read()\n", + "\n", + "servicePrincipalAppId = \"127a58c3-f307-46a1-969e-a6b63da3f411\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Acquire an OAuth Access Token for ADLSGen2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import adal\n", + "from azureml.dataprep.api.datasources import ADLSGen2\n", + "\n", + "ctx = adal.AuthenticationContext('https://login.microsoftonline.com/72f988bf-86f1-41af-91ab-2d7cd011db47')\n", + "token = ctx.acquire_token_with_client_certificate('https://storage.azure.com/', servicePrincipalAppId, certificate, certThumbprint)\n", + "dflow = dprep.read_csv(path = ADLSGen2(path='https://adlsgen2datapreptest.dfs.core.windows.net/datapreptest/people.csv', accessToken=token['accessToken']))\n", + "dflow.to_pandas_dataframe().head()" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -923,7 +1007,24 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "After loading in the data you can now do `read_pandas_dataframe`." + "After loading in the data you can now do `read_pandas_dataframe`. If you only need to consume the Dataflow created from the current environment, you can read the DataFrame in memory." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "dflow_df = dprep.read_pandas_dataframe(df, in_memory=True)\n", + "dflow_df.head(5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "However, if you intend to use this Dataflow past the end of your current Python session (such as by saving the Dataflow to a file), you can provide a cache directory where the contents of the DataFrame will be stored so they can be retrieved later." ] }, { diff --git a/work-with-data/dataprep/how-to-guides/datastore.ipynb b/work-with-data/dataprep/how-to-guides/datastore.ipynb index d6c99a0e..76bc0ed4 100644 --- a/work-with-data/dataprep/how-to-guides/datastore.ipynb +++ b/work-with-data/dataprep/how-to-guides/datastore.ipynb @@ -183,6 +183,37 @@ "dflow_adls = dprep.read_csv(path=DataPath(datastore, path_on_datastore='/input/crime0-10.csv'))\n", "dflow_adls.head(5)" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now you can read all the files in the `dataprep_adlsgen2` datastore which references an ADLSGen2 Storage account." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# read a file from ADLSGen2\n", + "datastore = Datastore(workspace=workspace, name='adlsgen2')\n", + "dflow_adlsgen2 = dprep.read_csv(path=DataPath(datastore, path_on_datastore='/testfolder/peopletest.csv'))\n", + "dflow_adlsgen2.head(5)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# read all files from ADLSGen2 directory\n", + "datastore = Datastore(workspace=workspace, name='adlsgen2')\n", + "dflow_adlsgen2 = dprep.read_csv(path=DataPath(datastore, path_on_datastore='/testfolder/testdir'))\n", + "dflow_adlsgen2.head()" + ] } ], "metadata": { diff --git a/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb b/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb index 9b709207..02c74746 100644 --- a/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb +++ b/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb @@ -186,7 +186,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Now we have successfully split the data into useful columns through examples. " + "Now we have successfully split the data into useful columns through examples." ] } ], From 5dd09a1f7c4eced70817ff18ebb86a38a9d1d8e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Thu, 25 Jul 2019 13:28:01 -0700 Subject: [PATCH 010/248] Delete README.md --- training/README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 training/README.md diff --git a/training/README.md b/training/README.md deleted file mode 100644 index e69de29b..00000000 From c3ce2bc7fe62f86fa59271ecfe5b052be7f38574 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Thu, 25 Jul 2019 13:28:15 -0700 Subject: [PATCH 011/248] Delete README.md --- model-deployment/README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 model-deployment/README.md diff --git a/model-deployment/README.md b/model-deployment/README.md deleted file mode 100644 index e69de29b..00000000 From 82bede239a05dea0e8354d3e258591cdbdd02ef3 Mon Sep 17 00:00:00 2001 From: msdavx <39526997+msdavx@users.noreply.github.com> Date: Fri, 26 Jul 2019 11:10:37 -0700 Subject: [PATCH 012/248] Add demo notebook for datasets diff attribute. --- .../datasets-diff/datasets-diff.ipynb | 796 ++++++++++++++++++ 1 file changed, 796 insertions(+) create mode 100644 work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb diff --git a/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb b/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb new file mode 100644 index 00000000..96cd59e2 --- /dev/null +++ b/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb @@ -0,0 +1,796 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks//notebooks/work-with-data/datasets/datasets-tutorial/datasets-diff.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#

    Detect drift using Dataset Diff API
    \n", + "\n", + "
    \n", + "\n", + " This notebook provides step by step instructions on how to compare two different datasets. It includes two parts:\n", + "
        ☑ compare two datasets using local compute;\n", + "
        ☑ compare two datasets remotely using Azure ML compute.\n", + "
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Prerequisites and Setup\n", + "\n", + "This section is shared by both local and remote execution, you may need duplicate this section if splitting this notebook into separate local/remote notebooks.\n", + "\n", + "\n", + "## Prerequisites\n", + "\n", + "### Install Supporting Packages" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "scrolled": true + }, + "source": [ + "    pip install scipy
    \n", + "    pip install tqdm
    \n", + "    pip install pandas
    \n", + "    pip install pyarrow
    \n", + "    pip install ipywidgets
    \n", + "    pip install lightgbm
    \n", + "    pip install matplotlib
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Install AzureML Packages" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "scrolled": true + }, + "source": [ + "    pip install --user azureml-core
    \n", + "\n", + "    pip install --user azureml-opendatasets
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import Dependencies" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import sys\n", + "import warnings\n", + "import requests\n", + "import pandas as pd\n", + "import numpy as np\n", + "import ipywidgets as widgets\n", + "\n", + "import azureml.core\n", + "\n", + "from io import StringIO\n", + "from tqdm import tqdm\n", + "from IPython import display\n", + "from datetime import datetime, timedelta\n", + "from azureml.core import Datastore, Dataset\n", + "from azureml.opendatasets import NoaaIsdWeather\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Declare Variables For Demo\n", + "\n", + "Feel free to customize them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "year = 2016\n", + "month = 1\n", + "date = 1\n", + "b_days = 2 # for baseline\n", + "t_days = 7 # for target\n", + "\n", + "local_folder = \"demo\"\n", + "baseline_file = 'baseline.csv'\n", + "\n", + "feature_columns = ['usaf', 'wban', 'latitude', 'longitude', 'elevation', 'temperature', 'p_k']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Datasets\n", + "\n", + "The diff calcualtion is always between two datasets, here for demo, we use \"baseline\" and \"target\" to present them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "os.makedirs(local_folder, exist_ok=True)\n", + "\n", + "local_baseline = os.path.join(local_folder, baseline_file)\n", + "\n", + "start_date = datetime(year, month, date)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prepare Baseline Dataset\n", + "Retrieve wether data from NOAA for declared days (b_days declared in above cell). It may takes 2 minutes for 2 days." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "start = start_date\n", + "isd = NoaaIsdWeather(start, start + timedelta(days=b_days))\n", + "\n", + "baseline_df = isd.to_pandas_dataframe()\n", + "baseline_df.head()\n", + "\n", + "baseline_df.to_csv(local_baseline)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prepare Target Dataset(s)\n", + "\n", + "Retrieve wether data from NOAA for declared days (t_days declared in above cell). It may takes 5 minutes for 7 days." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for day in tqdm(range(0, t_days)):\n", + " start = start_date + timedelta(days=day)\n", + " isd = NoaaIsdWeather(start, start + timedelta(days=1))\n", + "\n", + " target_df = isd.to_pandas_dataframe()\n", + " target_df = target_df[feature_columns]\n", + " target_df.to_csv(os.path.join(local_folder, 'target_{}.csv'.format(day)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Predefine Methods For Result Processing\n", + "\n", + "## Parse and Present Datasets' Diff Results\n", + "\n", + "Each diff result is a list of \"DiffMetric\" objects. Typically each objec present a detailed measurement output for a specific column.\n", + "

    Below is an example of \"DiffMetric\" object:
    \n", + "\n", + "
        {  \n", + "
           'name':'percentage_difference_median',                        --> measurement name\n", + "
           'value':0.01270670472603889,                                  --> a number to indicate how big the diff is for current measurement.\n", + "
           'extended_properties':{  \n", + "

              'action_id':'3d3da05d-0871-4cc9-93cb-f43859aae13b',        --> (remote calculation only) action id\n", + "
              'from_dataset_id':'12edc566-8803-4e0f-ba91-c2ee05eeddee',  --> (remote calculation only) baseline dataset\n", + "
              'from_dataset_version':'1',                                --> (remote calculation only) baseline version\n", + "
              'to_dataset_id':'9b85c9ba-50c2-4227-a9bc-91dee4a18228',    --> (remote calculation only) target dataset\n", + "
              'to_dataset_version':'1',                                  --> (remote calculation only) target version\n", + "

              'column_name':'elevation',                                 --> column name in dataset, 
                                                                             could be ['name':'datadrift_coefficient'] for dataset level diff\n", + "
              'metric_category':'profile_diff'                           --> category, could be :
                                                                                 dataset_drift (dataset level)
                                                                                 profile_diff (column level)
                                                                                 statistical_distance (column level)\n", + "
           }\n", + "
        }\n", + "
    " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def parse_result(rst, columns, measurements):\n", + " columnlist = list(columns)\n", + " columnlist.insert(0, \"measurements \\ columns\")\n", + " measurementlist = list(measurements)\n", + " \n", + " daily_result = []\n", + " daily_result.append(columnlist)\n", + " \n", + " drift = None\n", + " daily_contribution = {}\n", + " \n", + " for m in measurements:\n", + " emptylist = ([''] * len(columns))\n", + " emptylist.insert(0, m)\n", + " daily_result.append(emptylist)\n", + "\n", + " for r in rst:\n", + " # get dataset level diff (drift)\n", + " if r.name == \"datadrift_coefficient\":\n", + " drift = r.value\n", + " # get diff (drift) contribution for each column:\n", + " elif r.name == \"datadrift_contribution\":\n", + " daily_contribution[r.extended_properties[\"column_name\"]] = r.value\n", + " # get column level diff measurements\n", + " else:\n", + " if \"column_name\" in r.extended_properties:\n", + " col = r.extended_properties[\"column_name\"]\n", + " msm = r.name\n", + " val = r.value\n", + " cid = columnlist.index(col)\n", + " kid = measurementlist.index(msm) + 1\n", + " daily_result[kid][cid] = val\n", + "\n", + " return daily_result, drift, daily_contribution" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Present Dataset Level Diff (aka drift)\n", + "\n", + "This method will generate two graphs, the left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "\n", + "import matplotlib.dates as mdates\n", + "import matplotlib.pyplot as plt \n", + "import matplotlib as mpl\n", + "\n", + "def show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute):\n", + " drifts = [drift_metrics[day] for day in drift_metrics]\n", + " daily_summary_contribution = list(summary_contribute.values())\n", + " xrange = pd.date_range(dates[0], dates[-1], freq='D')\n", + "\n", + " figure = plt.figure(figsize=(16, 4))\n", + " plt.tight_layout()\n", + "\n", + " # left graph\n", + " ax1 = plt.subplot(1, 2, 1)\n", + " ax1.grid()\n", + " plt.sca(ax1)\n", + " plt.title(\"Diff(Drift) Trend\\n\", fontsize=20)\n", + " plt.xticks(rotation=30)\n", + " plt.xlabel(\"Date\", fontsize=16)\n", + " plt.ylabel(\"Drift Coefficent\", fontsize=16)\n", + " plt.plot_date(dates, drifts, '-r', marker='.', linewidth=0.5, markersize=5)\n", + "\n", + " # right graph\n", + " ax2 = plt.subplot(1, 2, 2)\n", + " plt.sca(ax2)\n", + " plt.title(\"Drift Contribution of columns\\n\", fontsize=20)\n", + " plt.xticks(xrange, rotation=30)\n", + " plt.xlabel(\"Date\", fontsize=16)\n", + " plt.ylabel(\"Drift Contribution\", fontsize=16)\n", + "\n", + " yvals = ax2.get_yticks()\n", + " ax2.set_yticklabels(['{:,.2%}'.format(v) for v in yvals])\n", + " ax2.xaxis.set_major_formatter(mdates.DateFormatter('%Y%m-%d'))\n", + "\n", + " for c in columns:\n", + " contribution = []\n", + " for dt in drift_contributions:\n", + " contribution.append(drift_contributions[dt][c])\n", + " bar_ratio = [x / y for x, y in zip(contribution, daily_summary_contribution)]\n", + "\n", + " ax2.bar(dates, height=bar_ratio, bottom=bottoms_contribute)\n", + " bottoms_contribute = [x + y for x, y in zip(bottoms_contribute, bar_ratio)]\n", + "\n", + " plt.legend(columns)\n", + "\n", + " plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Execute Datasets' Diff Calculation Locally\n", + "\n", + "Local execution let you to run in a Jupyter Notebook or Code editor in a local computer.\n", + "\n", + "## Calculate Dataset Diff At Local\n", + "\n", + "### Create Baseline Dataset\n", + "\n", + "Create baseline dataset object from the retrieved baseline data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Dataset\n", + "\n", + "baseline = Dataset.auto_read_files(local_baseline, include_path=True)\n", + "\n", + "# The baseline data is not filtered by feature columns list, thus all retrieved data columns will be listed below.\n", + "# You'll see \"Column1\" in the output, which is a default name added when the original column is not available.\n", + "baseline.get_profile()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Target Datasets\n", + "\n", + "Create target dataset objects from retrieved target data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "targets = {}\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " target = Dataset.auto_read_files(os.path.join(local_folder, 'target_{}.csv'.format(day)))\n", + " targets[day] = target" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Diff Between Each Target Dataset And Baseline Dataset\n", + "\n", + "Compare each target dataset with baseline dataset to calculate diff between them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "buf = {}\n", + "\n", + "columns = set()\n", + "measurements = set()\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " diff_action = baseline.diff(rhs_dataset=targets[day])\n", + " diff_action.wait_for_completion()\n", + " \n", + " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", + " buf[dt] = diff_action._result\n", + " \n", + " for r in diff_action._result:\n", + " if r.name not in measurements:\n", + " measurements.add(r.name)\n", + " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in columns:\n", + " columns.add(r.extended_properties[\"column_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parse And Present Local Execution Results\n", + "\n", + "\n", + "
    The diff outputs usually contains two different level information:\n", + "
        1. General diff, aka dataset level diff. The output is a number between 0 and 1 to indicate what level the diff is. This dataset level diff is also called drift between two datasets.\n", + "
        2. Detailed diff, aka column level diff. The output is a metrics organized like a 2-D array. One dimension is column names, that is why it's in column level. The other dimension are measurements. The diff calculation actually includes variuos measurements from different perspectives, each measurement will generate an index for each column to present how big impacts this column contributed.\n", + "
    \n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Parse and List Column Level Diff Results\n", + "\n", + "Here will iteratively list all details per each measurement per column calculated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas import DataFrame\n", + "\n", + "dates = []\n", + "drift_metrics = {}\n", + "drift_contributions = {}\n", + "summary_contribute = {}\n", + "bottoms_contribute = []\n", + "\n", + "for dt, rst in buf.items():\n", + " dates.append(dt)\n", + " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", + " \n", + " daily_result, drift, daily_contribution = parse_result(rst, columns, measurements)\n", + " drift_metrics[dt] = drift\n", + " drift_contributions[dt] = daily_contribution\n", + "\n", + " sum_contribution = 0\n", + " bottoms_contribute.append(0)\n", + " for col, val in daily_contribution.items():\n", + " sum_contribution += val\n", + " summary_contribute[dt] = sum_contribution\n", + "\n", + " \n", + " display.display(pd.DataFrame(daily_result))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Present Dataset Level Diff (aka drift) In Graphs\n", + "\n", + "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Excute Datasets's Diff Calculation Remotely\n", + "\n", + "Remote execution let you to data compare on more powerful computes - Machine Learning Compute clusters." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Remote Environment\n", + "### Get Workspace\n", + "\n", + "
    If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, check the configuration notebook first if you haven't already to establish your connection to the AzureML Workspace.\n", + "
    " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.workspace import Workspace\n", + "from azureml.core.authentication import InteractiveLoginAuthentication\n", + "\n", + "ws = Workspace.from_config()\n", + "\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep=\"\\n\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Compute Resource For Calculation\n", + "Check if compute resouce exists and create a new one if not." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import AmlCompute, ComputeTarget\n", + "\n", + "existing = False\n", + "del_cmpt = False\n", + "cts = ws.compute_targets\n", + "\n", + "if (ws.DEFAULT_CPU_CLUSTER_NAME in cts and cts[ws.DEFAULT_CPU_CLUSTER_NAME].type == 'AmlCompute'):\n", + " existing = True\n", + " aml_compute = cts[ws.DEFAULT_CPU_CLUSTER_NAME]\n", + " \n", + "if not existing:\n", + " aml_compute = AmlCompute.create(ws,ws.DEFAULT_CPU_CLUSTER_NAME,ws.DEFAULT_CPU_CLUSTER_CONFIGURATION)\n", + " aml_compute.wait_for_completion(show_output=True)\n", + " del_cmpt = True" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Upload Sample Data To Datastore\n", + "\n", + "Upload data files to the blob storage in Azure ML workspace." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Datastore, Dataset\n", + "import azureml.data\n", + "from azureml.data.azure_storage_datastore import AzureFileDatastore, AzureBlobDatastore\n", + "\n", + "remote_data_path ='demo'\n", + "\n", + "dstore = ws.get_default_datastore()\n", + "dstore.upload_files([local_baseline],\n", + " target_path=remote_data_path,\n", + " overwrite=True,\n", + " show_progress=True)\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " target_file = os.path.join(local_folder, 'target_{}.csv'.format(day))\n", + " dstore.upload_files([target_file],\n", + " target_path=remote_data_path,\n", + " overwrite=True,\n", + " show_progress=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Register DataSets\n", + "\n", + "Create and Register Datasets." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Datastore, Dataset\n", + "dstore = ws.get_default_datastore()\n", + "\n", + "xpath = remote_data_path + '/' + baseline_file\n", + "toregister_baseline = Dataset.from_delimited_files(dstore.path(xpath))\n", + "registered_baseline = toregister_baseline.register(workspace = ws,\n", + " name = 'dataset baseline for diff demo',\n", + " description = 'dataset baseline for diff comparison',\n", + " exist_ok = True,\n", + " update_if_exist = True\n", + " )\n", + "\n", + "registered_targets = {}\n", + "for day in tqdm(range(0, t_days)):\n", + " target_file = 'target_{}.csv'.format(day)\n", + " toregister_target = Dataset.from_delimited_files(dstore.path(remote_data_path + '/' + target_file))\n", + " registered_target = toregister_target.register(workspace = ws,\n", + " name = 'dataset target-{} for diff demo'.format(day),\n", + " description = 'target target-{} for diff comparison'.format(day),\n", + " exist_ok = True,\n", + " update_if_exist = True\n", + " )\n", + " registered_targets[day] = registered_target" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Calculate Dataset Diff Remotely\n", + "\n", + "Perform the calculation remotely. This may take 20 minutes.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_diffs = {}\n", + "\n", + "r_columns = set()\n", + "r_measurements = set()\n", + "\n", + "for day, registered_target in registered_targets.items():\n", + " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", + " remote_diff = registered_baseline.diff(registered_target, compute_target=ws.DEFAULT_CPU_CLUSTER_NAME)\n", + " remote_diff.wait_for_completion()\n", + " \n", + " remote_diffs[dt] = remote_diff.get_result()\n", + " \n", + " for r in remote_diff.get_result():\n", + " if r.name not in r_measurements:\n", + " r_measurements.add(r.name)\n", + " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in r_columns:\n", + " r_columns.add(r.extended_properties[\"column_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parse And Present Remote Execution Results\n", + "\n", + "### Parse And List Column Level Diff Results\n", + "\n", + "Here will iteratively list all details per each measurement per column calculated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas import DataFrame\n", + "\n", + "r_dates = []\n", + "r_drift_metrics = {}\n", + "r_drift_contributions = {}\n", + "r_summary_contribute = {}\n", + "r_bottoms_contribute = []\n", + "\n", + "for dt, rst in remote_diffs.items():\n", + " r_dates.append(dt)\n", + " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", + " \n", + " daily_result, drift, daily_contribution = parse_result(rst, r_columns, r_measurements)\n", + " r_drift_metrics[dt] = drift\n", + " r_drift_contributions[dt] = daily_contribution\n", + "\n", + " sum_contribution = 0\n", + " r_bottoms_contribute.append(0)\n", + " for col, val in daily_contribution.items():\n", + " sum_contribution += val\n", + " r_summary_contribute[dt] = sum_contribution\n", + "\n", + " \n", + " display.display(pd.DataFrame(daily_result))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Present Dataset Level Diff (aka drift) In Graphs\n", + "\n", + "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "show_diff(r_drift_metrics, r_dates, r_columns, r_drift_contributions, r_summary_contribute, r_bottoms_contribute)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Clean Resources Created" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "if del_cmpt == True:\n", + " try:\n", + " aml_compute.delete()\n", + " aml_compute.wait_for_completion()\n", + " except Exception as e:\n", + " if 'ComputeTargetNotFound' in e.message:\n", + " print(\"Compute target deleted.\")\n", + " del_cmpt = False" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Reference\n", + "\n", + "Detailed description of Dataset Diff attribute can be found at
    \n", + "https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.dataset(class)?view=azure-ml-py#diff-rhs-dataset--compute-target-none--columns-none-" + ] + } + ], + "metadata": { + "authors": [ + { + "name": "davx" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + }, + "notice": "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License." + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 8a0b48ea48d51581c25784a744e9015a298cda05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:18:14 -0700 Subject: [PATCH 013/248] Delete README.md --- how-to-use-azureml/work-with-data/README.md | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/README.md diff --git a/how-to-use-azureml/work-with-data/README.md b/how-to-use-azureml/work-with-data/README.md deleted file mode 100644 index 0b2958d0..00000000 --- a/how-to-use-azureml/work-with-data/README.md +++ /dev/null @@ -1,9 +0,0 @@ -# Work With Data Using Azure Machine Learning Service - -Azure Machine Learning Datasets (preview) make it easier to access and work with your data. Datasets manage data in various scenarios such as model training and pipeline creation. Using the Azure Machine Learning SDK, you can access underlying storage, explore and prepare data, manage the life cycle of different Dataset definitions, and compare between Datasets used in training and in production. - -- For an example of using Datasets, see the [sample](datasets). -- For advanced data preparation examples, see [dataprep](dataprep). - - -![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/README..png) \ No newline at end of file From cd1258f81d2bce684ddb3d19b7d5a54e233d41c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:18:41 -0700 Subject: [PATCH 014/248] Delete Titanic.csv --- .../datasets/train-dataset/Titanic.csv | 892 ------------------ 1 file changed, 892 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/datasets/train-dataset/Titanic.csv diff --git a/how-to-use-azureml/work-with-data/datasets/train-dataset/Titanic.csv b/how-to-use-azureml/work-with-data/datasets/train-dataset/Titanic.csv deleted file mode 100644 index 5cc466e9..00000000 --- a/how-to-use-azureml/work-with-data/datasets/train-dataset/Titanic.csv +++ /dev/null @@ -1,892 +0,0 @@ -PassengerId,Survived,Pclass,Name,Sex,Age,SibSp,Parch,Ticket,Fare,Cabin,Embarked -1,0,3,"Braund, Mr. Owen Harris",male,22,1,0,A/5 21171,7.25,,S -2,1,1,"Cumings, Mrs. John Bradley (Florence Briggs Thayer)",female,38,1,0,PC 17599,71.2833,C85,C -3,1,3,"Heikkinen, Miss. Laina",female,26,0,0,STON/O2. 3101282,7.925,,S -4,1,1,"Futrelle, Mrs. Jacques Heath (Lily May Peel)",female,35,1,0,113803,53.1,C123,S -5,0,3,"Allen, Mr. William Henry",male,35,0,0,373450,8.05,,S -6,0,3,"Moran, Mr. James",male,,0,0,330877,8.4583,,Q -7,0,1,"McCarthy, Mr. Timothy J",male,54,0,0,17463,51.8625,E46,S -8,0,3,"Palsson, Master. Gosta Leonard",male,2,3,1,349909,21.075,,S -9,1,3,"Johnson, Mrs. Oscar W (Elisabeth Vilhelmina Berg)",female,27,0,2,347742,11.1333,,S -10,1,2,"Nasser, Mrs. Nicholas (Adele Achem)",female,14,1,0,237736,30.0708,,C -11,1,3,"Sandstrom, Miss. Marguerite Rut",female,4,1,1,PP 9549,16.7,G6,S -12,1,1,"Bonnell, Miss. Elizabeth",female,58,0,0,113783,26.55,C103,S -13,0,3,"Saundercock, Mr. William Henry",male,20,0,0,A/5. 2151,8.05,,S -14,0,3,"Andersson, Mr. Anders Johan",male,39,1,5,347082,31.275,,S -15,0,3,"Vestrom, Miss. Hulda Amanda Adolfina",female,14,0,0,350406,7.8542,,S -16,1,2,"Hewlett, Mrs. (Mary D Kingcome) ",female,55,0,0,248706,16,,S -17,0,3,"Rice, Master. Eugene",male,2,4,1,382652,29.125,,Q -18,1,2,"Williams, Mr. Charles Eugene",male,,0,0,244373,13,,S -19,0,3,"Vander Planke, Mrs. Julius (Emelia Maria Vandemoortele)",female,31,1,0,345763,18,,S -20,1,3,"Masselmani, Mrs. Fatima",female,,0,0,2649,7.225,,C -21,0,2,"Fynney, Mr. Joseph J",male,35,0,0,239865,26,,S -22,1,2,"Beesley, Mr. Lawrence",male,34,0,0,248698,13,D56,S -23,1,3,"McGowan, Miss. Anna ""Annie""",female,15,0,0,330923,8.0292,,Q -24,1,1,"Sloper, Mr. William Thompson",male,28,0,0,113788,35.5,A6,S -25,0,3,"Palsson, Miss. Torborg Danira",female,8,3,1,349909,21.075,,S -26,1,3,"Asplund, Mrs. Carl Oscar (Selma Augusta Emilia Johansson)",female,38,1,5,347077,31.3875,,S -27,0,3,"Emir, Mr. Farred Chehab",male,,0,0,2631,7.225,,C -28,0,1,"Fortune, Mr. Charles Alexander",male,19,3,2,19950,263,C23 C25 C27,S -29,1,3,"O'Dwyer, Miss. Ellen ""Nellie""",female,,0,0,330959,7.8792,,Q -30,0,3,"Todoroff, Mr. Lalio",male,,0,0,349216,7.8958,,S -31,0,1,"Uruchurtu, Don. Manuel E",male,40,0,0,PC 17601,27.7208,,C -32,1,1,"Spencer, Mrs. William Augustus (Marie Eugenie)",female,,1,0,PC 17569,146.5208,B78,C -33,1,3,"Glynn, Miss. Mary Agatha",female,,0,0,335677,7.75,,Q -34,0,2,"Wheadon, Mr. Edward H",male,66,0,0,C.A. 24579,10.5,,S -35,0,1,"Meyer, Mr. Edgar Joseph",male,28,1,0,PC 17604,82.1708,,C -36,0,1,"Holverson, Mr. Alexander Oskar",male,42,1,0,113789,52,,S -37,1,3,"Mamee, Mr. Hanna",male,,0,0,2677,7.2292,,C -38,0,3,"Cann, Mr. Ernest Charles",male,21,0,0,A./5. 2152,8.05,,S -39,0,3,"Vander Planke, Miss. Augusta Maria",female,18,2,0,345764,18,,S -40,1,3,"Nicola-Yarred, Miss. Jamila",female,14,1,0,2651,11.2417,,C -41,0,3,"Ahlin, Mrs. Johan (Johanna Persdotter Larsson)",female,40,1,0,7546,9.475,,S -42,0,2,"Turpin, Mrs. William John Robert (Dorothy Ann Wonnacott)",female,27,1,0,11668,21,,S -43,0,3,"Kraeff, Mr. Theodor",male,,0,0,349253,7.8958,,C -44,1,2,"Laroche, Miss. Simonne Marie Anne Andree",female,3,1,2,SC/Paris 2123,41.5792,,C -45,1,3,"Devaney, Miss. Margaret Delia",female,19,0,0,330958,7.8792,,Q -46,0,3,"Rogers, Mr. William John",male,,0,0,S.C./A.4. 23567,8.05,,S -47,0,3,"Lennon, Mr. Denis",male,,1,0,370371,15.5,,Q -48,1,3,"O'Driscoll, Miss. Bridget",female,,0,0,14311,7.75,,Q -49,0,3,"Samaan, Mr. Youssef",male,,2,0,2662,21.6792,,C -50,0,3,"Arnold-Franchi, Mrs. Josef (Josefine Franchi)",female,18,1,0,349237,17.8,,S -51,0,3,"Panula, Master. Juha Niilo",male,7,4,1,3101295,39.6875,,S -52,0,3,"Nosworthy, Mr. Richard Cater",male,21,0,0,A/4. 39886,7.8,,S -53,1,1,"Harper, Mrs. Henry Sleeper (Myna Haxtun)",female,49,1,0,PC 17572,76.7292,D33,C -54,1,2,"Faunthorpe, Mrs. Lizzie (Elizabeth Anne Wilkinson)",female,29,1,0,2926,26,,S -55,0,1,"Ostby, Mr. Engelhart Cornelius",male,65,0,1,113509,61.9792,B30,C -56,1,1,"Woolner, Mr. Hugh",male,,0,0,19947,35.5,C52,S -57,1,2,"Rugg, Miss. Emily",female,21,0,0,C.A. 31026,10.5,,S -58,0,3,"Novel, Mr. Mansouer",male,28.5,0,0,2697,7.2292,,C -59,1,2,"West, Miss. Constance Mirium",female,5,1,2,C.A. 34651,27.75,,S -60,0,3,"Goodwin, Master. William Frederick",male,11,5,2,CA 2144,46.9,,S -61,0,3,"Sirayanian, Mr. Orsen",male,22,0,0,2669,7.2292,,C -62,1,1,"Icard, Miss. Amelie",female,38,0,0,113572,80,B28, -63,0,1,"Harris, Mr. Henry Birkhardt",male,45,1,0,36973,83.475,C83,S -64,0,3,"Skoog, Master. Harald",male,4,3,2,347088,27.9,,S -65,0,1,"Stewart, Mr. Albert A",male,,0,0,PC 17605,27.7208,,C -66,1,3,"Moubarek, Master. Gerios",male,,1,1,2661,15.2458,,C -67,1,2,"Nye, Mrs. (Elizabeth Ramell)",female,29,0,0,C.A. 29395,10.5,F33,S -68,0,3,"Crease, Mr. Ernest James",male,19,0,0,S.P. 3464,8.1583,,S -69,1,3,"Andersson, Miss. Erna Alexandra",female,17,4,2,3101281,7.925,,S -70,0,3,"Kink, Mr. Vincenz",male,26,2,0,315151,8.6625,,S -71,0,2,"Jenkin, Mr. Stephen Curnow",male,32,0,0,C.A. 33111,10.5,,S -72,0,3,"Goodwin, Miss. Lillian Amy",female,16,5,2,CA 2144,46.9,,S -73,0,2,"Hood, Mr. Ambrose Jr",male,21,0,0,S.O.C. 14879,73.5,,S -74,0,3,"Chronopoulos, Mr. Apostolos",male,26,1,0,2680,14.4542,,C -75,1,3,"Bing, Mr. Lee",male,32,0,0,1601,56.4958,,S -76,0,3,"Moen, Mr. Sigurd Hansen",male,25,0,0,348123,7.65,F G73,S -77,0,3,"Staneff, Mr. Ivan",male,,0,0,349208,7.8958,,S -78,0,3,"Moutal, Mr. Rahamin Haim",male,,0,0,374746,8.05,,S -79,1,2,"Caldwell, Master. Alden Gates",male,0.83,0,2,248738,29,,S -80,1,3,"Dowdell, Miss. Elizabeth",female,30,0,0,364516,12.475,,S -81,0,3,"Waelens, Mr. Achille",male,22,0,0,345767,9,,S -82,1,3,"Sheerlinck, Mr. Jan Baptist",male,29,0,0,345779,9.5,,S -83,1,3,"McDermott, Miss. Brigdet Delia",female,,0,0,330932,7.7875,,Q -84,0,1,"Carrau, Mr. Francisco M",male,28,0,0,113059,47.1,,S -85,1,2,"Ilett, Miss. Bertha",female,17,0,0,SO/C 14885,10.5,,S -86,1,3,"Backstrom, Mrs. Karl Alfred (Maria Mathilda Gustafsson)",female,33,3,0,3101278,15.85,,S -87,0,3,"Ford, Mr. William Neal",male,16,1,3,W./C. 6608,34.375,,S -88,0,3,"Slocovski, Mr. Selman Francis",male,,0,0,SOTON/OQ 392086,8.05,,S -89,1,1,"Fortune, Miss. Mabel Helen",female,23,3,2,19950,263,C23 C25 C27,S -90,0,3,"Celotti, Mr. Francesco",male,24,0,0,343275,8.05,,S -91,0,3,"Christmann, Mr. Emil",male,29,0,0,343276,8.05,,S -92,0,3,"Andreasson, Mr. Paul Edvin",male,20,0,0,347466,7.8542,,S -93,0,1,"Chaffee, Mr. Herbert Fuller",male,46,1,0,W.E.P. 5734,61.175,E31,S -94,0,3,"Dean, Mr. Bertram Frank",male,26,1,2,C.A. 2315,20.575,,S -95,0,3,"Coxon, Mr. Daniel",male,59,0,0,364500,7.25,,S -96,0,3,"Shorney, Mr. Charles Joseph",male,,0,0,374910,8.05,,S -97,0,1,"Goldschmidt, Mr. George B",male,71,0,0,PC 17754,34.6542,A5,C -98,1,1,"Greenfield, Mr. William Bertram",male,23,0,1,PC 17759,63.3583,D10 D12,C -99,1,2,"Doling, Mrs. John T (Ada Julia Bone)",female,34,0,1,231919,23,,S -100,0,2,"Kantor, Mr. Sinai",male,34,1,0,244367,26,,S -101,0,3,"Petranec, Miss. Matilda",female,28,0,0,349245,7.8958,,S -102,0,3,"Petroff, Mr. Pastcho (""Pentcho"")",male,,0,0,349215,7.8958,,S -103,0,1,"White, Mr. Richard Frasar",male,21,0,1,35281,77.2875,D26,S -104,0,3,"Johansson, Mr. Gustaf Joel",male,33,0,0,7540,8.6542,,S -105,0,3,"Gustafsson, Mr. Anders Vilhelm",male,37,2,0,3101276,7.925,,S -106,0,3,"Mionoff, Mr. Stoytcho",male,28,0,0,349207,7.8958,,S -107,1,3,"Salkjelsvik, Miss. Anna Kristine",female,21,0,0,343120,7.65,,S -108,1,3,"Moss, Mr. Albert Johan",male,,0,0,312991,7.775,,S -109,0,3,"Rekic, Mr. Tido",male,38,0,0,349249,7.8958,,S -110,1,3,"Moran, Miss. Bertha",female,,1,0,371110,24.15,,Q -111,0,1,"Porter, Mr. Walter Chamberlain",male,47,0,0,110465,52,C110,S -112,0,3,"Zabour, Miss. Hileni",female,14.5,1,0,2665,14.4542,,C -113,0,3,"Barton, Mr. David John",male,22,0,0,324669,8.05,,S -114,0,3,"Jussila, Miss. Katriina",female,20,1,0,4136,9.825,,S -115,0,3,"Attalah, Miss. Malake",female,17,0,0,2627,14.4583,,C -116,0,3,"Pekoniemi, Mr. Edvard",male,21,0,0,STON/O 2. 3101294,7.925,,S -117,0,3,"Connors, Mr. Patrick",male,70.5,0,0,370369,7.75,,Q -118,0,2,"Turpin, Mr. William John Robert",male,29,1,0,11668,21,,S -119,0,1,"Baxter, Mr. Quigg Edmond",male,24,0,1,PC 17558,247.5208,B58 B60,C -120,0,3,"Andersson, Miss. Ellis Anna Maria",female,2,4,2,347082,31.275,,S -121,0,2,"Hickman, Mr. Stanley George",male,21,2,0,S.O.C. 14879,73.5,,S -122,0,3,"Moore, Mr. Leonard Charles",male,,0,0,A4. 54510,8.05,,S -123,0,2,"Nasser, Mr. Nicholas",male,32.5,1,0,237736,30.0708,,C -124,1,2,"Webber, Miss. Susan",female,32.5,0,0,27267,13,E101,S -125,0,1,"White, Mr. Percival Wayland",male,54,0,1,35281,77.2875,D26,S -126,1,3,"Nicola-Yarred, Master. Elias",male,12,1,0,2651,11.2417,,C -127,0,3,"McMahon, Mr. Martin",male,,0,0,370372,7.75,,Q -128,1,3,"Madsen, Mr. Fridtjof Arne",male,24,0,0,C 17369,7.1417,,S -129,1,3,"Peter, Miss. Anna",female,,1,1,2668,22.3583,F E69,C -130,0,3,"Ekstrom, Mr. Johan",male,45,0,0,347061,6.975,,S -131,0,3,"Drazenoic, Mr. Jozef",male,33,0,0,349241,7.8958,,C -132,0,3,"Coelho, Mr. Domingos Fernandeo",male,20,0,0,SOTON/O.Q. 3101307,7.05,,S -133,0,3,"Robins, Mrs. Alexander A (Grace Charity Laury)",female,47,1,0,A/5. 3337,14.5,,S -134,1,2,"Weisz, Mrs. Leopold (Mathilde Francoise Pede)",female,29,1,0,228414,26,,S -135,0,2,"Sobey, Mr. Samuel James Hayden",male,25,0,0,C.A. 29178,13,,S -136,0,2,"Richard, Mr. Emile",male,23,0,0,SC/PARIS 2133,15.0458,,C -137,1,1,"Newsom, Miss. Helen Monypeny",female,19,0,2,11752,26.2833,D47,S -138,0,1,"Futrelle, Mr. Jacques Heath",male,37,1,0,113803,53.1,C123,S -139,0,3,"Osen, Mr. Olaf Elon",male,16,0,0,7534,9.2167,,S -140,0,1,"Giglio, Mr. Victor",male,24,0,0,PC 17593,79.2,B86,C -141,0,3,"Boulos, Mrs. Joseph (Sultana)",female,,0,2,2678,15.2458,,C -142,1,3,"Nysten, Miss. Anna Sofia",female,22,0,0,347081,7.75,,S -143,1,3,"Hakkarainen, Mrs. Pekka Pietari (Elin Matilda Dolck)",female,24,1,0,STON/O2. 3101279,15.85,,S -144,0,3,"Burke, Mr. Jeremiah",male,19,0,0,365222,6.75,,Q -145,0,2,"Andrew, Mr. Edgardo Samuel",male,18,0,0,231945,11.5,,S -146,0,2,"Nicholls, Mr. Joseph Charles",male,19,1,1,C.A. 33112,36.75,,S -147,1,3,"Andersson, Mr. August Edvard (""Wennerstrom"")",male,27,0,0,350043,7.7958,,S -148,0,3,"Ford, Miss. Robina Maggie ""Ruby""",female,9,2,2,W./C. 6608,34.375,,S -149,0,2,"Navratil, Mr. Michel (""Louis M Hoffman"")",male,36.5,0,2,230080,26,F2,S -150,0,2,"Byles, Rev. Thomas Roussel Davids",male,42,0,0,244310,13,,S -151,0,2,"Bateman, Rev. Robert James",male,51,0,0,S.O.P. 1166,12.525,,S -152,1,1,"Pears, Mrs. Thomas (Edith Wearne)",female,22,1,0,113776,66.6,C2,S -153,0,3,"Meo, Mr. Alfonzo",male,55.5,0,0,A.5. 11206,8.05,,S -154,0,3,"van Billiard, Mr. Austin Blyler",male,40.5,0,2,A/5. 851,14.5,,S -155,0,3,"Olsen, Mr. Ole Martin",male,,0,0,Fa 265302,7.3125,,S -156,0,1,"Williams, Mr. Charles Duane",male,51,0,1,PC 17597,61.3792,,C -157,1,3,"Gilnagh, Miss. Katherine ""Katie""",female,16,0,0,35851,7.7333,,Q -158,0,3,"Corn, Mr. Harry",male,30,0,0,SOTON/OQ 392090,8.05,,S -159,0,3,"Smiljanic, Mr. Mile",male,,0,0,315037,8.6625,,S -160,0,3,"Sage, Master. Thomas Henry",male,,8,2,CA. 2343,69.55,,S -161,0,3,"Cribb, Mr. John Hatfield",male,44,0,1,371362,16.1,,S -162,1,2,"Watt, Mrs. James (Elizabeth ""Bessie"" Inglis Milne)",female,40,0,0,C.A. 33595,15.75,,S -163,0,3,"Bengtsson, Mr. John Viktor",male,26,0,0,347068,7.775,,S -164,0,3,"Calic, Mr. Jovo",male,17,0,0,315093,8.6625,,S -165,0,3,"Panula, Master. Eino Viljami",male,1,4,1,3101295,39.6875,,S -166,1,3,"Goldsmith, Master. Frank John William ""Frankie""",male,9,0,2,363291,20.525,,S -167,1,1,"Chibnall, Mrs. (Edith Martha Bowerman)",female,,0,1,113505,55,E33,S -168,0,3,"Skoog, Mrs. William (Anna Bernhardina Karlsson)",female,45,1,4,347088,27.9,,S -169,0,1,"Baumann, Mr. John D",male,,0,0,PC 17318,25.925,,S -170,0,3,"Ling, Mr. Lee",male,28,0,0,1601,56.4958,,S -171,0,1,"Van der hoef, Mr. Wyckoff",male,61,0,0,111240,33.5,B19,S -172,0,3,"Rice, Master. Arthur",male,4,4,1,382652,29.125,,Q -173,1,3,"Johnson, Miss. Eleanor Ileen",female,1,1,1,347742,11.1333,,S -174,0,3,"Sivola, Mr. Antti Wilhelm",male,21,0,0,STON/O 2. 3101280,7.925,,S -175,0,1,"Smith, Mr. James Clinch",male,56,0,0,17764,30.6958,A7,C -176,0,3,"Klasen, Mr. Klas Albin",male,18,1,1,350404,7.8542,,S -177,0,3,"Lefebre, Master. Henry Forbes",male,,3,1,4133,25.4667,,S -178,0,1,"Isham, Miss. Ann Elizabeth",female,50,0,0,PC 17595,28.7125,C49,C -179,0,2,"Hale, Mr. Reginald",male,30,0,0,250653,13,,S -180,0,3,"Leonard, Mr. Lionel",male,36,0,0,LINE,0,,S -181,0,3,"Sage, Miss. Constance Gladys",female,,8,2,CA. 2343,69.55,,S -182,0,2,"Pernot, Mr. Rene",male,,0,0,SC/PARIS 2131,15.05,,C -183,0,3,"Asplund, Master. Clarence Gustaf Hugo",male,9,4,2,347077,31.3875,,S -184,1,2,"Becker, Master. Richard F",male,1,2,1,230136,39,F4,S -185,1,3,"Kink-Heilmann, Miss. Luise Gretchen",female,4,0,2,315153,22.025,,S -186,0,1,"Rood, Mr. Hugh Roscoe",male,,0,0,113767,50,A32,S -187,1,3,"O'Brien, Mrs. Thomas (Johanna ""Hannah"" Godfrey)",female,,1,0,370365,15.5,,Q -188,1,1,"Romaine, Mr. Charles Hallace (""Mr C Rolmane"")",male,45,0,0,111428,26.55,,S -189,0,3,"Bourke, Mr. John",male,40,1,1,364849,15.5,,Q -190,0,3,"Turcin, Mr. Stjepan",male,36,0,0,349247,7.8958,,S -191,1,2,"Pinsky, Mrs. (Rosa)",female,32,0,0,234604,13,,S -192,0,2,"Carbines, Mr. William",male,19,0,0,28424,13,,S -193,1,3,"Andersen-Jensen, Miss. Carla Christine Nielsine",female,19,1,0,350046,7.8542,,S -194,1,2,"Navratil, Master. Michel M",male,3,1,1,230080,26,F2,S -195,1,1,"Brown, Mrs. James Joseph (Margaret Tobin)",female,44,0,0,PC 17610,27.7208,B4,C -196,1,1,"Lurette, Miss. Elise",female,58,0,0,PC 17569,146.5208,B80,C -197,0,3,"Mernagh, Mr. Robert",male,,0,0,368703,7.75,,Q -198,0,3,"Olsen, Mr. Karl Siegwart Andreas",male,42,0,1,4579,8.4042,,S -199,1,3,"Madigan, Miss. Margaret ""Maggie""",female,,0,0,370370,7.75,,Q -200,0,2,"Yrois, Miss. Henriette (""Mrs Harbeck"")",female,24,0,0,248747,13,,S -201,0,3,"Vande Walle, Mr. Nestor Cyriel",male,28,0,0,345770,9.5,,S -202,0,3,"Sage, Mr. Frederick",male,,8,2,CA. 2343,69.55,,S -203,0,3,"Johanson, Mr. Jakob Alfred",male,34,0,0,3101264,6.4958,,S -204,0,3,"Youseff, Mr. Gerious",male,45.5,0,0,2628,7.225,,C -205,1,3,"Cohen, Mr. Gurshon ""Gus""",male,18,0,0,A/5 3540,8.05,,S -206,0,3,"Strom, Miss. Telma Matilda",female,2,0,1,347054,10.4625,G6,S -207,0,3,"Backstrom, Mr. Karl Alfred",male,32,1,0,3101278,15.85,,S -208,1,3,"Albimona, Mr. Nassef Cassem",male,26,0,0,2699,18.7875,,C -209,1,3,"Carr, Miss. Helen ""Ellen""",female,16,0,0,367231,7.75,,Q -210,1,1,"Blank, Mr. Henry",male,40,0,0,112277,31,A31,C -211,0,3,"Ali, Mr. Ahmed",male,24,0,0,SOTON/O.Q. 3101311,7.05,,S -212,1,2,"Cameron, Miss. Clear Annie",female,35,0,0,F.C.C. 13528,21,,S -213,0,3,"Perkin, Mr. John Henry",male,22,0,0,A/5 21174,7.25,,S -214,0,2,"Givard, Mr. Hans Kristensen",male,30,0,0,250646,13,,S -215,0,3,"Kiernan, Mr. Philip",male,,1,0,367229,7.75,,Q -216,1,1,"Newell, Miss. Madeleine",female,31,1,0,35273,113.275,D36,C -217,1,3,"Honkanen, Miss. Eliina",female,27,0,0,STON/O2. 3101283,7.925,,S -218,0,2,"Jacobsohn, Mr. Sidney Samuel",male,42,1,0,243847,27,,S -219,1,1,"Bazzani, Miss. Albina",female,32,0,0,11813,76.2917,D15,C -220,0,2,"Harris, Mr. Walter",male,30,0,0,W/C 14208,10.5,,S -221,1,3,"Sunderland, Mr. Victor Francis",male,16,0,0,SOTON/OQ 392089,8.05,,S -222,0,2,"Bracken, Mr. James H",male,27,0,0,220367,13,,S -223,0,3,"Green, Mr. George Henry",male,51,0,0,21440,8.05,,S -224,0,3,"Nenkoff, Mr. Christo",male,,0,0,349234,7.8958,,S -225,1,1,"Hoyt, Mr. Frederick Maxfield",male,38,1,0,19943,90,C93,S -226,0,3,"Berglund, Mr. Karl Ivar Sven",male,22,0,0,PP 4348,9.35,,S -227,1,2,"Mellors, Mr. William John",male,19,0,0,SW/PP 751,10.5,,S -228,0,3,"Lovell, Mr. John Hall (""Henry"")",male,20.5,0,0,A/5 21173,7.25,,S -229,0,2,"Fahlstrom, Mr. Arne Jonas",male,18,0,0,236171,13,,S -230,0,3,"Lefebre, Miss. Mathilde",female,,3,1,4133,25.4667,,S -231,1,1,"Harris, Mrs. Henry Birkhardt (Irene Wallach)",female,35,1,0,36973,83.475,C83,S -232,0,3,"Larsson, Mr. Bengt Edvin",male,29,0,0,347067,7.775,,S -233,0,2,"Sjostedt, Mr. Ernst Adolf",male,59,0,0,237442,13.5,,S -234,1,3,"Asplund, Miss. Lillian Gertrud",female,5,4,2,347077,31.3875,,S -235,0,2,"Leyson, Mr. Robert William Norman",male,24,0,0,C.A. 29566,10.5,,S -236,0,3,"Harknett, Miss. Alice Phoebe",female,,0,0,W./C. 6609,7.55,,S -237,0,2,"Hold, Mr. Stephen",male,44,1,0,26707,26,,S -238,1,2,"Collyer, Miss. Marjorie ""Lottie""",female,8,0,2,C.A. 31921,26.25,,S -239,0,2,"Pengelly, Mr. Frederick William",male,19,0,0,28665,10.5,,S -240,0,2,"Hunt, Mr. George Henry",male,33,0,0,SCO/W 1585,12.275,,S -241,0,3,"Zabour, Miss. Thamine",female,,1,0,2665,14.4542,,C -242,1,3,"Murphy, Miss. Katherine ""Kate""",female,,1,0,367230,15.5,,Q -243,0,2,"Coleridge, Mr. Reginald Charles",male,29,0,0,W./C. 14263,10.5,,S -244,0,3,"Maenpaa, Mr. Matti Alexanteri",male,22,0,0,STON/O 2. 3101275,7.125,,S -245,0,3,"Attalah, Mr. Sleiman",male,30,0,0,2694,7.225,,C -246,0,1,"Minahan, Dr. William Edward",male,44,2,0,19928,90,C78,Q -247,0,3,"Lindahl, Miss. Agda Thorilda Viktoria",female,25,0,0,347071,7.775,,S -248,1,2,"Hamalainen, Mrs. William (Anna)",female,24,0,2,250649,14.5,,S -249,1,1,"Beckwith, Mr. Richard Leonard",male,37,1,1,11751,52.5542,D35,S -250,0,2,"Carter, Rev. Ernest Courtenay",male,54,1,0,244252,26,,S -251,0,3,"Reed, Mr. James George",male,,0,0,362316,7.25,,S -252,0,3,"Strom, Mrs. Wilhelm (Elna Matilda Persson)",female,29,1,1,347054,10.4625,G6,S -253,0,1,"Stead, Mr. William Thomas",male,62,0,0,113514,26.55,C87,S -254,0,3,"Lobb, Mr. William Arthur",male,30,1,0,A/5. 3336,16.1,,S -255,0,3,"Rosblom, Mrs. Viktor (Helena Wilhelmina)",female,41,0,2,370129,20.2125,,S -256,1,3,"Touma, Mrs. Darwis (Hanne Youssef Razi)",female,29,0,2,2650,15.2458,,C -257,1,1,"Thorne, Mrs. Gertrude Maybelle",female,,0,0,PC 17585,79.2,,C -258,1,1,"Cherry, Miss. Gladys",female,30,0,0,110152,86.5,B77,S -259,1,1,"Ward, Miss. Anna",female,35,0,0,PC 17755,512.3292,,C -260,1,2,"Parrish, Mrs. (Lutie Davis)",female,50,0,1,230433,26,,S -261,0,3,"Smith, Mr. Thomas",male,,0,0,384461,7.75,,Q -262,1,3,"Asplund, Master. Edvin Rojj Felix",male,3,4,2,347077,31.3875,,S -263,0,1,"Taussig, Mr. Emil",male,52,1,1,110413,79.65,E67,S -264,0,1,"Harrison, Mr. William",male,40,0,0,112059,0,B94,S -265,0,3,"Henry, Miss. Delia",female,,0,0,382649,7.75,,Q -266,0,2,"Reeves, Mr. David",male,36,0,0,C.A. 17248,10.5,,S -267,0,3,"Panula, Mr. Ernesti Arvid",male,16,4,1,3101295,39.6875,,S -268,1,3,"Persson, Mr. Ernst Ulrik",male,25,1,0,347083,7.775,,S -269,1,1,"Graham, Mrs. William Thompson (Edith Junkins)",female,58,0,1,PC 17582,153.4625,C125,S -270,1,1,"Bissette, Miss. Amelia",female,35,0,0,PC 17760,135.6333,C99,S -271,0,1,"Cairns, Mr. Alexander",male,,0,0,113798,31,,S -272,1,3,"Tornquist, Mr. William Henry",male,25,0,0,LINE,0,,S -273,1,2,"Mellinger, Mrs. (Elizabeth Anne Maidment)",female,41,0,1,250644,19.5,,S -274,0,1,"Natsch, Mr. Charles H",male,37,0,1,PC 17596,29.7,C118,C -275,1,3,"Healy, Miss. Hanora ""Nora""",female,,0,0,370375,7.75,,Q -276,1,1,"Andrews, Miss. Kornelia Theodosia",female,63,1,0,13502,77.9583,D7,S -277,0,3,"Lindblom, Miss. Augusta Charlotta",female,45,0,0,347073,7.75,,S -278,0,2,"Parkes, Mr. Francis ""Frank""",male,,0,0,239853,0,,S -279,0,3,"Rice, Master. Eric",male,7,4,1,382652,29.125,,Q -280,1,3,"Abbott, Mrs. Stanton (Rosa Hunt)",female,35,1,1,C.A. 2673,20.25,,S -281,0,3,"Duane, Mr. Frank",male,65,0,0,336439,7.75,,Q -282,0,3,"Olsson, Mr. Nils Johan Goransson",male,28,0,0,347464,7.8542,,S -283,0,3,"de Pelsmaeker, Mr. Alfons",male,16,0,0,345778,9.5,,S -284,1,3,"Dorking, Mr. Edward Arthur",male,19,0,0,A/5. 10482,8.05,,S -285,0,1,"Smith, Mr. Richard William",male,,0,0,113056,26,A19,S -286,0,3,"Stankovic, Mr. Ivan",male,33,0,0,349239,8.6625,,C -287,1,3,"de Mulder, Mr. Theodore",male,30,0,0,345774,9.5,,S -288,0,3,"Naidenoff, Mr. Penko",male,22,0,0,349206,7.8958,,S -289,1,2,"Hosono, Mr. Masabumi",male,42,0,0,237798,13,,S -290,1,3,"Connolly, Miss. Kate",female,22,0,0,370373,7.75,,Q -291,1,1,"Barber, Miss. Ellen ""Nellie""",female,26,0,0,19877,78.85,,S -292,1,1,"Bishop, Mrs. Dickinson H (Helen Walton)",female,19,1,0,11967,91.0792,B49,C -293,0,2,"Levy, Mr. Rene Jacques",male,36,0,0,SC/Paris 2163,12.875,D,C -294,0,3,"Haas, Miss. Aloisia",female,24,0,0,349236,8.85,,S -295,0,3,"Mineff, Mr. Ivan",male,24,0,0,349233,7.8958,,S -296,0,1,"Lewy, Mr. Ervin G",male,,0,0,PC 17612,27.7208,,C -297,0,3,"Hanna, Mr. Mansour",male,23.5,0,0,2693,7.2292,,C -298,0,1,"Allison, Miss. Helen Loraine",female,2,1,2,113781,151.55,C22 C26,S -299,1,1,"Saalfeld, Mr. Adolphe",male,,0,0,19988,30.5,C106,S -300,1,1,"Baxter, Mrs. James (Helene DeLaudeniere Chaput)",female,50,0,1,PC 17558,247.5208,B58 B60,C -301,1,3,"Kelly, Miss. Anna Katherine ""Annie Kate""",female,,0,0,9234,7.75,,Q -302,1,3,"McCoy, Mr. Bernard",male,,2,0,367226,23.25,,Q -303,0,3,"Johnson, Mr. William Cahoone Jr",male,19,0,0,LINE,0,,S -304,1,2,"Keane, Miss. Nora A",female,,0,0,226593,12.35,E101,Q -305,0,3,"Williams, Mr. Howard Hugh ""Harry""",male,,0,0,A/5 2466,8.05,,S -306,1,1,"Allison, Master. Hudson Trevor",male,0.92,1,2,113781,151.55,C22 C26,S -307,1,1,"Fleming, Miss. Margaret",female,,0,0,17421,110.8833,,C -308,1,1,"Penasco y Castellana, Mrs. Victor de Satode (Maria Josefa Perez de Soto y Vallejo)",female,17,1,0,PC 17758,108.9,C65,C -309,0,2,"Abelson, Mr. Samuel",male,30,1,0,P/PP 3381,24,,C -310,1,1,"Francatelli, Miss. Laura Mabel",female,30,0,0,PC 17485,56.9292,E36,C -311,1,1,"Hays, Miss. Margaret Bechstein",female,24,0,0,11767,83.1583,C54,C -312,1,1,"Ryerson, Miss. Emily Borie",female,18,2,2,PC 17608,262.375,B57 B59 B63 B66,C -313,0,2,"Lahtinen, Mrs. William (Anna Sylfven)",female,26,1,1,250651,26,,S -314,0,3,"Hendekovic, Mr. Ignjac",male,28,0,0,349243,7.8958,,S -315,0,2,"Hart, Mr. Benjamin",male,43,1,1,F.C.C. 13529,26.25,,S -316,1,3,"Nilsson, Miss. Helmina Josefina",female,26,0,0,347470,7.8542,,S -317,1,2,"Kantor, Mrs. Sinai (Miriam Sternin)",female,24,1,0,244367,26,,S -318,0,2,"Moraweck, Dr. Ernest",male,54,0,0,29011,14,,S -319,1,1,"Wick, Miss. Mary Natalie",female,31,0,2,36928,164.8667,C7,S -320,1,1,"Spedden, Mrs. Frederic Oakley (Margaretta Corning Stone)",female,40,1,1,16966,134.5,E34,C -321,0,3,"Dennis, Mr. Samuel",male,22,0,0,A/5 21172,7.25,,S -322,0,3,"Danoff, Mr. Yoto",male,27,0,0,349219,7.8958,,S -323,1,2,"Slayter, Miss. Hilda Mary",female,30,0,0,234818,12.35,,Q -324,1,2,"Caldwell, Mrs. Albert Francis (Sylvia Mae Harbaugh)",female,22,1,1,248738,29,,S -325,0,3,"Sage, Mr. George John Jr",male,,8,2,CA. 2343,69.55,,S -326,1,1,"Young, Miss. Marie Grice",female,36,0,0,PC 17760,135.6333,C32,C -327,0,3,"Nysveen, Mr. Johan Hansen",male,61,0,0,345364,6.2375,,S -328,1,2,"Ball, Mrs. (Ada E Hall)",female,36,0,0,28551,13,D,S -329,1,3,"Goldsmith, Mrs. Frank John (Emily Alice Brown)",female,31,1,1,363291,20.525,,S -330,1,1,"Hippach, Miss. Jean Gertrude",female,16,0,1,111361,57.9792,B18,C -331,1,3,"McCoy, Miss. Agnes",female,,2,0,367226,23.25,,Q -332,0,1,"Partner, Mr. Austen",male,45.5,0,0,113043,28.5,C124,S -333,0,1,"Graham, Mr. George Edward",male,38,0,1,PC 17582,153.4625,C91,S -334,0,3,"Vander Planke, Mr. Leo Edmondus",male,16,2,0,345764,18,,S -335,1,1,"Frauenthal, Mrs. Henry William (Clara Heinsheimer)",female,,1,0,PC 17611,133.65,,S -336,0,3,"Denkoff, Mr. Mitto",male,,0,0,349225,7.8958,,S -337,0,1,"Pears, Mr. Thomas Clinton",male,29,1,0,113776,66.6,C2,S -338,1,1,"Burns, Miss. Elizabeth Margaret",female,41,0,0,16966,134.5,E40,C -339,1,3,"Dahl, Mr. Karl Edwart",male,45,0,0,7598,8.05,,S -340,0,1,"Blackwell, Mr. Stephen Weart",male,45,0,0,113784,35.5,T,S -341,1,2,"Navratil, Master. Edmond Roger",male,2,1,1,230080,26,F2,S -342,1,1,"Fortune, Miss. Alice Elizabeth",female,24,3,2,19950,263,C23 C25 C27,S -343,0,2,"Collander, Mr. Erik Gustaf",male,28,0,0,248740,13,,S -344,0,2,"Sedgwick, Mr. Charles Frederick Waddington",male,25,0,0,244361,13,,S -345,0,2,"Fox, Mr. Stanley Hubert",male,36,0,0,229236,13,,S -346,1,2,"Brown, Miss. Amelia ""Mildred""",female,24,0,0,248733,13,F33,S -347,1,2,"Smith, Miss. Marion Elsie",female,40,0,0,31418,13,,S -348,1,3,"Davison, Mrs. Thomas Henry (Mary E Finck)",female,,1,0,386525,16.1,,S -349,1,3,"Coutts, Master. William Loch ""William""",male,3,1,1,C.A. 37671,15.9,,S -350,0,3,"Dimic, Mr. Jovan",male,42,0,0,315088,8.6625,,S -351,0,3,"Odahl, Mr. Nils Martin",male,23,0,0,7267,9.225,,S -352,0,1,"Williams-Lambert, Mr. Fletcher Fellows",male,,0,0,113510,35,C128,S -353,0,3,"Elias, Mr. Tannous",male,15,1,1,2695,7.2292,,C -354,0,3,"Arnold-Franchi, Mr. Josef",male,25,1,0,349237,17.8,,S -355,0,3,"Yousif, Mr. Wazli",male,,0,0,2647,7.225,,C -356,0,3,"Vanden Steen, Mr. Leo Peter",male,28,0,0,345783,9.5,,S -357,1,1,"Bowerman, Miss. Elsie Edith",female,22,0,1,113505,55,E33,S -358,0,2,"Funk, Miss. Annie Clemmer",female,38,0,0,237671,13,,S -359,1,3,"McGovern, Miss. Mary",female,,0,0,330931,7.8792,,Q -360,1,3,"Mockler, Miss. Helen Mary ""Ellie""",female,,0,0,330980,7.8792,,Q -361,0,3,"Skoog, Mr. Wilhelm",male,40,1,4,347088,27.9,,S -362,0,2,"del Carlo, Mr. Sebastiano",male,29,1,0,SC/PARIS 2167,27.7208,,C -363,0,3,"Barbara, Mrs. (Catherine David)",female,45,0,1,2691,14.4542,,C -364,0,3,"Asim, Mr. Adola",male,35,0,0,SOTON/O.Q. 3101310,7.05,,S -365,0,3,"O'Brien, Mr. Thomas",male,,1,0,370365,15.5,,Q -366,0,3,"Adahl, Mr. Mauritz Nils Martin",male,30,0,0,C 7076,7.25,,S -367,1,1,"Warren, Mrs. Frank Manley (Anna Sophia Atkinson)",female,60,1,0,110813,75.25,D37,C -368,1,3,"Moussa, Mrs. (Mantoura Boulos)",female,,0,0,2626,7.2292,,C -369,1,3,"Jermyn, Miss. Annie",female,,0,0,14313,7.75,,Q -370,1,1,"Aubart, Mme. Leontine Pauline",female,24,0,0,PC 17477,69.3,B35,C -371,1,1,"Harder, Mr. George Achilles",male,25,1,0,11765,55.4417,E50,C -372,0,3,"Wiklund, Mr. Jakob Alfred",male,18,1,0,3101267,6.4958,,S -373,0,3,"Beavan, Mr. William Thomas",male,19,0,0,323951,8.05,,S -374,0,1,"Ringhini, Mr. Sante",male,22,0,0,PC 17760,135.6333,,C -375,0,3,"Palsson, Miss. Stina Viola",female,3,3,1,349909,21.075,,S -376,1,1,"Meyer, Mrs. Edgar Joseph (Leila Saks)",female,,1,0,PC 17604,82.1708,,C -377,1,3,"Landergren, Miss. Aurora Adelia",female,22,0,0,C 7077,7.25,,S -378,0,1,"Widener, Mr. Harry Elkins",male,27,0,2,113503,211.5,C82,C -379,0,3,"Betros, Mr. Tannous",male,20,0,0,2648,4.0125,,C -380,0,3,"Gustafsson, Mr. Karl Gideon",male,19,0,0,347069,7.775,,S -381,1,1,"Bidois, Miss. Rosalie",female,42,0,0,PC 17757,227.525,,C -382,1,3,"Nakid, Miss. Maria (""Mary"")",female,1,0,2,2653,15.7417,,C -383,0,3,"Tikkanen, Mr. Juho",male,32,0,0,STON/O 2. 3101293,7.925,,S -384,1,1,"Holverson, Mrs. Alexander Oskar (Mary Aline Towner)",female,35,1,0,113789,52,,S -385,0,3,"Plotcharsky, Mr. Vasil",male,,0,0,349227,7.8958,,S -386,0,2,"Davies, Mr. Charles Henry",male,18,0,0,S.O.C. 14879,73.5,,S -387,0,3,"Goodwin, Master. Sidney Leonard",male,1,5,2,CA 2144,46.9,,S -388,1,2,"Buss, Miss. Kate",female,36,0,0,27849,13,,S -389,0,3,"Sadlier, Mr. Matthew",male,,0,0,367655,7.7292,,Q -390,1,2,"Lehmann, Miss. Bertha",female,17,0,0,SC 1748,12,,C -391,1,1,"Carter, Mr. William Ernest",male,36,1,2,113760,120,B96 B98,S -392,1,3,"Jansson, Mr. Carl Olof",male,21,0,0,350034,7.7958,,S -393,0,3,"Gustafsson, Mr. Johan Birger",male,28,2,0,3101277,7.925,,S -394,1,1,"Newell, Miss. Marjorie",female,23,1,0,35273,113.275,D36,C -395,1,3,"Sandstrom, Mrs. Hjalmar (Agnes Charlotta Bengtsson)",female,24,0,2,PP 9549,16.7,G6,S -396,0,3,"Johansson, Mr. Erik",male,22,0,0,350052,7.7958,,S -397,0,3,"Olsson, Miss. Elina",female,31,0,0,350407,7.8542,,S -398,0,2,"McKane, Mr. Peter David",male,46,0,0,28403,26,,S -399,0,2,"Pain, Dr. Alfred",male,23,0,0,244278,10.5,,S -400,1,2,"Trout, Mrs. William H (Jessie L)",female,28,0,0,240929,12.65,,S -401,1,3,"Niskanen, Mr. Juha",male,39,0,0,STON/O 2. 3101289,7.925,,S -402,0,3,"Adams, Mr. John",male,26,0,0,341826,8.05,,S -403,0,3,"Jussila, Miss. Mari Aina",female,21,1,0,4137,9.825,,S -404,0,3,"Hakkarainen, Mr. Pekka Pietari",male,28,1,0,STON/O2. 3101279,15.85,,S -405,0,3,"Oreskovic, Miss. Marija",female,20,0,0,315096,8.6625,,S -406,0,2,"Gale, Mr. Shadrach",male,34,1,0,28664,21,,S -407,0,3,"Widegren, Mr. Carl/Charles Peter",male,51,0,0,347064,7.75,,S -408,1,2,"Richards, Master. William Rowe",male,3,1,1,29106,18.75,,S -409,0,3,"Birkeland, Mr. Hans Martin Monsen",male,21,0,0,312992,7.775,,S -410,0,3,"Lefebre, Miss. Ida",female,,3,1,4133,25.4667,,S -411,0,3,"Sdycoff, Mr. Todor",male,,0,0,349222,7.8958,,S -412,0,3,"Hart, Mr. Henry",male,,0,0,394140,6.8583,,Q -413,1,1,"Minahan, Miss. Daisy E",female,33,1,0,19928,90,C78,Q -414,0,2,"Cunningham, Mr. Alfred Fleming",male,,0,0,239853,0,,S -415,1,3,"Sundman, Mr. Johan Julian",male,44,0,0,STON/O 2. 3101269,7.925,,S -416,0,3,"Meek, Mrs. Thomas (Annie Louise Rowley)",female,,0,0,343095,8.05,,S -417,1,2,"Drew, Mrs. James Vivian (Lulu Thorne Christian)",female,34,1,1,28220,32.5,,S -418,1,2,"Silven, Miss. Lyyli Karoliina",female,18,0,2,250652,13,,S -419,0,2,"Matthews, Mr. William John",male,30,0,0,28228,13,,S -420,0,3,"Van Impe, Miss. Catharina",female,10,0,2,345773,24.15,,S -421,0,3,"Gheorgheff, Mr. Stanio",male,,0,0,349254,7.8958,,C -422,0,3,"Charters, Mr. David",male,21,0,0,A/5. 13032,7.7333,,Q -423,0,3,"Zimmerman, Mr. Leo",male,29,0,0,315082,7.875,,S -424,0,3,"Danbom, Mrs. Ernst Gilbert (Anna Sigrid Maria Brogren)",female,28,1,1,347080,14.4,,S -425,0,3,"Rosblom, Mr. Viktor Richard",male,18,1,1,370129,20.2125,,S -426,0,3,"Wiseman, Mr. Phillippe",male,,0,0,A/4. 34244,7.25,,S -427,1,2,"Clarke, Mrs. Charles V (Ada Maria Winfield)",female,28,1,0,2003,26,,S -428,1,2,"Phillips, Miss. Kate Florence (""Mrs Kate Louise Phillips Marshall"")",female,19,0,0,250655,26,,S -429,0,3,"Flynn, Mr. James",male,,0,0,364851,7.75,,Q -430,1,3,"Pickard, Mr. Berk (Berk Trembisky)",male,32,0,0,SOTON/O.Q. 392078,8.05,E10,S -431,1,1,"Bjornstrom-Steffansson, Mr. Mauritz Hakan",male,28,0,0,110564,26.55,C52,S -432,1,3,"Thorneycroft, Mrs. Percival (Florence Kate White)",female,,1,0,376564,16.1,,S -433,1,2,"Louch, Mrs. Charles Alexander (Alice Adelaide Slow)",female,42,1,0,SC/AH 3085,26,,S -434,0,3,"Kallio, Mr. Nikolai Erland",male,17,0,0,STON/O 2. 3101274,7.125,,S -435,0,1,"Silvey, Mr. William Baird",male,50,1,0,13507,55.9,E44,S -436,1,1,"Carter, Miss. Lucile Polk",female,14,1,2,113760,120,B96 B98,S -437,0,3,"Ford, Miss. Doolina Margaret ""Daisy""",female,21,2,2,W./C. 6608,34.375,,S -438,1,2,"Richards, Mrs. Sidney (Emily Hocking)",female,24,2,3,29106,18.75,,S -439,0,1,"Fortune, Mr. Mark",male,64,1,4,19950,263,C23 C25 C27,S -440,0,2,"Kvillner, Mr. Johan Henrik Johannesson",male,31,0,0,C.A. 18723,10.5,,S -441,1,2,"Hart, Mrs. Benjamin (Esther Ada Bloomfield)",female,45,1,1,F.C.C. 13529,26.25,,S -442,0,3,"Hampe, Mr. Leon",male,20,0,0,345769,9.5,,S -443,0,3,"Petterson, Mr. Johan Emil",male,25,1,0,347076,7.775,,S -444,1,2,"Reynaldo, Ms. Encarnacion",female,28,0,0,230434,13,,S -445,1,3,"Johannesen-Bratthammer, Mr. Bernt",male,,0,0,65306,8.1125,,S -446,1,1,"Dodge, Master. Washington",male,4,0,2,33638,81.8583,A34,S -447,1,2,"Mellinger, Miss. Madeleine Violet",female,13,0,1,250644,19.5,,S -448,1,1,"Seward, Mr. Frederic Kimber",male,34,0,0,113794,26.55,,S -449,1,3,"Baclini, Miss. Marie Catherine",female,5,2,1,2666,19.2583,,C -450,1,1,"Peuchen, Major. Arthur Godfrey",male,52,0,0,113786,30.5,C104,S -451,0,2,"West, Mr. Edwy Arthur",male,36,1,2,C.A. 34651,27.75,,S -452,0,3,"Hagland, Mr. Ingvald Olai Olsen",male,,1,0,65303,19.9667,,S -453,0,1,"Foreman, Mr. Benjamin Laventall",male,30,0,0,113051,27.75,C111,C -454,1,1,"Goldenberg, Mr. Samuel L",male,49,1,0,17453,89.1042,C92,C -455,0,3,"Peduzzi, Mr. Joseph",male,,0,0,A/5 2817,8.05,,S -456,1,3,"Jalsevac, Mr. Ivan",male,29,0,0,349240,7.8958,,C -457,0,1,"Millet, Mr. Francis Davis",male,65,0,0,13509,26.55,E38,S -458,1,1,"Kenyon, Mrs. Frederick R (Marion)",female,,1,0,17464,51.8625,D21,S -459,1,2,"Toomey, Miss. Ellen",female,50,0,0,F.C.C. 13531,10.5,,S -460,0,3,"O'Connor, Mr. Maurice",male,,0,0,371060,7.75,,Q -461,1,1,"Anderson, Mr. Harry",male,48,0,0,19952,26.55,E12,S -462,0,3,"Morley, Mr. William",male,34,0,0,364506,8.05,,S -463,0,1,"Gee, Mr. Arthur H",male,47,0,0,111320,38.5,E63,S -464,0,2,"Milling, Mr. Jacob Christian",male,48,0,0,234360,13,,S -465,0,3,"Maisner, Mr. Simon",male,,0,0,A/S 2816,8.05,,S -466,0,3,"Goncalves, Mr. Manuel Estanslas",male,38,0,0,SOTON/O.Q. 3101306,7.05,,S -467,0,2,"Campbell, Mr. William",male,,0,0,239853,0,,S -468,0,1,"Smart, Mr. John Montgomery",male,56,0,0,113792,26.55,,S -469,0,3,"Scanlan, Mr. James",male,,0,0,36209,7.725,,Q -470,1,3,"Baclini, Miss. Helene Barbara",female,0.75,2,1,2666,19.2583,,C -471,0,3,"Keefe, Mr. Arthur",male,,0,0,323592,7.25,,S -472,0,3,"Cacic, Mr. Luka",male,38,0,0,315089,8.6625,,S -473,1,2,"West, Mrs. Edwy Arthur (Ada Mary Worth)",female,33,1,2,C.A. 34651,27.75,,S -474,1,2,"Jerwan, Mrs. Amin S (Marie Marthe Thuillard)",female,23,0,0,SC/AH Basle 541,13.7917,D,C -475,0,3,"Strandberg, Miss. Ida Sofia",female,22,0,0,7553,9.8375,,S -476,0,1,"Clifford, Mr. George Quincy",male,,0,0,110465,52,A14,S -477,0,2,"Renouf, Mr. Peter Henry",male,34,1,0,31027,21,,S -478,0,3,"Braund, Mr. Lewis Richard",male,29,1,0,3460,7.0458,,S -479,0,3,"Karlsson, Mr. Nils August",male,22,0,0,350060,7.5208,,S -480,1,3,"Hirvonen, Miss. Hildur E",female,2,0,1,3101298,12.2875,,S -481,0,3,"Goodwin, Master. Harold Victor",male,9,5,2,CA 2144,46.9,,S -482,0,2,"Frost, Mr. Anthony Wood ""Archie""",male,,0,0,239854,0,,S -483,0,3,"Rouse, Mr. Richard Henry",male,50,0,0,A/5 3594,8.05,,S -484,1,3,"Turkula, Mrs. (Hedwig)",female,63,0,0,4134,9.5875,,S -485,1,1,"Bishop, Mr. Dickinson H",male,25,1,0,11967,91.0792,B49,C -486,0,3,"Lefebre, Miss. Jeannie",female,,3,1,4133,25.4667,,S -487,1,1,"Hoyt, Mrs. Frederick Maxfield (Jane Anne Forby)",female,35,1,0,19943,90,C93,S -488,0,1,"Kent, Mr. Edward Austin",male,58,0,0,11771,29.7,B37,C -489,0,3,"Somerton, Mr. Francis William",male,30,0,0,A.5. 18509,8.05,,S -490,1,3,"Coutts, Master. Eden Leslie ""Neville""",male,9,1,1,C.A. 37671,15.9,,S -491,0,3,"Hagland, Mr. Konrad Mathias Reiersen",male,,1,0,65304,19.9667,,S -492,0,3,"Windelov, Mr. Einar",male,21,0,0,SOTON/OQ 3101317,7.25,,S -493,0,1,"Molson, Mr. Harry Markland",male,55,0,0,113787,30.5,C30,S -494,0,1,"Artagaveytia, Mr. Ramon",male,71,0,0,PC 17609,49.5042,,C -495,0,3,"Stanley, Mr. Edward Roland",male,21,0,0,A/4 45380,8.05,,S -496,0,3,"Yousseff, Mr. Gerious",male,,0,0,2627,14.4583,,C -497,1,1,"Eustis, Miss. Elizabeth Mussey",female,54,1,0,36947,78.2667,D20,C -498,0,3,"Shellard, Mr. Frederick William",male,,0,0,C.A. 6212,15.1,,S -499,0,1,"Allison, Mrs. Hudson J C (Bessie Waldo Daniels)",female,25,1,2,113781,151.55,C22 C26,S -500,0,3,"Svensson, Mr. Olof",male,24,0,0,350035,7.7958,,S -501,0,3,"Calic, Mr. Petar",male,17,0,0,315086,8.6625,,S -502,0,3,"Canavan, Miss. Mary",female,21,0,0,364846,7.75,,Q -503,0,3,"O'Sullivan, Miss. Bridget Mary",female,,0,0,330909,7.6292,,Q -504,0,3,"Laitinen, Miss. Kristina Sofia",female,37,0,0,4135,9.5875,,S -505,1,1,"Maioni, Miss. Roberta",female,16,0,0,110152,86.5,B79,S -506,0,1,"Penasco y Castellana, Mr. Victor de Satode",male,18,1,0,PC 17758,108.9,C65,C -507,1,2,"Quick, Mrs. Frederick Charles (Jane Richards)",female,33,0,2,26360,26,,S -508,1,1,"Bradley, Mr. George (""George Arthur Brayton"")",male,,0,0,111427,26.55,,S -509,0,3,"Olsen, Mr. Henry Margido",male,28,0,0,C 4001,22.525,,S -510,1,3,"Lang, Mr. Fang",male,26,0,0,1601,56.4958,,S -511,1,3,"Daly, Mr. Eugene Patrick",male,29,0,0,382651,7.75,,Q -512,0,3,"Webber, Mr. James",male,,0,0,SOTON/OQ 3101316,8.05,,S -513,1,1,"McGough, Mr. James Robert",male,36,0,0,PC 17473,26.2875,E25,S -514,1,1,"Rothschild, Mrs. Martin (Elizabeth L. Barrett)",female,54,1,0,PC 17603,59.4,,C -515,0,3,"Coleff, Mr. Satio",male,24,0,0,349209,7.4958,,S -516,0,1,"Walker, Mr. William Anderson",male,47,0,0,36967,34.0208,D46,S -517,1,2,"Lemore, Mrs. (Amelia Milley)",female,34,0,0,C.A. 34260,10.5,F33,S -518,0,3,"Ryan, Mr. Patrick",male,,0,0,371110,24.15,,Q -519,1,2,"Angle, Mrs. William A (Florence ""Mary"" Agnes Hughes)",female,36,1,0,226875,26,,S -520,0,3,"Pavlovic, Mr. Stefo",male,32,0,0,349242,7.8958,,S -521,1,1,"Perreault, Miss. Anne",female,30,0,0,12749,93.5,B73,S -522,0,3,"Vovk, Mr. Janko",male,22,0,0,349252,7.8958,,S -523,0,3,"Lahoud, Mr. Sarkis",male,,0,0,2624,7.225,,C -524,1,1,"Hippach, Mrs. Louis Albert (Ida Sophia Fischer)",female,44,0,1,111361,57.9792,B18,C -525,0,3,"Kassem, Mr. Fared",male,,0,0,2700,7.2292,,C -526,0,3,"Farrell, Mr. James",male,40.5,0,0,367232,7.75,,Q -527,1,2,"Ridsdale, Miss. Lucy",female,50,0,0,W./C. 14258,10.5,,S -528,0,1,"Farthing, Mr. John",male,,0,0,PC 17483,221.7792,C95,S -529,0,3,"Salonen, Mr. Johan Werner",male,39,0,0,3101296,7.925,,S -530,0,2,"Hocking, Mr. Richard George",male,23,2,1,29104,11.5,,S -531,1,2,"Quick, Miss. Phyllis May",female,2,1,1,26360,26,,S -532,0,3,"Toufik, Mr. Nakli",male,,0,0,2641,7.2292,,C -533,0,3,"Elias, Mr. Joseph Jr",male,17,1,1,2690,7.2292,,C -534,1,3,"Peter, Mrs. Catherine (Catherine Rizk)",female,,0,2,2668,22.3583,,C -535,0,3,"Cacic, Miss. Marija",female,30,0,0,315084,8.6625,,S -536,1,2,"Hart, Miss. Eva Miriam",female,7,0,2,F.C.C. 13529,26.25,,S -537,0,1,"Butt, Major. Archibald Willingham",male,45,0,0,113050,26.55,B38,S -538,1,1,"LeRoy, Miss. Bertha",female,30,0,0,PC 17761,106.425,,C -539,0,3,"Risien, Mr. Samuel Beard",male,,0,0,364498,14.5,,S -540,1,1,"Frolicher, Miss. Hedwig Margaritha",female,22,0,2,13568,49.5,B39,C -541,1,1,"Crosby, Miss. Harriet R",female,36,0,2,WE/P 5735,71,B22,S -542,0,3,"Andersson, Miss. Ingeborg Constanzia",female,9,4,2,347082,31.275,,S -543,0,3,"Andersson, Miss. Sigrid Elisabeth",female,11,4,2,347082,31.275,,S -544,1,2,"Beane, Mr. Edward",male,32,1,0,2908,26,,S -545,0,1,"Douglas, Mr. Walter Donald",male,50,1,0,PC 17761,106.425,C86,C -546,0,1,"Nicholson, Mr. Arthur Ernest",male,64,0,0,693,26,,S -547,1,2,"Beane, Mrs. Edward (Ethel Clarke)",female,19,1,0,2908,26,,S -548,1,2,"Padro y Manent, Mr. Julian",male,,0,0,SC/PARIS 2146,13.8625,,C -549,0,3,"Goldsmith, Mr. Frank John",male,33,1,1,363291,20.525,,S -550,1,2,"Davies, Master. John Morgan Jr",male,8,1,1,C.A. 33112,36.75,,S -551,1,1,"Thayer, Mr. John Borland Jr",male,17,0,2,17421,110.8833,C70,C -552,0,2,"Sharp, Mr. Percival James R",male,27,0,0,244358,26,,S -553,0,3,"O'Brien, Mr. Timothy",male,,0,0,330979,7.8292,,Q -554,1,3,"Leeni, Mr. Fahim (""Philip Zenni"")",male,22,0,0,2620,7.225,,C -555,1,3,"Ohman, Miss. Velin",female,22,0,0,347085,7.775,,S -556,0,1,"Wright, Mr. George",male,62,0,0,113807,26.55,,S -557,1,1,"Duff Gordon, Lady. (Lucille Christiana Sutherland) (""Mrs Morgan"")",female,48,1,0,11755,39.6,A16,C -558,0,1,"Robbins, Mr. Victor",male,,0,0,PC 17757,227.525,,C -559,1,1,"Taussig, Mrs. Emil (Tillie Mandelbaum)",female,39,1,1,110413,79.65,E67,S -560,1,3,"de Messemaeker, Mrs. Guillaume Joseph (Emma)",female,36,1,0,345572,17.4,,S -561,0,3,"Morrow, Mr. Thomas Rowan",male,,0,0,372622,7.75,,Q -562,0,3,"Sivic, Mr. Husein",male,40,0,0,349251,7.8958,,S -563,0,2,"Norman, Mr. Robert Douglas",male,28,0,0,218629,13.5,,S -564,0,3,"Simmons, Mr. John",male,,0,0,SOTON/OQ 392082,8.05,,S -565,0,3,"Meanwell, Miss. (Marion Ogden)",female,,0,0,SOTON/O.Q. 392087,8.05,,S -566,0,3,"Davies, Mr. Alfred J",male,24,2,0,A/4 48871,24.15,,S -567,0,3,"Stoytcheff, Mr. Ilia",male,19,0,0,349205,7.8958,,S -568,0,3,"Palsson, Mrs. Nils (Alma Cornelia Berglund)",female,29,0,4,349909,21.075,,S -569,0,3,"Doharr, Mr. Tannous",male,,0,0,2686,7.2292,,C -570,1,3,"Jonsson, Mr. Carl",male,32,0,0,350417,7.8542,,S -571,1,2,"Harris, Mr. George",male,62,0,0,S.W./PP 752,10.5,,S -572,1,1,"Appleton, Mrs. Edward Dale (Charlotte Lamson)",female,53,2,0,11769,51.4792,C101,S -573,1,1,"Flynn, Mr. John Irwin (""Irving"")",male,36,0,0,PC 17474,26.3875,E25,S -574,1,3,"Kelly, Miss. Mary",female,,0,0,14312,7.75,,Q -575,0,3,"Rush, Mr. Alfred George John",male,16,0,0,A/4. 20589,8.05,,S -576,0,3,"Patchett, Mr. George",male,19,0,0,358585,14.5,,S -577,1,2,"Garside, Miss. Ethel",female,34,0,0,243880,13,,S -578,1,1,"Silvey, Mrs. William Baird (Alice Munger)",female,39,1,0,13507,55.9,E44,S -579,0,3,"Caram, Mrs. Joseph (Maria Elias)",female,,1,0,2689,14.4583,,C -580,1,3,"Jussila, Mr. Eiriik",male,32,0,0,STON/O 2. 3101286,7.925,,S -581,1,2,"Christy, Miss. Julie Rachel",female,25,1,1,237789,30,,S -582,1,1,"Thayer, Mrs. John Borland (Marian Longstreth Morris)",female,39,1,1,17421,110.8833,C68,C -583,0,2,"Downton, Mr. William James",male,54,0,0,28403,26,,S -584,0,1,"Ross, Mr. John Hugo",male,36,0,0,13049,40.125,A10,C -585,0,3,"Paulner, Mr. Uscher",male,,0,0,3411,8.7125,,C -586,1,1,"Taussig, Miss. Ruth",female,18,0,2,110413,79.65,E68,S -587,0,2,"Jarvis, Mr. John Denzil",male,47,0,0,237565,15,,S -588,1,1,"Frolicher-Stehli, Mr. Maxmillian",male,60,1,1,13567,79.2,B41,C -589,0,3,"Gilinski, Mr. Eliezer",male,22,0,0,14973,8.05,,S -590,0,3,"Murdlin, Mr. Joseph",male,,0,0,A./5. 3235,8.05,,S -591,0,3,"Rintamaki, Mr. Matti",male,35,0,0,STON/O 2. 3101273,7.125,,S -592,1,1,"Stephenson, Mrs. Walter Bertram (Martha Eustis)",female,52,1,0,36947,78.2667,D20,C -593,0,3,"Elsbury, Mr. William James",male,47,0,0,A/5 3902,7.25,,S -594,0,3,"Bourke, Miss. Mary",female,,0,2,364848,7.75,,Q -595,0,2,"Chapman, Mr. John Henry",male,37,1,0,SC/AH 29037,26,,S -596,0,3,"Van Impe, Mr. Jean Baptiste",male,36,1,1,345773,24.15,,S -597,1,2,"Leitch, Miss. Jessie Wills",female,,0,0,248727,33,,S -598,0,3,"Johnson, Mr. Alfred",male,49,0,0,LINE,0,,S -599,0,3,"Boulos, Mr. Hanna",male,,0,0,2664,7.225,,C -600,1,1,"Duff Gordon, Sir. Cosmo Edmund (""Mr Morgan"")",male,49,1,0,PC 17485,56.9292,A20,C -601,1,2,"Jacobsohn, Mrs. Sidney Samuel (Amy Frances Christy)",female,24,2,1,243847,27,,S -602,0,3,"Slabenoff, Mr. Petco",male,,0,0,349214,7.8958,,S -603,0,1,"Harrington, Mr. Charles H",male,,0,0,113796,42.4,,S -604,0,3,"Torber, Mr. Ernst William",male,44,0,0,364511,8.05,,S -605,1,1,"Homer, Mr. Harry (""Mr E Haven"")",male,35,0,0,111426,26.55,,C -606,0,3,"Lindell, Mr. Edvard Bengtsson",male,36,1,0,349910,15.55,,S -607,0,3,"Karaic, Mr. Milan",male,30,0,0,349246,7.8958,,S -608,1,1,"Daniel, Mr. Robert Williams",male,27,0,0,113804,30.5,,S -609,1,2,"Laroche, Mrs. Joseph (Juliette Marie Louise Lafargue)",female,22,1,2,SC/Paris 2123,41.5792,,C -610,1,1,"Shutes, Miss. Elizabeth W",female,40,0,0,PC 17582,153.4625,C125,S -611,0,3,"Andersson, Mrs. Anders Johan (Alfrida Konstantia Brogren)",female,39,1,5,347082,31.275,,S -612,0,3,"Jardin, Mr. Jose Neto",male,,0,0,SOTON/O.Q. 3101305,7.05,,S -613,1,3,"Murphy, Miss. Margaret Jane",female,,1,0,367230,15.5,,Q -614,0,3,"Horgan, Mr. John",male,,0,0,370377,7.75,,Q -615,0,3,"Brocklebank, Mr. William Alfred",male,35,0,0,364512,8.05,,S -616,1,2,"Herman, Miss. Alice",female,24,1,2,220845,65,,S -617,0,3,"Danbom, Mr. Ernst Gilbert",male,34,1,1,347080,14.4,,S -618,0,3,"Lobb, Mrs. William Arthur (Cordelia K Stanlick)",female,26,1,0,A/5. 3336,16.1,,S -619,1,2,"Becker, Miss. Marion Louise",female,4,2,1,230136,39,F4,S -620,0,2,"Gavey, Mr. Lawrence",male,26,0,0,31028,10.5,,S -621,0,3,"Yasbeck, Mr. Antoni",male,27,1,0,2659,14.4542,,C -622,1,1,"Kimball, Mr. Edwin Nelson Jr",male,42,1,0,11753,52.5542,D19,S -623,1,3,"Nakid, Mr. Sahid",male,20,1,1,2653,15.7417,,C -624,0,3,"Hansen, Mr. Henry Damsgaard",male,21,0,0,350029,7.8542,,S -625,0,3,"Bowen, Mr. David John ""Dai""",male,21,0,0,54636,16.1,,S -626,0,1,"Sutton, Mr. Frederick",male,61,0,0,36963,32.3208,D50,S -627,0,2,"Kirkland, Rev. Charles Leonard",male,57,0,0,219533,12.35,,Q -628,1,1,"Longley, Miss. Gretchen Fiske",female,21,0,0,13502,77.9583,D9,S -629,0,3,"Bostandyeff, Mr. Guentcho",male,26,0,0,349224,7.8958,,S -630,0,3,"O'Connell, Mr. Patrick D",male,,0,0,334912,7.7333,,Q -631,1,1,"Barkworth, Mr. Algernon Henry Wilson",male,80,0,0,27042,30,A23,S -632,0,3,"Lundahl, Mr. Johan Svensson",male,51,0,0,347743,7.0542,,S -633,1,1,"Stahelin-Maeglin, Dr. Max",male,32,0,0,13214,30.5,B50,C -634,0,1,"Parr, Mr. William Henry Marsh",male,,0,0,112052,0,,S -635,0,3,"Skoog, Miss. Mabel",female,9,3,2,347088,27.9,,S -636,1,2,"Davis, Miss. Mary",female,28,0,0,237668,13,,S -637,0,3,"Leinonen, Mr. Antti Gustaf",male,32,0,0,STON/O 2. 3101292,7.925,,S -638,0,2,"Collyer, Mr. Harvey",male,31,1,1,C.A. 31921,26.25,,S -639,0,3,"Panula, Mrs. Juha (Maria Emilia Ojala)",female,41,0,5,3101295,39.6875,,S -640,0,3,"Thorneycroft, Mr. Percival",male,,1,0,376564,16.1,,S -641,0,3,"Jensen, Mr. Hans Peder",male,20,0,0,350050,7.8542,,S -642,1,1,"Sagesser, Mlle. Emma",female,24,0,0,PC 17477,69.3,B35,C -643,0,3,"Skoog, Miss. Margit Elizabeth",female,2,3,2,347088,27.9,,S -644,1,3,"Foo, Mr. Choong",male,,0,0,1601,56.4958,,S -645,1,3,"Baclini, Miss. Eugenie",female,0.75,2,1,2666,19.2583,,C -646,1,1,"Harper, Mr. Henry Sleeper",male,48,1,0,PC 17572,76.7292,D33,C -647,0,3,"Cor, Mr. Liudevit",male,19,0,0,349231,7.8958,,S -648,1,1,"Simonius-Blumer, Col. Oberst Alfons",male,56,0,0,13213,35.5,A26,C -649,0,3,"Willey, Mr. Edward",male,,0,0,S.O./P.P. 751,7.55,,S -650,1,3,"Stanley, Miss. Amy Zillah Elsie",female,23,0,0,CA. 2314,7.55,,S -651,0,3,"Mitkoff, Mr. Mito",male,,0,0,349221,7.8958,,S -652,1,2,"Doling, Miss. Elsie",female,18,0,1,231919,23,,S -653,0,3,"Kalvik, Mr. Johannes Halvorsen",male,21,0,0,8475,8.4333,,S -654,1,3,"O'Leary, Miss. Hanora ""Norah""",female,,0,0,330919,7.8292,,Q -655,0,3,"Hegarty, Miss. Hanora ""Nora""",female,18,0,0,365226,6.75,,Q -656,0,2,"Hickman, Mr. Leonard Mark",male,24,2,0,S.O.C. 14879,73.5,,S -657,0,3,"Radeff, Mr. Alexander",male,,0,0,349223,7.8958,,S -658,0,3,"Bourke, Mrs. John (Catherine)",female,32,1,1,364849,15.5,,Q -659,0,2,"Eitemiller, Mr. George Floyd",male,23,0,0,29751,13,,S -660,0,1,"Newell, Mr. Arthur Webster",male,58,0,2,35273,113.275,D48,C -661,1,1,"Frauenthal, Dr. Henry William",male,50,2,0,PC 17611,133.65,,S -662,0,3,"Badt, Mr. Mohamed",male,40,0,0,2623,7.225,,C -663,0,1,"Colley, Mr. Edward Pomeroy",male,47,0,0,5727,25.5875,E58,S -664,0,3,"Coleff, Mr. Peju",male,36,0,0,349210,7.4958,,S -665,1,3,"Lindqvist, Mr. Eino William",male,20,1,0,STON/O 2. 3101285,7.925,,S -666,0,2,"Hickman, Mr. Lewis",male,32,2,0,S.O.C. 14879,73.5,,S -667,0,2,"Butler, Mr. Reginald Fenton",male,25,0,0,234686,13,,S -668,0,3,"Rommetvedt, Mr. Knud Paust",male,,0,0,312993,7.775,,S -669,0,3,"Cook, Mr. Jacob",male,43,0,0,A/5 3536,8.05,,S -670,1,1,"Taylor, Mrs. Elmer Zebley (Juliet Cummins Wright)",female,,1,0,19996,52,C126,S -671,1,2,"Brown, Mrs. Thomas William Solomon (Elizabeth Catherine Ford)",female,40,1,1,29750,39,,S -672,0,1,"Davidson, Mr. Thornton",male,31,1,0,F.C. 12750,52,B71,S -673,0,2,"Mitchell, Mr. Henry Michael",male,70,0,0,C.A. 24580,10.5,,S -674,1,2,"Wilhelms, Mr. Charles",male,31,0,0,244270,13,,S -675,0,2,"Watson, Mr. Ennis Hastings",male,,0,0,239856,0,,S -676,0,3,"Edvardsson, Mr. Gustaf Hjalmar",male,18,0,0,349912,7.775,,S -677,0,3,"Sawyer, Mr. Frederick Charles",male,24.5,0,0,342826,8.05,,S -678,1,3,"Turja, Miss. Anna Sofia",female,18,0,0,4138,9.8417,,S -679,0,3,"Goodwin, Mrs. Frederick (Augusta Tyler)",female,43,1,6,CA 2144,46.9,,S -680,1,1,"Cardeza, Mr. Thomas Drake Martinez",male,36,0,1,PC 17755,512.3292,B51 B53 B55,C -681,0,3,"Peters, Miss. Katie",female,,0,0,330935,8.1375,,Q -682,1,1,"Hassab, Mr. Hammad",male,27,0,0,PC 17572,76.7292,D49,C -683,0,3,"Olsvigen, Mr. Thor Anderson",male,20,0,0,6563,9.225,,S -684,0,3,"Goodwin, Mr. Charles Edward",male,14,5,2,CA 2144,46.9,,S -685,0,2,"Brown, Mr. Thomas William Solomon",male,60,1,1,29750,39,,S -686,0,2,"Laroche, Mr. Joseph Philippe Lemercier",male,25,1,2,SC/Paris 2123,41.5792,,C -687,0,3,"Panula, Mr. Jaako Arnold",male,14,4,1,3101295,39.6875,,S -688,0,3,"Dakic, Mr. Branko",male,19,0,0,349228,10.1708,,S -689,0,3,"Fischer, Mr. Eberhard Thelander",male,18,0,0,350036,7.7958,,S -690,1,1,"Madill, Miss. Georgette Alexandra",female,15,0,1,24160,211.3375,B5,S -691,1,1,"Dick, Mr. Albert Adrian",male,31,1,0,17474,57,B20,S -692,1,3,"Karun, Miss. Manca",female,4,0,1,349256,13.4167,,C -693,1,3,"Lam, Mr. Ali",male,,0,0,1601,56.4958,,S -694,0,3,"Saad, Mr. Khalil",male,25,0,0,2672,7.225,,C -695,0,1,"Weir, Col. John",male,60,0,0,113800,26.55,,S -696,0,2,"Chapman, Mr. Charles Henry",male,52,0,0,248731,13.5,,S -697,0,3,"Kelly, Mr. James",male,44,0,0,363592,8.05,,S -698,1,3,"Mullens, Miss. Katherine ""Katie""",female,,0,0,35852,7.7333,,Q -699,0,1,"Thayer, Mr. John Borland",male,49,1,1,17421,110.8833,C68,C -700,0,3,"Humblen, Mr. Adolf Mathias Nicolai Olsen",male,42,0,0,348121,7.65,F G63,S -701,1,1,"Astor, Mrs. John Jacob (Madeleine Talmadge Force)",female,18,1,0,PC 17757,227.525,C62 C64,C -702,1,1,"Silverthorne, Mr. Spencer Victor",male,35,0,0,PC 17475,26.2875,E24,S -703,0,3,"Barbara, Miss. Saiide",female,18,0,1,2691,14.4542,,C -704,0,3,"Gallagher, Mr. Martin",male,25,0,0,36864,7.7417,,Q -705,0,3,"Hansen, Mr. Henrik Juul",male,26,1,0,350025,7.8542,,S -706,0,2,"Morley, Mr. Henry Samuel (""Mr Henry Marshall"")",male,39,0,0,250655,26,,S -707,1,2,"Kelly, Mrs. Florence ""Fannie""",female,45,0,0,223596,13.5,,S -708,1,1,"Calderhead, Mr. Edward Pennington",male,42,0,0,PC 17476,26.2875,E24,S -709,1,1,"Cleaver, Miss. Alice",female,22,0,0,113781,151.55,,S -710,1,3,"Moubarek, Master. Halim Gonios (""William George"")",male,,1,1,2661,15.2458,,C -711,1,1,"Mayne, Mlle. Berthe Antonine (""Mrs de Villiers"")",female,24,0,0,PC 17482,49.5042,C90,C -712,0,1,"Klaber, Mr. Herman",male,,0,0,113028,26.55,C124,S -713,1,1,"Taylor, Mr. Elmer Zebley",male,48,1,0,19996,52,C126,S -714,0,3,"Larsson, Mr. August Viktor",male,29,0,0,7545,9.4833,,S -715,0,2,"Greenberg, Mr. Samuel",male,52,0,0,250647,13,,S -716,0,3,"Soholt, Mr. Peter Andreas Lauritz Andersen",male,19,0,0,348124,7.65,F G73,S -717,1,1,"Endres, Miss. Caroline Louise",female,38,0,0,PC 17757,227.525,C45,C -718,1,2,"Troutt, Miss. Edwina Celia ""Winnie""",female,27,0,0,34218,10.5,E101,S -719,0,3,"McEvoy, Mr. Michael",male,,0,0,36568,15.5,,Q -720,0,3,"Johnson, Mr. Malkolm Joackim",male,33,0,0,347062,7.775,,S -721,1,2,"Harper, Miss. Annie Jessie ""Nina""",female,6,0,1,248727,33,,S -722,0,3,"Jensen, Mr. Svend Lauritz",male,17,1,0,350048,7.0542,,S -723,0,2,"Gillespie, Mr. William Henry",male,34,0,0,12233,13,,S -724,0,2,"Hodges, Mr. Henry Price",male,50,0,0,250643,13,,S -725,1,1,"Chambers, Mr. Norman Campbell",male,27,1,0,113806,53.1,E8,S -726,0,3,"Oreskovic, Mr. Luka",male,20,0,0,315094,8.6625,,S -727,1,2,"Renouf, Mrs. Peter Henry (Lillian Jefferys)",female,30,3,0,31027,21,,S -728,1,3,"Mannion, Miss. Margareth",female,,0,0,36866,7.7375,,Q -729,0,2,"Bryhl, Mr. Kurt Arnold Gottfrid",male,25,1,0,236853,26,,S -730,0,3,"Ilmakangas, Miss. Pieta Sofia",female,25,1,0,STON/O2. 3101271,7.925,,S -731,1,1,"Allen, Miss. Elisabeth Walton",female,29,0,0,24160,211.3375,B5,S -732,0,3,"Hassan, Mr. Houssein G N",male,11,0,0,2699,18.7875,,C -733,0,2,"Knight, Mr. Robert J",male,,0,0,239855,0,,S -734,0,2,"Berriman, Mr. William John",male,23,0,0,28425,13,,S -735,0,2,"Troupiansky, Mr. Moses Aaron",male,23,0,0,233639,13,,S -736,0,3,"Williams, Mr. Leslie",male,28.5,0,0,54636,16.1,,S -737,0,3,"Ford, Mrs. Edward (Margaret Ann Watson)",female,48,1,3,W./C. 6608,34.375,,S -738,1,1,"Lesurer, Mr. Gustave J",male,35,0,0,PC 17755,512.3292,B101,C -739,0,3,"Ivanoff, Mr. Kanio",male,,0,0,349201,7.8958,,S -740,0,3,"Nankoff, Mr. Minko",male,,0,0,349218,7.8958,,S -741,1,1,"Hawksford, Mr. Walter James",male,,0,0,16988,30,D45,S -742,0,1,"Cavendish, Mr. Tyrell William",male,36,1,0,19877,78.85,C46,S -743,1,1,"Ryerson, Miss. Susan Parker ""Suzette""",female,21,2,2,PC 17608,262.375,B57 B59 B63 B66,C -744,0,3,"McNamee, Mr. Neal",male,24,1,0,376566,16.1,,S -745,1,3,"Stranden, Mr. Juho",male,31,0,0,STON/O 2. 3101288,7.925,,S -746,0,1,"Crosby, Capt. Edward Gifford",male,70,1,1,WE/P 5735,71,B22,S -747,0,3,"Abbott, Mr. Rossmore Edward",male,16,1,1,C.A. 2673,20.25,,S -748,1,2,"Sinkkonen, Miss. Anna",female,30,0,0,250648,13,,S -749,0,1,"Marvin, Mr. Daniel Warner",male,19,1,0,113773,53.1,D30,S -750,0,3,"Connaghton, Mr. Michael",male,31,0,0,335097,7.75,,Q -751,1,2,"Wells, Miss. Joan",female,4,1,1,29103,23,,S -752,1,3,"Moor, Master. Meier",male,6,0,1,392096,12.475,E121,S -753,0,3,"Vande Velde, Mr. Johannes Joseph",male,33,0,0,345780,9.5,,S -754,0,3,"Jonkoff, Mr. Lalio",male,23,0,0,349204,7.8958,,S -755,1,2,"Herman, Mrs. Samuel (Jane Laver)",female,48,1,2,220845,65,,S -756,1,2,"Hamalainen, Master. Viljo",male,0.67,1,1,250649,14.5,,S -757,0,3,"Carlsson, Mr. August Sigfrid",male,28,0,0,350042,7.7958,,S -758,0,2,"Bailey, Mr. Percy Andrew",male,18,0,0,29108,11.5,,S -759,0,3,"Theobald, Mr. Thomas Leonard",male,34,0,0,363294,8.05,,S -760,1,1,"Rothes, the Countess. of (Lucy Noel Martha Dyer-Edwards)",female,33,0,0,110152,86.5,B77,S -761,0,3,"Garfirth, Mr. John",male,,0,0,358585,14.5,,S -762,0,3,"Nirva, Mr. Iisakki Antino Aijo",male,41,0,0,SOTON/O2 3101272,7.125,,S -763,1,3,"Barah, Mr. Hanna Assi",male,20,0,0,2663,7.2292,,C -764,1,1,"Carter, Mrs. William Ernest (Lucile Polk)",female,36,1,2,113760,120,B96 B98,S -765,0,3,"Eklund, Mr. Hans Linus",male,16,0,0,347074,7.775,,S -766,1,1,"Hogeboom, Mrs. John C (Anna Andrews)",female,51,1,0,13502,77.9583,D11,S -767,0,1,"Brewe, Dr. Arthur Jackson",male,,0,0,112379,39.6,,C -768,0,3,"Mangan, Miss. Mary",female,30.5,0,0,364850,7.75,,Q -769,0,3,"Moran, Mr. Daniel J",male,,1,0,371110,24.15,,Q -770,0,3,"Gronnestad, Mr. Daniel Danielsen",male,32,0,0,8471,8.3625,,S -771,0,3,"Lievens, Mr. Rene Aime",male,24,0,0,345781,9.5,,S -772,0,3,"Jensen, Mr. Niels Peder",male,48,0,0,350047,7.8542,,S -773,0,2,"Mack, Mrs. (Mary)",female,57,0,0,S.O./P.P. 3,10.5,E77,S -774,0,3,"Elias, Mr. Dibo",male,,0,0,2674,7.225,,C -775,1,2,"Hocking, Mrs. Elizabeth (Eliza Needs)",female,54,1,3,29105,23,,S -776,0,3,"Myhrman, Mr. Pehr Fabian Oliver Malkolm",male,18,0,0,347078,7.75,,S -777,0,3,"Tobin, Mr. Roger",male,,0,0,383121,7.75,F38,Q -778,1,3,"Emanuel, Miss. Virginia Ethel",female,5,0,0,364516,12.475,,S -779,0,3,"Kilgannon, Mr. Thomas J",male,,0,0,36865,7.7375,,Q -780,1,1,"Robert, Mrs. Edward Scott (Elisabeth Walton McMillan)",female,43,0,1,24160,211.3375,B3,S -781,1,3,"Ayoub, Miss. Banoura",female,13,0,0,2687,7.2292,,C -782,1,1,"Dick, Mrs. Albert Adrian (Vera Gillespie)",female,17,1,0,17474,57,B20,S -783,0,1,"Long, Mr. Milton Clyde",male,29,0,0,113501,30,D6,S -784,0,3,"Johnston, Mr. Andrew G",male,,1,2,W./C. 6607,23.45,,S -785,0,3,"Ali, Mr. William",male,25,0,0,SOTON/O.Q. 3101312,7.05,,S -786,0,3,"Harmer, Mr. Abraham (David Lishin)",male,25,0,0,374887,7.25,,S -787,1,3,"Sjoblom, Miss. Anna Sofia",female,18,0,0,3101265,7.4958,,S -788,0,3,"Rice, Master. George Hugh",male,8,4,1,382652,29.125,,Q -789,1,3,"Dean, Master. Bertram Vere",male,1,1,2,C.A. 2315,20.575,,S -790,0,1,"Guggenheim, Mr. Benjamin",male,46,0,0,PC 17593,79.2,B82 B84,C -791,0,3,"Keane, Mr. Andrew ""Andy""",male,,0,0,12460,7.75,,Q -792,0,2,"Gaskell, Mr. Alfred",male,16,0,0,239865,26,,S -793,0,3,"Sage, Miss. Stella Anna",female,,8,2,CA. 2343,69.55,,S -794,0,1,"Hoyt, Mr. William Fisher",male,,0,0,PC 17600,30.6958,,C -795,0,3,"Dantcheff, Mr. Ristiu",male,25,0,0,349203,7.8958,,S -796,0,2,"Otter, Mr. Richard",male,39,0,0,28213,13,,S -797,1,1,"Leader, Dr. Alice (Farnham)",female,49,0,0,17465,25.9292,D17,S -798,1,3,"Osman, Mrs. Mara",female,31,0,0,349244,8.6833,,S -799,0,3,"Ibrahim Shawah, Mr. Yousseff",male,30,0,0,2685,7.2292,,C -800,0,3,"Van Impe, Mrs. Jean Baptiste (Rosalie Paula Govaert)",female,30,1,1,345773,24.15,,S -801,0,2,"Ponesell, Mr. Martin",male,34,0,0,250647,13,,S -802,1,2,"Collyer, Mrs. Harvey (Charlotte Annie Tate)",female,31,1,1,C.A. 31921,26.25,,S -803,1,1,"Carter, Master. William Thornton II",male,11,1,2,113760,120,B96 B98,S -804,1,3,"Thomas, Master. Assad Alexander",male,0.42,0,1,2625,8.5167,,C -805,1,3,"Hedman, Mr. Oskar Arvid",male,27,0,0,347089,6.975,,S -806,0,3,"Johansson, Mr. Karl Johan",male,31,0,0,347063,7.775,,S -807,0,1,"Andrews, Mr. Thomas Jr",male,39,0,0,112050,0,A36,S -808,0,3,"Pettersson, Miss. Ellen Natalia",female,18,0,0,347087,7.775,,S -809,0,2,"Meyer, Mr. August",male,39,0,0,248723,13,,S -810,1,1,"Chambers, Mrs. Norman Campbell (Bertha Griggs)",female,33,1,0,113806,53.1,E8,S -811,0,3,"Alexander, Mr. William",male,26,0,0,3474,7.8875,,S -812,0,3,"Lester, Mr. James",male,39,0,0,A/4 48871,24.15,,S -813,0,2,"Slemen, Mr. Richard James",male,35,0,0,28206,10.5,,S -814,0,3,"Andersson, Miss. Ebba Iris Alfrida",female,6,4,2,347082,31.275,,S -815,0,3,"Tomlin, Mr. Ernest Portage",male,30.5,0,0,364499,8.05,,S -816,0,1,"Fry, Mr. Richard",male,,0,0,112058,0,B102,S -817,0,3,"Heininen, Miss. Wendla Maria",female,23,0,0,STON/O2. 3101290,7.925,,S -818,0,2,"Mallet, Mr. Albert",male,31,1,1,S.C./PARIS 2079,37.0042,,C -819,0,3,"Holm, Mr. John Fredrik Alexander",male,43,0,0,C 7075,6.45,,S -820,0,3,"Skoog, Master. Karl Thorsten",male,10,3,2,347088,27.9,,S -821,1,1,"Hays, Mrs. Charles Melville (Clara Jennings Gregg)",female,52,1,1,12749,93.5,B69,S -822,1,3,"Lulic, Mr. Nikola",male,27,0,0,315098,8.6625,,S -823,0,1,"Reuchlin, Jonkheer. John George",male,38,0,0,19972,0,,S -824,1,3,"Moor, Mrs. (Beila)",female,27,0,1,392096,12.475,E121,S -825,0,3,"Panula, Master. Urho Abraham",male,2,4,1,3101295,39.6875,,S -826,0,3,"Flynn, Mr. John",male,,0,0,368323,6.95,,Q -827,0,3,"Lam, Mr. Len",male,,0,0,1601,56.4958,,S -828,1,2,"Mallet, Master. Andre",male,1,0,2,S.C./PARIS 2079,37.0042,,C -829,1,3,"McCormack, Mr. Thomas Joseph",male,,0,0,367228,7.75,,Q -830,1,1,"Stone, Mrs. George Nelson (Martha Evelyn)",female,62,0,0,113572,80,B28, -831,1,3,"Yasbeck, Mrs. Antoni (Selini Alexander)",female,15,1,0,2659,14.4542,,C -832,1,2,"Richards, Master. George Sibley",male,0.83,1,1,29106,18.75,,S -833,0,3,"Saad, Mr. Amin",male,,0,0,2671,7.2292,,C -834,0,3,"Augustsson, Mr. Albert",male,23,0,0,347468,7.8542,,S -835,0,3,"Allum, Mr. Owen George",male,18,0,0,2223,8.3,,S -836,1,1,"Compton, Miss. Sara Rebecca",female,39,1,1,PC 17756,83.1583,E49,C -837,0,3,"Pasic, Mr. Jakob",male,21,0,0,315097,8.6625,,S -838,0,3,"Sirota, Mr. Maurice",male,,0,0,392092,8.05,,S -839,1,3,"Chip, Mr. Chang",male,32,0,0,1601,56.4958,,S -840,1,1,"Marechal, Mr. Pierre",male,,0,0,11774,29.7,C47,C -841,0,3,"Alhomaki, Mr. Ilmari Rudolf",male,20,0,0,SOTON/O2 3101287,7.925,,S -842,0,2,"Mudd, Mr. Thomas Charles",male,16,0,0,S.O./P.P. 3,10.5,,S -843,1,1,"Serepeca, Miss. Augusta",female,30,0,0,113798,31,,C -844,0,3,"Lemberopolous, Mr. Peter L",male,34.5,0,0,2683,6.4375,,C -845,0,3,"Culumovic, Mr. Jeso",male,17,0,0,315090,8.6625,,S -846,0,3,"Abbing, Mr. Anthony",male,42,0,0,C.A. 5547,7.55,,S -847,0,3,"Sage, Mr. Douglas Bullen",male,,8,2,CA. 2343,69.55,,S -848,0,3,"Markoff, Mr. Marin",male,35,0,0,349213,7.8958,,C -849,0,2,"Harper, Rev. John",male,28,0,1,248727,33,,S -850,1,1,"Goldenberg, Mrs. Samuel L (Edwiga Grabowska)",female,,1,0,17453,89.1042,C92,C -851,0,3,"Andersson, Master. Sigvard Harald Elias",male,4,4,2,347082,31.275,,S -852,0,3,"Svensson, Mr. Johan",male,74,0,0,347060,7.775,,S -853,0,3,"Boulos, Miss. Nourelain",female,9,1,1,2678,15.2458,,C -854,1,1,"Lines, Miss. Mary Conover",female,16,0,1,PC 17592,39.4,D28,S -855,0,2,"Carter, Mrs. Ernest Courtenay (Lilian Hughes)",female,44,1,0,244252,26,,S -856,1,3,"Aks, Mrs. Sam (Leah Rosen)",female,18,0,1,392091,9.35,,S -857,1,1,"Wick, Mrs. George Dennick (Mary Hitchcock)",female,45,1,1,36928,164.8667,,S -858,1,1,"Daly, Mr. Peter Denis ",male,51,0,0,113055,26.55,E17,S -859,1,3,"Baclini, Mrs. Solomon (Latifa Qurban)",female,24,0,3,2666,19.2583,,C -860,0,3,"Razi, Mr. Raihed",male,,0,0,2629,7.2292,,C -861,0,3,"Hansen, Mr. Claus Peter",male,41,2,0,350026,14.1083,,S -862,0,2,"Giles, Mr. Frederick Edward",male,21,1,0,28134,11.5,,S -863,1,1,"Swift, Mrs. Frederick Joel (Margaret Welles Barron)",female,48,0,0,17466,25.9292,D17,S -864,0,3,"Sage, Miss. Dorothy Edith ""Dolly""",female,,8,2,CA. 2343,69.55,,S -865,0,2,"Gill, Mr. John William",male,24,0,0,233866,13,,S -866,1,2,"Bystrom, Mrs. (Karolina)",female,42,0,0,236852,13,,S -867,1,2,"Duran y More, Miss. Asuncion",female,27,1,0,SC/PARIS 2149,13.8583,,C -868,0,1,"Roebling, Mr. Washington Augustus II",male,31,0,0,PC 17590,50.4958,A24,S -869,0,3,"van Melkebeke, Mr. Philemon",male,,0,0,345777,9.5,,S -870,1,3,"Johnson, Master. Harold Theodor",male,4,1,1,347742,11.1333,,S -871,0,3,"Balkic, Mr. Cerin",male,26,0,0,349248,7.8958,,S -872,1,1,"Beckwith, Mrs. Richard Leonard (Sallie Monypeny)",female,47,1,1,11751,52.5542,D35,S -873,0,1,"Carlsson, Mr. Frans Olof",male,33,0,0,695,5,B51 B53 B55,S -874,0,3,"Vander Cruyssen, Mr. Victor",male,47,0,0,345765,9,,S -875,1,2,"Abelson, Mrs. Samuel (Hannah Wizosky)",female,28,1,0,P/PP 3381,24,,C -876,1,3,"Najib, Miss. Adele Kiamie ""Jane""",female,15,0,0,2667,7.225,,C -877,0,3,"Gustafsson, Mr. Alfred Ossian",male,20,0,0,7534,9.8458,,S -878,0,3,"Petroff, Mr. Nedelio",male,19,0,0,349212,7.8958,,S -879,0,3,"Laleff, Mr. Kristo",male,,0,0,349217,7.8958,,S -880,1,1,"Potter, Mrs. Thomas Jr (Lily Alexenia Wilson)",female,56,0,1,11767,83.1583,C50,C -881,1,2,"Shelley, Mrs. William (Imanita Parrish Hall)",female,25,0,1,230433,26,,S -882,0,3,"Markun, Mr. Johann",male,33,0,0,349257,7.8958,,S -883,0,3,"Dahlberg, Miss. Gerda Ulrika",female,22,0,0,7552,10.5167,,S -884,0,2,"Banfield, Mr. Frederick James",male,28,0,0,C.A./SOTON 34068,10.5,,S -885,0,3,"Sutehall, Mr. Henry Jr",male,25,0,0,SOTON/OQ 392076,7.05,,S -886,0,3,"Rice, Mrs. William (Margaret Norton)",female,39,0,5,382652,29.125,,Q -887,0,2,"Montvila, Rev. Juozas",male,27,0,0,211536,13,,S -888,1,1,"Graham, Miss. Margaret Edith",female,19,0,0,112053,30,B42,S -889,0,3,"Johnston, Miss. Catherine Helen ""Carrie""",female,,1,2,W./C. 6607,23.45,,S -890,1,1,"Behr, Mr. Karl Howell",male,26,0,0,111369,30,C148,C -891,0,3,"Dooley, Mr. Patrick",male,32,0,0,370376,7.75,,Q From 390be2ba244f93a925939800ed9ceeeab5982bd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:19:00 -0700 Subject: [PATCH 015/248] Delete train.py --- .../datasets/train-dataset/train.py | 39 ------------------- 1 file changed, 39 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/datasets/train-dataset/train.py diff --git a/how-to-use-azureml/work-with-data/datasets/train-dataset/train.py b/how-to-use-azureml/work-with-data/datasets/train-dataset/train.py deleted file mode 100644 index ab48c02f..00000000 --- a/how-to-use-azureml/work-with-data/datasets/train-dataset/train.py +++ /dev/null @@ -1,39 +0,0 @@ -import azureml.dataprep as dprep -import azureml.core -import pandas as pd -import logging -import os -import datetime -import shutil - -from azureml.core import Workspace, Datastore, Dataset, Experiment, Run -from sklearn.model_selection import train_test_split -from azureml.core.compute import ComputeTarget, AmlCompute -from azureml.core.compute_target import ComputeTargetException -from sklearn.tree import DecisionTreeClassifier - -run = Run.get_context() -workspace = run.experiment.workspace - -dataset_name = 'clean_Titanic_tutorial' - -snapshot_name = 'train_snapshot' - -dataset = Dataset.get(workspace=workspace, name=dataset_name) -df = dataset.get_snapshot(snapshot_name=snapshot_name).to_pandas_dataframe() - -x_col = ['Pclass', 'Sex', 'SibSp', 'Parch'] -y_col = ['Survived'] -x_df = df.loc[:, x_col] -y_df = df.loc[:, y_col] - -x_train, x_test, y_train, y_test = train_test_split(x_df, y_df, test_size=0.2, random_state=223) - -data = {"train": {"X": x_train, "y": y_train}, - - "test": {"X": x_test, "y": y_test}} - -clf = DecisionTreeClassifier().fit(data["train"]["X"], data["train"]["y"]) - -print('Accuracy of Decision Tree classifier on training set: {:.2f}'.format(clf.score(x_train, y_train))) -print('Accuracy of Decision Tree classifier on test set: {:.2f}'.format(clf.score(x_test, y_test))) From e2b2b89842f90bf7569c005cab9576c19046bdfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:19:13 -0700 Subject: [PATCH 016/248] Delete datasets-tutorial.ipynb --- .../datasets/datasets-tutorial.ipynb | 437 ------------------ 1 file changed, 437 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/datasets/datasets-tutorial.ipynb diff --git a/how-to-use-azureml/work-with-data/datasets/datasets-tutorial.ipynb b/how-to-use-azureml/work-with-data/datasets/datasets-tutorial.ipynb deleted file mode 100644 index cf865ca0..00000000 --- a/how-to-use-azureml/work-with-data/datasets/datasets-tutorial.ipynb +++ /dev/null @@ -1,437 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Tutorial: Learn how to use Datasets in Azure ML" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this tutorial, you learn how to use Azure ML Datasets to train a regression model with the Azure Machine Learning SDK for Python. You will\n", - "\n", - "* Explore and prepare data for training the model\n", - "* Register the Dataset in your workspace to share it with others\n", - "* Take snapshots of data to ensure models can be trained with the same data every time\n", - "* Create and use multiple Dataset definitions to ensure that updates to the definition don't break existing pipelines/scripts\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this tutorial, you:\n", - "\n", - "☑ Setup a Python environment and import packages\n", - "\n", - "☑ Load the Titanic data from your Azure Blob Storage. (The [original data](https://www.kaggle.com/c/titanic/data) can be found on Kaggle)\n", - "\n", - "☑ Explore and cleanse the data to remove anomalies\n", - "\n", - "☑ Register the Dataset in your workspace, allowing you to use it in model training \n", - "\n", - "☑ Take a Dataset snapshot for repeatability and train a model with the snapshot\n", - "\n", - "☑ Make changes to the dataset's definition without breaking the production model or the daily data pipeline" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Pre-requisites:\n", - "Skip to Set up your development environment to read through the notebook steps, or use the instructions below to get the notebook and run it on Azure Notebooks or your own notebook server. To run the notebook you will need:\n", - "\n", - "A Python 3.6 notebook server with the following installed:\n", - "* The Azure Machine Learning SDK for Python\n", - "* The Azure Machine Learning Data Prep SDK for Python\n", - "* The tutorial notebook\n", - "\n", - "Data and train.py script to store in your Azure Blob Storage Account.\n", - " * [Titanic data](./train-dataset/Titanic.csv)\n", - " * [train.py](./train-dataset/train.py)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To create and register Datasets you need:\n", - "\n", - " * An Azure subscription. If you don\u00e2\u20ac\u2122t have an Azure subscription, create a free account before you begin. Try the [free or paid version of Azure Machine Learning service](https://aka.ms/AMLFree) today.\n", - "\n", - " * An Azure Machine Learning service workspace. See the [Create an Azure Machine Learning service workspace](https://docs.microsoft.com/en-us/azure/machine-learning/service/setup-create-workspace?branch=release-build-amls).\n", - "\n", - " * The Azure Machine Learning SDK for Python (version 1.0.21 or later). To install or update to the latest version of the SDK, see [Install or update the SDK](https://docs.microsoft.com/python/api/overview/azure/ml/install?view=azure-ml-py).\n", - "\n", - "\n", - "For more information on how to set up your workspace, see the [Create an Azure Machine Learning service workspace](https://docs.microsoft.com/en-us/azure/machine-learning/service/setup-create-workspace?branch=release-build-amls).\n", - "\n", - "The first part that needs to be done is setting up your python environment. You will need to import all of your python packages including `azureml.dataprep` and `azureml.core.dataset`. Then access your workspace through your Azure subscription and set up your compute target. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "import azureml.core\n", - "import pandas as pd\n", - "import logging\n", - "import os\n", - "import shutil\n", - "from azureml.core import Workspace, Datastore, Dataset\n", - "\n", - "# Get existing workspace from config.json file in the same folder as the tutorial notebook\n", - "# You can download the config file from your workspace\n", - "workspace = Workspace.from_config()\n", - "print(\"Workspace\")\n", - "print(workspace)\n", - "print(\"Compute targets\")\n", - "print(workspace.compute_targets)\n", - "\n", - "# Get compute target that has already been attached to the workspace\n", - "# Pick the right compute target from the list of computes attached to your workspace\n", - "\n", - "compute_target_name = 'dataset-test'\n", - "remote_compute_target = workspace.compute_targets[compute_target_name]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To load data to your dataset, you will access the data through your datastore. After you create your dataset, you can use `get_profile()` to see your data's statistics.\n", - "\n", - "We will now upload the [original data](https://www.kaggle.com/c/titanic/data) to the default datastore(blob) within your workspace.." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "datastore = workspace.get_default_datastore()\n", - "datastore.upload_files(files=['./train-dataset/Titanic.csv'],\n", - " target_path='train-dataset/',\n", - " overwrite=True,\n", - " show_progress=True)\n", - "\n", - "dataset = Dataset.auto_read_files(path=datastore.path('train-dataset/Titanic.csv'))\n", - "\n", - "#Display Dataset Profile of the Titanic Dataset\n", - "dataset.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To predict if a person survived the Titanic's sinking or not, the columns that are relevant to train the model are 'Survived','Pclass', 'Sex','SibSp', and 'Parch'. You can update your dataset's deinition and only keep these columns you will need. You will also need to convert values (\"male\",\"female\") in the \"Sex\" column to 0 or 1, because the algorithm in the train.py file will be using numeric values instead of strings.\n", - "\n", - "For more examples of preparing data with Datasets, see [Explore and prepare data with the Dataset class](aka.ms/azureml/howto/exploreandpreparedata)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ds_def = dataset.get_definition()\n", - "ds_def = ds_def.keep_columns(['Survived','Pclass', 'Sex','SibSp', 'Parch', 'Fare'])\n", - "ds_def = ds_def.replace('Sex','male', 0)\n", - "ds_def = ds_def.replace('Sex','female', 1)\n", - "ds_def.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once you have cleaned your data, you can register your dataset in your workspace. \n", - "\n", - "Registering your dataset allows you to easily have access to your processed data and share it with other people in your organization using the same workspace. It can be accessed in any notebook or script that is connected to your workspace." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dataset = dataset.update_definition(ds_def, 'Cleaned Data')\n", - "\n", - "dataset.generate_profile(compute_target='local').get_result()\n", - "\n", - "dataset_name = 'clean_Titanic_tutorial'\n", - "dataset = dataset.register(workspace=workspace,\n", - " name=dataset_name,\n", - " description='training dataset',\n", - " tags = {'year':'2019', 'month':'Apr'},\n", - " exist_ok=True)\n", - "workspace.datasets" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also take a snapshot of your dataset. This makes for easily reproducing your data as it is in that moment. Even if you changed the definition of your dataset, or have data that refreshes regularly, you can always go back to your snapshot to compare. Since this snapshot is being created on a compute in your workspace, it may take a signficant amount of time to provision the compute before running the action itself." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(dataset.get_all_snapshots())\n", - "snapshot_name = 'train_snapshot'\n", - "\n", - "print(\"Compute target status\")\n", - "print(remote_compute_target.get_status().provisioning_state)\n", - "\n", - "snapshot = dataset.create_snapshot(snapshot_name=snapshot_name, \n", - " compute_target=remote_compute_target, \n", - " create_data_snapshot=True)\n", - "snapshot.wait_for_completion()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that you have registered your dataset and created a snapshot, you can call up the dataset and it's snapshot to use it in your train.py script.\n", - "\n", - "The following code snippit will train your model locally using the train.py script." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Experiment, RunConfiguration\n", - "\n", - "experiment_name = 'training-datasets'\n", - "experiment = Experiment(workspace = workspace, name = experiment_name)\n", - "project_folder = './train-dataset/'\n", - "\n", - "# create a new RunConfig object\n", - "run_config = RunConfiguration()\n", - "\n", - "run_config.environment.python.user_managed_dependencies = True\n", - "\n", - "from azureml.core import Run\n", - "from azureml.core import ScriptRunConfig\n", - "\n", - "src = ScriptRunConfig(source_directory=project_folder, \n", - " script='train.py', \n", - " run_config=run_config) \n", - "run = experiment.submit(config=src)\n", - "run.wait_for_completion(show_output=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also use the same script with your dataset snapshot for your Pipeline's Python Script Step.\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.pipeline.core import Pipeline, PipelineData\n", - "from azureml.pipeline.steps import PythonScriptStep\n", - "from azureml.data.data_reference import DataReference\n", - "\n", - "trainStep = PythonScriptStep(script_name=\"train.py\",\n", - " compute_target=remote_compute_target,\n", - " source_directory=project_folder)\n", - "\n", - "pipeline = Pipeline(workspace=workspace,\n", - " steps=trainStep)\n", - "\n", - "pipeline_run = experiment.submit(pipeline)\n", - "pipeline_run.wait_for_completion()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "During any point of your workflow, you can get a previous snapshot of your dataset and use that version in your pipeline to quickly see how different versions of your data can effect your model." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "snapshot = dataset.get_snapshot(snapshot_name=snapshot_name)\n", - "snapshot.to_pandas_dataframe().head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can make changes to the dataset's definition without breaking the production model or the daily data pipeline. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can call get_definitions to see that there are several versions. After each change to a dataset's version, another one is added." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dataset.get_definitions()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dataset = Dataset.get(workspace=workspace, name=dataset_name)\n", - "ds_def = dataset.get_definition()\n", - "ds_def = ds_def.drop_columns(['Fare'])\n", - "dataset = dataset.update_definition(ds_def, 'Dropping Fare as PClass and Fare are strongly correlated')\n", - "dataset.generate_profile(compute_target='local').get_result()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Dataset definitions can be deprecated when usage is no longer recommended and a replacement is available. When a deprecated dataset definition is used in an AML Experimentation/Pipeline scenario, a warning message gets returned but execution will not be blocked. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Deprecate dataset definition 1 by the 2nd definition\n", - "ds_def = dataset.get_definition('1')\n", - "ds_def.deprecate(deprecate_by_dataset_id=dataset._id, deprecated_by_definition_version='2')\n", - "dataset.get_definitions()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Dataset definitions can be archived when definitions are not supposed to be used for any reasons (such as underlying data no longer available). When an archived dataset definition is used in an AML Experimentation/Pipeline scenario, execution will be blocked with error. No further actions can be performed on archived Dataset definitions, but the references will be kept intact. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Archive the deprecated dataset definition #1\n", - "ds_def = dataset.get_definition('1')\n", - "ds_def.archive()\n", - "dataset.get_definitions()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also reactivate any defition that you archived for later use." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ds_def = dataset.get_definition('1')\n", - "ds_def.reactivate()\n", - "dataset.get_definitions()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now delete the current snapshot name to clean up your resource's space." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dataset.delete_snapshot(snapshot_name)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You have now finished using a dataset from start to finish of your experiment!" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/datasets/datasets-tutorial.png)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "cforbe" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From ff4d5450a734e8030208d83feaa3821a5d425dfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:19:29 -0700 Subject: [PATCH 017/248] Delete README.md --- .../work-with-data/datasets/README.md | 159 ------------------ 1 file changed, 159 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/datasets/README.md diff --git a/how-to-use-azureml/work-with-data/datasets/README.md b/how-to-use-azureml/work-with-data/datasets/README.md deleted file mode 100644 index daa2269d..00000000 --- a/how-to-use-azureml/work-with-data/datasets/README.md +++ /dev/null @@ -1,159 +0,0 @@ -# Azure Machine Learning Datasets (preview) - -Azure Machine Learning Datasets (preview) make it easier to access and work with your data. Datasets manage data in various scenarios such as model training and pipeline creation. Using the Azure Machine Learning SDK, you can access underlying storage, explore and prepare data, manage the life cycle of different Dataset definitions, and compare between Datasets used in training and in production. - -## Create and Register Datasets - -It's easy to create Datasets from either local files, or Azure Datastores. - -```Python -from azureml.core.workspace import Workspace -from azureml.core.datastore import Datastore -from azureml.core.dataset import Dataset - -datastore_name = 'your datastore name' - -# get existing workspace -workspace = Workspace.from_config() - -# get Datastore from the workspace -dstore = Datastore.get(workspace, datastore_name) - -# create an in-memory Dataset on your local machine -dataset = Dataset.from_delimited_files(dstore.path('data/src/crime.csv')) -``` - -To consume Datasets across various scenarios in Azure Machine Learning service such as automated machine learning, model training and pipeline creation, you need to register the Datasets with your workspace. By doing so, you can also share and reuse the Datasets within your organization. - -```Python -dataset = dataset.register(workspace = workspace, - name = 'dataset_crime', - description = 'Training data' - ) -``` - -## Sampling - -Sampling can be particular useful with Datasets that are too large to efficiently analyze in full. It enables data scientists to work with a manageable amount of data to build and train machine learning models. At this time, the [`sample()`](https://docs.microsoft.com//python/api/azureml-core/azureml.core.dataset(class)?view=azure-ml-py#sample-sample-strategy--arguments-) method from the Dataset class supports Top N, Simple Random, and Stratified sampling strategies. - -After sampling, you can convert your sampled Dataset to pandas DataFrame for training. By using the native [`sample()`](https://docs.microsoft.com//python/api/azureml-core/azureml.core.dataset(class)?view=azure-ml-py#sample-sample-strategy--arguments-) method from the Dataset class, you will load the sampled data on the fly instead of loading full data into memory. - -### Top N sample - -For Top N sampling, the first n records of your Dataset are your sample. This is helpful if you are just trying to get an idea of what your data records look like or to see what fields are in your data. - -```Python -top_n_sample_dataset = dataset.sample('top_n', {'n': 5}) -top_n_sample_dataset.to_pandas_dataframe() -``` - -### Simple random sample - -In Simple Random sampling, every member of the data population has an equal chance of being selected as a part of the sample. In the `simple_random` sample strategy, the records from your Dataset are selected based on the probability specified and returns a modified Dataset. The seed parameter is optional. - -```Python -simple_random_sample_dataset = dataset.sample('simple_random', {'probability':0.3, 'seed': seed}) -simple_random_sample_dataset.to_pandas_dataframe() -``` - -### Stratified sample - -Stratified samples ensure that certain groups of a population are represented in the sample. In the `stratified` sample strategy, the population is divided into strata, or subgroups, based on similarities, and records are randomly selected from each strata according to the strata weights indicated by the `fractions` parameter. - -In the following example, we group each record by the specified columns, and include said record based on the strata X weight information in `fractions`. If a strata is not specified or the record cannot be grouped, the default weight to sample is 0. - -```Python -# take 50% of records with `Primary Type` as `THEFT` and 20% of records with `Primary Type` as `DECEPTIVE PRACTICE` into sample Dataset -fractions = {} -fractions[('THEFT',)] = 0.5 -fractions[('DECEPTIVE PRACTICE',)] = 0.2 - -sample_dataset = dataset.sample('stratified', {'columns': ['Primary Type'], 'fractions': fractions, 'seed': seed}) - -sample_dataset.to_pandas_dataframe() -``` - -## Explore with summary statistics - - Detect anomalies, missing values, or error counts with the [`get_profile()`](https://docs.microsoft.com/python/api/azureml-core/azureml.core.dataset.dataset?view=azure-ml-py#get-profile-arguments-none--generate-if-not-exist-true--workspace-none--compute-target-none-) method. This function gets the profile and summary statistics of your data, which in turn helps determine the necessary data preparation operations to apply. - -```Python -# get pre-calculated profile -# if there is no precalculated profile available or the precalculated profile is not up-to-date, this method will generate a new profile of the Dataset -dataset.get_profile() -``` - -||Type|Min|Max|Count|Missing Count|Not Missing Count|Percent missing|Error Count|Empty count|0.1% Quantile|1% Quantile|5% Quantile|25% Quantile|50% Quantile|75% Quantile|95% Quantile|99% Quantile|99.9% Quantile|Mean|Standard Deviation|Variance|Skewness|Kurtosis --|----|---|---|-----|-------------|-----------------|---------------|-----------|-----------|-------------|-----------|-----------|------------|------------|------------|------------|------------|--------------|----|------------------|--------|--------|-------- -ID|FieldType.INTEGER|1.04986e+07|1.05351e+07|10.0|0.0|10.0|0.0|0.0|0.0|1.04986e+07|1.04992e+07|1.04986e+07|1.05166e+07|1.05209e+07|1.05259e+07|1.05351e+07|1.05351e+07|1.05351e+07|1.05195e+07|12302.7|1.51358e+08|-0.495701|-1.02814 -Case Number|FieldType.STRING|HZ239907|HZ278872|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Date|FieldType.DATE|2016-04-04 23:56:00+00:00|2016-04-15 17:00:00+00:00|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Block|FieldType.STRING|004XX S KILBOURN AVE|113XX S PRAIRIE AVE|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -IUCR|FieldType.INTEGER|810|1154|10.0|0.0|10.0|0.0|0.0|0.0|810|850|810|890|1136|1153|1154|1154|1154|1058.5|137.285|18847.2|-0.785501|-1.3543 -Primary Type|FieldType.STRING|DECEPTIVE PRACTICE|THEFT|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Description|FieldType.STRING|BOGUS CHECK|OVER $500|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Location Description|FieldType.STRING||SCHOOL, PUBLIC, BUILDING|10.0|0.0|10.0|0.0|0.0|1.0|||||||||||||| -Arrest|FieldType.BOOLEAN|False|False|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Domestic|FieldType.BOOLEAN|False|False|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Beat|FieldType.INTEGER|531|2433|10.0|0.0|10.0|0.0|0.0|0.0|531|531|531|614|1318.5|1911|2433|2433|2433|1371.1|692.094|478994|0.105418|-1.60684 -District|FieldType.INTEGER|5|24|10.0|0.0|10.0|0.0|0.0|0.0|5|5|5|6|13|19|24|24|24|13.5|6.94822|48.2778|0.0930109|-1.62325 -Ward|FieldType.INTEGER|1|48|10.0|0.0|10.0|0.0|0.0|0.0|1|5|1|9|22.5|40|48|48|48|24.5|16.2635|264.5|0.173723|-1.51271 -Community Area|FieldType.INTEGER|4|77|10.0|0.0|10.0|0.0|0.0|0.0|4|8.5|4|24|37.5|71|77|77|77|41.2|26.6366|709.511|0.112157|-1.73379 -FBI Code|FieldType.INTEGER|6|11|10.0|0.0|10.0|0.0|0.0|0.0|6|6|6|6|11|11|11|11|11|9.4|2.36643|5.6|-0.702685|-1.59582 -X Coordinate|FieldType.INTEGER|1.16309e+06|1.18336e+06|10.0|7.0|3.0|0.7|0.0|0.0|1.16309e+06|1.16309e+06|1.16309e+06|1.16401e+06|1.16678e+06|1.17921e+06|1.18336e+06|1.18336e+06|1.18336e+06|1.17108e+06|10793.5|1.165e+08|0.335126|-2.33333 -Y Coordinate|FieldType.INTEGER|1.8315e+06|1.908e+06|10.0|7.0|3.0|0.7|0.0|0.0|1.8315e+06|1.8315e+06|1.8315e+06|1.83614e+06|1.85005e+06|1.89352e+06|1.908e+06|1.908e+06|1.908e+06|1.86319e+06|39905.2|1.59243e+09|0.293465|-2.33333 -Year|FieldType.INTEGER|2016|2016|10.0|0.0|10.0|0.0|0.0|0.0|2016|2016|2016|2016|2016|2016|2016|2016|2016|2016|0|0|NaN|NaN -Updated On|FieldType.DATE|2016-05-11 15:48:00+00:00|2016-05-27 15:45:00+00:00|10.0|0.0|10.0|0.0|0.0|0.0|||||||||||||| -Latitude|FieldType.DECIMAL|41.6928|41.9032|10.0|7.0|3.0|0.7|0.0|0.0|41.6928|41.6928|41.6928|41.7057|41.7441|41.8634|41.9032|41.9032|41.9032|41.78|0.109695|0.012033|0.292478|-2.33333 -Longitude|FieldType.DECIMAL|-87.6764|-87.6043|10.0|7.0|3.0|0.7|0.0|0.0|-87.6764|-87.6764|-87.6764|-87.6734|-87.6645|-87.6194|-87.6043|-87.6043|-87.6043|-87.6484|0.0386264|0.001492|0.344429|-2.33333 -Location|FieldType.STRING||(41.903206037, -87.676361925)|10.0|0.0|10.0|0.0|0.0|7.0|||||||||||||| - - -## Training with Dataset - -Now that you have registered your Dataset, you can call up the Dataset and convert it to pandas DataFrame or Spark DataFrame easily in your train.py script. - -```Python -# Sample train.py script -import azureml.core -import pandas as pd -import datetime -import shutil -from azureml.core import Workspace, Datastore, Dataset, Experiment, Run -from sklearn.model_selection import train_test_split -from azureml.core.compute import ComputeTarget, AmlCompute -from azureml.core.compute_target import ComputeTargetException -from sklearn.tree import DecisionTreeClassifier - -run = Run.get_context() -workspace = run.experiment.workspace - -# Access Dataset registered with the workspace by name -dataset_name = 'training_data' -dataset = Dataset.get(workspace=workspace, name=dataset_name) - -ds_def = dataset.get_definition() -dataset_val, dataset_train = ds_def.random_split(percentage=0.3) -y_df = dataset_train.keep_columns(['HasDetections']).to_pandas_dataframe() -x_df = dataset_train.drop_columns(['HasDetections']).to_pandas_dataframe() -y_val = dataset_val.keep_columns(['HasDetections']).to_pandas_dataframe() -x_val = dataset_val.drop_columns(['HasDetections']).to_pandas_dataframe() - -data = {"train": {"X": x_df, "y": y_df}, - "validation": {"X": x_val, "y": y_val}} - -clf = DecisionTreeClassifier().fit(data["train"]["X"], data["train"]["y"]) -print('Accuracy of Decision Tree classifier on training set: {:.2f}'.format(clf.score(x_df, y_df))) -print('Accuracy of Decision Tree classifier on validation set: {:.2f}'.format(clf.score(x_val, y_val))) -``` - -For an end-to-end tutorial, you may refer to [Dataset tutorial](datasets-tutorial.ipynb). You will learn how to: -- Explore and prepare data for training the model. -- Register the Dataset in your workspace for easy access in training. -- Take snapshots of data to ensure models can be trained with the same data every time. -- Use registered Dataset in your training script. -- Create and use multiple Dataset definitions to ensure that updates to the definition don't break existing pipelines/scripts. - - - -![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/datasets/README.png) \ No newline at end of file From 58087b53a0a142668f2d392306436d7a14d6a136 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:19:45 -0700 Subject: [PATCH 018/248] Delete README.md --- .../work-with-data/dataprep/README.md | 255 ------------------ 1 file changed, 255 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/README.md diff --git a/how-to-use-azureml/work-with-data/dataprep/README.md b/how-to-use-azureml/work-with-data/dataprep/README.md deleted file mode 100644 index 57c64989..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/README.md +++ /dev/null @@ -1,255 +0,0 @@ -# Azure Machine Learning Data Prep SDK - -The Azure Machine Learning Data Prep SDK helps data scientists explore, cleanse and transform data for machine learning workflows in any Python environment. - -Key benefits to the SDK: -- Cross-platform functionality. Write with a single SDK and run it on Windows, macOS, or Linux. -- Intelligent transformations powered by AI, including grouping similar values to their canonical form and deriving columns by examples without custom code. -- Capability to work with large, multiple files of different schema. -- Scalability on a single machine by streaming data during processing rather than loading into memory. -- Seamless integration with other Azure Machine Learning services. You can simply pass your prepared data file into `AutoMLConfig` object for automated machine learning training. - -You will find in this repo: -- [Getting Started Tutorial](tutorials/getting-started/getting-started.ipynb) for a quick introduction to the main features of Data Prep SDK. -- [Case Study Notebooks](case-studies/new-york-taxi) that present an end-to-end data preparation tutorial where users start with small dataset, profile data with statistics summary, cleanse and perform feature engineering. All transformation steps are saved in a dataflow object. Users can easily reapply the same steps on the full dataset, and run it on Spark. -- [How-To Guide Notebooks](how-to-guides) for more in-depth sample code at feature level. - -## Installation -Here are the [SDK installation steps](https://aka.ms/aml-data-prep-installation). - -## Documentation -Here is more information on how to use the new Data Prep SDK: -- [SDK overview and API reference docs](http://aka.ms/data-prep-sdk) that show different classes, methods, and function parameters for the SDK. -- [Tutorial: Prep NYC taxi data](https://docs.microsoft.com/azure/machine-learning/service/tutorial-data-prep) for regression modeling and then run automated machine learning to build the model. -- [How to load data](https://docs.microsoft.com/azure/machine-learning/service/how-to-load-data) is an overview guide on how to load data using the Data Prep SDK. -- [How to transform data](https://docs.microsoft.com/azure/machine-learning/service/how-to-transform-data) is an overview guide on how to transform data. -- [How to write data](https://docs.microsoft.com/azure/machine-learning/service/how-to-write-data) is an overview guide on how to write data to different storage locations. - -## Support - -If you have any questions or feedback, send us an email at: [askamldataprep@microsoft.com](mailto:askamldataprep@microsoft.com). - -## Release Notes - -### 2019-05-28 (version 1.1.4) - -New features -- You can now use the following expression language functions to extract and parse datetime values into new columns. - - `RegEx.extract_record()` extracts datetime elements into a new column. - - `create_datetime()` creates datetime objects from separate datetime elements. -- When calling `get_profile()`, you can now see that quantile columns are labeled as (est.) to clearly indicate that the values are approximations. -- You can now use ** globbing when reading from Azure Blob Storage. - - e.g. `dprep.read_csv(path='https://yourblob.blob.core.windows.net/yourcontainer/**/data/*.csv')` - -Bug fixes -- Fixed a bug related to reading a Parquet file from a remote source (Azure Blob). - -### 2019-05-08 (version 1.1.3) - -New features -- Added support to read from a PostgresSQL database, either by calling `read_postgresql` or using a Datastore. - - See examples in how-to guides: - - [Data Ingestion notebook](https://aka.ms/aml-data-prep-ingestion-nb) - - [Datastore notebook](https://aka.ms/aml-data-prep-datastore-nb) - -Bug fixes and improvements -- Fixed issues with column type conversion: - - Now correctly converts a boolean or numeric column to a boolean column. - - Now does not fail when attempting to set a date column to be date type. -- Improved JoinType types and accompanying reference documentation. When joining two dataflows, you can now specify one of these types of join: - - NONE, MATCH, INNER, UNMATCHLEFT, LEFTANTI, LEFTOUTER, UNMATCHRIGHT, RIGHTANTI, RIGHTOUTER, FULLANTI, FULL. -- Improved data type inferencing to recognize more date formats. - -### 2019-04-17 (version 1.1.2) - -Note: Data Prep Python SDK will no longer install `numpy` and `pandas` packages. See [updated installation instructions](https://aka.ms/aml-data-prep-installation). - -New features -- You can now use the Pivot transform. - - How-to guide: [Pivot notebook](https://aka.ms/aml-data-prep-pivot-nb) -- You can now use regular expressions in native functions. - - Examples: - - `dflow.filter(dprep.RegEx('pattern').is_match(dflow['column_name']))` - - `dflow.assert_value('column_name', dprep.RegEx('pattern').is_match(dprep.value))` -- You can now use `to_upper` and `to_lower` functions in expression language. -- You can now see the number of unique values of each column in a data profile. -- For some of the commonly used reader steps, you can now pass in the `infer_column_types` argument. If it is set to `True`, Data Prep will attempt to detect and automatically convert column types. - - `inference_arguments` is now deprecated. -- You can now call `Dataflow.shape`. - -Bug fixes and improvements -- `keep_columns` now accepts an additional optional argument `validate_column_exists`, which checks if the result of `keep_columns` will contain any columns. -- All reader steps (which read from a file) now accept an additional optional argument `verify_exists`. -- Improved performance of reading from pandas dataframe and getting data profiles. -- Fixed a bug where slicing a single step from a Dataflow failed with a single index. - -### 2019-04-08 (version 1.1.1) - -New features -- You can read multiple Datastore/DataPath/DataReference sources using read_* transforms. -- You can perform the following operations on columns to create a new column: division, floor, modulo, power, length. -- Data Prep is now part of the Azure ML diagnostics suite and will log diagnostic information by default. - - To turn this off, set this environment variable to true: DISABLE_DPREP_LOGGER - -Bug fixes and improvements -- Improved code documentation for commonly used classes and functions. -- Fixed a bug in auto_read_file that failed to read Excel files. -- Added option to overwrite the folder in read_pandas_dataframe. -- Improved performance of dotnetcore2 dependency installation, and added support for Fedora 27/28 and Ubuntu 1804. -- Improved the performance of reading from Azure Blobs. -- Column type detection now supports columns of type Long. -- Fixed a bug where some date values were being displayed as timestamps instead of Python datetime objects. -- Fixed a bug where some type counts were being displayed as doubles instead of integers. - -### 2019-03-25 (version 1.1.0) - -Breaking changes -- The concept of the Data Prep Package has been deprecated and is no longer supported. Instead of persisting multiple Dataflows in one Package, you can persist Dataflows individually. - - How-to guide: [Opening and Saving Dataflows notebook](https://aka.ms/aml-data-prep-open-save-dataflows-nb) - -New features -- Data Prep can now recognize columns that match a particular Semantic Type, and split accordingly. The STypes currently supported include: email address, geographic coordinates (latitude & longitude), IPv4 and IPv6 addresses, US phone number, and US zip code. - - How-to guide: [Semantic Types notebook](https://aka.ms/aml-data-prep-semantic-types-nb) -- Data Prep now supports the following operations to generate a resultant column from two numeric columns: subtract, multiply, divide, and modulo. -- You can call `verify_has_data()` on a Dataflow to check whether the Dataflow would produce records if executed. - -Bug fixes and improvements -- You can now specify the number of bins to use in a histogram for numeric column profiles. -- The `read_pandas_dataframe` transform now requires the DataFrame to have string- or byte- typed column names. -- Fixed a bug in the `fill_nulls` transform, where values were not correctly filled in if the column was missing. - -### 2019-03-11 (version 1.0.17) - -New features -- Now supports adding two numeric columns to generate a resultant column using the expression language. - -Bug fixes and improvements -- Improved the documentation and parameter checking for random_split. - -### 2019-02-27 (version 1.0.16) - -Bug fix -- Fixed a Service Principal authentication issue that was caused by an API change. - -### 2019-02-25 (version 1.0.15) - -New features -- Data Prep now supports writing file streams from a dataflow. Also provides the ability to manipulate the file stream names to create new file names. - - How-to guide: [Working With File Streams notebook](https://aka.ms/aml-data-prep-file-stream-nb) - -Bug fixes and improvements -- Improved performance of t-Digest on large data sets. -- Data Prep now supports reading data from a DataPath. -- One hot encoding now works on boolean and numeric columns. -- Other miscellaneous bug fixes. - -### 2019-02-11 (version 1.0.12) - -New features -- Data Prep now supports reading from an Azure SQL database using Datastore. - -Changes -- Significantly improved the memory performance of certain operations on large data. -- `read_pandas_dataframe()` now requires `temp_folder` to be specified. -- The `name` property on `ColumnProfile` has been deprecated - use `column_name` instead. - -### 2019-01-28 (version 1.0.8) - -Bug fixes -- Significantly improved the performance of getting data profiles. -- Fixed minor bugs related to error reporting. - -### 2019-01-14 (version 1.0.7) - -New features -- Datastore improvements (documented in [Datastore how-to-guide](https://aka.ms/aml-data-prep-datastore-nb)) - - Added ability to read from and write to Azure File Share and ADLS Datastores in scale-up. - - When using Datastores, Data Prep now supports using service principal authentication instead of interactive authentication. - - Added support for wasb and wasbs urls. - -### 2019-01-09 (version 1.0.6) - -Bug fixes -- Fixed bug with reading from public readable Azure Blob containers on Spark. - -### 2018-12-19 (version 1.0.4) - -New features -- `to_bool` function now allows mismatched values to be converted to Error values. This is the new default mismatch behavior for `to_bool` and `set_column_types`, whereas the previous default behavior was to convert mismatched values to False. -- When calling `to_pandas_dataframe`, there is a new option to interpret null/missing values in numeric columns as NaN. -- Added ability to check the return type of some expressions to ensure type consistency and fail early. -- You can now call `parse_json` to parse values in a column as JSON objects and expand them into multiple columns. - -Bug fixes -- Fixed a bug that crashed `set_column_types` in Python 3.5.2. -- Fixed a bug that crashed when connecting to Datastore using an AML image. - -### 2018-12-07 (version 0.5.3) - -Fixed missing dependency issue for .NET Core2 on Ubuntu 16. - -### 2018-12-03 (version 0.5.2) - -Breaking changes -- `SummaryFunction.N` was renamed to `SummaryFunction.Count`. - -Bug fixes -- Use latest AML Run Token when reading from and writing to datastores on remote runs. Previously, if the AML Run Token is updated in Python, the Data Prep runtime will not be updated with the updated AML Run Token. -- Additional clearer error messages -- to_spark_dataframe() will no longer crash when Spark uses Kryo serialization -- Value Count Inspector can now show more than 1000 unique values -- Random Split no longer fails if the original Dataflow doesn’t have a name - -### 2018-11-19 (version 0.5.0) - -New features -- Created a new DataPrep CLI to execute DataPrep packages and view the data profile for a dataset or dataflow -- Redesigned SetColumnType API to improve usability -- Renamed smart_read_file to auto_read_file -- Now includes skew and kurtosis in the Data Profile -- Can sample with stratified sampling -- Can read from zip files that contain CSV files -- Can split datasets row-wise with Random Split (e.g. into test-train sets) -- Can get all the column data types from a dataflow or a data profile by calling .dtypes -- Can get the row count from a dataflow or a data profile by calling .row_count - -Bug fixes -- Fixed long to double conversion -- Fixed assert after any add column -- Fixed an issue with FuzzyGrouping, where it would not detect groups in some cases -- Fixed sort function to respect multi-column sort order -- Fixed and/or expressions to be similar to how Pandas handles them -- Fixed reading from dbfs path. -- Made error messages more understandable -- Now no longer fails when reading on remote compute target using AML token -- Now no longer fails on Linux DSVM -- Now no longer crashes when non-string values are in string predicates -- Now handles assertion errors when Dataflow should fail correctly -- Now supports dbutils mounted storage locations on Azure Databricks - -### 2018-11-05 (version 0.4.0) - -New features -- Type Count added to Data Profile -- Value Count and Histogram is now available -- More percentiles in Data Profile -- The Median is available in Summarize -- Python 3.7 is now supported -- When you save a dataflow that contains datastores to a Data Prep package, the datastore information will be persisted as part of the Data Prep package -- Writing to datastore is now supported - -Bug fixes -- 64bit unsigned integer overflows are now handled properly on Linux -- Fixed incorrect text label for plain text files in smart_read -- String column type now shows up in metrics view -- Type count now is fixed to show ValueKinds mapped to single FieldType instead of individual ones -- Write_to_csv no longer fails when path is provided as a string -- When using Replace, leaving “find” blank will no longer fail - -## Datasets License Information - -IMPORTANT: Please read the notice and find out more about this NYC Taxi and Limousine Commission dataset here: http://www.nyc.gov/html/tlc/html/about/trip_record_data.shtml - -IMPORTANT: Please read the notice and find out more about this Chicago Police Department dataset here: https://catalog.data.gov/dataset/crimes-2001-to-present-398a4 - -![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/README.png) From 848b5bc3023cc15f03d810e5ece966a5f09c2035 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:19:59 -0700 Subject: [PATCH 019/248] Delete getting-started.ipynb --- .../getting-started/getting-started.ipynb | 442 ------------------ 1 file changed, 442 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/tutorials/getting-started/getting-started.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/tutorials/getting-started/getting-started.ipynb b/how-to-use-azureml/work-with-data/dataprep/tutorials/getting-started/getting-started.ipynb deleted file mode 100644 index 3881b8d8..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/tutorials/getting-started/getting-started.ipynb +++ /dev/null @@ -1,442 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Getting started with Azure ML Data Prep SDK\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "\n", - "Wonder how you can make the most of the Azure ML Data Prep SDK? In this \"Getting Started\" guide, we'll demonstrate how to do your normal data wrangling with this SDK and showcase a few highlights that make this SDK shine. Using a sample of this [Kaggle crime dataset](https://www.kaggle.com/currie32/crimes-in-chicago/home) as an example, we'll cover how to:\n", - "\n", - "* [Read in data](#Read)\n", - "* [Profile your data](#Profile)\n", - "* [Append rows](#Append)\n", - "* [Apply common data science transforms](#Data-science-transforms)\n", - " * [Summarize](#Summarize)\n", - " * [Join](#Join)\n", - " * [Filter](#Filter)\n", - " * [Replace](#Replace)\n", - "* [Consume your cleaned dataset](#Consume)\n", - "* [Explore advanced features](#Explore)\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from IPython.display import display\n", - "from os import path\n", - "from tempfile import mkdtemp\n", - "\n", - "import pandas as pd\n", - "import azureml.dataprep as dprep\n", - "\n", - "# Paths for datasets\n", - "file_crime_dirty = '../../data/crime-dirty.csv'\n", - "file_crime_spring = '../../data/crime-spring.csv'\n", - "file_crime_winter = '../../data/crime-winter.csv'\n", - "file_aldermen = '../../data/chicago-aldermen-2015.csv'\n", - "\n", - "# Seed\n", - "RAND_SEED = 7251" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read in data\n", - "\n", - "Azure ML Data Prep supports many different file reading formats (i.e. CSV, Excel, Parquet) and the ability to infer column types automatically. To see how powerful the `auto_read_file` capability is, let's take a peek at the `dirty-crime.csv`:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dprep.read_csv(path=file_crime_dirty).head(7)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A common occurrence in many datasets is to have a column of values with commas; in our case, the last column represents location in the form of longitude-latitude pair. The default CSV reader interprets this comma as a delimiter and thus splits the data into two columns. Furthermore, it incorrectly reads in the header as the column name. Normally, we would need to `skip` the header and specify the delimiter as `|`, but our `auto_read_file` eliminates that work:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "crime_dirty = dprep.auto_read_file(path=file_crime_dirty)\n", - "\n", - "crime_dirty.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "__Advanced features:__ if you'd like to specify the file type and adjust how you want to read files in, you can see the list of our specialized file readers and how to use them [here](../../how-to-guides/data-ingestion.ipynb)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Profile your data\n", - "\n", - "Let's understand what our data looks like. Azure ML Data Prep facilitates this process by offering data profiles that help us glimpse into column types and column summary statistics. Notice that our auto file reader automatically guessed the column type:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "crime_dirty.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Append rows\n", - "\n", - "What if your data is split across multiple files? We support the ability to append multiple datasets column-wise and row-wise. Here, we demonstrate how you can coalesce datasets row-wise:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Datasets with the same schema as crime_dirty\n", - "crime_winter = dprep.auto_read_file(path=file_crime_winter)\n", - "crime_spring = dprep.auto_read_file(path=file_crime_spring)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "crime = (crime_dirty.append_rows(dataflows=[crime_winter, crime_spring]))\n", - "\n", - "crime.take_sample(probability=0.25, seed=RAND_SEED).head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "__Advanced features:__ you can learn how to append column-wise and how to deal with appending data with different schemas [here](../../how-to-guides/append-columns-and-rows.ipynb)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Apply common data science transforms\n", - "\n", - "Azure ML Data Prep supports almost all common data science transforms found in other industry-standard data science libraries. Here, we'll explore the ability to `summarize`, `join`, `filter`, and `replace`. \n", - "\n", - "__Advanced features:__\n", - "* We also provide \"smart\" transforms not found in pandas that use machine learning to [derive new columns](../../how-to-guides/derive-column-by-example.ipynb), [split columns](../../how-to-guides/split-column-by-example.ipynb), and [fuzzy grouping](../../how-to-guides/fuzzy-group.ipynb).\n", - "* Finally, we also help featurize your dataset to prepare it for machine learning; learn more about our featurizers like [one-hot encoder](../../how-to-guides/one-hot-encoder.ipynb), [label encoder](../../how-to-guides/label-encoder.ipynb), [min-max scaler](../../how-to-guides/min-max-scaler.ipynb), and [random (train-test) split](../../how-to-guides/random-split.ipynb).\n", - "* Our complete list of example Notebooks for transforms can be found in our [How-to Guides](../../how-to-guides)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Summarize\n", - "\n", - "Let's see which wards had the most crimes in our sample dataset:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "crime_summary = (crime\n", - " .summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID', \n", - " summary_column_name='total_ward_crimes', \n", - " summary_function=dprep.SummaryFunction.COUNT\n", - " )\n", - " ],\n", - " group_by_columns=['Ward']\n", - " )\n", - ")\n", - "\n", - "(crime_summary\n", - " .sort(sort_order=[('total_ward_crimes', True)])\n", - " .head(5)\n", - ")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Join\n", - "\n", - "Let's annotate each observation with more information about the ward where the crime occurred. Let's do so by joining `crime` with a dataset which lists the current aldermen for each ward:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "aldermen = dprep.auto_read_file(path=file_aldermen)\n", - "\n", - "aldermen.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "crime.join(\n", - " left_dataflow=crime,\n", - " right_dataflow=aldermen,\n", - " join_key_pairs=[\n", - " ('Ward', 'Ward')\n", - " ]\n", - ").head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "__Advanced features:__ [Learn more](../../how-to-guides/join.ipynb) about how you can do all variants of `join`, like inner-, left-, right-, anti-, and semi-joins." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Filter\n", - "\n", - "Let's look at theft crimes:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "theft = crime.filter(crime['Primary Type'] == 'THEFT')\n", - "\n", - "theft.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Replace\n", - "\n", - "Notice that our `theft` dataset has empty strings in column `Location`. Let's replace those with a missing value:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "theft_replaced = (theft\n", - " .replace_na(\n", - " columns=['Location'], \n", - " use_empty_string_as_na=True\n", - " )\n", - ")\n", - "\n", - "theft_replaced.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "__Advanced features:__ [Learn more](../../how-to-guides/replace-fill-error.ipynb) about more advanced `replace` and `fill` capabilities." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Consume your cleaned dataset\n", - "\n", - "Azure ML Data Prep allows you to \"choose your own adventure\" once you're done wrangling. You can:\n", - "\n", - "1. Write to a pandas dataframe\n", - "2. Execute on Spark\n", - "3. Consume directly in Azure Machine Learning models\n", - "\n", - "In this quickstart guide, we'll show how you can export to a pandas dataframe.\n", - "\n", - "__Advanced features:__ \n", - "* One of the beautiful features of Azure ML Data Prep is that you only need to write your code once and choose whether to scale up or out.\n", - "* You can directly consume your new DataFlow in model builders like Azure Machine Learning's [automated machine learning](https://github.com/Azure/MachineLearningNotebooks/blob/master/how-to-use-azureml/automated-machine-learning/dataprep/auto-ml-dataprep.ipynb)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "theft_replaced.to_pandas_dataframe()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explore advanced features\n", - "\n", - "Congratulations on finishing your introduction to the Azure ML Data Prep SDK! If you'd like more detailed tutorials on how to construct machine learning datasets or dive deeper into all of its functionality, you can find more information in our detailed notebooks [here](https://github.com/Microsoft/PendletonDocs). There, we cover topics including how to:\n", - "\n", - "* [Cache your Dataflow to speed up your iterations](../../how-to-guides/cache.ipynb)\n", - "* [Add your custom Python transforms](../../how-to-guides/custom-python-transforms.ipynb)\n", - "* [Impute missing values](../../how-to-guides/impute-missing-values.ipynb)\n", - "* [Sample your data](../../how-to-guides/subsetting-sampling.ipynb)\n", - "* [Reference and link between Dataflows](../../how-to-guides/join.ipynb)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/tutorials/getting-started/getting-started.png)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.2" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 883ad806ba6a9459f3dc4775e7df761a49125066 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:20:22 -0700 Subject: [PATCH 020/248] Delete add-column-using-expression.ipynb --- .../add-column-using-expression.ipynb | 361 ------------------ 1 file changed, 361 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/add-column-using-expression.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/add-column-using-expression.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/add-column-using-expression.ipynb deleted file mode 100644 index 46b09c65..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/add-column-using-expression.ipynb +++ /dev/null @@ -1,361 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/add-column-using-expression.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Add Column using Expression\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "With Azure ML Data Prep you can add a new column to data with `Dataflow.add_column` by using a Data Prep expression to calculate the value from existing columns. This is similar to using Python to create a [new script column](./custom-python-transforms.ipynb#New-Script-Column) except the Data Prep expressions are more limited and will execute faster. The expressions used are the same as for [filtering rows](./filtering.ipynb#Filtering-rows) and hence have the same functions and operators available.\n", - "

    \n", - "Here we add additional columns. First we get input data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# loading data\n", - "dflow = dprep.auto_read_file('../data/crime-spring.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `substring(start, length)`\n", - "Add a new column \"Case Category\" using the `substring(start, length)` expression to extract the prefix from the \"Case Number\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "case_category = dflow.add_column(new_column_name='Case Category',\n", - " prior_column='Case Number',\n", - " expression=dflow['Case Number'].substring(0, 2))\n", - "case_category.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `substring(start)`\n", - "Add a new column \"Case Id\" using the `substring(start)` expression to extract just the number from \"Case Number\" column and then convert it to numeric." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "case_id = dflow.add_column(new_column_name='Case Id',\n", - " prior_column='Case Number',\n", - " expression=dflow['Case Number'].substring(2))\n", - "case_id = case_id.to_number('Case Id')\n", - "case_id.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `length()`\n", - "Using the length() expression, add a new numeric column \"Length\", which contains the length of the string in \"Primary Type\"." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_length = dflow.add_column(new_column_name='Length',\n", - " prior_column='Primary Type',\n", - " expression=dflow['Primary Type'].length())\n", - "dflow_length.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `to_upper()`\n", - "Using the to_upper() expression, add a new numeric column \"Upper Case\", which contains the length of the string in \"Primary Type\"." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_to_upper = dflow.add_column(new_column_name='Upper Case',\n", - " prior_column='Primary Type',\n", - " expression=dflow['Primary Type'].to_upper())\n", - "dflow_to_upper.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `to_lower()`\n", - "Using the to_lower() expression, add a new numeric column \"Lower Case\", which contains the length of the string in \"Primary Type\"." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_to_lower = dflow.add_column(new_column_name='Lower Case',\n", - " prior_column='Primary Type',\n", - " expression=dflow['Primary Type'].to_lower())\n", - "dflow_to_lower.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `RegEx.extract_record()`\n", - "Using the `RegEx.extract_record()` expression, add a new record column \"Stream Date Record\", which contains the name capturing groups in the regex with value." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_regex_extract_record = dprep.auto_read_file('../data/stream-path.csv')\n", - "regex = dprep.RegEx('\\/(?\\d{4})\\/(?\\d{2})\\/(?\\d{2})\\/')\n", - "dflow_regex_extract_record = dflow_regex_extract_record.add_column(new_column_name='Stream Date Record',\n", - " prior_column='Stream Path',\n", - " expression=regex.extract_record(dflow_regex_extract_record['Stream Path']))\n", - "dflow_regex_extract_record.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `create_datetime()`\n", - "Using the `create_datetime()` expression, add a new column \"Stream Date\", which contains datetime values constructed from year, month, day values extracted from a record column \"Stream Date Record\"." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "year = dprep.col('year', dflow_regex_extract_record['Stream Date Record'])\n", - "month = dprep.col('month', dflow_regex_extract_record['Stream Date Record'])\n", - "day = dprep.col('day', dflow_regex_extract_record['Stream Date Record'])\n", - "dflow_create_datetime = dflow_regex_extract_record.add_column(new_column_name='Stream Date',\n", - " prior_column='Stream Date Record',\n", - " expression=dprep.create_datetime(year, month, day))\n", - "dflow_create_datetime.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) + col(column2)`\n", - "Add a new column \"Total\" to show the result of adding the values in the \"FBI Code\" column to the \"Community Area\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_total = dflow.add_column(new_column_name='Total',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']+dflow['FBI Code'])\n", - "dflow_total.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) - col(column2)`\n", - "Add a new column \"Subtract\" to show the result of subtracting the values in the \"FBI Code\" column from the \"Community Area\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_diff = dflow.add_column(new_column_name='Difference',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']-dflow['FBI Code'])\n", - "dflow_diff.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) * col(column2)`\n", - "Add a new column \"Product\" to show the result of multiplying the values in the \"FBI Code\" column to the \"Community Area\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_prod = dflow.add_column(new_column_name='Product',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']*dflow['FBI Code'])\n", - "dflow_prod.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) / col(column2)`\n", - "Add a new column \"True Quotient\" to show the result of true (decimal) division of the values in \"Community Area\" column by the \"FBI Code\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_true_div = dflow.add_column(new_column_name='True Quotient',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']/dflow['FBI Code'])\n", - "dflow_true_div.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) // col(column2)`\n", - "Add a new column \"Floor Quotient\" to show the result of floor (integer) division of the values in \"Community Area\" column by the \"FBI Code\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_floor_div = dflow.add_column(new_column_name='Floor Quotient',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']//dflow['FBI Code'])\n", - "dflow_floor_div.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) % col(column2)`\n", - "Add a new column \"Mod\" to show the result of applying the modulo operation on the \"FBI Code\" column and the \"Community Area\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_mod = dflow.add_column(new_column_name='Mod',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']%dflow['FBI Code'])\n", - "dflow_mod.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#### `col(column1) ** col(column2)`\n", - "Add a new column \"Power\" to show the result of applying the exponentiation operation when the base is the \"Community Area\" column and the exponent is \"FBI Code\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_pow = dflow.add_column(new_column_name='Power',\n", - " prior_column='FBI Code',\n", - " expression=dflow['Community Area']**dflow['FBI Code'])\n", - "dflow_pow.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From ecefb229e902a7a0466c305df85d011fe95f305a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:20:40 -0700 Subject: [PATCH 021/248] Delete append-columns-and-rows.ipynb --- .../append-columns-and-rows.ipynb | 252 ------------------ 1 file changed, 252 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/append-columns-and-rows.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/append-columns-and-rows.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/append-columns-and-rows.ipynb deleted file mode 100644 index 1873d4eb..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/append-columns-and-rows.ipynb +++ /dev/null @@ -1,252 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/append-columns-and-rows.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Append Columns and Rows\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License.
    \n", - "\n", - "Often the data we want does not come in a single dataset: they are coming from different locations, have features that are separated, or are simply not homogeneous. Unsurprisingly, we typically want to work with a single dataset at a time.\n", - "\n", - "Azure ML Data Prep allows the concatenation of two or more dataflows by means of column and row appends.\n", - "\n", - "We will demonstrate this by defining a single dataflow that will pull data from multiple datasets.\n", - "\n", - "## Table of Contents\n", - "[append_columns(dataflows)](#append_columns)
    \n", - "[append_rows(dataflows)](#append_rows)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## `append_columns(dataflows)`\n", - "We can append data width-wise, which will change some or all existing rows and potentially adding rows (based on an assumption that data in two datasets are aligned on row number).\n", - "\n", - "However we cannot do this if the reference dataflows have clashing schema with the target dataflow. Observe:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_chicago = auto_read_file(path='../data/chicago-aldermen-2015.csv')\n", - "dflow_chicago.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import ExecutionError\n", - "try:\n", - " dflow_combined_by_column = dflow.append_columns([dflow_chicago])\n", - " dflow_combined_by_column.head(5)\n", - "except ExecutionError:\n", - " print('Cannot append_columns with schema clash!')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As expected, we cannot call `append_columns` with target dataflows that have clashing schema.\n", - "\n", - "We can make the call once we rename or drop the offending columns. In more complex scenarios, we could opt to skip or filter to make rows align before appending columns. Here we will choose to simply drop the clashing column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_combined_by_column = dflow.append_columns([dflow_chicago.drop_columns(['Ward'])])\n", - "dflow_combined_by_column.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Notice that the resultant schema has more columns in the first N records (N being the number of records in `dataflow` and the extra columns being the width of the schema of our reference dataflow, chicago, minus the `Ward` column). From the N+1th record onwards, we will only have a schema width matching that of the `Ward`-less chicago set.\n", - "\n", - "Why is this? As much as possible, the data from the reference dataflow(s) will be attached to existing rows in the target dataflow. If there are not enough rows in the target dataflow to attach to, we simply append them as new rows.\n", - "\n", - "Note that these are appends, not joins (for joins please reference [Join](join.ipynb)), so the append may not be logically correct, but will take effect as long as there are no schema clashes." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Ward-less data after we skip the first N rows\n", - "dflow_len = dflow.row_count\n", - "dflow_combined_by_column.skip(dflow_len).head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## `append_rows(dataflows)`\n", - "We can append data length-wise, which will only have the effect of adding new rows. No existing data will be changed." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_spring = auto_read_file(path='../data/crime-spring.csv')\n", - "dflow_spring.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_chicago = auto_read_file(path='../data/chicago-aldermen-2015.csv')\n", - "dflow_chicago.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_combined_by_row = dflow.append_rows([dflow_chicago, dflow_spring])\n", - "dflow_combined_by_row.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Notice that neither schema nor data has changed for the target dataflow.\n", - "\n", - "If we skip ahead, we will see our target dataflows' data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# chicago data\n", - "dflow_len = dflow.row_count\n", - "dflow_combined_by_row.skip(dflow_len).head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# crimes spring data\n", - "dflow_chicago_len = dflow_chicago.row_count\n", - "dflow_combined_by_row.skip(dflow_len + dflow_chicago_len).head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 6bfd472cc2f469cce457582d167a19ce37f0a767 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:20:55 -0700 Subject: [PATCH 022/248] Delete assertions.ipynb --- .../dataprep/how-to-guides/assertions.ipynb | 134 ------------------ 1 file changed, 134 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/assertions.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/assertions.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/assertions.ipynb deleted file mode 100644 index 6a3fa2c3..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/assertions.ipynb +++ /dev/null @@ -1,134 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/assertions.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Assertions\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Frequently, the data we work with while cleaning and preparing data is just a subset of the total data we will need to work with in production. It is also common to be working on a snapshot of a live dataset that is continuously updated and augmented.\n", - "\n", - "In these cases, some of the assumptions we make as part of our cleaning might turn out to be false. Columns that originally only contained numbers within a certain range might actually contain a wider range of values in later executions. These errors often result in either broken pipelines or bad data.\n", - "\n", - "Azure ML Data Prep supports creating assertions on data, which are evaluated as the pipeline is executed. These assertions enable us to verify that our assumptions on the data continue to be accurate and, when not, to handle failures in a clean way." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To demonstrate, we will load a dataset and then add some assertions based on what we can see in the first few rows." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "\n", - "dflow = auto_read_file('../data/crime-dirty.csv')\n", - "dflow.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can see there are latitude and longitude columns present in this dataset. By definition, these are constrained to specific ranges of values. We can assert that this is indeed the case so that if any records come through with invalid values, we detect them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import value\n", - "\n", - "dflow = dflow.assert_value('Latitude', (value <= 90) & (value >= -90), error_code='InvalidLatitude')\n", - "dflow = dflow.assert_value('Longitude', (value <= 180) & (value >= -180), error_code='InvalidLongitude')\n", - "dflow.keep_columns(['Latitude', 'Longitude']).get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Any assertion failures are represented as Errors in the resulting dataset. From the profile above, you can see that the Error Count for both of these columns is 1. We can use a filter to retrieve the error and see what value caused the assertion to fail." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import col\n", - "\n", - "dflow_error = dflow.filter(col('Latitude').is_error())\n", - "error = dflow_error.head(10)['Latitude'][0]\n", - "print(error.originalValue)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Our assertion failed because we were not removing missing values from our data. At this point, we have two options: we can go back and edit our code to avoid this error in the first place or we can resolve it now. In this case, we will just filter these out." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import LocalFileOutput\n", - "dflow_clean = dflow.filter(~dflow['Latitude'].is_error())\n", - "dflow_clean.get_profile()" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From b8499dfb98d4c2aacc0b43f4c6e20cf5b103812f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:21:22 -0700 Subject: [PATCH 023/248] Delete auto-read-file.ipynb --- .../how-to-guides/auto-read-file.ipynb | 190 ------------------ 1 file changed, 190 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/auto-read-file.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/auto-read-file.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/auto-read-file.ipynb deleted file mode 100644 index d3008d57..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/auto-read-file.ipynb +++ /dev/null @@ -1,190 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/auto-read-file.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Auto Read File\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep has the ability to load different kinds of text files. The `auto_read_file` entry point can take any text based file (including excel, json and parquet) and auto-detect how to parse the file. It will also attempt to auto-detect the types of each column and apply type transformations to the columns it detects.\n", - "\n", - "The result will be a Dataflow object that has all the steps added that are required to read the given file(s) and convert their columns to the predicted types. No parameters are required beyond the file path or `FileDataSource` object." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_auto = dprep.auto_read_file('../data/crime_multiple_separators.csv')\n", - "dflow_auto.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_auto1 = dprep.auto_read_file('../data/crime.xlsx')\n", - "dflow_auto1.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_auto2 = dprep.auto_read_file('../data/crime.parquet')\n", - "dflow_auto2.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Looking at the data, we can see that there are two empty columns either side of the 'Completed' column.\n", - "If we compare the dataframe to a few rows from the original file:\n", - "```\n", - "ID |CaseNumber| |Completed|\n", - "10140490 |HY329907| |Y|\n", - "10139776 |HY329265| |Y|\n", - "```\n", - "We can see that the `|`'s have disappeared in the dataframe. This is because `|` is a very common separator character in csv files, so `auto_read_file` guessed it was the column separator. For this data we actually want the `|`'s to remain and instead use space as the column separator.\n", - "\n", - "To achieve this we can use `detect_file_format`. It takes a file path or datasource object and gives back a `FileFormatBuilder` which has learnt some information about the supplied data.\n", - "This is what `auto_read_file` is using behind the scenes to 'learn' the contents of the given file and determine how to parse it. With the `FileFormatBuilder` we can take advantage of the intelligent learning aspect of `auto_read_file` but have the chance to modify some of the learnt information." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ffb = dprep.detect_file_format('../data/crime_multiple_separators.csv')\n", - "ffb_2 = dprep.detect_file_format('../data/crime.xlsx')\n", - "ffb_3 = dprep.detect_file_format('../data/crime_fixed_width_file.txt')\n", - "ffb_4 = dprep.detect_file_format('../data/json.json')\n", - "\n", - "print(ffb.file_format)\n", - "print(ffb_2.file_format)\n", - "print(ffb_3.file_format)\n", - "print(type(ffb_4.file_format))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "After calling `detect_file_format` we get a `FileFormatBuilder` that has had `learn` called on it. This means the `file_format` attribute will be populated with a `Properties` object, it contains all the information that was learnt about the file. As we can see above different file types have corresponding file_formats detected. \n", - "Continuing with our delimited example we can change any of these values and then call `ffb.to_dataflow()` to create a `Dataflow` that has the steps required to parse the datasource." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ffb.file_format.separator = ' '\n", - "dflow = ffb.to_dataflow()\n", - "df = dflow.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The result is our desired dataframe with `|`'s included.\n", - "\n", - "If we refer back to the original data output by `auto_read_file`, the 'ID' column was also detected as numeric and converted to a number data type instead of remaining a string like in the data above.\n", - "We can perform type inference on our new dataflow using the `dataflow.builders` property. This property exposes different builders that can `learn` from a dataflow and `apply` the learning to produce a new dataflow, very similar to the pattern we used above for the `FileFormatBuilder`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ctb = dflow.builders.set_column_types()\n", - "ctb.learn()\n", - "ctb.conversion_candidates" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "After learning `ctb.conversion_candidates` has been populated with information about the inferred types for each column, it is possible for there to be multiple candidate types per column, in this example there is only one type for each column.\n", - "\n", - "The candidates look correct, we only want to convert `ID` to be an integer column, so applying this `ColumnTypesBuilder` should result in a Dataflow with our columns converted to their respective types." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_converted = ctb.to_dataflow()\n", - "\n", - "df_converted = dflow_converted.to_pandas_dataframe()\n", - "df_converted" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 218fed3d65685fe878164bac4b9de02be2db6148 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:21:35 -0700 Subject: [PATCH 024/248] Delete cache.ipynb --- .../dataprep/how-to-guides/cache.ipynb | 195 ------------------ 1 file changed, 195 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/cache.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/cache.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/cache.ipynb deleted file mode 100644 index a8044902..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/cache.ipynb +++ /dev/null @@ -1,195 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/cache.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cache\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A Dataflow can be cached as a file on your disk during a local run by calling `dflow_cached = dflow.cache(directory_path)`. Doing this will run all the steps in the Dataflow, `dflow`, and save the cached data to the specified `directory_path`. The returned Dataflow, `dflow_cached`, has a Caching Step added at the end. Any subsequent runs on on the Dataflow `dflow_cached` will reuse the cached data, and the steps before the Caching Step will not be run again.\n", - "\n", - "Caching avoids running transforms multiple times, which can make local runs more efficient. Here are common places to use Caching:\n", - "- after reading data from remote\n", - "- after expensive transforms, such as Sort\n", - "- after transforms that change the shape of data, such as Sampling, Filter and Summarize\n", - "\n", - "Caching Step will be ignored during scale-out run invoked by `to_spark_dataframe()`." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We will start by reading in a dataset and applying some transforms to the Dataflow." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.read_csv(path='../data/crime-spring.csv')\n", - "dflow = dflow.take_sample(probability=0.2, seed=7)\n", - "dflow = dflow.sort_asc(columns='Primary Type')\n", - "dflow = dflow.keep_columns(['ID', 'Case Number', 'Date', 'Primary Type'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Next, we will choose a directory to store the cached data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "from pathlib import Path\n", - "cache_dir = str(Path(os.getcwd(), 'dataflow-cache'))\n", - "cache_dir" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We will now call `dflow.cache(directory_path)` to cache the Dataflow to your directory." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_cached = dflow.cache(directory_path=cache_dir)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now we will check steps in the `dflow_cached` to see that all of the previous steps were cached." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "[s.step_type for s in dflow_cached._get_steps()]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We also check the data stored in the cache directory." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "os.listdir(cache_dir)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Running against `dflow_cached` will reuse the cached data and skip running all of the previous steps again." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_cached.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Adding additional steps to `dflow_cached` will also reuse the cache data and skip running the steps prior to the Cache Step." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_cached_take = dflow_cached.take(10)\n", - "dflow_cached_skip = dflow_cached.skip(10).take(10)\n", - "\n", - "df_cached_take = dflow_cached_take.to_pandas_dataframe()\n", - "df_cached_skip = dflow_cached_skip.to_pandas_dataframe()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# shutil.rmtree will then clean up the cached data \n", - "import shutil\n", - "shutil.rmtree(path=cache_dir)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 7160416c0bc89016213e6a8153398c107e867152 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:21:47 -0700 Subject: [PATCH 025/248] Delete column-manipulations.ipynb --- .../how-to-guides/column-manipulations.ipynb | 564 ------------------ 1 file changed, 564 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-manipulations.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-manipulations.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-manipulations.ipynb deleted file mode 100644 index 20003ac5..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-manipulations.ipynb +++ /dev/null @@ -1,564 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-manipulations.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Column Manipulations\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License.
    \n", - "\n", - "Azure ML Data Prep has many methods for manipulating columns, including basic CUD operations and several other more complex manipulations.\n", - "\n", - "This notebook will focus primarily on data-agnostic operations. For all other column manipulation operations, we will link to their specific how-to guide.\n", - "\n", - "## Table of Contents\n", - "[ColumnSelector](#ColumnSelector)
    \n", - "[add_column](#add_column)
    \n", - "[append_columns](#append_columns)
    \n", - "[drop_columns](#drop_columns)
    \n", - "[duplicate_column](#duplicate_column)
    \n", - "[fuzzy_group_column](#fuzzy_group_column)
    \n", - "[keep_columns](#keep_columns)
    \n", - "[map_column](#map_column)
    \n", - "[new_script_column](#new_script_column)
    \n", - "[rename_columns](#rename_columns)
    \n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## ColumnSelector\n", - "`ColumnSelector` is a Data Prep class that allows us to select columns by name. The idea is to be able to describe columns generally instead of explicitly, using a search term or regex expression, with various options.\n", - "\n", - "Note that a `ColumnSelector` does not represent the columns they match themselves, but the selector of the described columns. Therefore if we use the same `ColumnSelector` on two different dataflows, we may get different results depending on the columns of each dataflow.\n", - "\n", - "Column manipulations that can utilize `ColumnSelector` will be noted in their respective sections in this book." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "All parameters to a `ColumnSelector` are shown here for completeness. We will use `keep_columns` in our example, which will keep only the columns in the dataflow that we tell it to keep.\n", - "\n", - "In the below example, we match all columns with the letter 'i'. Because we set `ignore_case` to false and `match_whole_word` to false, then any column that contains 'i' or 'I' will be selected." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import ColumnSelector\n", - "column_selector = ColumnSelector(term=\"i\",\n", - " use_regex=False,\n", - " ignore_case=True,\n", - " match_whole_word=False,\n", - " invert=False)\n", - "dflow_selected = dflow.keep_columns(column_selector)\n", - "dflow_selected.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If we set `invert` to true, we get the opposite of what we matched earlier." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "column_selector = ColumnSelector(term=\"i\",\n", - " use_regex=False,\n", - " ignore_case=True,\n", - " match_whole_word=False,\n", - " invert=True)\n", - "dflow_selected = dflow.keep_columns(column_selector)\n", - "dflow_selected.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If we change the search term to 'I' and set case sensitivity to true, we get only the handful of columns that contain an upper case 'I'." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "column_selector = ColumnSelector(term=\"I\",\n", - " use_regex=False,\n", - " ignore_case=False,\n", - " match_whole_word=False,\n", - " invert=False)\n", - "dflow_selected = dflow.keep_columns(column_selector)\n", - "dflow_selected.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "And if we set `match_whole_word` to true, we get no results at all as there is no column called 'I'." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "column_selector = ColumnSelector(term=\"I\",\n", - " use_regex=False,\n", - " ignore_case=False,\n", - " match_whole_word=True,\n", - " invert=False)\n", - "dflow_selected = dflow.keep_columns(column_selector)\n", - "dflow_selected.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Finally, the `use_regex` flag dictates whether or not to treat the search term as a regex. It can be combined still with the other options.\n", - "\n", - "Here we define all columns that begin with the capital letter 'I'." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "column_selector = ColumnSelector(term=\"I.*\",\n", - " use_regex=True,\n", - " ignore_case=True,\n", - " match_whole_word=True,\n", - " invert=False)\n", - "dflow_selected = dflow.keep_columns(column_selector)\n", - "dflow_selected.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## add_column" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Please see [add-column-using-expression](add-column-using-expression.ipynb)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## append_columns" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Please see [append-columns-and-rows](append-columns-and-rows.ipynb)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## drop_columns" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports dropping columns one or more columns in a single statement. Supports `ColumnSelector`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Note that there are 22 columns to begin with. We will now drop the 'ID' column and observe that the resulting dataflow contains 21 columns." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_dropped = dflow.drop_columns('ID')\n", - "dflow_dropped.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can also drop more than one column at once by passing a list of column names." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_dropped = dflow_dropped.drop_columns(['IUCR', 'Description'])\n", - "dflow_dropped.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## duplicate_column" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports duplicating columns one or more columns in a single statement.\n", - "\n", - "Duplicated columns are placed to the immediate right of their source column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We decide which column(s) to duplicate and what the new column name(s) should be with a key value pairing (dictionary)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_dupe = dflow.duplicate_column({'ID': 'ID2', 'IUCR': 'IUCR_Clone'})\n", - "dflow_dupe.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## fuzzy_group_column" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Please see [fuzzy-group](fuzzy-group.ipynb)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## keep_columns" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports keeping one or more columns in a single statement. The resulting dataflow will contain only the column(s) specified; dropping all the other columns. Supports `ColumnSelector`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_keep = dflow.keep_columns(['ID', 'Date', 'Description'])\n", - "dflow_keep.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Similar to `drop_columns`, we can pass a single column name or a list of them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_keep = dflow_keep.keep_columns('ID')\n", - "dflow_keep.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## map_column" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports string mapping. For a column containing strings, we can provide specific mappings from an original value to a new value, and then produce a new column that contains the mapped values.\n", - "\n", - "The mapped columns are placed to the immediate right of their source column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import ReplacementsValue\n", - "replacements = [ReplacementsValue('THEFT', 'THEFT2'), ReplacementsValue('BATTERY', 'BATTERY!!!')]\n", - "dflow_mapped = dflow.map_column(column='Primary Type', \n", - " new_column_id='Primary Type V2',\n", - " replacements=replacements)\n", - "dflow_mapped.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## new_script_column" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Please see [custom-python-transforms](custom-python-transforms.ipynb)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## rename_columns" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports renaming one or more columns in a single statement." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import auto_read_file\n", - "dflow = auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We decide which column(s) to rename and what the new column name(s) should be with a key value pairing (dictionary)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_renamed = dflow.rename_columns({'ID': 'ID2', 'IUCR': 'IUCR_Clone'})\n", - "dflow_renamed.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 08f15ef4cf5013b24586f596b0c9b8adb3bb3542 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:21:58 -0700 Subject: [PATCH 026/248] Delete column-type-transforms.ipynb --- .../column-type-transforms.ipynb | 474 ------------------ 1 file changed, 474 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-type-transforms.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-type-transforms.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-type-transforms.ipynb deleted file mode 100644 index 3084c9b0..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-type-transforms.ipynb +++ /dev/null @@ -1,474 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-type-transforms.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Column Type Transforms\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "When consuming a data set, it is highly useful to know as much as possible about the data. Column types can help you understand more about each column, and enable type-specific transformations later. This provides much more insight than treating all data as strings.\n", - "\n", - "In this notebook, you will learn about:\n", - "- [Built-in column types](#types)\n", - "- How to:\n", - " - [Convert to long (integer)](#long)\n", - " - [Convert to double (floating point or decimal number)](#double)\n", - " - [Convert to boolean](#boolean)\n", - " - [Convert to datetime](#datetime)\n", - "- [How to use `ColumnTypesBuilder` to get suggested column types and convert them](#builder)\n", - "- [How to convert column type for multiple columns if types are known](#multiple-columns)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Set up" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_csv('../data/crime-winter.csv')\n", - "dflow = dflow.keep_columns(['Case Number', 'Date', 'IUCR', 'Arrest', 'Longitude', 'Latitude'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Built-in column types" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Currently, Data Prep supports the following column types: string, long (integer), double (floating point or decimal number), boolean, and datetime.\n", - "\n", - "In the previous step, a data set was read in as a Dataflow, with only a few interesting columns kept. We will use this Dataflow to explore column types throughout the notebook." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "From the first few rows of the Dataflow, you can see that the columns contain different types of data. However, by looking at `dtypes`, you can see that `read_csv()` treats all columns as string columns.\n", - "\n", - "Note that `auto_read_file()` is a data ingestion function that infers column types. Learn more about it [here](./auto-read-file.ipynb)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.dtypes" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Converting to long (integer)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Suppose the \"IUCR\" column should only contain integers. You can call `to_long` to convert the column type of \"IUCR\" to `FieldType.INTEGER`. If you look at the data profile ([learn more about data profiles](./data-profile.ipynb)), you will see numeric metrics populated for that column such as mean, variance, quantiles, etc. This is helpful for understanding the shape and distribution of numeric data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_conversion = dflow.to_long('IUCR')\n", - "profile = dflow_conversion.get_profile()\n", - "profile" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Converting to double (floating point or decimal number)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Suppose the \"Latitude\" and \"Longitude\" columns should only contain decimal numbers. You can call `to_double` to convert the column type of \"Latitude\" and \"Longitude\" to `FieldType.DECIMAL`. In the data profile, you will see numeric metrics populated for these columns as well. Note that after converting the column types, you can see that there are missing values in these columns. Metrics like this can be helpful for noticing issues with the data set." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_conversion = dflow_conversion.to_number(['Latitude', 'Longitude'])\n", - "profile = dflow_conversion.get_profile()\n", - "profile" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Converting to boolean" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Suppose the \"Arrest\" column should only contain boolean values. You can call `to_bool` to convert the column type of \"Arrest\" to `FieldType.BOOLEAN`.\n", - "\n", - "The `to_bool` function allows you to specify which values should map to `True` and which values should map to `False`. To do so, you can provide those values in an array as parameters `true_values` and `false_values`. Additionally, you can specify whether all other values should become `True`, `False` or Error by using the `mismatch_as` parameter." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_conversion.to_bool('Arrest', \n", - " true_values=[1],\n", - " false_values=[0],\n", - " mismatch_as=dprep.MismatchAsOption.ASERROR).head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In the previous conversion, all the values in the \"Arrest\" column became `DataPrepError`, because 'FALSE' didn't match any of the `false_values` nor any of the `true_values`, and all the unmatched values were set to become errors. Let's try the conversion again with different `false_values`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_conversion = dflow_conversion.to_bool('Arrest',\n", - " true_values=['1', 'TRUE'],\n", - " false_values=['0', 'FALSE'],\n", - " mismatch_as=dprep.MismatchAsOption.ASERROR)\n", - "dflow_conversion.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This time, all the string values 'FALSE' have been successfully converted to the boolean value `False`. Take another look at the data profile." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile = dflow_conversion.get_profile()\n", - "profile" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Suppose the \"Date\" column should only contain datetime values. You can convert its column type to `FieldType.DateTime` using the `to_datetime` function. Typically, datetime formats can be confusing or inconsistent. Next, we will show you all the tools that can help correctly converting the column to `DateTime`." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In the first example, directly call `to_datetime` with only the column name. Data Prep will inspect the data in this column and learn what format should be used for the conversion.\n", - "\n", - "Note that if there is data in the column that cannot be converted to datetime, an Error value will be created in that cell." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_conversion_date = dflow_conversion.to_datetime('Date')\n", - "dflow_conversion_date.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this case, we can see that '1/10/2016 11:00' was converted using the format `%m/%d/%Y %H:%M`.\n", - "\n", - "The data in this column is actually somewhat ambiguous. Should the dates be 'October 1' or 'January 10'? The function `to_datetime` determines that both are possible, but defaults to month-first (US format).\n", - "\n", - "If the data was supposed to be day-first, you can customize the conversion." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_alternate_conversion = dflow_conversion.to_datetime('Date', date_time_formats=['%d/%m/%Y %H:%M'])\n", - "dflow_alternate_conversion.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Using `ColumnTypesBuilder`" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep can help you automatically detect what are the likely column types.\n", - "\n", - "You can call `dflow.builders.set_column_types()` to get a `ColumnTypesBuilder`. Then, calling `learn()` on it will trigger Data Prep to inspect the data in each column. As a result, you can see the suggested column types for each column (conversion candidates)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.set_column_types()\n", - "builder.learn()\n", - "builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this case, Data Prep suggested the correct column types for \"Arrest\", \"Case Number\", \"Latitude\", and \"Longitude\".\n", - "\n", - "However, for \"Date\", it has suggested two possible date formats: month-first, or day-first. The ambiguity must be resolved before you complete the conversion. To use the month-first format, you can call `builder.ambiguous_date_conversions_keep_month_day()`. Otherwise, call `builder.ambiguous_date_conversions_keep_day_month()`. Note that if there were multiple datetime columns with ambiguous date conversions, calling one of these functions will apply the resolution to all of them.\n", - "\n", - "If you want to skip all the ambiguous date column conversions instead, you can call: `builder.ambiguous_date_conversions_drop()`" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.ambiguous_date_conversions_keep_month_day()\n", - "builder.conversion_candidates" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The conversion candidate for \"IUCR\" is currently `FieldType.INTEGER`. If you know that \"IUCR\" should be floating point (called `FieldType.DECIMAL`), you can tweak the builder to change the conversion candidate for that specific column. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.conversion_candidates['IUCR'] = dprep.FieldType.DECIMAL\n", - "builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this case we are happy with \"IUCR\" as `FieldType.INTEGER`. So we set it back. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.conversion_candidates['IUCR'] = dprep.FieldType.INTEGER\n", - "builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once you are happy with the conversion candidates, you can complete the conversion by calling `builder.to_dataflow()`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_converion_using_builder = builder.to_dataflow()\n", - "dflow_converion_using_builder.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Convert column types for multiple columns" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you already know the column types, you can simply call `dflow.set_column_types()`. This function allows you to specify multiple columns, and the desired column type for each one. Here's how you can convert all five columns at once.\n", - "\n", - "Note that `set_column_types` only supports a subset of column type conversions. For example, we cannot specify the true/false values for a boolean conversion, so the results of this operation is incorrect for the \"Arrest\" column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_conversion_using_set = dflow.set_column_types({\n", - " 'IUCR': dprep.FieldType.INTEGER,\n", - " 'Latitude': dprep.FieldType.DECIMAL,\n", - " 'Longitude': dprep.FieldType.DECIMAL,\n", - " 'Arrest': dprep.FieldType.BOOLEAN,\n", - " 'Date': (dprep.FieldType.DATE, ['%m/%d/%Y %H:%M']),\n", - "})\n", - "dflow_conversion_using_set.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From a0ff1c6b64129a473ad1bef8dcc1a940b9422c3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:22:11 -0700 Subject: [PATCH 027/248] Delete custom-python-transforms.ipynb --- .../custom-python-transforms.ipynb | 232 ------------------ 1 file changed, 232 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb deleted file mode 100644 index 99af1fc9..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb +++ /dev/null @@ -1,232 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/custom-python-transforms.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Custom Python Transforms\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There will be scenarios when the easiest thing for you to do is just to write some Python code. This SDK provides three extension points that you can use.\n", - "\n", - "1. New Script Column\n", - "2. New Script Filter\n", - "3. Transform Partition\n", - "\n", - "Each of these are supported in both the scale-up and the scale-out runtime. A key advantage of using these extension points is that you don't need to pull all of the data in order to create a dataframe. Your custom python code will be run just like other transforms, at scale, by partition, and typically in parallel." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Initial data prep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We start by loading crime data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "col = dprep.col\n", - "\n", - "dflow = dprep.read_csv(path='../data/crime-spring.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We trim the dataset down and keep only the columns we are interested in. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.keep_columns(['Case Number','Primary Type', 'Description', 'Latitude', 'Longitude'])\n", - "dflow = dflow.replace_na(columns=['Latitude', 'Longitude'], custom_na_list='')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We look for null values using a filter. We found some, so now we'll look at a way to fill these missing values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.filter(col('Latitude').is_null()).head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Transform Partition" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We want to replace all null values with a 0, so we decide to use a handy pandas function. This code will be run by partition, not on all of the dataset at a time. This means that on a large dataset, this code may run in parallel as the runtime processes the data partition by partition." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "pt_dflow = dflow\n", - "dflow = pt_dflow.transform_partition(\"\"\"\n", - "def transform(df, index):\n", - " df['Latitude'].fillna('0',inplace=True)\n", - " df['Longitude'].fillna('0',inplace=True)\n", - " return df\n", - "\"\"\")\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Transform Partition With File" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Being able to use any python code to manipulate your data as a pandas DataFrame is extremely useful for complex and specific data operations that DataPrep doesn't handle natively. Though the code isn't very testable unfortunately, it's just sitting inside a string.\n", - "So to improve code testability and ease of script writing there is another transform_partiton interface that takes the path to a python script which must contain a function matching the 'transform' signature defined above.\n", - "\n", - "The `script_path` argument should be a relative path to ensure Dataflow portability. Here `map_func.py` contains the same code as in the previous example." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = pt_dflow.transform_partition_with_file('../data/map_func.py')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## New Script Column" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We want to create a new column that has both the latitude and longitude. We can achieve it easily using [Data Prep expression](./add-column-using-expression.ipynb), which is faster in execution. Alternatively, We can do this using Python code by using the `new_script_column()` method on the dataflow. Note that we use custom Python code here for demo purpose only. In practise, you should always use Data Prep native functions as a preferred method, and use custom Python code when the functionality is not available in Data Prep. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.new_script_column(new_column_name='coordinates', insert_after='Longitude', script=\"\"\"\n", - "def newvalue(row):\n", - " return '(' + row['Latitude'] + ', ' + row['Longitude'] + ')'\n", - "\"\"\")\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## New Script Filter" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now we want to filter the dataset down to only the crimes that incurred over $300 in loss. We can build a Python expression that returns True if we want to keep the row, and False to drop the row." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.new_script_filter(\"\"\"\n", - "def includerow(row):\n", - " val = row['Description']\n", - " return 'OVER $ 300' in val\n", - "\"\"\")\n", - "dflow.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 97a6d9ca4375bd40171129a5ba2ef419d5890074 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:22:21 -0700 Subject: [PATCH 028/248] Delete data-ingestion.ipynb --- .../how-to-guides/data-ingestion.ipynb | 979 ------------------ 1 file changed, 979 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb deleted file mode 100644 index 7885f0b2..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb +++ /dev/null @@ -1,979 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-ingestion.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Data Ingestion\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep has the ability to load different types of input data. You can use auto-reading functionality to detect the type of a file, or directly specify a file type and its parameters." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Table of Contents\n", - "[Read Lines](#lines)
    \n", - "[Read CSV](#csv)
    \n", - "[Read Compressed CSV](#compressed-csv)
    \n", - "[Read Excel](#excel)
    \n", - "[Read Fixed Width Files](#fixed-width)
    \n", - "[Read Parquet](#parquet)
    \n", - "[Read Part Files Using Globbing](#globbing)
    \n", - "[Read JSON](#json)
    \n", - "[Read SQL](#sql)
    \n", - "[Read PostgreSQL](#postgresql)
    \n", - "[Read From Azure Blob](#azure-blob)
    \n", - "[Read From ADLS](#adls)
    \n", - "[Read Pandas DataFrame](#pandas-df)
    " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Lines" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "One of the simplest ways to read data using Data Prep is to just read it as text lines." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_lines(path='../data/crime.txt')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "With ingestion done, you can go ahead and start prepping the dataset." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df = dflow.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read CSV" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "When reading delimited files, the only required parameter is `path`. Other parameters (e.g. separator, encoding, whether to use headers, etc.) are available to modify default behavior.\n", - "In this case, you can read a file by specifying only its location, then retrieve the first 5 rows to evaluate the result." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_duplicate_headers = dprep.read_csv(path='../data/crime_duplicate_headers.csv')\n", - "dflow_duplicate_headers.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "From the result, you can see that the delimiter and encoding were correctly detected. Column headers were also detected. However, the first line seems to be a duplicate of the column headers. One of the parameters is a number of lines to skip from the files being read. You can use this to filter out the duplicate line." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_skip_headers = dprep.read_csv(path='../data/crime_duplicate_headers.csv', skip_rows=1)\n", - "dflow_skip_headers.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now the data set contains the correct headers and the extraneous row has been skipped by `read_csv`. Next, look at the data types of the columns." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_skip_headers.dtypes" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Unfortunately, all of the columns came back as strings. This is because, by default, Data Prep will not change the type of the data. Since the data source is a text file, all values are kept as strings. In this case, however, numeric columns should be parsed as numbers. To do this, set the `infer_column_types` parameter to `True`, which will trigger type inference to be performed.\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_inferred_types = dprep.read_csv(path='../data/crime_duplicate_headers.csv',\n", - " skip_rows=1,\n", - " infer_column_types=True)\n", - "dflow_inferred_types.dtypes" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now several of the columns were correctly detected as numbers and their `FieldType` is Decimal.\n", - "\n", - "With ingestion done, the data set is ready to start preparing." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df = dflow_inferred_types.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Compressed CSV" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep can also read delimited files compressed in an archive. The `archive_options` parameter specifies the type of archive and glob pattern of entries in the archive.\n", - "\n", - "At this moment, only reading from ZIP archives is supported." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import ArchiveOptions, ArchiveType\n", - "\n", - "dflow = dprep.read_csv(path='../data/crime.zip',\n", - " archive_options=ArchiveOptions(archive_type=ArchiveType.ZIP, entry_glob='*10-20.csv'))\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Excel" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep can also load Excel files using the `read_excel` method." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_default_sheet = dprep.read_excel(path='../data/crime.xlsx')\n", - "dflow_default_sheet.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here, the first sheet of the Excel document has been loaded. You could achieve the same result by specifying the name of the desired sheet explicitly." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_second_sheet = dprep.read_excel(path='../data/crime.xlsx', sheet_name='Sheet2')\n", - "dflow_second_sheet.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see, the table in the second sheet had headers as well as three empty rows, so you can modify the arguments accordingly." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_skipped_rows = dprep.read_excel(path='../data/crime.xlsx',\n", - " sheet_name='Sheet2',\n", - " use_column_headers=True,\n", - " skip_rows=3)\n", - "dflow_skipped_rows.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df = dflow_skipped_rows.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Fixed Width Files" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For fixed-width files, you can specify a list of offsets. The first column is always assumed to start at offset 0." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_fixed_width = dprep.read_fwf('../data/crime.txt', offsets=[8, 17, 26, 33, 56, 58, 74])\n", - "dflow_fixed_width.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Looking at the data, you can see that the first row was used as headers. In this particular case, however, there are no headers in the file, so the first row should be treated as data.\n", - "\n", - "Passing in `PromoteHeadersMode.NONE` to the `header` keyword argument avoids header detection and gets the correct data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_no_headers = dprep.read_fwf('../data/crime.txt',\n", - " offsets=[8, 17, 26, 33, 56, 58, 74],\n", - " header=dprep.PromoteHeadersMode.NONE)\n", - "dflow_no_headers.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df = dflow_no_headers.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Parquet" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep has two different methods for reading data stored as Parquet.\n", - "\n", - "Currently, both methods require the `pyarrow` package to be installed in your Python environment. This can be done via `pip install azureml-dataprep[parquet]`." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Read Parquet File" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For reading single `.parquet` files, or a folder full of only Parquet files, use `read_parquet_file`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_parquet_file('../data/crime.parquet')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Parquet data is explicitly typed so no type inference is needed." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.dtypes" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Read Parquet Dataset" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A Parquet Dataset is different from a Parquet file in that it could be a folder containing a number of Parquet files within a complex directory structure. It may have a hierarchical structure that partitions the data by value of a column. These more complex forms of Parquet data are commonly produced by Spark/HIVE.\n", - "\n", - "For these more complex data sets, you can use `read_parquet_dataset`, which uses pyarrow to handle complex Parquet layouts. This will also handle single Parquet files, though these are better read using `read_parquet_file`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_parquet_dataset('../data/parquet_dataset')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The above data was partitioned by the value of the `Arrest` column. It is a boolean column in the original crime0 data set and hence was partitioned by `Arrest=true` and `Arrest=false`.\n", - "\n", - "The directory structure is printed below for clarity." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "for path, dirs, files in os.walk('../data/parquet_dataset'):\n", - " level = path.replace('../data/parquet_dataset', '').count(os.sep)\n", - " indent = ' ' * (level)\n", - " print(indent + os.path.basename(path) + '/')\n", - " fileindent = ' ' * (level + 1)\n", - " for f in files:\n", - " print(fileindent + f)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Part Files Using Globbing" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports globbing, which allows you to read partitioned files (or any other type of files) in a folder. Globbing is supported by all of the read transformations that take in file paths, such as `read_csv`, `read_lines`, etc. By specifying `../data/crime_partfiles/part-*` in the path, we will read all files start with `part-`in `crime_partfiles` folder and return them in one Dataflow. [`auto_read_file`](./auto-read-file.ipynb) will detect column types of your part files and parse them automatically." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_partfiles = dprep.auto_read_file(path='../data/crime_partfiles/part-*')\n", - "dflow_partfiles.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read JSON" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep can also load JSON files." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_json = dprep.read_json(path='../data/json.json')\n", - "dflow_json.head(15)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "When you use `read_json`, Data Prep will attempt to extract data from the file into a table. You can also control the file encoding Data Prep should use as well as whether Data Prep should flatten nested JSON arrays.\n", - "\n", - "Choosing the option to flatten nested arrays could result in a much larger number of rows." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_flat_arrays = dprep.read_json(path='../data/json.json', flatten_nested_arrays=True)\n", - "dflow_flat_arrays.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read SQL" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep can also fetch data from SQL servers. Currently, only Microsoft SQL Server is supported.\n", - "\n", - "To read data from a SQL server, first create a data source object that contains the connection information." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "secret = dprep.register_secret(value=\"dpr3pTestU$er\", id=\"dprepTestUser\")\n", - "ds = dprep.MSSQLDataSource(server_name=\"dprep-sql-test.database.windows.net\",\n", - " database_name=\"dprep-sql-test\",\n", - " user_name=\"dprepTestUser\",\n", - " password=secret)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see, the password parameter of `MSSQLDataSource` accepts a Secret object. You can get a Secret object in two ways:\n", - "1. Register the secret and its value with the execution engine.\n", - "2. Create the secret with just an id (useful if the secret value was already registered in the execution environment).\n", - "\n", - "Now that you have created a data source object, you can proceed to read data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_sql(ds, \"SELECT top 100 * FROM [SalesLT].[Product]\")\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df = dflow.to_pandas_dataframe()\n", - "df.dtypes" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read PostgreSQL" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep can also fetch data from Azure PostgreSQL servers.\n", - "\n", - "To read data from a PostgreSQL server, first create a data source object that contains the connection information." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "secret = dprep.register_secret(value=\"dpr3pTestU$er\", id=\"dprepPostgresqlUser\")\n", - "ds = dprep.PostgreSQLDataSource(server_name=\"dprep-postgresql-test.postgres.database.azure.com\",\n", - " database_name=\"dprep-postgresql-testdb\",\n", - " user_name=\"dprepPostgresqlReadOnlyUser@dprep-postgresql-test\",\n", - " password=secret)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see, the password parameter of `PostgreSQLDataSource` accepts a Secret object as well.\n", - "Now that you have created a PostgreSQL data source object, you can proceed to read data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_postgresql(ds, \"SELECT * FROM public.people\")\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.dtypes" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read from Azure Blob" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can read files stored in public Azure Blob by directly passing a file url. To read file from a protected Blob, pass SAS (Shared Access Signature) URI with both resource URI and SAS token in the path." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_csv(path='https://dpreptestfiles.blob.core.windows.net/testfiles/read_csv_duplicate_headers.csv', skip_rows=1)\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read from ADLS" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There are two ways the Data Prep API can acquire the necessary OAuth token to access Azure DataLake Storage:\n", - "1. Retrieve the access token from a recent login session of the user's [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest) login.\n", - "2. Use a ServicePrincipal (SP) and a certificate as a secret." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Using Access Token from a recent Azure CLI session" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "On your local machine, run the following command:\n", - "```\n", - "az login\n", - "```\n", - "If your user account is a member of more than one Azure tenant, you need to specify the tenant, either in the AAD url hostname form '.onmicrosoft.com' or the tenantId GUID. The latter can be retrieved as follows:\n", - "```\n", - "az account show --query tenantId\n", - "```" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "```python\n", - "dflow = read_csv(path = DataLakeDataSource(path='adl://dpreptestfiles.azuredatalakestore.net/farmers-markets.csv', tenant='microsoft.onmicrosoft.com'))\n", - "head = dflow.head(5)\n", - "head\n", - "```" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create a ServicePrincipal via Azure CLI" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A ServicePrincipal and the corresponding certificate can be created via [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest).\n", - "This particular SP is configured as Reader, with its scope reduced to just the ADLS account 'dpreptestfiles'.\n", - "```\n", - "az account set --subscription \"Data Wrangling development\"\n", - "az ad sp create-for-rbac -n \"SP-ADLS-dpreptestfiles\" --create-cert --role reader --scopes /subscriptions/35f16a99-532a-4a47-9e93-00305f6c40f2/resourceGroups/dpreptestfiles/providers/Microsoft.DataLakeStore/accounts/dpreptestfiles\n", - "```\n", - "This command emits the appId and the path to the certificate file (usually in the home folder). The .crt file contains both the public certificate and the private key in PEM format.\n", - "\n", - "Extract the thumbprint with:\n", - "```\n", - "openssl x509 -in adls-dpreptestfiles.crt -noout -fingerprint\n", - "```" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Configure ADLS Account for ServicePrincipal" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To configure the ACL for the ADLS filesystem, use the objectId of the user or, here, ServicePrincipal:\n", - "```\n", - "az ad sp show --id \"8dd38f34-1fcb-4ff9-accd-7cd60b757174\" --query objectId\n", - "```\n", - "Configure Read and Execute access for the ADLS file system. Since the underlying HDFS ACL model doesn't support inheritance, folders and files need to be ACL-ed individually.\n", - "```\n", - "az dls fs access set-entry --account dpreptestfiles --acl-spec \"user:e37b9b1f-6a5e-4bee-9def-402b956f4e6f:r-x\" --path /\n", - "az dls fs access set-entry --account dpreptestfiles --acl-spec \"user:e37b9b1f-6a5e-4bee-9def-402b956f4e6f:r--\" --path /farmers-markets.csv\n", - "```\n", - "\n", - "References:\n", - "- [az ad sp](https://docs.microsoft.com/en-us/cli/azure/ad/sp?view=azure-cli-latest)\n", - "- [az dls fs access](https://docs.microsoft.com/en-us/cli/azure/dls/fs/access?view=azure-cli-latest)\n", - "- [ACL model for ADLS](https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/data-lake-store/data-lake-store-access-control.md)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "certThumbprint = 'C2:08:9D:9E:D1:74:FC:EB:E9:7E:63:96:37:1C:13:88:5E:B9:2C:84'\n", - "certificate = ''\n", - "with open('../data/adls-dpreptestfiles.crt', 'rt', encoding='utf-8') as crtFile:\n", - " certificate = crtFile.read()\n", - "\n", - "servicePrincipalAppId = \"8dd38f34-1fcb-4ff9-accd-7cd60b757174\"" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Acquire an OAuth Access Token" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Use the adal package (via: `pip install adal`) to create an authentication context on the MSFT tenant and acquire an OAuth access token. Note that for ADLS, the `resource` in the token request must be for 'datalake.azure.net', which is different from most other Azure resources." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import adal\n", - "from azureml.dataprep.api.datasources import DataLakeDataSource\n", - "\n", - "ctx = adal.AuthenticationContext('https://login.microsoftonline.com/microsoft.onmicrosoft.com')\n", - "token = ctx.acquire_token_with_client_certificate('https://datalake.azure.net/', servicePrincipalAppId, certificate, certThumbprint)\n", - "dflow = dprep.read_csv(path = DataLakeDataSource(path='adl://dpreptestfiles.azuredatalakestore.net/crime-spring.csv', accessToken=token['accessToken']))\n", - "dflow.to_pandas_dataframe().head()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read Pandas DataFrame" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There are situations where you may already have some data in the form of a pandas DataFrame.\n", - "The steps taken to get to this DataFrame may be non-trivial or not easy to convert to Data Prep Steps. The `read_pandas_dataframe` reader can take a DataFrame and use it as the data source for a Dataflow.\n", - "\n", - "You can pass in a path to a directory (that doesn't exist yet) for Data Prep to store the contents of the DataFrame; otherwise, a temporary directory will be made in the system's temp folder. The files written to this directory will be named `part-00000` and so on; they are written out in Data Prep's internal row-based file format." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_excel(path='../data/crime.xlsx')\n", - "dflow = dflow.drop_columns(columns=['Column1'])\n", - "df = dflow.to_pandas_dataframe()\n", - "df.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "After loading in the data you can now do `read_pandas_dataframe`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import shutil\n", - "cache_dir = 'dflow_df'\n", - "shutil.rmtree(cache_dir, ignore_errors=True)\n", - "dflow_df = dprep.read_pandas_dataframe(df, cache_dir)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_df.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From f74ccf5048123d024511c9826789183492ea15f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:22:32 -0700 Subject: [PATCH 029/248] Delete data-profile.ipynb --- .../dataprep/how-to-guides/data-profile.ipynb | 180 ------------------ 1 file changed, 180 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-profile.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-profile.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-profile.ipynb deleted file mode 100644 index c4c17253..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-profile.ipynb +++ /dev/null @@ -1,180 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-profile.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Data Profile\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A DataProfile collects summary statistics on each column of the data produced by a Dataflow. This can be used to:\n", - "- Understand the input data.\n", - "- Determine which columns might need further preparation.\n", - "- Verify that data preparation operations produced the desired result.\n", - "\n", - "`Dataflow.get_profile()` executes the Dataflow, calculates profile information, and returns a newly constructed DataProfile." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "\n", - "dflow = dprep.auto_read_file('../data/crime-spring.csv')\n", - "\n", - "profile = dflow.get_profile()\n", - "profile" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A DataProfile contains a collection of ColumnProfiles, indexed by column name. Each ColumnProfile has attributes for the calculated column statistics. For non-numeric columns, profiles include only basic statistics like min, max, and error count. For numeric columns, profiles also include statistical moments and estimated quantiles." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile.columns['Beat']" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also extract and filter data from profiles by using list and dict comprehensions." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "variances = [c.variance for c in profile.columns.values() if c.variance]\n", - "variances" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "column_types = {c.name: c.type for c in profile.columns.values()}\n", - "column_types" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If a column has fewer than a thousand unique values, its ColumnProfile contains a summary of values with their respective counts." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile.columns['Primary Type'].value_counts" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Numeric ColumnProfiles include an estimated histogram of the data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile.columns['District'].histogram" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To configure the number of bins in the histogram, you can pass an integer as the `number_of_histogram_bins` parameter." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile_more_bins = dflow.get_profile(number_of_histogram_bins=5)\n", - "profile_more_bins.columns['District'].histogram" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For columns containing data of mixed types, the ColumnProfile also provides counts of each type." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile.columns['X Coordinate'].type_counts" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 8e2220d3979c9414950a5cb3e3c4153698885cc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:22:43 -0700 Subject: [PATCH 030/248] Delete datastore.ipynb --- .../dataprep/how-to-guides/datastore.ipynb | 222 ------------------ 1 file changed, 222 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/datastore.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/datastore.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/datastore.ipynb deleted file mode 100644 index c60ea2a1..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/datastore.ipynb +++ /dev/null @@ -1,222 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/datastore.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Reading from and Writing to Datastores" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A datastore is a reference that points to an Azure storage service like a blob container for example. It belongs to a workspace and a workspace can have many datastores.\n", - "\n", - "A data path points to a path on the underlying Azure storage service the datastore references. For example, given a datastore named `blob` that points to an Azure blob container, a data path can point to `/test/data/titanic.csv` in the blob container." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Read data from Datastore" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep supports reading data from a `Datastore` or a `DataPath` or a `DataReference`. \n", - "\n", - "Passing in a datastore into all the `read_*` methods of Data Prep will result in reading everything in the underlying Azure storage service. To read a specific folder or file in the underlying storage, you have to pass in a data reference." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Workspace, Datastore\n", - "from azureml.data.datapath import DataPath\n", - "\n", - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "First, get or create a workspace. Feel free to replace `subscription_id`, `resource_group`, and `workspace_name` with other values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "subscription_id = '35f16a99-532a-4a47-9e93-00305f6c40f2'\n", - "resource_group = 'DataStoreTest'\n", - "workspace_name = 'dataprep-centraleuap'\n", - "\n", - "workspace = Workspace(subscription_id=subscription_id, resource_group=resource_group, workspace_name=workspace_name)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "workspace.datastores" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can now read a crime data set from the datastore. If you are using your own workspace, the `crime0-10.csv` will not be there by default. You will have to upload the data to the datastore yourself." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "datastore = Datastore(workspace=workspace, name='dataprep_blob')\n", - "dflow = dprep.read_csv(path=datastore.path('crime0-10.csv'))\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also read from an Azure SQL database. To do that, you will first get an Azure SQL database datastore instance and pass it to Data Prep for reading." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "datastore = Datastore(workspace=workspace, name='test_sql')\n", - "dflow_sql = dprep.read_sql(data_source=datastore, query='SELECT * FROM team')\n", - "dflow_sql.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also read from a PostgreSQL database. To do that, you will first get a PostgreSQL database datastore instance and pass it to Data Prep for reading." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "datastore = Datastore(workspace=workspace, name='postgre_test')\n", - "dflow_sql = dprep.read_postgresql(data_source=datastore, query='SELECT * FROM public.people')\n", - "dflow_sql.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Write data to Datastore" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also write a dataflow to a datastore. The code below will write the file you read in earlier to the folder in the datastore." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dest_datastore = Datastore(workspace, 'dataprep_blob_key')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.write_to_csv(directory_path=dest_datastore.path('output/crime0-10')).run_local()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now you can read all the files in the `dataprep_adls` datastore which references an Azure Data Lake store." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "datastore = Datastore(workspace=workspace, name='dataprep_adls')\n", - "dflow_adls = dprep.read_csv(path=DataPath(datastore, path_on_datastore='/input/crime0-10.csv'))\n", - "dflow_adls.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From e1b09f71fa100e35f6e80c58c917cbe5f43426f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:22:54 -0700 Subject: [PATCH 031/248] Delete derive-column-by-example.ipynb --- .../derive-column-by-example.ipynb | 188 ------------------ 1 file changed, 188 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/derive-column-by-example.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/derive-column-by-example.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/derive-column-by-example.ipynb deleted file mode 100644 index 47383329..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/derive-column-by-example.ipynb +++ /dev/null @@ -1,188 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/derive-column-by-example.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Derive Column By Example\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "One of the more advanced tools in Data Prep is the ability to derive columns by providing examples of desired results and letting Data Prep generate code to achieve the intended derivation." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_csv(path = '../data/crime-spring.csv')\n", - "df = dflow.head(5)\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see, this is a fairly simple file, but let's assume that we need to be able to join this with a dataset where date and time come in a format 'Apr 4, 2016 | 10PM-12AM'.\n", - "\n", - "Let's wrangle the data into the shape we need." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.derive_column_by_example(source_columns = ['Date'], new_column_name = 'date_timerange')\n", - "builder.add_example(source_data = df.iloc[0], example_value = 'Apr 4, 2016 10PM-12AM')\n", - "builder.preview() # will preview top 10 rows" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The code above first creates a builder for the derived column by providing an array of source columns to consider ('DATE') and name for the new column to be added.\n", - "\n", - "Then, we provide the first example by passing in the first row (index 0) of the DataFrame printed above and giving an expected value for the derived column.\n", - "\n", - "Finally, we call `builder.preview()` and observe the derived column next to the source column." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Everything looks good here. However, we just noticed that it's not quite what we wanted. We forgot to separate date and time range by '|' to generate the format we need.\n", - "\n", - "To fix that, we will add another example. This time, instead of passing in a row from the preview, we just construct a dictionary of column name to value for the source_data parameter." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.add_example(source_data = {'Date': '4/15/2016 10:00'}, example_value = 'Apr 15, 2016 | 10AM-12PM')\n", - "builder.preview()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This clearly had negative effects, as now the only rows that have any values in derived column are the ones that match exactly with the examples we have provided.\n", - "\n", - "Let's look at the examples:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "examples = builder.list_examples()\n", - "examples" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here we can see that we have provided inconsistent examples. To fix the issue, we need to replace the first example with a correct one (including '|' between date and time).\n", - "\n", - "We can achieve this by deleting examples that are incorrect (by either passing in example_row from examples DataFrame, or by just passing in example_id value) and then adding new modified examples back." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.delete_example(example_id = -1)\n", - "builder.add_example(examples.iloc[0], 'Apr 4, 2016 | 10PM-12AM')\n", - "builder.preview()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now this looks correct and we can finally call to_dataflow() on the builder, which would return a dataflow with the desired derived columns added." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = builder.to_dataflow()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df = dflow.to_pandas_dataframe()\n", - "df" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 2e245c1691271427cd856364690282dcb3dd1b84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:23:11 -0700 Subject: [PATCH 032/248] Delete external-references.ipynb --- .../how-to-guides/external-references.ipynb | 119 ------------------ 1 file changed, 119 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/external-references.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/external-references.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/external-references.ipynb deleted file mode 100644 index 61574bd3..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/external-references.ipynb +++ /dev/null @@ -1,119 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/external-references.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# External References\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In addition to opening existing Dataflows in code and modifying them, it is also possible to create and persist Dataflows that reference another Dataflow that has been persisted to a .dprep file. In this case, executing this Dataflow will load and execute the referenced Dataflow dynamically, and then execute the steps in the referencing Dataflow." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To demonstrate, we will create a Dataflow that loads and transforms some data. After that, we will persist this Dataflow to disk. To learn more about saving and opening .dprep files, see: [Opening and Saving Dataflows](./open-save-dataflows.ipynb)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "import tempfile\n", - "import os\n", - "\n", - "dflow = dprep.auto_read_file('../data/crime.txt')\n", - "dflow = dflow.drop_errors(['Column7', 'Column8', 'Column9'], dprep.ColumnRelationship.ANY)\n", - "dflow_path = os.path.join(tempfile.gettempdir(), 'package.dprep')\n", - "dflow.save(dflow_path)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that we have a .dprep file, we can create a new Dataflow that references it." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_new = dprep.Dataflow.reference(dprep.ExternalReference(dflow_path))\n", - "dflow_new.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "When executed, the new Dataflow returns the same results as the one we saved to the .dprep file. Since this reference is resolved on execution, updating the referenced Dataflow results in the changes being visible when re-executing the referencing Dataflow." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.take(5)\n", - "dflow.save(dflow_path)\n", - "\n", - "dflow_new.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As we can see, even though we did not modify `dflow_new`, it now returns only 5 records, as the referenced Dataflow was updated with the result from `dflow.take(5)`." - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 1f4e4cdda22b9b36a8e973f727994d3bad42f1f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:23:28 -0700 Subject: [PATCH 033/248] Delete filtering.ipynb --- .../dataprep/how-to-guides/filtering.ipynb | 222 ------------------ 1 file changed, 222 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/filtering.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/filtering.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/filtering.ipynb deleted file mode 100644 index 780309bb..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/filtering.ipynb +++ /dev/null @@ -1,222 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/filtering.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Filtering\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Azure ML Data Prep has the ability to filter out columns or rows using `Dataflow.drop_columns` or `Dataflow.filter`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# initial set up\n", - "import azureml.dataprep as dprep\n", - "from datetime import datetime\n", - "dflow = dprep.read_csv(path='../data/crime-spring.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Filtering columns" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To filter columns, use `Dataflow.drop_columns`. This method takes a list of columns to drop or a more complex argument called `ColumnSelector`." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Filtering columns with list of strings" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In this example, `drop_columns` takes a list of strings. Each string should exactly match the desired column to drop." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.drop_columns(['ID', 'Location Description', 'Ward', 'Community Area', 'FBI Code'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Filtering columns with regex" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Alternatively, a `ColumnSelector` can be used to drop columns that match a regex expression. In this example, we drop all the columns that match the expression `Column*|.*longitud|.*latitude`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.drop_columns(dprep.ColumnSelector('Column*|.*longitud|.*latitude', True, True))\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Filtering rows" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To filter rows, use `DataFlow.filter`. This method takes an `Expression` as an argument, and returns a new dataflow with the rows in which the expression evaluates to `True`. Expressions are built by indexing the `Dataflow` with a column name (`dataflow['myColumn']`) and regular operators (`>`, `<`, `>=`, `<=`, `==`, `!=`)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Filtering rows with simple expressions" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Index into the Dataflow specifying the column name as a string argument `dataflow['column_name']` and in combination with one of the following standard operators `>, <, >=, <=, ==, !=`, build an expression such as `dataflow['District'] > 9`. Finally, pass the built expression into the `Dataflow.filter` function.\n", - "\n", - "In this example, `dataflow.filter(dataflow['District'] > 9)` returns a new dataflow with the rows in which the value of \"District\" is greater than '10' \n", - "\n", - "*Note that \"District\" is first converted to numeric, which allows us to build an expression comparing it against other numeric values.*" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.to_number(['District'])\n", - "dflow = dflow.filter(dflow['District'] > 9)\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Filtering rows with complex expressions" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To filter using complex expressions, combine one or more simple expressions with the operators `&`, `|`, and `~`. Please note that the precedence of these operators is lower than that of the comparison operators; therefore, you'll need to use parentheses to group clauses together. \n", - "\n", - "In this example, `Dataflow.filter` returns a new dataflow with the rows in which \"Primary Type\" equals 'DECEPTIVE PRACTICE' and \"District\" is greater than or equal to '10'." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.to_number(['District'])\n", - "dflow = dflow.filter((dflow['Primary Type'] == 'DECEPTIVE PRACTICE') & (dflow['District'] >= 10))\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "It is also possible to filter rows combining more than one expression builder to create a nested expression.\n", - "\n", - "*Note that `'Date'` and `'Updated On'` are first converted to datetime, which allows us to build an expression comparing it against other datetime values.*" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.to_datetime(['Date', 'Updated On'], ['%Y-%m-%d %H:%M:%S'])\n", - "dflow = dflow.to_number(['District', 'Y Coordinate'])\n", - "comparison_date = datetime(2016,4,13)\n", - "dflow = dflow.filter(\n", - " ((dflow['Date'] > comparison_date) | (dflow['Updated On'] > comparison_date))\n", - " | ((dflow['Y Coordinate'] > 1900000) & (dflow['District'] > 10.0)))\n", - "dflow.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 5ac2c63336e467e668e5419828fb21a0acdf6d27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:23:41 -0700 Subject: [PATCH 034/248] Delete fuzzy-group.ipynb --- .../dataprep/how-to-guides/fuzzy-group.ipynb | 212 ------------------ 1 file changed, 212 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/fuzzy-group.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/fuzzy-group.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/fuzzy-group.ipynb deleted file mode 100644 index 499977de..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/fuzzy-group.ipynb +++ /dev/null @@ -1,212 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/fuzzy-group.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Fuzzy Grouping\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License.
    \n", - "\n", - "Unprepared data often represents the same entity with multiple values; examples include different spellings, varying capitalizations, and abbreviations. This is common when working with data gathered from multiple sources or through human input. One way to canonicalize and reconcile these variants is to use Data Prep's fuzzy_group_column (also known as \"text clustering\") functionality.\n", - "\n", - "Data Prep inspects a column to determine clusters of similar values. A new column is added in which clustered values are replaced with the canonical value of its cluster, thus significantly reducing the number of distinct values. You can control the degree of similarity required for values to be clustered together, override canonical form, and set clusters if automatic clustering did not provide the desired results.\n", - "\n", - "Let's explore the capabilities of `fuzzy_group_column` by first reading in a dataset and inspecting it." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_json(path='../data/json.json')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see above, the column `inspections.business.city` contains several forms of the city name \"San Francisco\".\n", - "Let's add a column with values replaced by the automatically detected canonical form. To do so call fuzzy_group_column() on an existing Dataflow:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_clean = dflow.fuzzy_group_column(source_column='inspections.business.city',\n", - " new_column_name='city_grouped',\n", - " similarity_threshold=0.8,\n", - " similarity_score_column_name='similarity_score')\n", - "dflow_clean.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The arguments `source_column` and `new_column_name` are required, whereas the others are optional.\n", - "If `similarity_threshold` is provided, it will be used to control the required similarity level for the values to be grouped together.\n", - "If `similarity_score_column_name` is provided, a second new column will be added to show similarity score between every pair of original and canonical values.\n", - "\n", - "In the resulting data set, you can see that all the different variations of representing \"San Francisco\" in the data were normalized to the same string, \"San Francisco\".\n", - "\n", - "But what if you want more control over what gets grouped, what doesn't, and what the canonical value should be? \n", - "\n", - "To get more control over grouping, canonical values, and exceptions, you need to use the `FuzzyGroupBuilder` class.\n", - "Let's see what it has to offer below:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.fuzzy_group_column(source_column='inspections.business.city',\n", - " new_column_name='city_grouped',\n", - " similarity_threshold=0.8,\n", - " similarity_score_column_name='similarity_score')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# calling learn() to get fuzzy groups\n", - "builder.learn()\n", - "builder.groups" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here you can see that `fuzzy_group_column` detected one group with four values that all map to \"San Francisco\" as the canonical value.\n", - "You can see the effects of changing the similarity threshold next:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.similarity_threshold = 0.9\n", - "builder.learn()\n", - "builder.groups" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that you are using a similarity threshold of `0.9`, two distinct groups of values are generated.\n", - "\n", - "Let's tweak some of the detected groups before completing the builder and getting back the Dataflow with the resulting fuzzy grouped column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.similarity_threshold = 0.8\n", - "builder.learn()\n", - "groups = builder.groups\n", - "groups" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# change the canonical value for the first group\n", - "groups[0]['canonicalValue'] = 'SANFRAN'\n", - "duplicates = groups[0]['duplicates']\n", - "# remove the last duplicate value from the cluster\n", - "duplicates = duplicates[:-1]\n", - "# assign modified duplicate array back\n", - "groups[0]['duplicates'] = duplicates\n", - "# assign modified groups back to builder\n", - "builder.groups = groups\n", - "builder.groups" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here, the canonical value is modified to be used for the single fuzzy group and removed 'S.F.' from this group's duplicates list.\n", - "\n", - "You can mutate the copy of the `groups` list from the builder (be careful to keep the structure of objects inside this list). After getting the desired groups in the list, you can update the builder with it.\n", - "\n", - "Now you can get a dataflow with the FuzzyGroup step in it." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_clean = builder.to_dataflow()\n", - "\n", - "df = dflow_clean.to_pandas_dataframe()\n", - "df" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From edd8562102c850ceca7b158de57d79ebdf159a95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:23:55 -0700 Subject: [PATCH 035/248] Delete impute-missing-values.ipynb --- .../how-to-guides/impute-missing-values.ipynb | 148 ------------------ 1 file changed, 148 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/impute-missing-values.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/impute-missing-values.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/impute-missing-values.ipynb deleted file mode 100644 index f86a07f3..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/impute-missing-values.ipynb +++ /dev/null @@ -1,148 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/impute-missing-values.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Impute missing values\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Azure ML Data Prep has the ability to impute missing values in specified columns. In this case, we will attempt to impute the missing _Latitude_ and _Longitude_ values in the input data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# loading input data\n", - "dflow = dprep.read_csv(path= '../data/crime-spring.csv')\n", - "dflow = dflow.keep_columns(['ID', 'Arrest', 'Latitude', 'Longitude'])\n", - "dflow = dflow.to_number(['Latitude', 'Longitude'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The third record from input data has _Latitude_ and _Longitude_ missing. To impute those missing values, we can use `ImputeMissingValuesBuilder` to learn a fixed program which imputes the columns with either a calculated `MIN`, `MAX` or `MEAN` value or a `CUSTOM` value. When `group_by_columns` is specified, missing values will be imputed by group with `MIN`, `MAX` and `MEAN` calculated per group." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Firstly, let us quickly see check the `MEAN` value of _Latitude_ column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_mean = dflow.summarize(group_by_columns=['Arrest'],\n", - " summary_columns=[dprep.SummaryColumnsValue(column_id='Latitude',\n", - " summary_column_name='Latitude_MEAN',\n", - " summary_function=dprep.SummaryFunction.MEAN)])\n", - "dflow_mean = dflow_mean.filter(dprep.col('Arrest') == 'FALSE')\n", - "dflow_mean.head(1)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The `MEAN` value of _Latitude_ looks good. So we will impute _Latitude_ with it. As for `Longitude`, we will impute it using `42` based on external knowledge." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# impute with MEAN\n", - "impute_mean = dprep.ImputeColumnArguments(column_id='Latitude',\n", - " impute_function=dprep.ReplaceValueFunction.MEAN)\n", - "# impute with custom value 42\n", - "impute_custom = dprep.ImputeColumnArguments(column_id='Longitude',\n", - " custom_impute_value=42)\n", - "# get instance of ImputeMissingValuesBuilder\n", - "impute_builder = dflow.builders.impute_missing_values(impute_columns=[impute_mean, impute_custom],\n", - " group_by_columns=['Arrest'])\n", - "# call learn() to learn a fixed program to impute missing values\n", - "impute_builder.learn()\n", - "# call to_dataflow() to get a dataflow with impute step added\n", - "dflow_imputed = impute_builder.to_dataflow()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# check impute result\n", - "dflow_imputed.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As the result above, the missing _Latitude_ has been imputed with the `MEAN` value of `Arrest=='false'` group, and the missing _Longitude_ has been imputed with `42`." - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From d587ea5676ccacf5a7d8f08d72a33662a3d27941 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:24:08 -0700 Subject: [PATCH 036/248] Delete join.ipynb --- .../dataprep/how-to-guides/join.ipynb | 266 ------------------ 1 file changed, 266 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/join.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/join.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/join.ipynb deleted file mode 100644 index cb80a337..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/join.ipynb +++ /dev/null @@ -1,266 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/join.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Join\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License.
    \n", - "\n", - "In Data Prep you can easily join two Dataflows." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "First, get the left side of the data into a shape that is ready for the join." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get the first Dataflow and derive desired key column\n", - "dflow_left = dprep.read_csv(path='https://dpreptestfiles.blob.core.windows.net/testfiles/BostonWeather.csv')\n", - "dflow_left = dflow_left.derive_column_by_example(source_columns='DATE', new_column_name='date_timerange',\n", - " example_data=[('11/11/2015 0:54', 'Nov 11, 2015 | 12AM-2AM'),\n", - " ('2/1/2015 0:54', 'Feb 1, 2015 | 12AM-2AM'),\n", - " ('1/29/2015 20:54', 'Jan 29, 2015 | 8PM-10PM')])\n", - "dflow_left = dflow_left.drop_columns(['DATE'])\n", - "\n", - "# convert types and summarize data\n", - "dflow_left = dflow_left.set_column_types(type_conversions={'HOURLYDRYBULBTEMPF': dprep.TypeConverter(dprep.FieldType.DECIMAL)})\n", - "dflow_left = dflow_left.filter(expression=~dflow_left['HOURLYDRYBULBTEMPF'].is_error())\n", - "dflow_left = dflow_left.summarize(group_by_columns=['date_timerange'],summary_columns=[dprep.SummaryColumnsValue('HOURLYDRYBULBTEMPF', dprep.api.engineapi.typedefinitions.SummaryFunction.MEAN, 'HOURLYDRYBULBTEMPF_Mean')] )\n", - "\n", - "# cache the result so the steps above are not executed every time we pull on the data\n", - "import os\n", - "from pathlib import Path\n", - "cache_dir = str(Path(os.getcwd(), 'dataflow-cache'))\n", - "dflow_left.cache(directory_path=cache_dir)\n", - "dflow_left.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now let's prepare the data for the right side of the join." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get the second Dataflow and desired key column\n", - "dflow_right = dprep.read_csv(path='https://dpreptestfiles.blob.core.windows.net/bike-share/*-hubway-tripdata.csv')\n", - "dflow_right = dflow_right.keep_columns(['starttime', 'start station id'])\n", - "dflow_right = dflow_right.derive_column_by_example(source_columns='starttime', new_column_name='l_date_timerange',\n", - " example_data=[('2015-01-01 00:21:44', 'Jan 1, 2015 | 12AM-2AM')])\n", - "dflow_right = dflow_right.drop_columns('starttime')\n", - "\n", - "# cache the results\n", - "dflow_right.cache(directory_path=cache_dir)\n", - "dflow_right.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "There are three ways you can join two Dataflows in Data Prep:\n", - "1. Create a `JoinBuilder` object for interactive join configuration.\n", - "2. Call ```join()``` on one of the Dataflows and pass in the other along with all other arguments.\n", - "3. Call ```Dataflow.join()``` method and pass in two Dataflows along with all other arguments.\n", - "\n", - "We will explore the builder object as it simplifies the determination of correct arguments. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# construct a builder for joining dataflow_l with dataflow_r\n", - "join_builder = dflow_left.builders.join(right_dataflow=dflow_right, left_column_prefix='l', right_column_prefix='r')\n", - "\n", - "join_builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "So far the builder has no properties set except default values.\n", - "From here you can set each of the options and preview its effect on the join result or use Data Prep to determine some of them.\n", - "\n", - "Let's start with determining appropriate column prefixes for left and right side of the join and lists of columns that would not conflict and therefore don't need to be prefixed." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "join_builder.detect_column_info()\n", - "join_builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can see that Data Prep has performed a pull on both Dataflows to determine the column names in them. Given that `dataflow_r` already had a column starting with `l_` new prefix got generated which would not collide with any column names that are already present.\n", - "Additionally columns in each Dataflow that won't conflict during join would remain unprefixed.\n", - "This apprach to column naming is crucial for join robustness to schema changes in the data. Let's say that at some time in future the data consumed by left Dataflow will also have `l_date_timerange` column in it.\n", - "Configured as above the join will still run as expected and the new column will be prefixed with `l2_` ensuring that ig column `l_date_timerange` was consumed by some other future transformation it remains unaffected.\n", - "\n", - "Note: `KEY_generated` is appended to both lists and is reserved for Data Prep use in case Autojoin is performed.\n", - "\n", - "### Autojoin\n", - "Autojoin is a Data prep feature that determines suitable join arguments given data on both sides. In some cases Autojoin can even derive a key column from a number of available columns in the data.\n", - "Here is how you can use Autojoin:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# generate join suggestions\n", - "join_builder.generate_suggested_join()\n", - "\n", - "# list generated suggestions\n", - "join_builder.list_join_suggestions()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now let's select the first suggestion and preview the result of the join." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# apply first suggestion\n", - "join_builder.apply_suggestion(0)\n", - "\n", - "join_builder.preview(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now, get our new joined Dataflow." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_autojoined = join_builder.to_dataflow().drop_columns(['l_date_timerange'])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Joining two Dataflows without pulling the data\n", - "\n", - "If you don't want to pull on data and know what join should look like, you can always use the join method on the Dataflow." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_joined = dprep.Dataflow.join(left_dataflow=dflow_left,\n", - " right_dataflow=dflow_right,\n", - " join_key_pairs=[('date_timerange', 'l_date_timerange')],\n", - " left_column_prefix='l2_',\n", - " right_column_prefix='r_')\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_joined.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_joined = dflow_joined.filter(expression=dflow_joined['r_start station id'] == '67')\n", - "df = dflow_joined.to_pandas_dataframe()\n", - "df" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.5" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 3fe08c944e7ad8998e0211d79a8eefb3f3fb2b48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:24:21 -0700 Subject: [PATCH 037/248] Delete label-encoder.ipynb --- .../how-to-guides/label-encoder.ipynb | 169 ------------------ 1 file changed, 169 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/label-encoder.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/label-encoder.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/label-encoder.ipynb deleted file mode 100644 index 8b4a1c69..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/label-encoder.ipynb +++ /dev/null @@ -1,169 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/label-encoder.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Label Encoder\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License.
    " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data Prep has the ability to encode labels with values between 0 and (number of classes - 1) using `label_encode`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "from datetime import datetime\n", - "dflow = dprep.read_csv(path='../data/crime-spring.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To use `label_encode` from a Dataflow, simply specify the source column and the new column name. `label_encode` will figure out all the distinct values or classes in the source column, and it will return a new Dataflow with a new column containing the labels." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.label_encode(source_column='Primary Type', new_column_name='Primary Type Label')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To have more control over the encoded labels, create a builder with `dataflow.builders.label_encode`.\n", - "The builder allows you to preview and modify the encoded labels before generating a new Dataflow with the results. \n", - "To get started, create a builder object with `dataflow.builders.label_encode` specifying the source column and the new column name. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.label_encode(source_column='Location Description', new_column_name='Location Description Label')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To generate the encoded labels, call the `learn` method on the builder object:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.learn()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To check the result, access the generated labels through the property `encoded_labels`:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.encoded_labels" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To modify the generated results, just assign a new value to `encoded_labels`. The following example adds a missing label not found in the sample data. `builder.encoded_labels` is saved into a variable `encoded_labels`, modified, and assigned back to `builder.encoded_labels`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "encoded_labels = builder.encoded_labels\n", - "encoded_labels['TOWNHOUSE'] = 6\n", - "\n", - "builder.encoded_labels = encoded_labels\n", - "builder.encoded_labels" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once the desired results are achieved, call `builder.to_dataflow` to get the new Dataflow with the encoded labels." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dataflow = builder.to_dataflow()\n", - "dataflow.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 0fd4bfbc5657ef432878951963463412a6bf6e14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:24:32 -0700 Subject: [PATCH 038/248] Delete min-max-scaler.ipynb --- .../how-to-guides/min-max-scaler.ipynb | 240 ------------------ 1 file changed, 240 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/min-max-scaler.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/min-max-scaler.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/min-max-scaler.ipynb deleted file mode 100644 index c6d1db60..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/min-max-scaler.ipynb +++ /dev/null @@ -1,240 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/min-max-scaler.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Min-Max Scaler\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The min-max scaler scales all values in a column to a desired range (typically [0, 1]). This is also known as feature scaling or unity-based normalization. Min-max scaling is commonly used to normalize numeric columns in a data set for machine learning algorithms." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "First, load a data set containing information about crime in Chicago. Keep only a few columns." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_csv('../data/crime-spring.csv')\n", - "dflow = dflow.keep_columns(columns=['ID', 'District', 'FBI Code'])\n", - "dflow = dflow.to_number(columns=['District', 'FBI Code'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Using `get_profile()`, you can see the shape of the numeric columns such as the minimum, maximum, count, and number of error values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To apply min-max scaling, call the function `min_max_scaler` on the Dataflow and specify the column name. This will trigger a full data scan over the column to determine the min and max values and perform the scaling. Note that the min and max values of the column are preserved at this point. If the same dataflow steps are performed over a different dataset, the min-max scaler must be re-executed." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_district = dflow.min_max_scale(column='District')\n", - "dflow_district.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Look at the data profile to see that the \"District\" column is now scaled; the min is 0 and the max is 1. Any error values and missing values from the source column are preserved." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_district.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can also specify a custom range for the scaling. Instead of [0, 1], let's choose [-10, 10]." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_district_range = dflow.min_max_scale(column='District', range_min=-10, range_max=10)\n", - "dflow_district_range.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In some cases, you may want to manually provide the min and max of the data in the source column. For example, you may want to avoid a full data scan because the dataset is large and we already know the min and max. You can provide the known min and max to the `min_max_scaler` function. The column will be scaled using the provided values. For example, if you want to scale the `FBI Code` column with 6 (`data_min`) becoming 0 (`range_min`), the program will scan the data to get `data_max`, which will become 1 (`range_max`)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_fbi = dflow.min_max_scale(column='FBI Code', data_min=6)\n", - "dflow_fbi.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Using a Min-Max Scaler builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For more flexibility when constructing the arguments for the min-max scaling, you can use a Min-Max Scaler builder." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.min_max_scale(column='District')\n", - "builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Calling `builder.learn()` will trigger a full data scan to see what `data_min` and `data_max` are. You can choose whether to use these values or set custom values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.learn()\n", - "builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If you want to provide custom values for any of the arguments, you can update the builder object." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.range_max = 10\n", - "builder.data_min = 6\n", - "builder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "When you are satisfied with the arguments, you will call `builder.to_dataflow()` to get the result. Note that the min and max values of the source column is preserved by the builder at this point. If you need to get the true `data_min` and `data_max` values again, you will need to set those arguments on the builder to `None` and then call `builder.learn()` again." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_builder = builder.to_dataflow()\n", - "dflow_builder.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 33bda032b82e4ea5255e577b78c8cde16f9bd796 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:24:43 -0700 Subject: [PATCH 039/248] Delete one-hot-encoder.ipynb --- .../how-to-guides/one-hot-encoder.ipynb | 180 ------------------ 1 file changed, 180 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/one-hot-encoder.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/one-hot-encoder.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/one-hot-encoder.ipynb deleted file mode 100644 index ad5350ec..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/one-hot-encoder.ipynb +++ /dev/null @@ -1,180 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/one-hot-encoder.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# One Hot Encoder\n", - "Copyright (c) Microsoft Corporation. All rights reserved. \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Azure ML Data Prep has the ability to perform one hot encoding on a selected column using `one_hot_encode`. The result Dataflow will have a new binary column for each categorical label encountered in the selected column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.read_csv(path='../data/crime-spring.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To use `one_hot_encode` from a Dataflow, simply specify the source column. `one_hot_encode` will figure out all the distinct values or categorical labels in the source column using the current data, and it will return a new Dataflow with a new binary column for each categorical label. Note that the categorical labels are remembered in the Dataflow step." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_result = dflow.one_hot_encode(source_column='Location Description')\n", - "dflow_result.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "By default, all the new columns will use the `source_column` name as a prefix. However, if you would like to specify your own prefix, simply pass a `prefix` string as a second parameter." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_result = dflow.one_hot_encode(source_column='Location Description', prefix='LOCATION_')\n", - "dflow_result.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To have more control over the categorical labels, create a builder using `dataflow.builders.one_hot_encode`. The builder allows to preview and modify the categorical labels before generating a new Dataflow with the results." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.one_hot_encode(source_column='Location Description', prefix='LOCATION_')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To generate the categorical labels, call the `learn` method on the builder object:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.learn()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To preview the categorical labels, simply access them through the property `categorical_labels` on the builder object:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.categorical_labels" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To modify the generated `categorical_labels`, assign a new value to `categorical_labels` or modify the existing one. The following example adds a missing label not found on the sample data to `categorical_labels`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.categorical_labels.append('TOWNHOUSE')\n", - "builder.categorical_labels" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once the desired results are achieved, call `builder.to_dataflow` to get the new Dataflow with the encoded labels." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_result = builder.to_dataflow()\n", - "dflow_result.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 86ba4e740695125d59eb4f2060dda6d5dcd49676 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:24:54 -0700 Subject: [PATCH 040/248] Delete open-save-dataflows.ipynb --- .../how-to-guides/open-save-dataflows.ipynb | 172 ------------------ 1 file changed, 172 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/open-save-dataflows.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/open-save-dataflows.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/open-save-dataflows.ipynb deleted file mode 100644 index b401ae9b..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/open-save-dataflows.ipynb +++ /dev/null @@ -1,172 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/open-save-dataflows.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Opening and Saving Dataflows\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once you have built a Dataflow, you can save it to a `.dprep` file. This persists all of the information in your Dataflow including steps you've added, examples and programs from by-example steps, computed aggregations, etc.\n", - "\n", - "You can also open `.dprep` files to access any Dataflows you have previously persisted." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Open\n", - "\n", - "Use the `open()` method of the Dataflow class to load existing `.dprep` files." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "dflow_path = os.path.join(os.getcwd(), '..', 'data', 'crime.dprep')\n", - "print(dflow_path)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import Dataflow" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = Dataflow.open(dflow_path)\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Edit\n", - "\n", - "After a Dataflow is loaded, it can be further edited as needed. In this example, a filter is added." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.dataprep import col" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.filter(col('Description') != 'SIMPLE')\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Save\n", - "\n", - "Use the `save()` method of the Dataflow class to write out the `.dprep` file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import tempfile\n", - "temp_dir = tempfile._get_default_tempdir()\n", - "temp_file_name = next(tempfile._get_candidate_names())\n", - "temp_dflow_path = os.path.join(temp_dir, temp_file_name + '.dprep')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.save(temp_dflow_path)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Round-trip\n", - "\n", - "This illustrates the ability to load the edited Dataflow back in and use it, in this case to get a pandas DataFrame." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_to_open = Dataflow.open(temp_dflow_path)\n", - "df = dflow_to_open.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "if os.path.isfile(temp_dflow_path):\n", - " os.remove(temp_dflow_path)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 10f700416104f711667bbde633a2a9bfe1ef85c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:25:10 -0700 Subject: [PATCH 041/248] Delete quantile-transformation.ipynb --- .../quantile-transformation.ipynb | 92 ------------------- 1 file changed, 92 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/quantile-transformation.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/quantile-transformation.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/quantile-transformation.ipynb deleted file mode 100644 index 6fcf082d..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/quantile-transformation.ipynb +++ /dev/null @@ -1,92 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/quantile-transformation.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Quantile Transformation\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "DataPrep has the ability to perform quantile transformation to a numeric column. This transformation can transform the data into a normal or uniform distribution. Values bigger than the learnt boundaries will simply be clipped to the learnt boundaries when applying quantile transformation.\n", - "\n", - "Let's load a sample of the median income of california households in different suburbs from the 1990 census data. From the data profile, we can see that the minimum value and maximum value is 0.9946 and 15 respectively." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "\n", - "dflow = dprep.read_csv(path='../data/median_income.csv').set_column_types(type_conversions={\n", - " 'median_income': dprep.TypeConverter(dprep.FieldType.DECIMAL)\n", - "})\n", - "dflow.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's now apply quantile transformation to `median_income` and see how that affects the data. We will apply quantile transformation twice, one that maps the data to a Uniform(0, 1) distribution, one that maps it to a Normal(0, 1) distribution.\n", - "\n", - "From the data profile, we can see that the min and max of the uniform median income is strictly between 0 and 1 and the mean and standard deviation of the normal median income is close to 0 and 1 respectively.\n", - "\n", - "*Note: for normal distribution, we will clip the values at the ends as the 0th percentile and the 100th percentile are -Inf and Inf respectively.*" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.quantile_transform(source_column='median_income', new_column='median_income_uniform', quantiles_count=5)\n", - "dflow = dflow.quantile_transform(source_column='median_income', new_column='median_income_normal', \n", - " quantiles_count=5, output_distribution=\"Normal\")\n", - "dflow.get_profile()" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 63d1d57dfb3b0ed1f5f6e7c8af5e8a1ae8be62e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:25:21 -0700 Subject: [PATCH 042/248] Delete random-split.ipynb --- .../dataprep/how-to-guides/random-split.ipynb | 146 ------------------ 1 file changed, 146 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/random-split.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/random-split.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/random-split.ipynb deleted file mode 100644 index 26b53043..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/random-split.ipynb +++ /dev/null @@ -1,146 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/random-split.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Random Split\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Azure ML Data Prep provides the functionality of splitting a data set into two. When training a machine learning model, it is often desirable to train the model on a subset of data, then validate the model on a different subset." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The `random_split(percentage, seed=None)` function in Data Prep takes in a Dataflow and randomly splitting it into two distinct subsets (approximately by the percentage specified)." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The `seed` parameter is optional. If a seed is not provided, a stable one is generated, ensuring that the results for a specific Dataflow remain consistent. Different calls to `random_split` will receive different seeds." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To demonstrate, you can go through the following example. First, you can read the first 10,000 lines from a file. Since the contents of the file don't matter, just the first two columns can be used for a simple example." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_csv(path='https://dpreptestfiles.blob.core.windows.net/testfiles/crime0.csv').take(10000)\n", - "dflow = dflow.keep_columns(['ID', 'Date'])\n", - "profile = dflow.get_profile()\n", - "print('Row count: %d' % (profile.columns['ID'].count))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Next, you can call `random_split` with the percentage set to 10% (the actual split ratio will be an approximation of `percentage`). You can take a look at the row count of the first returned Dataflow. You should see that `dflow_test` has approximately 1,000 rows (10% of 10,000)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "(dflow_test, dflow_train) = dflow.random_split(percentage=0.1)\n", - "profile_test = dflow_test.get_profile()\n", - "print('Row count of \"test\": %d' % (profile_test.columns['ID'].count))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now you can take a look at the row count of the second returned Dataflow. The row count of `dflow_test` and `dflow_train` sums exactly to 10,000, because `random_split` results in two subsets that make up the original Dataflow." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "profile_train = dflow_train.get_profile()\n", - "print('Row count of \"train\": %d' % (profile_train.columns['ID'].count))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To specify a fixed seed, simply provide it to the `random_split` function." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "(dflow_test, dflow_train) = dflow.random_split(percentage=0.1, seed=12345)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From edabbf90313dee1b5c465603d8a656de3246e5d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:25:32 -0700 Subject: [PATCH 043/248] Delete replace-datasource-replace-reference.ipynb --- ...replace-datasource-replace-reference.ipynb | 131 ------------------ 1 file changed, 131 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-datasource-replace-reference.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-datasource-replace-reference.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-datasource-replace-reference.ipynb deleted file mode 100644 index 260d500e..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-datasource-replace-reference.ipynb +++ /dev/null @@ -1,131 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-datasource-replace-reference.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Replace DataSource Reference\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "A common practice when performing DataPrep is to build up a script or set of cleaning operations on a smaller example file locally. This is quicker and easier than dealing with large amounts of data initially.\n", - "\n", - "After building a Dataflow that performs the desired steps, it's time to run it against the larger dataset, which may be stored in the cloud, or even locally just in a different file. This is where we can use `Dataflow.replace_datasource` to get a Dataflow identical to the one built on the small data, but referencing the newly specified DataSource." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "\n", - "dflow = dprep.read_csv('../data/crime-spring.csv')\n", - "df = dflow.to_pandas_dataframe()\n", - "df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here we have the first 10 rows of a dataset called 'Crime'. The original dataset is over 100MB (admittedly not that large of a dataset but this is just an example).\n", - "\n", - "We'll perform a few cleaning operations." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_dropped = dflow.drop_columns(['Location', 'Updated On', 'X Coordinate', 'Y Coordinate', 'Description'])\n", - "sctb = dflow_dropped.builders.set_column_types()\n", - "sctb.learn(inference_arguments=dprep.InferenceArguments(day_first=False))\n", - "dflow_typed = sctb.to_dataflow()\n", - "dflow_typed.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now that we have a Dataflow with all our desired steps, we're ready to run against the 'full' dataset stored in Azure Blob.\n", - "All we need to do is pass the BlobDataSource into `replace_datasource` and we'll get back an identical Dataflow with the new DataSource substituted in." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_replaced = dflow_typed.replace_datasource(dprep.BlobDataSource('https://dpreptestfiles.blob.core.windows.net/testfiles/crime0.csv'))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "'replaced_dflow' will now pull data from the 168MB (729734 rows) version of Crime0.csv stored in Azure Blob!\n", - "\n", - "NOTE: Dataflows can also be created by referencing a different Dataflow. Instead of using `replace_datasource`, there is a corresponding `replace_reference` method.\n", - "\n", - "We should be careful now since pulling all that data down and putting it in a pandas dataframe isn't an ideal way to inspect the result of our Dataflow. So instead, to see that our steps are being applied to all the new data, we can add a `take_sample` step, which will select records at random (based on a given probability) to be returned.\n", - "\n", - "The probability below takes the ~730000 rows down to a more inspectable ~73, though the number will vary each time `to_pandas_dataframe()` is run, since they are being randomly selected based on the probability." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_random_sample= dflow_replaced.take_sample(probability=0.0001)\n", - "sample = dflow_random_sample.to_pandas_dataframe()\n", - "sample" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From f16dfb0e5b091faac6bc4f5a0624206423f633c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:25:45 -0700 Subject: [PATCH 044/248] Delete replace-fill-error.ipynb --- .../how-to-guides/replace-fill-error.ipynb | 240 ------------------ 1 file changed, 240 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-fill-error.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-fill-error.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-fill-error.ipynb deleted file mode 100644 index ddef0f4b..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-fill-error.ipynb +++ /dev/null @@ -1,240 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-fill-error.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Replace, Fill, Error\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can use the methods in this notebook to change values in your dataset.\n", - "\n", - "* replace - use this method to replace a value with another value. You can also use this to replace null with a value, or a value with null\n", - "* error - use this method to replace a value with an error.\n", - "* fill_nulls - this method lets you fill all nulls in a column with a certain value.\n", - "* fill_errors - this method lets you fill all errors in a column with a certain value." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Setup" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_csv('../data/crime-spring.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.to_datetime('Date', ['%m/%d/%Y %H:%M'])\n", - "dflow = dflow.to_number(['IUCR', 'District', 'FBI Code'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Replace " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### String\n", - "Use `replace` to swap a string value with another string value." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.replace('Primary Type', 'THEFT', 'STOLEN')\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Use `replace` to remove a certain string value from the column, replacing it with null. Note that Pandas shows null values as None." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.replace('Primary Type', 'DECEPTIVE PRACTICE', None)\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Numeric\n", - "Use `replace` to swap a numeric value with another numeric value." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.replace('District', 5, 1)\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Date\n", - "Use `replace` to swap in a new Date for an existing Date in the data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from datetime import datetime, timezone\n", - "dflow = dflow.replace('Date', \n", - " datetime(2016, 4, 15, 9, 0, tzinfo=timezone.utc), \n", - " datetime(2018, 7, 4, 0, 0, tzinfo=timezone.utc))\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Error \n", - "\n", - "The `error` method lets you create Error values. You can pass to this function the value that you want to find, along with the Error code to use in any Errors created." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.error('IUCR', 890, 'Invalid value')\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Fill Nulls \n", - "\n", - "Use the `fill_nulls` method to replace all null values in columns with another value. This is similar to Panda's fillna() method." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.fill_nulls('Primary Type', 'N/A')\n", - "head = dflow.head(5)\n", - "head" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Fill Errors \n", - "\n", - "Use the `fill_errors` method to replace all error values in columns with another value." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.fill_errors('IUCR', -1)\n", - "head = dflow.head(5)\n", - "head" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From a45954a58f6d9d2ee09cd67a64f60abcc6d56ccf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:25:58 -0700 Subject: [PATCH 045/248] Delete secrets.ipynb --- .../dataprep/how-to-guides/secrets.ipynb | 141 ------------------ 1 file changed, 141 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/secrets.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/secrets.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/secrets.ipynb deleted file mode 100644 index 982d66f3..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/secrets.ipynb +++ /dev/null @@ -1,141 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/secrets.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Providing Secrets\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Currently, secrets are only persisted for the lifetime of the engine process. Even if the dataflow is saved to a file, the secrets are not persisted in the dprep file. If you started a new session (i.e. start a new engine process), loaded a dataflow and wanted to run it, you will need to call `use_secrets` to register the required secrets to use during execution, otherwise the execution will fail as the required secrets are not available.\n", - "\n", - "In this notebook, we will:\n", - "1. Loading a previously saved dataflow\n", - "2. Call `get_missing_secrets` to determine the missing secrets\n", - "3. Call `use_secrets` and pass in the missing secrets to register it with the engine for this session\n", - "4. Call `head` to see the a preview of the data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "\n", - "import os" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's load the previously saved dataflow." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.Dataflow.open(file_path='../data/secrets.dprep')\n", - "dflow" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can call `get_missing_secrets` to see which required secrets are missing in the engine." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.get_missing_secrets()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can now read the secrets from an environment variable, put it in a secret dictionary, and call `use_secrets` with the secrets. This will register the secrets in the engine so you don't need to provide them again in this session.\n", - "\n", - "_Note: It is a bad practice to have secrets in files that will be checked into source control._" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "sas = os.environ['SCENARIOS_SECRETS']\n", - "secrets = {\n", - " 'https://dpreptestfiles.blob.core.windows.net/testfiles/read_csv_duplicate_headers.csv': sas\n", - "}\n", - "dflow.use_secrets(secrets=secrets)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can now call `head` without passing in `secrets` and the engine will successfully execute. Here is a preview of the data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 9fba46821b7e087e138e137f011ce0db1d1e5d19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:26:11 -0700 Subject: [PATCH 046/248] Delete semantic-types.ipynb --- .../how-to-guides/semantic-types.ipynb | 165 ------------------ 1 file changed, 165 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/semantic-types.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/semantic-types.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/semantic-types.ipynb deleted file mode 100644 index 5053cbaa..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/semantic-types.ipynb +++ /dev/null @@ -1,165 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/semantic-types.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Semantic Types\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Some string values can be recognized as semantic types. For example, email addresses, US zip codes or IP addresses have specific formats that can be recognized, and then split in specific ways.\n", - "\n", - "When getting a DataProfile you can optionally ask to collect counts of values recognized as semantic types. [`Dataflow.get_profile()`](./data-profile.ipynb) executes the Dataflow, calculates profile information, and returns a newly constructed DataProfile. Semantic type counts can be included in the data profile by calling `get_profile` with the `include_stype_counts` argument set to true.\n", - "\n", - "The `stype_counts` property of the DataProfile will then include entries for columns where some semantic types were recognized for some values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.read_json(path='../data/json.json')\n", - "\n", - "profile = dflow.get_profile(include_stype_counts=True)\n", - "\n", - "print(\"row count: \" + str(profile.row_count))\n", - "profile.stype_counts" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "To see all the supported semantic types, you can examine the `SType` enumeration. More types will be added over time." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "[t.name for t in dprep.SType]\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can filter the found semantic types down to just those where all non-empty values matched. The `DataProfile.stype_counts` gives a list of semantic type counts for each column, where at least some matches were found. Those lists are in desecending order of count, so here we consider only the first in each list, as that will be the one with the highest count of values that match.\n", - "\n", - "In this example, the column `inspections.business.postal_code` looks to be a US zip code." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "stypes_counts = profile.stype_counts\n", - "all_match = [\n", - " (column, stypes_counts[column][0].stype)\n", - " for column in stypes_counts\n", - " if profile.row_count - profile.columns[column].empty_count == stypes_counts[column][0].count\n", - "]\n", - "all_match" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "You can use semantic types to compute new columns. The new columns are the values split up into elements, or canonicalized.\n", - "\n", - "Here we reduce our data down to just the `postal` column so we can better see what a `split_stype` operation can do." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_postal = dflow.keep_columns(['inspections.business.postal_code']).rename_columns({'inspections.business.postal_code': 'postal'})\n", - "dflow_postal.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "With `SType.ZipCode`, values are split into their basic five digit zip code and the plus-four add-on of the Zip+4 format." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_split = dflow_postal.split_stype('postal', dprep.SType.ZIPCODE)\n", - "dflow_split.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`split_stype` also allows you to specify the fields of the stype to use and the name of the new columns. For example, if you just needed to strip the plus four from our zip codes, you could use this." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_no_plus4 = dflow_postal.split_stype('postal', dprep.SType.ZIPCODE, ['zip'], ['zipNoPlus4'])\n", - "dflow_no_plus4.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 4cc8f4c6af97080edf57b84dd8b57ade0fb71e0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:26:25 -0700 Subject: [PATCH 047/248] Delete split-column-by-example.ipynb --- .../split-column-by-example.ipynb | 221 ------------------ 1 file changed, 221 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb deleted file mode 100644 index 3d7c62db..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb +++ /dev/null @@ -1,221 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/split-column-by-example.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Split column by example\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "DataPrep also offers you a way to easily split a column into multiple columns.\n", - "The SplitColumnByExampleBuilder class lets you generate a proper split program that will work even when the cases are not trivial, like in example below." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.read_lines(path='../data/crime.txt')\n", - "df = dflow.head(10)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "df['Line'].iloc[0]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As you can see above, you can't split this particular file by space character as it will create too many columns.\n", - "That's where split_column_by_example could be quite useful." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder = dflow.builders.split_column_by_example('Line', keep_delimiters=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.preview()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Couple things to take note of here. No examples were given, and yet DataPrep was able to generate quite reasonable split program. \n", - "We have passed keep_delimiters=True so we can see all the data split into columns. In practice, though, delimiters are rarely useful, so let's exclude them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.keep_delimiters = False\n", - "builder.preview()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This looks pretty good already, except that one case number is split into 2 columns. Taking the first row as an example, we want to keep case number as \"HY329907\" instead of \"HY\" and \"329907\" seperately. \n", - "If we request generation of suggested examples we will get a list of examples that require input." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "suggestions = builder.generate_suggested_examples()\n", - "suggestions" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "suggestions.iloc[0]['Line']" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Having retrieved source value we can now provide an example of desired split.\n", - "Notice that we chose not to split date and time but rather keep them together in one column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.add_example(example=(suggestions['Line'].iloc[0], ['10140490','HY329907','7/5/2015 23:50','050XX N NEWLAND AVE','820','THEFT']))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.preview()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "As we can see from the preview, some of the crime types (`Line_6`) do not show up as expected. Let's try to add one more example. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "builder.add_example(example=(df['Line'].iloc[1],['10139776','HY329265','7/5/2015 23:30','011XX W MORSE AVE','460','BATTERY']))\n", - "builder.preview()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "This looks just like what we need. Let's get a dataflow with splited columns and drop original column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = builder.to_dataflow()\n", - "dflow = dflow.drop_columns(['Line'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now we have successfully split the data into useful columns through examples. " - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 7e492cbeb6057bf4a4d5b1e728fa7b66cc79c2f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:26:41 -0700 Subject: [PATCH 048/248] Delete subsetting-sampling.ipynb --- .../how-to-guides/subsetting-sampling.ipynb | 218 ------------------ 1 file changed, 218 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/subsetting-sampling.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/subsetting-sampling.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/subsetting-sampling.ipynb deleted file mode 100644 index 833ab7e3..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/subsetting-sampling.ipynb +++ /dev/null @@ -1,218 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/subsetting-sampling.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Sampling and Subsetting\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once a Dataflow has been created, it is possible to act on only a subset of the records contained in it. This can help when working with very large datasets or when only a portion of the records is truly relevant." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Head\n", - "\n", - "The `head` method will take the number of records specified, run them through the transformations in the Dataflow, and then return the result as a Pandas dataframe." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "\n", - "dflow = dprep.read_csv('../data/crime_duplicate_headers.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Take\n", - "\n", - "The `take` method adds a step to the Dataflow that will keep the number of records specified (counting from the beginning) and drop the rest. Unlike `head`, which does not modify the Dataflow, all operations applied on a Dataflow on which `take` has been applied will affect only the records kept." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_top_five = dflow.take(5)\n", - "dflow_top_five.to_pandas_dataframe()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Skip\n", - "\n", - "It is also possible to skip a certain number of records in a Dataflow, such that transformations are only applied after a specific point. Depending on the underlying data source, a Dataflow with a `skip` step might still have to scan through the data in order to skip past the records." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_skip_top_one = dflow_top_five.skip(1)\n", - "dflow_skip_top_one.to_pandas_dataframe()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Take Sample\n", - "\n", - "In addition to taking records from the top of the dataset, it's also possible to take a random sample of the dataset. This is done through the `take_sample(probability, seed=None)` method. This method will scan through all of the records available in the Dataflow and include them based on the probability specified. The `seed` parameter is optional. If a seed is not provided, a stable one is generated, ensuring that the results for a specific Dataflow remain consistent. Different calls to `take_sample` will receive different seeds." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_sampled = dflow.take_sample(0.1)\n", - "dflow_sampled.to_pandas_dataframe()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "`skip`, `take`, and `take_sample` can all be combined. With this, we can achieve behaviors like getting a random 10% sample fo the middle N records of a dataset." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "seed = 1\n", - "dflow_nested_sample = dflow.skip(1).take(5).take_sample(0.5, seed)\n", - "dflow_nested_sample.to_pandas_dataframe()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Take Stratified Sample\n", - "Besides sampling all by a probability, we also have stratified sampling, provided the strata and strata weights, the probability to sample each stratum with.\n", - "This is done through the `take_stratified_sample(columns, fractions, seed=None)` method.\n", - "For all records, we will group each record by the columns specified to stratify, and based on the stratum x weight information in `fractions`, include said record.\n", - "\n", - "Seed behavior is same as in `take_sample`.\n", - "\n", - "If a stratum is not specified or the record cannot be grouped by said stratum, we default the weight to sample by to 0 (it will not be included).\n", - "\n", - "The order of `fractions` must match the order of `columns`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "fractions = {}\n", - "fractions[('ASSAULT',)] = 0.5\n", - "fractions[('BATTERY',)] = 0.2\n", - "fractions[('ARSON',)] = 0.5\n", - "fractions[('THEFT',)] = 1.0\n", - "\n", - "columns = ['Primary Type']\n", - "\n", - "single_strata_sample = dflow.take_stratified_sample(columns=columns, fractions = fractions, seed = 42)\n", - "single_strata_sample.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Stratified sampling on multiple columns is also supported." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "fractions = {}\n", - "fractions[('ASSAULT', '560')] = 0.5\n", - "fractions[('BATTERY', '460')] = 0.2\n", - "fractions[('ARSON', '1020')] = 0.5\n", - "fractions[('THEFT', '820')] = 1.0\n", - "\n", - "columns = ['Primary Type', 'IUCR']\n", - "\n", - "multi_strata_sample = dflow.take_stratified_sample(columns=columns, fractions = fractions, seed = 42)\n", - "multi_strata_sample.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Caching\n", - "It is usually a good idea to cache the sampled Dataflow for later uses.\n", - "\n", - "See [here](cache.ipynb) for more details about caching." - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From b6b27fded65b64fd11da74eb7037311e9e7e805a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:26:56 -0700 Subject: [PATCH 049/248] Delete summarize.ipynb --- .../dataprep/how-to-guides/summarize.ipynb | 591 ------------------ 1 file changed, 591 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/summarize.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/summarize.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/summarize.ipynb deleted file mode 100644 index 3aff2b43..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/summarize.ipynb +++ /dev/null @@ -1,591 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/summarize.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Summarize\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License.
    \n", - "\n", - "Azure ML Data Prep can help summarize your data by providing you a synopsis based on aggregates over specific columns.\n", - "\n", - "## Table of Contents\n", - "[Overview](#overview)
    \n", - "[Summmary Functions](#summary)
    \n", - "* [SummaryFunction.MIN](#min)
    \n", - "* [SummaryFunction.MAX](#max)
    \n", - "* [SummaryFunction.MEAN](#mean)
    \n", - "* [SummaryFunction.MEDIAN](#median)
    \n", - "* [SummaryFunction.VAR](#var)
    \n", - "* [SummaryFunction.SD](#sd)
    \n", - "* [SummaryFunction.COUNT](#count)
    \n", - "* [SummaryFunction.SUM](#sum)
    \n", - "* [SummaryFunction.SKEWNESS](#skewness)
    \n", - "* [SummaryFunction.KURTOSIS](#kurtosis)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Overview\n", - "Before we drill down into each aggregate function, let us observe `summarize` end to end.\n", - "\n", - "We will start by reading some data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Next we count (`SummaryFunction.COUNT`) the number of rows with column ID with non-null values grouped by Primary Type." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_summarize = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='Primary Type ID Counts', \n", - " summary_function=dprep.SummaryFunction.COUNT)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_summarize.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If we choose to not group by anything, we will instead get a single record over the entire dataset. Here we will get the number of rows that have the column ID with non-null values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_summarize_nogroup = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='ID Count', \n", - " summary_function=dprep.SummaryFunction.COUNT)])\n", - "dflow_summarize_nogroup.head(1)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Conversely, we can group by multiple columns." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_summarize_2group = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='Primary Type & Location Description ID Counts', \n", - " summary_function=dprep.SummaryFunction.COUNT)],\n", - " group_by_columns=['Primary Type', 'Location Description'])\n", - "dflow_summarize_2group.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In a similar vein, we can compute multiple aggregates in a single summary. Each aggregate function is independent and it is possible to aggregate the same column multiple times." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_summarize_multi_agg = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='Primary Type ID Counts', \n", - " summary_function=dprep.SummaryFunction.COUNT),\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='Primary Type Min ID', \n", - " summary_function=dprep.SummaryFunction.MIN),\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Date',\n", - " summary_column_name='Primary Type Max Date', \n", - " summary_function=dprep.SummaryFunction.MAX)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_summarize_multi_agg.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "If we wanted this summary data back into our original data set, we can make use of `join_back` and optionally `join_back_columns_prefix` for easy naming distinctions. Summary columns will be added to the end. `group_by_columns` is not necessary for using `join_back`, however the behavior will be more like an append instead of a join." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_summarize_join = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='Primary Type ID Counts', \n", - " summary_function=dprep.SummaryFunction.COUNT)],\n", - " group_by_columns=['Primary Type'],\n", - " join_back=True,\n", - " join_back_columns_prefix='New_')\n", - "dflow_summarize_join.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Summary Functions\n", - "Here we will go over all the possible aggregates in Data Prep.\n", - "The most up to date set of functions can be found by enumerating the `SummaryFunction` enum." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "[x.name for x in dprep.SummaryFunction]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.MIN\n", - "Data Prep can aggregate and find the minimum value of a column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Date',\n", - " summary_column_name='Primary Type Min Date', \n", - " summary_function=dprep.SummaryFunction.MIN)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.MAX\n", - "Data Prep can find the maximum value of a column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Date',\n", - " summary_column_name='Primary Type Max Date', \n", - " summary_function=dprep.SummaryFunction.MAX)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.MEAN\n", - "Data Prep can find the statistical mean of a column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Mean', \n", - " summary_function=dprep.SummaryFunction.MEAN)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.MEDIAN\n", - "Data Prep can find the median value of a column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Median', \n", - " summary_function=dprep.SummaryFunction.MEDIAN)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.VAR\n", - "Data Prep can find the statistical variance of a column. We will need more than one data point to calculate this, otherwise we will be unable to give results." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Variance', \n", - " summary_function=dprep.SummaryFunction.VAR)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Note that despite there being two cases of BATTERY, one of them is missing geographical location, thus only CRIMINAL DAMAGE can yield variance information. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.SD\n", - "Data Prep can find the standard deviation of a column. We will need more than one data point to calculate this, otherwise we will be unable to give results." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Standard Deviation', \n", - " summary_function=dprep.SummaryFunction.SD)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Similar to when we calculate variance, despite there being two cases of BATTERY, one of them is missing geographical location, thus only CRIMINAL DAMAGE can yield variance information. " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.COUNT\n", - "Data Prep can count the number of rows that have a column with non-null values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Count', \n", - " summary_function=dprep.SummaryFunction.COUNT)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Note that despite there being two cases of BATTERY, one of them is missing geographical location, thus when we group by Primary Type, we only get a count of one for Latitude." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.SUM\n", - "Data Prep can aggregate and sum the values of a column. Our dataset does not have many numerical facts, but here we sum IDs grouped by Primary Type." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='ID',\n", - " summary_column_name='Primary Type ID Sum', \n", - " summary_function=dprep.SummaryFunction.SUM)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.SKEWNESS\n", - "Data Prep can calculate the skewness of data in a column. We will need more than one data point to calculate this, otherwise we will be unable to give results." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Skewness', \n", - " summary_function=dprep.SummaryFunction.SKEWNESS)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### SummaryFunction.KURTOSIS\n", - "Data Prep can calculate the kurtosis of data in a column. We will need more than one data point to calculate this, otherwise we will be unable to give results." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "dflow = dprep.auto_read_file(path='../data/crime-dirty.csv')\n", - "dflow_min = dflow.summarize(\n", - " summary_columns=[\n", - " dprep.SummaryColumnsValue(\n", - " column_id='Latitude',\n", - " summary_column_name='Primary Type Latitude Kurtosis', \n", - " summary_function=dprep.SummaryFunction.KURTOSIS)],\n", - " group_by_columns=['Primary Type'])\n", - "dflow_min.head(10)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 65343fc263473e3515add833da66cbc9f40c82f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:31:22 -0700 Subject: [PATCH 050/248] Delete working-with-file-streams.ipynb --- .../working-with-file-streams.ipynb | 193 ------------------ 1 file changed, 193 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/working-with-file-streams.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/working-with-file-streams.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/working-with-file-streams.ipynb deleted file mode 100644 index 28ac3d2f..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/working-with-file-streams.ipynb +++ /dev/null @@ -1,193 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/working-with-file-streams.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Working With File Streams\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In addition to loading and parsing tabular data (see [here](./data-ingestion.ipynb) for more details), Data Prep also supports a variety of operations on raw file streams. \n", - "\n", - "File streams are usually created by calling `Dataflow.get_files`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.Dataflow.get_files(path='../data/*.csv')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The result of this operation is a Dataflow with a single column named \"Path\". This column contains values of type `StreamInfo`, each of which represents a different file matched by the search pattern specified when calling `get_files`. The string representation of a `StreamInfo` follows this pattern:\n", - "\n", - "StreamInfo(_Location_://_ResourceIdentifier_\\[_Arguments_\\])\n", - "\n", - "Location is the type of storage where the stream is located (e.g. Azure Blob, Local, or ADLS); ResouceIdentifier is the name of the file within that storage, such as a file path; and Arguments is a list of arguments required to load and read the file.\n", - "\n", - "On their own, `StreamInfo` objects are not particularly useful; however, you can use them as input to other functions." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Retrieving File Names\n", - "\n", - "In the example above, we matched a set of CSV files by using a search pattern and got back a column with several `StreamInfo` objects, each representing a different file. Now, we will extract the file path and name for each of these values into a new string column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dflow.add_column(expression=dprep.get_stream_name(dflow['Path']),\n", - " new_column_name='FilePath',\n", - " prior_column='Path')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The `get_stream_name` function will return the full name of the file referenced by a `StreamInfo`. In the case of a local file, this will be an absolute path. From here, you can use the `derive_column_by_example` method to extract just the file name." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "\n", - "first_file_path = dflow.head(1)['FilePath'][0]\n", - "first_file_name = os.path.basename(first_file_path)\n", - "dflow = dflow.derive_column_by_example(new_column_name='FileName',\n", - " source_columns=['FilePath'],\n", - " example_data=(first_file_path, first_file_name))\n", - "dflow = dflow.drop_columns(['FilePath'])\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Writing Streams\n", - "\n", - "Whenever you have a column containing `StreamInfo` objects, it's possible to write these out to any of the locations Data Prep supports. You can do this by calling `Dataflow.write_streams`:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.write_streams(streams_column='Path', base_path=dprep.LocalFileOutput('./test_out/')).run_local()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The `base_path` parameter specifies the location the files will be written to. By default, the name of the file will be the resource identifier of the stream with any invalid characters replaced by `_`. In the case of streams referencing local files, this would be the full path of the original file. You can also specify the desired file names by referencing a column containing them:" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow.write_streams(streams_column='Path',\n", - " base_path=dprep.LocalFileOutput('./test_out/'),\n", - " file_names_column='FileName').run_local()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Using this functionality, you can transfer files from any source to any destination supported by Data Prep. In addition, since the streams are just values in the Dataflow, you can use all of the functionality available.\n", - "\n", - "Here, for example, we will write out only the files that start with the prefix \"crime-\". The resulting file names will have the prefix stripped and will be written to a folder named \"crime\"." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "prefix = 'crime-'\n", - "dflow = dflow.filter(dflow['FileName'].starts_with(prefix))\n", - "dflow = dflow.add_column(expression=dflow['FileName'].substring(len(prefix)),\n", - " new_column_name='CleanName',\n", - " prior_column='FileName')\n", - "dflow.write_streams(streams_column='Path',\n", - " base_path=dprep.LocalFileOutput('./test_out/crime/'),\n", - " file_names_column='CleanName').run_local()" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From bbdabbb5526a3612804f78a1aec7730664e5faf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:31:32 -0700 Subject: [PATCH 051/248] Delete writing-data.ipynb --- .../dataprep/how-to-guides/writing-data.ipynb | 184 ------------------ 1 file changed, 184 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/writing-data.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/writing-data.ipynb b/how-to-use-azureml/work-with-data/dataprep/how-to-guides/writing-data.ipynb deleted file mode 100644 index ae660d30..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/how-to-guides/writing-data.ipynb +++ /dev/null @@ -1,184 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/how-to-guides/writing-data.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Writing Data\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "It is possible to write out the data at any point in a Dataflow. These writes are added as steps to the resulting Dataflow and will be executed every time the Dataflow is executed. Since there are no limitations to how many write steps there are in a pipeline, this makes it easy to write out intermediate results for troubleshooting or to be picked up by other pipelines.\n", - "\n", - "It is important to note that the execution of each write results in a full pull of the data in the Dataflow. For example, a Dataflow with three write steps will read and process every record in the dataset three times." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Writing to Files" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Data can be written to files in any of our supported locations (Local File System, Azure Blob Storage, and Azure Data Lake Storage). In order to parallelize the write, the data is written to multiple partition files. A sentinel file named SUCCESS is also output once the write has completed. This makes it possible to identify when an intermediate write has completed without having to wait for the whole pipeline to complete.\n", - "\n", - "> When running a Dataflow in Spark, attempting to execute a write to an existing folder will fail. It is important to ensure the folder is empty or use a different target location per execution.\n", - "\n", - "The following file formats are currently supported:\n", - "- Delimited Files (CSV, TSV, etc.)\n", - "- Parquet Files" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We'll start by loading data into a Dataflow which will be re-used with different formats." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow = dprep.auto_read_file('../data/crime.txt')\n", - "dflow = dflow.to_number('Column2')\n", - "dflow.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Delimited Files" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here we create a dataflow with a write step.\n", - "\n", - "This operation is lazy until we invoke `run_local` (or any operation that forces execution like `to_pandas_dataframe`), only then will we execute the write operation." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_write = dflow.write_to_csv(directory_path=dprep.LocalFileOutput('./test_out/'))\n", - "\n", - "dflow_write.run_local()\n", - "\n", - "dflow_written_files = dprep.read_csv('./test_out/part-*')\n", - "dflow_written_files.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The data we wrote out contains several errors in the numeric columns due to numbers that we were unable to parse. When written out to CSV, these are replaced with the string \"ERROR\" by default. We can parameterize this as part of our write call. In the same vein, it is also possible to set what string to use to represent null values." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_write_errors = dflow.write_to_csv(directory_path=dprep.LocalFileOutput('./test_out/'), \n", - " error='BadData',\n", - " na='NA')\n", - "dflow_write_errors.run_local()\n", - "dflow_written = dprep.read_csv('./test_out/part-*')\n", - "dflow_written.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Parquet Files" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Similar to `write_to_csv`, `write_to_parquet` returns a new Dataflow with a Write Parquet Step which hasn't been executed yet.\n", - "\n", - "Then we run the Dataflow with `run_local`, which executes the write operation." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_write_parquet = dflow.write_to_parquet(directory_path=dprep.LocalFileOutput('./test_parquet_out/'),\n", - " error='MiscreantData')\n", - "\n", - "dflow_write_parquet.run_local()\n", - "\n", - "dflow_written_parquet = dprep.read_parquet_file('./test_parquet_out/part-*')\n", - "dflow_written_parquet.head(5)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 6bce41b3d722308b94e72e3b3ac84cc16ad775a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:31:49 -0700 Subject: [PATCH 052/248] Delete _SUCCESS --- .../work-with-data/dataprep/data/crime_partfiles/_SUCCESS | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/_SUCCESS diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/_SUCCESS b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/_SUCCESS deleted file mode 100644 index e69de29b..00000000 From eb2024b3e09ff7f3ff70c796d845b3bd32e11c9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:32:01 -0700 Subject: [PATCH 053/248] Delete part-00000-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 914 ------------------ 1 file changed, 914 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00000-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00000-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00000-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index 855bdd52..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00000-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,914 +0,0 @@ -10140382,HY329023,07/05/2015 07:02:00 PM,004XX N CENTRAL PARK BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,1123,,27,23,08B,,,2015,07/12/2015 12:42:46 PM,,, -10139396,HY328581,07/04/2015 11:00:00 PM,004XX N MONTICELLO AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENTIAL YARD (FRONT/BACK),false,false,1122,011,27,23,14,1151917,1902866,2015,07/11/2015 12:39:38 PM,41.889337148,-87.717552947,"(41.889337148, -87.717552947)" -10137054,HY325533,07/02/2015 11:37:00 PM,005XX N SPRINGFIELD AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,true,false,1122,011,27,23,15,1150251,1903434,2015,07/09/2015 12:37:51 PM,41.890928444,-87.723656407,"(41.890928444, -87.723656407)" -10137515,HY326210,07/02/2015 10:00:00 PM,017XX N CICERO AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,2533,025,37,25,08A,1144171,1911174,2015,07/09/2015 12:37:51 PM,41.912284239,-87.745790773,"(41.912284239, -87.745790773)" -10136819,HY325292,07/02/2015 07:54:00 PM,016XX S DRAKE AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,true,false,1021,010,24,29,15,1153024,1891215,2015,07/09/2015 12:37:51 PM,41.857343671,-87.713796395,"(41.857343671, -87.713796395)" -10136842,HY325161,07/02/2015 06:50:00 PM,009XX E 131ST ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0533,005,9,54,06,1184854,1818532,2015,07/09/2015 12:37:51 PM,41.657204701,-87.599239629,"(41.657204701, -87.599239629)" -10135642,HY324210,07/02/2015 02:10:00 AM,009XX E 130TH ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,CHA PARKING LOT/GROUNDS,false,false,0532,005,9,54,04B,1184757,1819322,2015,07/09/2015 12:37:51 PM,41.659374843,-87.599569957,"(41.659374843, -87.599569957)" -10135444,HY323989,07/01/2015 08:40:00 PM,068XX S TALMAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0831,008,15,66,18,1159936,1858880,2015,07/08/2015 12:38:00 PM,41.768472756,-87.689314761,"(41.768472756, -87.689314761)" -10134135,HY322934,07/01/2015 04:00:00 AM,079XX S VINCENNES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,0623,006,17,44,08B,1175024,1852356,2015,07/08/2015 12:38:00 PM,41.750246796,-87.634204288,"(41.750246796, -87.634204288)" -10147117,HY336163,06/28/2015 07:00:00 AM,020XX N KIMBALL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,1413,014,26,22,14,1153332,1913617,2015,07/12/2015 12:40:52 PM,41.918810907,-87.712070517,"(41.918810907, -87.712070517)" -10130196,HY318835,06/28/2015 12:20:00 AM,033XX N HALSTED ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1925,019,44,6,08B,1170364,1922754,2015,07/05/2015 12:38:04 PM,41.943527622,-87.649225604,"(41.943527622, -87.649225604)" -10129636,HY318033,06/27/2015 12:00:00 PM,044XX N BROADWAY,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1913,019,46,3,06,1168391,1929931,2015,07/04/2015 12:37:19 PM,41.963264568,-87.656268955,"(41.963264568, -87.656268955)" -10129573,HY317986,06/26/2015 07:00:00 PM,010XX N WOOD ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1212,012,1,24,06,1164162,1907126,2015,07/03/2015 12:39:14 PM,41.900776974,-87.672463767,"(41.900776974, -87.672463767)" -10128956,HY315657,06/25/2015 11:16:00 AM,001XX N WOLCOTT AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,false,1223,012,27,28,26,1163750,1901322,2015,07/02/2015 12:42:40 PM,41.884859047,-87.674140851,"(41.884859047, -87.674140851)" -10147340,HY336420,06/21/2015 01:30:00 PM,006XX W BARRY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1934,019,44,6,14,1171641,1920753,2015,07/12/2015 12:42:46 PM,41.93800874,-87.644591096,"(41.93800874, -87.644591096)" -10120242,HY308991,06/20/2015 12:00:00 PM,022XX E 103RD ST,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,POLICE FACILITY/VEH PARKING LOT,false,false,0434,004,10,51,26,1193088,1837089,2015,06/27/2015 12:41:22 PM,41.707930876,-87.568507723,"(41.707930876, -87.568507723)" -10122352,HY308873,06/20/2015 10:20:00 AM,055XX W GLADYS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1522,,29,25,14,,,2015,06/27/2015 12:41:22 PM,,, -10119796,HY308435,06/20/2015 01:28:00 AM,039XX S CALUMET AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0213,002,3,38,14,1179038,1878991,2015,06/27/2015 12:41:22 PM,41.823245374,-87.618684022,"(41.823245374, -87.618684022)" -10119477,HY307724,06/19/2015 03:00:00 PM,052XX W LAKE ST,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,1523,015,28,25,03,1141587,1902060,2015,06/26/2015 12:42:22 PM,41.887322542,-87.755509318,"(41.887322542, -87.755509318)" -10118190,HY306860,06/17/2015 07:48:00 PM,003XX S PULASKI RD,2250,LIQUOR LAW VIOLATION,LIQUOR LICENSE VIOLATION,TAVERN/LIQUOR STORE,true,false,1132,011,24,26,22,1149753,1897756,2015,06/24/2015 12:40:31 PM,41.875357085,-87.725632989,"(41.875357085, -87.725632989)" -10117842,HY306398,06/17/2015 05:00:00 PM,030XX W GUNNISON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1713,017,33,14,14,1154936,1932019,2015,06/24/2015 12:40:31 PM,41.969275252,-87.705682159,"(41.969275252, -87.705682159)" -10116440,HY304973,06/16/2015 11:00:00 PM,016XX N HONORE ST,0810,THEFT,OVER $500,STREET,false,false,1434,014,32,24,06,1163721,1911003,2015,06/23/2015 12:51:44 PM,41.91142505,-87.673974124,"(41.91142505, -87.673974124)" -10112616,HY301842,06/14/2015 09:00:00 PM,104XX S PROSPECT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2212,022,19,72,14,1167593,1835635,2015,06/21/2015 12:38:51 PM,41.704524331,-87.661912753,"(41.704524331, -87.661912753)" -10122748,HY311701,06/13/2015 03:30:00 PM,022XX S CENTRAL PARK AVE,0810,THEFT,OVER $500,APARTMENT,false,false,1024,010,22,30,06,1152766,1888660,2015,06/23/2015 12:51:44 PM,41.850337554,-87.714810965,"(41.850337554, -87.714810965)" -10110096,HY298671,06/12/2015 06:00:00 PM,050XX S WINCHESTER AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0931,009,16,61,14,1164250,1871069,2015,06/19/2015 01:10:05 PM,41.801831215,-87.673158727,"(41.801831215, -87.673158727)" -10113127,HY302162,06/12/2015 04:30:00 PM,031XX S ABERDEEN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0913,009,11,60,05,1169448,1884115,2015,06/19/2015 01:10:05 PM,41.837519626,-87.653717198,"(41.837519626, -87.653717198)" -10109843,HY298100,06/12/2015 01:05:00 PM,068XX S NORMAL BLVD,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",true,false,0722,007,6,68,06,1174171,1859468,2015,06/19/2015 01:10:05 PM,41.769781958,-87.63711913,"(41.769781958, -87.63711913)" -10109480,HY297992,06/12/2015 12:20:00 PM,068XX S PERRY AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0722,007,6,69,08A,1176533,1859790,2015,06/19/2015 01:10:05 PM,41.770612768,-87.628451443,"(41.770612768, -87.628451443)" -10133746,HY320661,06/12/2015 11:00:00 AM,069XX S CRANDON AVE,1154,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT $300 AND UNDER,APARTMENT,false,false,0331,003,5,43,11,1192560,1859518,2015,07/05/2015 12:36:37 PM,41.769490914,-87.569712448,"(41.769490914, -87.569712448)" -10108325,HY296759,06/11/2015 09:00:00 AM,037XX W 26TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1031,010,22,30,14,1152090,1886433,2015,06/18/2015 12:41:41 PM,41.844239727,-87.717350648,"(41.844239727, -87.717350648)" -10111213,HY300134,06/10/2015 01:00:00 PM,040XX W MELROSE ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,1731,017,31,16,26,1148889,1921264,2015,06/17/2015 12:40:49 PM,41.939882117,-87.728196374,"(41.939882117, -87.728196374)" -10102842,HY291892,06/07/2015 08:00:00 PM,009XX S SPRINGFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1133,011,24,26,14,1150571,1895527,2015,06/14/2015 12:39:55 PM,41.869224524,-87.722687811,"(41.869224524, -87.722687811)" -10102538,HY291587,06/07/2015 02:40:00 PM,051XX S ROCKWELL ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0923,009,14,63,14,1159944,1870621,2015,06/14/2015 12:39:55 PM,41.800691514,-87.688962913,"(41.800691514, -87.688962913)" -10102063,HY290911,06/06/2015 08:25:00 PM,054XX W FULTON ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,1523,015,28,25,26,1139936,1901441,2015,06/13/2015 12:39:41 PM,41.885654275,-87.761587509,"(41.885654275, -87.761587509)" -10109910,HY298308,06/06/2015 03:00:00 PM,098XX S INDIANA AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0511,005,6,49,05,1179279,1839603,2015,06/20/2015 12:40:44 PM,41.715155065,-87.61900001,"(41.715155065, -87.61900001)" -10101757,HY290389,06/06/2015 02:12:00 PM,029XX W FILLMORE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1135,011,28,29,08B,1157137,1895279,2015,06/13/2015 12:39:41 PM,41.868413285,-87.698588955,"(41.868413285, -87.698588955)" -10103505,HY292428,06/05/2015 06:00:00 PM,048XX S PAULINA ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0931,009,20,61,06,1165781,1872809,2015,06/12/2015 12:42:30 PM,41.806573572,-87.667494505,"(41.806573572, -87.667494505)" -10101148,HY289611,06/05/2015 05:30:00 PM,058XX S DORCHESTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0235,002,5,41,07,1186500,1866746,2015,06/12/2015 12:42:30 PM,41.789470647,-87.591696818,"(41.789470647, -87.591696818)" -10099041,HY287215,06/04/2015 06:50:00 AM,048XX S ASHLAND AVE,031A,ROBBERY,ARMED: HANDGUN,BANK,false,false,0933,009,20,61,03,1166526,1872752,2015,07/07/2015 12:40:12 PM,41.806401287,-87.66476372,"(41.806401287, -87.66476372)" -10097772,HY286029,06/02/2015 10:30:00 PM,053XX W BYRON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1634,016,38,15,06,1140003,1925444,2015,06/09/2015 12:37:43 PM,41.951519927,-87.760752962,"(41.951519927, -87.760752962)" -10096983,HY285435,06/02/2015 02:30:00 PM,023XX N MILWAUKEE AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1414,014,35,22,06,1156799,1915514,2015,06/09/2015 12:37:43 PM,41.923946796,-87.699280832,"(41.923946796, -87.699280832)" -10095244,HY284182,06/01/2015 07:19:00 PM,057XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,JAIL / LOCK-UP FACILITY,true,false,1513,015,29,25,18,1138127,1899398,2015,06/08/2015 12:48:46 PM,41.880080898,-87.768280017,"(41.880080898, -87.768280017)" -10093684,HY282559,05/31/2015 06:15:00 PM,071XX S VINCENNES AVE,0460,BATTERY,SIMPLE,GAS STATION,false,false,0731,007,6,69,08B,1176577,1857698,2015,06/07/2015 12:43:36 PM,41.764871097,-87.62835301,"(41.764871097, -87.62835301)" -10092276,HY280537,05/29/2015 11:57:00 PM,068XX S CORNELL AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0332,003,5,43,04B,1188428,1859737,2015,06/05/2015 12:41:44 PM,41.77019154,-87.584851252,"(41.77019154, -87.584851252)" -10093489,HY282318,05/29/2015 08:58:00 PM,016XX N LARAMIE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,2532,025,37,25,04B,1141421,1910182,2015,06/05/2015 12:41:44 PM,41.90961333,-87.755918184,"(41.90961333, -87.755918184)" -10091871,HY279905,05/29/2015 10:00:00 AM,050XX S SPAULDING AVE,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,RESIDENCE,false,true,0821,008,14,63,04B,1155187,1871130,2015,06/05/2015 12:41:44 PM,41.802184814,-87.706394917,"(41.802184814, -87.706394917)" -10088970,HY277782,05/28/2015 01:15:00 AM,015XX N LARAMIE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,2532,025,37,25,03,1141384,1909974,2015,06/04/2015 12:42:50 PM,41.909043238,-87.75605925,"(41.909043238, -87.75605925)" -10088660,HY277409,05/27/2015 06:00:00 PM,054XX N CUMBERLAND AVE,0890,THEFT,FROM BUILDING,ATHLETIC CLUB,false,false,1614,016,41,76,06,1119277,1935253,2015,06/03/2015 12:42:25 PM,41.978791706,-87.836734078,"(41.978791706, -87.836734078)" -10089078,HY277646,05/27/2015 05:52:00 PM,022XX W PERSHING RD,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,OTHER,false,true,0912,009,11,59,26,1162171,1878823,2015,06/03/2015 12:42:25 PM,41.823152685,-87.680567258,"(41.823152685, -87.680567258)" -10085461,HY274661,05/25/2015 05:04:00 PM,074XX S ST LAWRENCE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,0323,003,6,69,04B,1181559,1855960,2015,06/01/2015 12:47:00 PM,41.759988347,-87.610146282,"(41.759988347, -87.610146282)" -10084832,HY273834,05/25/2015 12:49:00 AM,012XX W 73RD PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0734,007,17,67,08B,1168941,1855993,2015,06/01/2015 12:47:00 PM,41.760360685,-87.656390252,"(41.760360685, -87.656390252)" -10083877,HY272579,05/23/2015 10:30:00 PM,048XX N KEYSTONE AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,1712,017,39,14,08A,1148471,1932134,2015,05/30/2015 12:39:53 PM,41.969718324,-87.72945115,"(41.969718324, -87.72945115)" -10086359,HY274268,05/23/2015 04:00:00 AM,026XX S HAMLIN AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,SIDEWALK,false,false,1031,,22,30,03,,,2015,05/30/2015 12:39:53 PM,,, -10080813,HY269135,05/20/2015 05:25:00 PM,110XX S MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,0513,005,9,49,06,1178749,1831610,2015,05/27/2015 12:41:26 PM,41.693233223,-87.621183177,"(41.693233223, -87.621183177)" -10078694,HY267487,05/20/2015 05:20:00 AM,001XX W 113TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,SIDEWALK,false,true,0522,005,34,49,14,1177168,1830059,2015,05/27/2015 12:41:26 PM,41.689012774,-87.627018081,"(41.689012774, -87.627018081)" -10077527,HY266272,05/18/2015 09:00:00 PM,029XX W HARRISON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1135,011,2,27,14,1156787,1897264,2015,05/25/2015 12:39:09 PM,41.873867422,-87.6998201,"(41.873867422, -87.6998201)" -10074976,HY264023,05/17/2015 02:20:00 PM,011XX N MAYFIELD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1511,015,29,25,18,1136783,1906846,2015,05/24/2015 12:39:16 PM,41.90054335,-87.773036525,"(41.90054335, -87.773036525)" -10074408,HY263293,05/16/2015 11:00:00 PM,002XX W 70TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0731,007,6,69,08B,1176094,1858601,2015,05/23/2015 12:39:33 PM,41.767359881,-87.630096272,"(41.767359881, -87.630096272)" -10070781,HY259424,05/13/2015 06:00:00 PM,054XX S WABASH AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0225,002,3,40,06,1177595,1869166,2015,05/21/2015 01:30:34 PM,41.796317515,-87.624275174,"(41.796317515, -87.624275174)" -10069076,HY257420,05/12/2015 03:55:00 PM,0000X E 83RD ST,0460,BATTERY,SIMPLE,RESTAURANT,false,false,0632,006,6,44,08B,1177781,1849937,2015,05/21/2015 01:30:34 PM,41.743546853,-87.624174513,"(41.743546853, -87.624174513)" -10068765,HY257238,05/11/2015 02:00:00 PM,074XX S SANGAMON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0733,007,17,68,14,1171297,1855717,2015,05/21/2015 01:30:34 PM,41.759552106,-87.647763521,"(41.759552106, -87.647763521)" -10066956,HY255874,05/10/2015 08:30:00 PM,088XX S LUELLA AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0412,004,8,48,06,1192674,1846539,2015,05/21/2015 01:30:34 PM,41.733872682,-87.569716826,"(41.733872682, -87.569716826)" -10061067,HY249438,05/06/2015 02:30:00 PM,011XX N WESTERN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,STREET,false,true,1212,012,1,24,26,1160235,1907766,2015,05/21/2015 01:30:34 PM,41.902615292,-87.686870179,"(41.902615292, -87.686870179)" -10057558,HY246574,05/04/2015 08:30:00 AM,002XX W 106TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0512,005,34,49,05,1176626,1834692,2015,05/11/2015 12:40:43 PM,41.701738583,-87.628863594,"(41.701738583, -87.628863594)" -10057342,HY246477,05/03/2015 02:00:00 AM,002XX E 49TH ST,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0224,002,3,38,03,1178647,1872628,2015,05/10/2015 12:43:18 PM,41.805793681,-87.620312128,"(41.805793681, -87.620312128)" -10055977,HY245326,05/02/2015 09:30:00 PM,059XX N NAVARRE AVE,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,false,false,1611,016,41,10,26,1131653,1939109,2015,05/09/2015 12:54:37 PM,41.989167023,-87.79113002,"(41.989167023, -87.79113002)" -10047645,HY237074,04/26/2015 07:17:00 PM,022XX W 71ST ST,4625,OTHER OFFENSE,PAROLE VIOLATION,STREET,true,false,0832,008,17,66,26,1162647,1857583,2015,05/03/2015 12:41:02 PM,41.764857472,-87.679413712,"(41.764857472, -87.679413712)" -10046013,HY234766,04/24/2015 07:00:00 PM,005XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,DEPARTMENT STORE,false,false,1834,018,42,8,06,1177300,1903904,2015,05/01/2015 12:39:29 PM,41.891647792,-87.624305286,"(41.891647792, -87.624305286)" -10045777,HY234407,04/24/2015 12:00:00 PM,082XX S COTTAGE GROVE AVE,1122,DECEPTIVE PRACTICE,COUNTERFEIT CHECK,CURRENCY EXCHANGE,false,false,0631,006,6,44,10,1182961,1850200,2015,05/23/2015 12:37:53 PM,41.744149843,-87.605186658,"(41.744149843, -87.605186658)" -10043099,HY232289,04/22/2015 10:02:00 PM,077XX S EBERHART AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0624,006,6,69,14,1180950,1854001,2015,04/29/2015 12:46:00 PM,41.754626668,-87.612438413,"(41.754626668, -87.612438413)" -10044435,HY232550,04/22/2015 08:15:00 PM,093XX S STEWART AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0634,006,21,49,14,1175433,1842805,2015,04/29/2015 12:46:00 PM,41.724028492,-87.632990344,"(41.724028492, -87.632990344)" -10042666,HY231827,04/22/2015 12:31:00 PM,004XX E 32ND ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,APARTMENT,false,false,0211,002,4,35,26,1179471,1883821,2015,04/29/2015 12:46:00 PM,41.836489362,-87.616947764,"(41.836489362, -87.616947764)" -10042314,HY231616,04/22/2015 12:15:00 PM,068XX S MICHIGAN AVE,4625,OTHER OFFENSE,PAROLE VIOLATION,STREET,true,false,0322,003,20,69,26,1178301,1859745,2015,04/29/2015 12:46:00 PM,41.770449338,-87.621972052,"(41.770449338, -87.621972052)" -10039516,HY229079,04/20/2015 11:30:00 AM,066XX S LAFLIN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0725,007,17,67,14,1167437,1860810,2015,04/27/2015 12:45:29 PM,41.773611511,-87.661764615,"(41.773611511, -87.661764615)" -10038323,HY228207,04/19/2015 03:39:00 PM,079XX S WOOD ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,true,false,0611,006,21,71,15,1165767,1852106,2015,04/26/2015 12:39:05 PM,41.749762163,-87.668133219,"(41.749762163, -87.668133219)" -10035528,HY224812,04/16/2015 09:10:00 PM,132XX S BURLEY AVE,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PUBLIC, BUILDING",false,false,0433,004,10,55,05,1199800,1817793,2015,04/23/2015 12:42:02 PM,41.654814497,-87.544575541,"(41.654814497, -87.544575541)" -10037634,HY227208,04/16/2015 07:00:00 PM,079XX S YATES BLVD,0580,STALKING,SIMPLE,STREET,false,false,0414,004,7,46,08A,1193528,1852987,2015,04/23/2015 12:42:02 PM,41.751545711,-87.566377706,"(41.751545711, -87.566377706)" -10035186,HY224450,04/16/2015 12:00:00 AM,043XX W 25TH PL,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,false,1013,010,22,30,20,1147698,1886734,2015,06/28/2015 12:40:29 PM,41.845151022,-87.733460968,"(41.845151022, -87.733460968)" -10043019,HY232232,04/15/2015 01:45:00 PM,083XX S KERFOOT AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,APARTMENT,false,false,0622,006,21,71,26,1173267,1849190,2015,04/24/2015 12:43:44 PM,41.74159788,-87.640736088,"(41.74159788, -87.640736088)" -10036700,HY225094,04/15/2015 08:00:00 AM,058XX S BLACKSTONE AVE,1154,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT $300 AND UNDER,RESIDENCE,false,false,0235,002,5,41,11,1186947,1866698,2015,04/22/2015 12:47:10 PM,41.789328339,-87.590059355,"(41.789328339, -87.590059355)" -10032646,HY222500,04/15/2015 03:24:00 AM,049XX W FULLERTON AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,2521,025,31,19,04B,1143266,1915551,2015,04/22/2015 12:47:10 PM,41.924312148,-87.749005973,"(41.924312148, -87.749005973)" -10031809,HY221582,04/14/2015 12:00:00 PM,036XX W LEXINGTON ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,ALLEY,true,false,1133,011,24,27,26,1152082,1896490,2015,04/21/2015 03:59:18 PM,41.871837474,-87.717115121,"(41.871837474, -87.717115121)" -10027994,HY217421,04/10/2015 08:28:00 PM,003XX N LAMON AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),STREET,true,false,1532,015,28,25,18,1143693,1901637,2015,04/17/2015 12:55:31 PM,41.886122605,-87.747785968,"(41.886122605, -87.747785968)" -10028354,HY217751,04/10/2015 07:00:00 PM,022XX W 47TH ST,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,false,false,0931,009,12,61,05,1161901,1873418,2015,04/17/2015 12:55:31 PM,41.808326347,-87.681708152,"(41.808326347, -87.681708152)" -10028175,HY217738,04/10/2015 04:00:00 PM,039XX S LAKE PARK AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0214,002,4,36,26,1183288,1879279,2015,04/17/2015 12:55:31 PM,41.823937602,-87.603083608,"(41.823937602, -87.603083608)" -10026268,HY215497,04/08/2015 09:00:00 PM,086XX S SAGINAW AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,0423,004,7,46,05,1195367,1848070,2015,04/15/2015 12:59:16 PM,41.738007887,-87.559800758,"(41.738007887, -87.559800758)" -10026351,HY215662,04/08/2015 05:00:00 PM,048XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0922,009,12,58,06,1161141,1872753,2015,04/15/2015 12:59:16 PM,41.806517283,-87.684514078,"(41.806517283, -87.684514078)" -10025005,HY214424,04/08/2015 03:48:00 AM,013XX N CAMPBELL AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,APARTMENT,false,false,1423,014,26,24,11,1159529,1909108,2015,04/15/2015 12:59:16 PM,41.906312418,-87.689426439,"(41.906312418, -87.689426439)" -10023943,HY213442,04/07/2015 12:49:00 PM,015XX S KEELER AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,true,false,1012,010,24,29,04B,1148671,1892315,2015,04/14/2015 12:54:50 PM,41.860447286,-87.729746171,"(41.860447286, -87.729746171)" -10023029,HY212757,04/06/2015 06:50:00 PM,063XX S STEWART AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,OTHER,true,false,0722,007,20,68,18,1174672,1862929,2015,04/13/2015 12:58:14 PM,41.779268187,-87.635179701,"(41.779268187, -87.635179701)" -10023241,HY213007,04/06/2015 04:00:00 PM,036XX W LE MOYNE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2535,025,26,23,14,1151652,1909686,2015,04/13/2015 12:58:14 PM,41.908057114,-87.718346605,"(41.908057114, -87.718346605)" -10022408,HY212071,04/05/2015 09:00:00 PM,037XX W WRIGHTWOOD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2524,025,35,22,06,1151111,1916988,2015,04/12/2015 12:45:09 PM,41.928105088,-87.72014218,"(41.928105088, -87.72014218)" -10021678,HY211343,04/05/2015 12:00:00 AM,049XX N AVERS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1712,017,39,14,14,1149775,1932807,2015,04/12/2015 12:45:09 PM,41.97153976,-87.724638691,"(41.97153976, -87.724638691)" -10019065,HY208218,04/02/2015 07:45:00 PM,025XX E 95TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,0431,004,7,51,14,1194456,1842139,2015,04/09/2015 12:47:19 PM,41.721755113,-87.563332757,"(41.721755113, -87.563332757)" -10015678,HY204987,03/31/2015 01:17:00 PM,046XX N BROADWAY,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,SIDEWALK,true,false,1914,019,46,3,18,1167959,1931001,2015,04/07/2015 12:49:51 PM,41.966210041,-87.657826246,"(41.966210041, -87.657826246)" -10015737,HY205013,03/31/2015 09:00:00 AM,027XX E 89TH ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0423,004,7,46,08A,1195945,1846528,2015,04/12/2015 12:43:21 PM,41.733762235,-87.557734065,"(41.733762235, -87.557734065)" -10014530,HY204114,03/30/2015 05:35:00 PM,013XX N HUDSON AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,1821,018,27,8,04B,1173106,1909574,2015,04/06/2015 12:56:12 PM,41.907300651,-87.639539378,"(41.907300651, -87.639539378)" -10012385,HY202038,03/28/2015 06:50:00 PM,036XX W GRAND AVE,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,false,false,1112,011,27,23,08B,1152105,1907552,2015,04/04/2015 12:43:24 PM,41.902192292,-87.716738854,"(41.902192292, -87.716738854)" -10020751,HY210143,03/27/2015 05:00:00 PM,105XX S SAWYER AVE,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,false,false,2211,022,19,74,11,1156598,1834160,2015,04/05/2015 12:44:22 PM,41.700704845,-87.702214708,"(41.700704845, -87.702214708)" -10011486,HY200686,03/27/2015 04:30:00 AM,078XX S COLES AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0421,004,7,43,05,1197539,1853730,2015,04/03/2015 12:48:39 PM,41.753485501,-87.551654884,"(41.753485501, -87.551654884)" -10008464,HY197715,03/25/2015 10:30:00 AM,049XX W CONCORD PL,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,false,2533,025,37,25,04A,1142971,1910472,2015,04/01/2015 12:59:33 PM,41.910380348,-87.750216831,"(41.910380348, -87.750216831)" -10007608,HY197439,03/25/2015 02:02:00 AM,006XX S CICERO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1533,015,24,25,18,1144445,1896879,2015,04/01/2015 12:59:33 PM,41.873051963,-87.745144168,"(41.873051963, -87.745144168)" -10005857,HY195687,03/23/2015 02:45:00 PM,127XX S PEORIA ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0523,005,34,53,26,1172691,1820353,2015,03/30/2015 12:50:30 PM,41.662477478,-87.643692601,"(41.662477478, -87.643692601)" -10005950,HY196073,03/23/2015 12:25:00 PM,016XX W NELSON ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,1931,019,32,6,06,1164709,1920349,2015,03/30/2015 12:50:30 PM,41.93705014,-87.670078974,"(41.93705014, -87.670078974)" -10004311,HY194163,03/22/2015 12:05:00 PM,104XX S HOXIE AVE,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,false,false,0434,004,10,51,26,1195232,1835974,2015,03/29/2015 12:46:38 PM,41.704818682,-87.56069309,"(41.704818682, -87.56069309)" -10010662,HY194007,03/22/2015 09:10:00 AM,0000X W TERMINAL ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,AIRPORT TERMINAL LOWER LEVEL - NON-SECURE AREA,true,false,1651,016,41,76,26,1100317,1935189,2015,03/29/2015 12:46:38 PM,41.978896531,-87.906463888,"(41.978896531, -87.906463888)" -10003161,HY192560,03/20/2015 11:00:00 PM,003XX W 60TH PL,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,RESIDENCE,true,true,0711,007,20,68,04B,1174990,1864872,2015,03/27/2015 12:43:43 PM,41.784592899,-87.633955949,"(41.784592899, -87.633955949)" -10001206,HY190733,03/19/2015 03:15:00 PM,076XX S PERRY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0623,006,6,69,14,1176677,1854255,2015,03/26/2015 12:42:14 PM,41.75542086,-87.628089942,"(41.75542086, -87.628089942)" -9998224,HY188343,03/17/2015 04:28:00 PM,048XX W ROOSEVELT RD,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,CTA BUS,false,false,1533,015,24,25,08B,1144517,1894311,2015,03/24/2015 12:41:57 PM,41.866003693,-87.744944445,"(41.866003693, -87.744944445)" -9995182,HY185943,03/15/2015 08:00:00 PM,040XX S INDIANA AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0213,002,3,38,08A,1178229,1878171,2015,03/22/2015 12:40:27 PM,41.821013654,-87.621676823,"(41.821013654, -87.621676823)" -9994150,HY184507,03/14/2015 01:00:00 PM,040XX W GEORGE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2523,025,31,21,06,1148712,1919018,2015,03/21/2015 12:41:38 PM,41.933722327,-87.728905109,"(41.933722327, -87.728905109)" -9993498,HY183509,03/13/2015 10:30:00 PM,009XX E 80TH ST,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0624,006,8,44,07,1184065,1852200,2015,03/20/2015 12:42:30 PM,41.749612347,-87.60107917,"(41.749612347, -87.60107917)" -9993401,HY183397,03/13/2015 05:45:00 PM,0000X N STATE ST,0460,BATTERY,SIMPLE,STREET,false,false,0112,001,42,32,08B,1176403,1900554,2015,03/20/2015 12:42:30 PM,41.882475504,-87.627700686,"(41.882475504, -87.627700686)" -9994352,HY184735,03/12/2015 06:30:00 PM,0000X E OHIO ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1834,018,42,8,06,1176451,1904161,2015,03/19/2015 12:40:58 PM,41.892372222,-87.627415473,"(41.892372222, -87.627415473)" -9991562,HY181458,03/12/2015 12:20:00 PM,029XX W ADDISON ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,1733,017,33,21,06,1155968,1923741,2015,03/19/2015 12:40:58 PM,41.946539101,-87.702111692,"(41.946539101, -87.702111692)" -10004818,HY179615,03/10/2015 11:21:00 PM,079XX S COTTAGE GROVE AVE,0291,CRIM SEXUAL ASSAULT,ATTEMPT NON-AGGRAVATED,STREET,false,false,0624,,8,44,02,,,2015,03/23/2015 12:42:19 PM,,, -9989176,HY179410,03/10/2015 07:24:00 PM,064XX W HIGGINS AVE,2890,PUBLIC PEACE VIOLATION,OTHER VIOLATION,STREET,false,false,1613,016,41,10,26,1132462,1934423,2015,03/17/2015 12:53:42 PM,41.976294114,-87.788264031,"(41.976294114, -87.788264031)" -9985998,HY175947,03/08/2015 12:38:00 AM,036XX S MICHIGAN AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,APARTMENT,false,false,0212,002,3,35,04A,1177827,1881117,2015,03/15/2015 12:40:37 PM,41.829106844,-87.623062197,"(41.829106844, -87.623062197)" -9985765,HY175547,03/07/2015 06:00:00 PM,016XX W SHERWIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2423,024,49,1,08B,1164303,1948764,2015,03/14/2015 12:40:59 PM,42.015030538,-87.670763363,"(42.015030538, -87.670763363)" -9991010,HY173529,03/06/2015 07:15:00 AM,0000X W CHECKPOINT 7 ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT TERMINAL UPPER LEVEL - SECURE AREA,false,false,1653,016,41,76,26,1101708,1934266,2015,03/13/2015 03:58:05 PM,41.976344553,-87.901365347,"(41.976344553, -87.901365347)" -9984641,HY173965,03/06/2015 12:15:00 AM,050XX N SHERIDAN RD,0810,THEFT,OVER $500,SIDEWALK,false,false,2024,020,46,3,06,1168685,1933669,2015,03/13/2015 03:58:05 PM,41.973515376,-87.655079227,"(41.973515376, -87.655079227)" -9982348,HY172088,03/04/2015 08:00:00 PM,016XX W 47TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0931,009,20,61,08B,1166097,1873507,2015,03/11/2015 12:43:59 PM,41.80848224,-87.666315654,"(41.80848224, -87.666315654)" -9980903,HY170838,03/03/2015 06:46:00 PM,035XX W CHICAGO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1121,011,27,23,18,1152272,1905061,2015,03/10/2015 12:50:41 PM,41.89535345,-87.716191254,"(41.89535345, -87.716191254)" -9980703,HY170468,03/03/2015 01:30:00 PM,010XX N LAWNDALE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),RESIDENCE PORCH/HALLWAY,true,false,1112,011,27,23,18,1151566,1906611,2015,03/10/2015 12:50:41 PM,41.89962071,-87.718743456,"(41.89962071, -87.718743456)" -9975095,HY164313,02/25/2015 06:00:00 PM,035XX W PALMER ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1413,014,26,22,05,1152200,1914429,2015,03/04/2015 12:46:43 PM,41.921061534,-87.716208154,"(41.921061534, -87.716208154)" -9972872,HY162326,02/24/2015 01:30:00 PM,022XX W 19TH ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,SIDEWALK,false,true,1234,012,25,31,26,1161755,1890664,2015,03/03/2015 12:38:55 PM,41.855654326,-87.681763869,"(41.855654326, -87.681763869)" -9970647,HY160602,02/22/2015 11:40:00 PM,0000X E GRAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,HOTEL/MOTEL,false,true,1834,018,42,8,08B,1176699,1903953,2015,03/01/2015 12:38:30 PM,41.891795857,-87.626510975,"(41.891795857, -87.626510975)" -9979724,HY157398,02/20/2015 08:10:00 AM,072XX S RACINE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0734,,17,67,08B,,,2015,03/03/2015 12:38:55 PM,,, -9968252,HY157292,02/19/2015 11:40:00 PM,052XX S CALIFORNIA AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0923,009,14,63,03,1158550,1869986,2015,02/26/2015 12:47:04 PM,41.798977552,-87.694092519,"(41.798977552, -87.694092519)" -9966895,HY156125,02/18/2015 04:30:00 PM,0000X W 95TH ST,0560,ASSAULT,SIMPLE,CTA BUS STOP,false,false,0634,006,21,49,08A,1177744,1841988,2015,02/25/2015 12:47:36 PM,41.721734632,-87.624549931,"(41.721734632, -87.624549931)" -9965540,HY155265,02/17/2015 11:45:00 PM,001XX N CENTRAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1523,015,29,25,08B,1139065,1900502,2015,02/24/2015 12:49:00 PM,41.883093419,-87.764808886,"(41.883093419, -87.764808886)" -9963921,HY153624,02/15/2015 09:12:00 PM,019XX W 103RD ST,0620,BURGLARY,UNLAWFUL ENTRY,RESTAURANT,false,false,2212,022,19,72,05,1165579,1836330,2015,02/22/2015 12:52:34 PM,41.706474378,-87.66926812,"(41.706474378, -87.66926812)" -9962798,HY151920,02/14/2015 07:50:00 AM,059XX S CARPENTER ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE,true,false,0712,007,16,68,18,1170291,1865347,2015,02/21/2015 12:48:00 PM,41.785999946,-87.651170542,"(41.785999946, -87.651170542)" -9969490,HY159017,02/14/2015 12:00:00 AM,070XX S MERRILL AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,APARTMENT,false,false,0331,003,5,43,20,1191721,1858717,2015,02/23/2015 12:43:57 PM,41.767313308,-87.572813747,"(41.767313308, -87.572813747)" -9961582,HY150020,02/13/2015 10:22:00 AM,050XX W ADAMS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1533,015,28,25,08B,1142531,1898814,2015,02/20/2015 12:46:33 PM,41.878397624,-87.752123357,"(41.878397624, -87.752123357)" -9960121,HY148185,02/11/2015 03:45:00 PM,013XX S ASHLAND AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,1233,012,2,28,08B,1165893,1893995,2015,02/18/2015 01:01:53 PM,41.864707716,-87.666480488,"(41.864707716, -87.666480488)" -9959747,HY147844,02/11/2015 11:00:00 AM,080XX S HALSTED ST,0334,ROBBERY,ATTEMPT: ARMED-KNIFE/CUT INSTR,SIDEWALK,false,false,0621,006,21,71,03,1172334,1851289,2015,02/18/2015 01:01:53 PM,41.747378368,-87.644092954,"(41.747378368, -87.644092954)" -9960689,HY149104,02/11/2015 09:00:00 AM,044XX W CONGRESS PKWY,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1131,011,24,26,05,1146683,1897357,2015,02/18/2015 01:01:53 PM,41.874321274,-87.736915119,"(41.874321274, -87.736915119)" -9957195,HY146047,02/09/2015 08:15:00 PM,038XX W MONROE ST,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,ALLEY,true,false,1122,011,28,26,18,1150474,1899339,2015,02/16/2015 12:49:01 PM,41.879686974,-87.722944403,"(41.879686974, -87.722944403)" -9957141,HY145623,02/09/2015 06:30:00 AM,073XX S BLACKSTONE AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0324,003,5,43,05,1187445,1856254,2015,02/16/2015 12:49:01 PM,41.760657299,-87.588565015,"(41.760657299, -87.588565015)" -9955125,HY143913,02/08/2015 03:15:00 AM,001XX S KENTON AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,25,16,1145635,1899142,2015,02/15/2015 12:43:39 PM,41.879239448,-87.740717694,"(41.879239448, -87.740717694)" -9954997,HY143724,02/07/2015 10:30:00 PM,045XX W MONROE ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,26,16,1145901,1899233,2015,02/14/2015 12:46:15 PM,41.879484118,-87.739738665,"(41.879484118, -87.739738665)" -9955338,HY144033,02/07/2015 07:30:00 PM,046XX N BROADWAY,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,false,false,1914,019,46,3,05,1167897,1931128,2015,02/14/2015 12:46:15 PM,41.966559874,-87.658050527,"(41.966559874, -87.658050527)" -9954491,HY142587,02/06/2015 11:20:00 PM,092XX S JUSTINE ST,0460,BATTERY,SIMPLE,APARTMENT,false,false,2221,022,21,73,08B,1167666,1843431,2015,02/13/2015 12:43:08 PM,41.725916207,-87.661422654,"(41.725916207, -87.661422654)" -9953753,HY141810,02/06/2015 01:15:00 PM,046XX W 59TH ST,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,CTA STATION,false,false,0813,008,23,62,14,1146459,1865053,2015,02/13/2015 12:43:08 PM,41.785678796,-87.738558722,"(41.785678796, -87.738558722)" -9953242,HY141398,02/06/2015 07:10:00 AM,025XX N PARKSIDE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2515,025,30,19,14,1138314,1916618,2015,02/13/2015 12:43:08 PM,41.92733127,-87.767176057,"(41.92733127, -87.767176057)" -9952676,HY140948,02/05/2015 05:02:00 PM,052XX N SHERIDAN RD,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2023,020,48,77,06,1168740,1934786,2015,02/12/2015 12:43:51 PM,41.976579259,-87.654844448,"(41.976579259, -87.654844448)" -9952089,HY140529,02/04/2015 03:15:00 PM,030XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0133,001,2,35,08B,1179263,1885133,2015,02/11/2015 12:40:51 PM,41.840094342,-87.617670874,"(41.840094342, -87.617670874)" -9951209,HY139612,02/03/2015 05:00:00 PM,046XX S SACRAMENTO AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0922,009,14,58,07,1157194,1873605,2015,02/10/2015 12:37:41 PM,41.808936137,-87.698967366,"(41.808936137, -87.698967366)" -9960871,HY149190,02/02/2015 09:03:00 AM,035XX N LONG AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1634,016,38,15,26,1139776,1922962,2015,02/13/2015 12:43:08 PM,41.944713239,-87.761648277,"(41.944713239, -87.761648277)" -9950021,HY138936,02/01/2015 03:00:00 PM,006XX E 84TH ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0632,006,6,44,08A,1182016,1849383,2015,02/08/2015 12:39:37 PM,41.741929795,-87.60867441,"(41.741929795, -87.60867441)" -9947532,HY136043,02/01/2015 03:30:00 AM,013XX N RITCHIE CT,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1824,018,43,8,06,1176592,1909199,2015,02/08/2015 12:39:37 PM,41.906193549,-87.626745256,"(41.906193549, -87.626745256)" -9949528,HY136813,01/31/2015 01:02:00 PM,068XX S CRANDON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0331,003,5,43,26,1192551,1859796,2015,02/07/2015 12:41:58 PM,41.770253986,-87.569736391,"(41.770253986, -87.569736391)" -9946865,HY135120,01/31/2015 12:00:00 AM,055XX S LA SALLE ST,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0225,002,3,68,06,1176193,1868334,2015,02/07/2015 12:41:58 PM,41.794066043,-87.629441364,"(41.794066043, -87.629441364)" -9945866,HY133776,01/30/2015 09:23:00 AM,076XX S COTTAGE GROVE AVE,4651,OTHER OFFENSE,SEX OFFENDER: FAIL REG NEW ADD,APARTMENT,true,false,0624,006,6,69,26,1182926,1854545,2015,04/22/2015 12:45:18 PM,41.756073797,-87.605180167,"(41.756073797, -87.605180167)" -9945059,HY133480,01/29/2015 09:00:00 PM,049XX W NEWPORT AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,1634,016,38,15,26,1142659,1922440,2015,02/05/2015 12:49:48 PM,41.943227569,-87.751064454,"(41.943227569, -87.751064454)" -9944712,HY132979,01/29/2015 02:30:00 PM,030XX W 26TH ST,0330,ROBBERY,AGGRAVATED,ALLEY,false,false,1033,010,12,30,03,1156719,1886639,2015,02/05/2015 12:49:48 PM,41.844712652,-87.700357361,"(41.844712652, -87.700357361)" -9943063,HY131303,01/27/2015 11:00:00 PM,063XX N CALIFORNIA AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2413,024,50,2,06,1156547,1942203,2015,02/03/2015 12:50:43 PM,41.9971881,-87.699481376,"(41.9971881, -87.699481376)" -9940929,HY129670,01/26/2015 05:27:00 PM,008XX E 40TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0214,002,4,36,08B,1182966,1878533,2015,02/02/2015 12:52:04 PM,41.82189803,-87.604288123,"(41.82189803, -87.604288123)" -9939680,HY128781,01/25/2015 11:20:00 PM,023XX S BLUE ISLAND AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1034,010,25,31,04B,1164548,1888723,2015,02/01/2015 12:44:26 PM,41.85026942,-87.671567136,"(41.85026942, -87.671567136)" -9938486,HY127235,01/24/2015 01:00:00 PM,0000X E LAKE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0111,001,42,32,06,1176901,1901784,2015,01/31/2015 12:47:54 PM,41.88583944,-87.625834807,"(41.88583944, -87.625834807)" -9936457,HY125274,01/22/2015 11:00:00 PM,014XX W 115TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0524,005,34,53,08B,1168509,1828436,2015,01/29/2015 12:53:50 PM,41.684749447,-87.658764946,"(41.684749447, -87.658764946)" -9927294,HY115893,01/15/2015 12:05:00 PM,0000X N KILBOURN AVE,4625,OTHER OFFENSE,PAROLE VIOLATION,STREET,true,false,1113,011,28,26,26,1146342,1899948,2015,01/22/2015 12:50:54 PM,41.881437781,-87.738101155,"(41.881437781, -87.738101155)" -9923758,HY113006,01/13/2015 03:00:00 AM,077XX S EXCHANGE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0421,004,7,43,04B,1196415,1854165,2015,01/20/2015 12:47:56 PM,41.754707122,-87.555759435,"(41.754707122, -87.555759435)" -9922352,HY111851,01/11/2015 06:00:00 PM,039XX N WAYNE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1923,019,47,6,06,1166483,1926426,2015,01/18/2015 12:44:12 PM,41.953687864,-87.663384725,"(41.953687864, -87.663384725)" -9921456,HY110645,01/10/2015 09:19:00 PM,035XX W 26TH ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1032,010,22,30,06,1152863,1886453,2015,01/17/2015 12:47:56 PM,41.844279361,-87.714513323,"(41.844279361, -87.714513323)" -9921209,HY110227,01/10/2015 02:33:00 PM,066XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0322,003,20,69,08B,1178131,1860693,2015,01/17/2015 12:47:56 PM,41.773054608,-87.622566481,"(41.773054608, -87.622566481)" -9920010,HY108705,01/09/2015 09:00:00 AM,054XX S ELLIS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,0233,002,5,41,08B,1183904,1869756,2015,01/16/2015 12:48:48 PM,41.797791393,-87.60112141,"(41.797791393, -87.60112141)" -9919121,HY107948,01/08/2015 01:49:00 PM,018XX W 21ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,1234,012,25,31,18,1164368,1890143,2015,01/15/2015 12:46:55 PM,41.854169841,-87.672187639,"(41.854169841, -87.672187639)" -9917982,HY107286,01/07/2015 06:24:00 PM,045XX S ASHLAND AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0924,009,3,61,06,1166395,1874589,2015,01/14/2015 12:49:41 PM,41.811445018,-87.665191803,"(41.811445018, -87.665191803)" -9917893,HY107151,01/06/2015 08:20:00 PM,072XX S COLES AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0334,003,7,43,03,1194421,1857630,2015,01/13/2015 12:50:18 PM,41.764264564,-87.562952988,"(41.764264564, -87.562952988)" -9913396,HY102423,01/03/2015 05:05:00 AM,059XX S MORGAN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0712,007,16,68,08B,1170624,1865338,2015,01/10/2015 12:39:37 PM,41.785967993,-87.649949865,"(41.785967993, -87.649949865)" -9926946,HY102381,01/03/2015 12:15:00 AM,0000X W TERMINAL ST,0820,THEFT,$500 AND UNDER,AIRPORT TERMINAL LOWER LEVEL - NON-SECURE AREA,false,false,1653,016,41,76,06,1101811,1934379,2015,01/17/2015 12:47:56 PM,41.976653215,-87.900984463,"(41.976653215, -87.900984463)" -9915311,HY105038,01/02/2015 05:00:00 PM,095XX S YALE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,false,true,0511,005,21,49,26,1176335,1841584,2015,01/09/2015 12:40:58 PM,41.72065772,-87.629722924,"(41.72065772, -87.629722924)" -9910855,HX560918,12/31/2014 03:30:00 PM,016XX S CLARK ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0131,001,3,33,06,1175811,1892220,2014,01/07/2015 12:42:19 PM,41.859619819,-87.630125199,"(41.859619819, -87.630125199)" -9911568,HY100634,12/31/2014 09:00:00 AM,019XX E 79TH ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,0414,004,8,46,06,1190480,1852935,2014,01/07/2015 12:42:19 PM,41.751477033,-87.577548654,"(41.751477033, -87.577548654)" -9905525,HX556019,12/26/2014 11:05:00 PM,033XX W 19TH ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,true,false,1024,010,24,29,18,1154543,1890475,2014,01/02/2015 12:40:27 PM,41.855282815,-87.708240531,"(41.855282815, -87.708240531)" -9900039,HX550748,12/21/2014 07:00:00 PM,048XX N HARDING AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1712,017,39,14,14,1149138,1932092,2014,12/28/2014 12:47:37 PM,41.969590146,-87.726999648,"(41.969590146, -87.726999648)" -9898956,HX549362,12/20/2014 01:20:00 PM,023XX W JACKSON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,1225,012,2,28,08B,1160776,1898600,2014,12/27/2014 12:41:59 PM,41.877451805,-87.685137328,"(41.877451805, -87.685137328)" -9898429,HX548657,12/19/2014 08:27:00 PM,014XX W MADISON ST,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,false,1224,012,2,28,26,1166919,1900092,2014,12/26/2014 12:47:30 PM,41.881416445,-87.662539142,"(41.881416445, -87.662539142)" -9897672,HX547786,12/19/2014 07:30:00 AM,080XX S BURNHAM AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0422,004,7,46,08B,1196277,1852033,2014,12/26/2014 12:47:30 PM,41.748860177,-87.556335712,"(41.748860177, -87.556335712)" -9898261,HX548370,12/19/2014 07:15:00 AM,013XX W ROSEDALE AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,2013,020,48,77,05,1166367,1939263,2014,12/26/2014 12:47:30 PM,41.988915519,-87.663442157,"(41.988915519, -87.663442157)" -9896028,HX546312,12/17/2014 02:13:00 PM,008XX N WOLCOTT AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,1212,012,1,24,06,1163616,1905871,2014,12/24/2014 12:48:14 PM,41.897344685,-87.674504657,"(41.897344685, -87.674504657)" -9894751,HX544921,12/16/2014 07:40:00 PM,002XX W 63RD ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,0711,007,20,68,11,1175833,1863236,2014,12/23/2014 12:50:08 PM,41.780084684,-87.630914183,"(41.780084684, -87.630914183)" -9891938,HX542544,12/14/2014 10:05:00 PM,069XX S MARSHFIELD AVE,031A,ROBBERY,ARMED: HANDGUN,ALLEY,false,false,0735,007,17,67,03,1166589,1858376,2014,12/21/2014 12:44:13 PM,41.766950424,-87.664942543,"(41.766950424, -87.664942543)" -9894321,HX544462,12/14/2014 08:00:00 PM,048XX S DORCHESTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0222,002,4,39,07,1186425,1872929,2014,12/21/2014 12:44:13 PM,41.806439038,-87.591776239,"(41.806439038, -87.591776239)" -9892945,HX543306,12/13/2014 12:01:00 AM,008XX N KEDVALE AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,VACANT LOT/LAND,false,false,1111,011,37,23,14,1148602,1905391,2014,12/20/2014 12:40:24 PM,41.896330653,-87.729661846,"(41.896330653, -87.729661846)" -9886850,HX537621,12/10/2014 05:22:00 PM,003XX N MICHIGAN AVE,3300,PUBLIC PEACE VIOLATION,PUBLIC DEMONSTRATION,STREET,true,false,0114,001,42,32,26,1177284,1902460,2014,12/17/2014 12:53:10 PM,41.887685745,-87.624407859,"(41.887685745, -87.624407859)" -9886725,HX537414,12/10/2014 05:00:00 PM,106XX S MICHIGAN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0512,005,9,49,26,1178778,1834510,2014,12/17/2014 12:53:10 PM,41.701190574,-87.62098919,"(41.701190574, -87.62098919)" -9892333,HX542910,12/08/2014 01:00:00 PM,021XX E 87TH ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0412,004,8,45,08A,1191717,1847744,2014,12/16/2014 12:50:48 PM,41.737202561,-87.573183761,"(41.737202561, -87.573183761)" -9898752,HX549109,12/08/2014 08:00:00 AM,029XX S ARCH ST,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,false,false,0913,009,11,60,11,1168235,1884726,2014,12/21/2014 12:42:21 PM,41.839222519,-87.658150589,"(41.839222519, -87.658150589)" -9880507,HX531080,12/05/2014 11:00:00 AM,033XX N WESTERN AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,1921,019,47,5,06,1159720,1922380,2014,12/12/2014 12:38:27 PM,41.942727784,-87.688358118,"(41.942727784, -87.688358118)" -9880169,HX530851,12/05/2014 09:15:00 AM,045XX W GEORGE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2521,025,31,20,08B,1145651,1918935,2014,12/12/2014 12:38:27 PM,41.933553234,-87.740156372,"(41.933553234, -87.740156372)" -9880034,HX530796,12/05/2014 07:50:00 AM,053XX S SPAULDING AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0822,008,14,63,07,1155333,1868802,2014,12/17/2014 12:51:14 PM,41.795793533,-87.705921787,"(41.795793533, -87.705921787)" -9881039,HX530696,12/05/2014 04:00:00 AM,123XX S WALLACE ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,true,0523,005,34,53,04A,1174584,1823040,2014,12/12/2014 12:38:27 PM,41.669809275,-87.636685763,"(41.669809275, -87.636685763)" -9876435,HX527370,12/01/2014 05:30:00 PM,024XX W ALTGELD ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1431,014,35,22,06,1159423,1916577,2014,12/08/2014 12:48:35 PM,41.926810096,-87.689609883,"(41.926810096, -87.689609883)" -9875501,HX526486,12/01/2014 02:30:00 PM,034XX W FLOURNOY ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,1133,011,24,27,18,1153382,1896775,2014,12/08/2014 12:48:35 PM,41.872593836,-87.712334692,"(41.872593836, -87.712334692)" -9875481,HX526344,12/01/2014 12:30:00 PM,089XX S BUFFALO AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0424,004,10,46,08B,1199555,1846379,2014,12/08/2014 12:48:35 PM,41.733263337,-87.544514098,"(41.733263337, -87.544514098)" -9873984,HX524656,11/30/2014 12:10:00 AM,018XX W AUGUSTA BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1212,012,32,24,08B,1163731,1906655,2014,12/07/2014 12:49:14 PM,41.899493615,-87.67406015,"(41.899493615, -87.67406015)" -9872781,HX523051,11/28/2014 02:39:00 PM,043XX W 26TH ST,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,1013,010,22,30,26,1147940,1886407,2014,12/05/2014 12:46:44 PM,41.844249049,-87.732581242,"(41.844249049, -87.732581242)" -9871926,HX522328,11/27/2014 03:30:00 PM,078XX S BURNHAM AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0421,004,7,43,14,1196037,1853716,2014,12/04/2014 12:50:41 PM,41.7534844,-87.557159507,"(41.7534844, -87.557159507)" -9871360,HX521607,11/26/2014 04:45:00 PM,004XX N WABASH AVE,0820,THEFT,$500 AND UNDER,MEDICAL/DENTAL OFFICE,false,false,1834,018,42,8,06,1176706,1903104,2014,12/03/2014 12:41:59 PM,41.889465999,-87.626510952,"(41.889465999, -87.626510952)" -9869821,HX520159,11/25/2014 08:00:00 AM,068XX S KILBOURN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,true,0833,008,13,65,26,1147595,1858910,2014,12/02/2014 12:51:55 PM,41.768799751,-87.734550378,"(41.768799751, -87.734550378)" -9867852,HX518460,11/23/2014 09:00:00 AM,049XX S ST LAWRENCE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENTIAL YARD (FRONT/BACK),false,false,0223,002,4,38,14,1181132,1872374,2014,11/30/2014 12:40:35 PM,41.805039751,-87.611206014,"(41.805039751, -87.611206014)" -9866997,HX517284,11/22/2014 09:45:00 PM,047XX S LAKE PARK AVE,0810,THEFT,OVER $500,STREET,false,false,0222,002,4,39,06,1186257,1874027,2014,11/29/2014 12:42:24 PM,41.809456003,-87.592357676,"(41.809456003, -87.592357676)" -9871091,HX521295,11/22/2014 05:18:00 PM,027XX W 71ST ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,ATM (AUTOMATIC TELLER MACHINE),false,false,0831,008,18,66,11,1158968,1857400,2014,11/29/2014 12:42:24 PM,41.764431252,-87.692903372,"(41.764431252, -87.692903372)" -9861563,HX511192,11/17/2014 08:44:00 PM,035XX W MONTROSE AVE,1582,OFFENSE INVOLVING CHILDREN,CHILD PORNOGRAPHY,RESIDENCE,false,false,1723,017,33,14,17,1152230,1929059,2014,11/24/2014 12:37:49 PM,41.961206786,-87.715710628,"(41.961206786, -87.715710628)" -9860968,HX510651,11/17/2014 06:20:00 PM,092XX S MAY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2222,022,21,73,08B,1170245,1843258,2014,11/24/2014 12:37:49 PM,41.725385841,-87.651980618,"(41.725385841, -87.651980618)" -9858939,HX508481,11/15/2014 08:57:00 PM,048XX N WINTHROP AVE,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,true,false,2033,020,46,3,26,1167964,1932162,2014,11/22/2014 12:39:04 PM,41.969395755,-87.657774202,"(41.969395755, -87.657774202)" -9899074,HX549382,11/12/2014 07:00:00 PM,034XX W BELMONT AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1412,014,35,21,03,1153132,1921033,2014,12/21/2014 12:44:13 PM,41.939164986,-87.712608085,"(41.939164986, -87.712608085)" -9855970,HX504637,11/12/2014 03:48:00 PM,085XX S COLFAX AVE,3710,INTERFERENCE WITH PUBLIC OFFICER,RESIST/OBSTRUCT/DISARM OFFICER,SIDEWALK,true,false,0423,004,7,46,24,1194946,1848557,2014,11/19/2014 12:39:51 PM,41.739354629,-87.561327161,"(41.739354629, -87.561327161)" -9854870,HX503963,11/11/2014 04:30:00 PM,017XX E 74TH ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,0324,003,8,43,06,1189052,1856215,2014,11/18/2014 12:38:30 PM,41.760511949,-87.582676629,"(41.760511949, -87.582676629)" -9853749,HX502584,11/10/2014 09:00:00 PM,099XX S LA SALLE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0511,005,9,49,08B,1177069,1838933,2014,11/17/2014 12:40:31 PM,41.713366524,-87.627114115,"(41.713366524, -87.627114115)" -9851182,HX499999,11/08/2014 04:45:00 PM,008XX N STATE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA STATION,true,false,1832,018,42,8,18,1176184,1905758,2014,11/15/2014 12:38:17 PM,41.896760495,-87.62834785,"(41.896760495, -87.62834785)" -9850584,HX499243,11/08/2014 01:20:00 AM,0000X W DIVISION ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,1824,018,42,8,24,1175834,1908327,2014,11/15/2014 12:38:17 PM,41.903817841,-87.629555923,"(41.903817841, -87.629555923)" -9850838,HX499494,11/06/2014 03:00:00 PM,045XX N MALDEN ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1913,019,46,3,06,1166767,1930333,2014,11/13/2014 12:42:15 PM,41.964402729,-87.662228235,"(41.964402729, -87.662228235)" -9914350,HY103574,11/05/2014 09:00:00 AM,018XX W HURON ST,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,OTHER,false,false,1221,012,1,24,11,1163988,1904752,2014,01/06/2015 12:40:42 PM,41.894266217,-87.673169976,"(41.894266217, -87.673169976)" -9846021,HX495345,11/04/2014 10:20:00 PM,001XX E 71ST ST,0560,ASSAULT,SIMPLE,RESIDENCE,true,false,0323,003,6,69,08A,1178683,1857942,2014,11/11/2014 12:41:33 PM,41.765493035,-87.620626567,"(41.765493035, -87.620626567)" -9840961,HX490074,10/31/2014 09:00:00 PM,069XX N CAMPBELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2411,024,50,2,14,1158361,1946121,2014,11/07/2014 12:42:06 PM,42.007902189,-87.692700532,"(42.007902189, -87.692700532)" -9843414,HX492917,10/31/2014 05:30:00 PM,002XX W 63RD ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,STREET,false,false,0711,007,20,68,11,1175833,1863236,2014,11/07/2014 12:42:06 PM,41.780084684,-87.630914183,"(41.780084684, -87.630914183)" -9839306,HX488498,10/30/2014 02:30:00 PM,016XX W SHERWIN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2423,024,49,1,14,1164125,1948677,2014,11/06/2014 12:41:16 PM,42.014795587,-87.671420811,"(42.014795587, -87.671420811)" -9838081,HX487366,10/29/2014 06:00:00 PM,054XX W DAKIN ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1633,016,38,15,05,1139528,1925704,2014,11/05/2014 12:45:59 PM,41.952242087,-87.76249271,"(41.952242087, -87.76249271)" -9837898,HX486896,10/29/2014 12:30:00 AM,005XX W 87TH ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0622,006,21,71,03,1174455,1847316,2014,11/05/2014 12:45:59 PM,41.73642906,-87.636438922,"(41.73642906, -87.636438922)" -9834815,HX484914,10/27/2014 11:57:00 PM,029XX W AUGUSTA BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1211,012,26,24,18,1156839,1906479,2014,11/03/2014 12:40:32 PM,41.8991532,-87.699379232,"(41.8991532, -87.699379232)" -9832556,HX482550,10/26/2014 02:15:00 AM,057XX W MADISON ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,POLICE FACILITY/VEH PARKING LOT,true,false,1513,015,29,25,24,1138127,1899398,2014,11/02/2014 12:37:16 PM,41.880080898,-87.768280017,"(41.880080898, -87.768280017)" -9832596,HX482655,10/25/2014 10:00:00 PM,015XX N NORTH PARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,1821,018,27,8,14,1173845,1910754,2014,11/01/2014 12:39:11 PM,41.910522194,-87.636789532,"(41.910522194, -87.636789532)" -9829059,HX478613,10/22/2014 10:30:00 PM,042XX W VAN BUREN ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE PORCH/HALLWAY,false,false,1132,011,24,26,05,1148336,1897729,2014,10/29/2014 12:37:07 PM,41.875310407,-87.730836402,"(41.875310407, -87.730836402)" -9829669,HX479074,10/21/2014 04:30:00 PM,105XX S MORGAN ST,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,2232,022,34,73,08B,1171485,1834726,2014,10/28/2014 12:36:38 PM,41.701945742,-87.64768733,"(41.701945742, -87.64768733)" -9826811,HX476501,10/21/2014 03:00:00 PM,063XX S ARTESIAN AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,false,0825,008,15,66,04B,1161176,1862291,2014,10/28/2014 12:36:38 PM,41.777807452,-87.684675225,"(41.777807452, -87.684675225)" -9824950,HX474998,10/20/2014 01:14:00 PM,062XX S PARK SHORE EAST CT,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,0314,003,5,42,24,1187522,1864274,2014,10/27/2014 12:36:31 PM,41.782663033,-87.58802809,"(41.782663033, -87.58802809)" -9832261,HX482192,10/20/2014 10:00:00 AM,014XX W 47TH ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,APARTMENT,false,false,0933,009,20,61,11,1167243,1873534,2014,10/27/2014 12:36:31 PM,41.808531847,-87.662111611,"(41.808531847, -87.662111611)" -9824158,HX474355,10/19/2014 08:50:00 PM,027XX E 95TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0431,004,10,51,18,1195951,1842451,2014,10/26/2014 12:37:49 PM,41.722574445,-87.557846645,"(41.722574445, -87.557846645)" -9843649,HX493152,10/19/2014 02:56:00 PM,004XX N STATE ST,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",VEHICLE-COMMERCIAL,false,false,1834,018,42,8,11,1176341,1903042,2014,11/04/2014 12:43:25 PM,41.88930411,-87.627853241,"(41.88930411, -87.627853241)" -9817656,HX467320,10/13/2014 05:15:00 PM,010XX W VAN BUREN ST,0810,THEFT,OVER $500,STREET,false,false,1232,012,2,28,06,1169285,1898385,2014,10/20/2014 12:41:20 PM,41.876681237,-87.653900961,"(41.876681237, -87.653900961)" -9816325,HX466018,10/13/2014 01:55:00 PM,041XX S SACRAMENTO AVE,3100,PUBLIC PEACE VIOLATION,MOB ACTION,STREET,true,false,0921,009,14,58,24,1157079,1877024,2014,10/20/2014 12:41:20 PM,41.818320643,-87.699296642,"(41.818320643, -87.699296642)" -9815967,HX465548,10/13/2014 06:25:00 AM,110XX S SANGAMON ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,2234,022,34,75,06,1172033,1831656,2014,10/20/2014 12:41:20 PM,41.693509196,-87.645770458,"(41.693509196, -87.645770458)" -9815913,HX465489,10/13/2014 04:35:00 AM,049XX W SUPERIOR ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,1531,015,37,25,08A,1142973,1904469,2014,10/20/2014 12:41:20 PM,41.893907401,-87.750359347,"(41.893907401, -87.750359347)" -9814725,HX464040,10/11/2014 02:00:00 PM,047XX S VINCENNES AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,true,true,0223,002,3,38,26,1180441,1873370,2014,11/10/2014 12:41:06 PM,41.807788763,-87.613709697,"(41.807788763, -87.613709697)" -9814775,HX464088,10/11/2014 02:00:00 AM,014XX W WEBSTER AVE,0810,THEFT,OVER $500,STREET,false,false,1811,018,32,7,06,1165880,1914689,2014,10/18/2014 12:37:02 PM,41.921493844,-87.665937306,"(41.921493844, -87.665937306)" -9814093,HX463139,10/11/2014 12:45:00 AM,031XX N WESTERN AVE,0337,ROBBERY,ATTEMPT: ARMED-OTHER DANG WEAP,GAS STATION,true,false,1931,019,1,5,03,1159894,1921024,2014,10/18/2014 12:37:02 PM,41.939003242,-87.687756119,"(41.939003242, -87.687756119)" -9813903,HX462973,10/10/2014 08:40:00 PM,024XX S TRUMBULL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1024,010,22,30,18,1153788,1887773,2014,10/17/2014 12:40:52 PM,41.84788326,-87.71108361,"(41.84788326, -87.71108361)" -9813941,HX462999,10/10/2014 08:05:00 PM,043XX N CLARENDON AVE,0810,THEFT,OVER $500,APARTMENT,false,true,1915,019,46,3,06,1170166,1929352,2014,10/17/2014 12:40:52 PM,41.961637102,-87.649759923,"(41.961637102, -87.649759923)" -9813848,HX462620,10/10/2014 04:00:00 PM,076XX S PRAIRIE AVE,0810,THEFT,OVER $500,VEHICLE-COMMERCIAL,false,false,0623,006,6,69,06,1179405,1854139,2014,10/17/2014 12:40:52 PM,41.755040742,-87.618096124,"(41.755040742, -87.618096124)" -9813323,HX462198,10/10/2014 09:50:00 AM,034XX S PRAIRIE AVE,0560,ASSAULT,SIMPLE,OTHER,false,false,0211,002,2,35,08A,1178543,1881954,2014,10/17/2014 12:40:52 PM,41.831387362,-87.620409767,"(41.831387362, -87.620409767)" -9820287,HX469854,10/10/2014 12:01:00 AM,051XX S MICHIGAN AVE,1154,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT $300 AND UNDER,RESIDENCE,false,false,0225,002,3,40,11,1177999,1870570,2014,10/17/2014 12:40:52 PM,41.800161069,-87.622751126,"(41.800161069, -87.622751126)" -9812395,HX461105,10/09/2014 12:00:00 PM,002XX W 63RD ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,CTA PLATFORM,false,false,0711,007,20,68,04A,1175833,1863236,2014,10/16/2014 12:41:58 PM,41.780084684,-87.630914183,"(41.780084684, -87.630914183)" -9817458,HX467003,10/09/2014 10:00:00 AM,017XX W PRYOR AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,2212,022,19,75,08B,1166552,1831113,2014,10/16/2014 12:41:58 PM,41.69213742,-87.66585308,"(41.69213742, -87.66585308)" -9810084,HX459088,10/07/2014 06:35:00 PM,017XX S MICHIGAN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0131,001,2,33,06,1177453,1891985,2014,10/14/2014 12:38:29 PM,41.858937901,-87.624105092,"(41.858937901, -87.624105092)" -9817684,HX467316,10/06/2014 08:30:00 AM,026XX W NORTH AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,1421,014,1,24,06,1158234,1910572,2014,10/15/2014 12:40:17 PM,41.91035633,-87.694143404,"(41.91035633, -87.694143404)" -9799224,HX448227,09/29/2014 01:15:00 PM,103XX S COTTAGE GROVE AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,0512,005,9,50,04A,1182666,1836790,2014,10/06/2014 12:37:42 PM,41.707358059,-87.60668233,"(41.707358059, -87.60668233)" -9796745,HX445627,09/26/2014 07:00:00 PM,035XX N BELL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1921,019,47,5,06,1160780,1923416,2014,10/03/2014 12:39:14 PM,41.945548677,-87.684433289,"(41.945548677, -87.684433289)" -9797462,HX445594,09/26/2014 06:30:00 AM,041XX W CRYSTAL ST,0820,THEFT,$500 AND UNDER,ALLEY,false,false,2534,025,37,23,06,1148681,1907977,2014,10/03/2014 12:39:14 PM,41.903425379,-87.729304819,"(41.903425379, -87.729304819)" -9794344,HX443056,09/25/2014 04:48:00 PM,020XX S HARDING AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1014,010,24,29,18,1150421,1889624,2014,10/02/2014 12:40:26 PM,41.853028916,-87.723392466,"(41.853028916, -87.723392466)" -9793210,HX442170,09/24/2014 10:45:00 AM,040XX W CONGRESS PKWY,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1132,011,24,26,03,1149557,1897346,2014,10/01/2014 12:43:13 PM,41.874235804,-87.726363276,"(41.874235804, -87.726363276)" -9791274,HX439250,09/22/2014 09:00:00 PM,048XX W POTOMAC AVE,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,false,false,2533,025,37,25,03,1144065,1908256,2014,09/29/2014 12:37:44 PM,41.904278924,-87.746253564,"(41.904278924, -87.746253564)" -9789624,HX439217,09/22/2014 08:00:00 PM,005XX N HALSTED ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1214,012,27,24,14,1170990,1903827,2014,09/29/2014 12:37:44 PM,41.891577242,-87.647481089,"(41.891577242, -87.647481089)" -9790746,HX439202,09/22/2014 06:00:00 PM,057XX W LAWRENCE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1622,,45,15,14,,,2014,09/29/2014 12:37:44 PM,,, -9788911,HX438418,09/22/2014 09:32:00 AM,097XX S COTTAGE GROVE AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,GOVERNMENT BUILDING/PROPERTY,true,false,0511,005,8,50,04A,1183369,1840641,2014,09/29/2014 12:37:44 PM,41.71790937,-87.603988507,"(41.71790937, -87.603988507)" -9787064,HX436180,09/20/2014 02:08:00 PM,003XX E 63RD ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0311,003,20,40,06,1179603,1863354,2014,09/27/2014 12:37:59 PM,41.780323149,-87.617089297,"(41.780323149, -87.617089297)" -9786469,HX435495,09/19/2014 11:00:00 PM,023XX W FULLERTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1432,014,1,22,14,1160212,1915931,2014,09/26/2014 12:39:34 PM,41.925021137,-87.686728554,"(41.925021137, -87.686728554)" -9785189,HX434311,09/18/2014 06:00:00 PM,033XX W LE MOYNE ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,1422,014,26,23,14,1153836,1909729,2014,09/25/2014 12:42:39 PM,41.908131862,-87.710322526,"(41.908131862, -87.710322526)" -9784201,HX433214,09/18/2014 11:00:00 AM,088XX S DOBSON AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,0412,004,8,47,06,1184626,1846385,2014,09/25/2014 12:42:39 PM,41.733642248,-87.599205239,"(41.733642248, -87.599205239)" -9787167,HX436428,09/17/2014 08:45:00 PM,0000X E LOWER WACKER DR,0460,BATTERY,SIMPLE,STREET,false,false,0111,001,42,32,08B,1176702,1902144,2014,09/24/2014 12:40:15 PM,41.886831799,-87.62655468,"(41.886831799, -87.62655468)" -9781473,HX431358,09/17/2014 01:31:00 AM,029XX W WILCOX ST,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,1124,011,2,27,04A,1156810,1899174,2014,09/24/2014 12:40:15 PM,41.879108186,-87.699683883,"(41.879108186, -87.699683883)" -9779790,HX429994,09/15/2014 11:50:00 PM,017XX S STATE ST,2890,PUBLIC PEACE VIOLATION,OTHER VIOLATION,POLICE FACILITY/VEH PARKING LOT,true,false,0131,001,3,33,26,1176569,1891773,2014,09/22/2014 12:39:52 PM,41.858376151,-87.627356324,"(41.858376151, -87.627356324)" -9779735,HX429906,09/15/2014 09:27:00 PM,006XX W GARFIELD BLVD,0320,ROBBERY,STRONGARM - NO WEAPON,CTA BUS,true,false,0935,009,3,61,03,1172959,1868459,2014,09/22/2014 12:39:52 PM,41.794481108,-87.641296534,"(41.794481108, -87.641296534)" -9777994,HX428283,09/14/2014 04:30:00 PM,038XX W VAN BUREN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1133,011,24,26,08B,1150745,1897706,2014,09/21/2014 12:37:13 PM,41.875200548,-87.721992032,"(41.875200548, -87.721992032)" -9778804,HX429064,09/14/2014 11:40:00 AM,060XX N TALMAN AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,2413,024,50,2,06,1157604,1940249,2014,09/21/2014 12:37:13 PM,41.991804708,-87.695646609,"(41.991804708, -87.695646609)" -9776421,HX426318,09/12/2014 11:06:00 PM,095XX S OGLESBY AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,OTHER,true,false,0431,004,7,51,18,1193714,1842377,2014,09/19/2014 12:39:17 PM,41.722426388,-87.566042754,"(41.722426388, -87.566042754)" -9774786,HX424565,09/11/2014 04:30:00 PM,091XX S MARQUETTE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0423,004,7,48,04B,1195895,1844559,2014,09/18/2014 12:40:09 PM,41.728360367,-87.557982215,"(41.728360367, -87.557982215)" -9782076,HX422991,09/09/2014 09:00:00 PM,027XX N CAMPBELL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1411,014,1,22,26,1159181,1918143,2014,09/18/2014 12:40:09 PM,41.931112291,-87.690455982,"(41.931112291, -87.690455982)" -9771220,HX421925,09/09/2014 02:47:00 PM,035XX W FLOURNOY ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1133,011,24,27,18,1152955,1896845,2014,09/16/2014 12:44:17 PM,41.87279439,-87.713900557,"(41.87279439, -87.713900557)" -9771010,HX421841,09/09/2014 01:30:00 PM,051XX S HERMITAGE AVE,0554,ASSAULT,AGG PO HANDS NO/MIN INJURY,RESIDENCE PORCH/HALLWAY,true,false,0932,009,16,61,08A,1165508,1870630,2014,09/16/2014 12:44:17 PM,41.80059994,-87.668557591,"(41.80059994, -87.668557591)" -9768137,HX418879,09/07/2014 07:40:00 AM,068XX S MICHIGAN AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,false,true,0322,003,20,69,26,1178304,1859653,2014,09/14/2014 12:35:10 PM,41.770196812,-87.621963844,"(41.770196812, -87.621963844)" -9766561,HX416651,09/05/2014 02:00:00 PM,073XX S UNION AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,true,false,0732,007,17,68,03,1172858,1856409,2014,09/12/2014 12:40:40 PM,41.761416758,-87.642022119,"(41.761416758, -87.642022119)" -9767408,HX417854,09/05/2014 01:00:00 AM,001XX W GARFIELD BLVD,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0225,002,3,37,06,1176054,1868561,2014,09/12/2014 12:40:40 PM,41.794692076,-87.629944256,"(41.794692076, -87.629944256)" -9765269,HX415148,09/04/2014 01:00:00 AM,013XX W 118TH ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0524,005,34,53,06,1169461,1826552,2014,09/11/2014 12:39:33 PM,41.679558925,-87.655334203,"(41.679558925, -87.655334203)" -9766288,HX416321,09/03/2014 01:12:00 PM,073XX S PHILLIPS AVE,1154,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT $300 AND UNDER,OTHER,false,false,0334,003,7,43,11,1193885,1856511,2014,09/10/2014 12:38:25 PM,41.761207101,-87.564954158,"(41.761207101, -87.564954158)" -9759917,HX410132,08/31/2014 03:00:00 PM,013XX S CLINTON ST,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,DEPARTMENT STORE,false,false,0124,001,2,28,11,1172883,1894339,2014,09/07/2014 12:35:09 PM,41.865499815,-87.640810193,"(41.865499815, -87.640810193)" -9759486,HX409540,08/31/2014 06:30:00 AM,084XX S MACKINAW AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0424,004,10,46,08B,1199894,1849752,2014,09/07/2014 12:35:09 PM,41.742510561,-87.543158753,"(41.742510561, -87.543158753)" -9773776,HX409715,08/30/2014 09:00:00 AM,026XX W FRANCIS PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1431,014,1,22,14,1158394,1914043,2014,09/12/2014 12:40:40 PM,41.91987775,-87.693460491,"(41.91987775, -87.693460491)" -9756933,HX406714,08/29/2014 02:35:00 AM,011XX W GRANVILLE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,2433,024,48,77,14,1167586,1941293,2014,09/05/2014 12:35:08 PM,41.994459632,-87.658899737,"(41.994459632, -87.658899737)" -9755483,HX405270,08/27/2014 10:30:00 PM,031XX W LELAND AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1713,017,33,14,08B,1154402,1931093,2014,10/31/2014 03:20:56 PM,41.966744971,-87.70767055,"(41.966744971, -87.70767055)" -9771082,HX421772,08/27/2014 09:00:00 PM,0000X W ELM ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1824,018,42,8,03,1175926,1908130,2014,09/10/2014 12:38:25 PM,41.903275192,-87.629223928,"(41.903275192, -87.629223928)" -9751837,HX401955,08/25/2014 02:00:00 PM,055XX S CALIFORNIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0824,008,16,63,08B,1158693,1867775,2014,09/01/2014 12:37:37 PM,41.792907351,-87.69362844,"(41.792907351, -87.69362844)" -9751452,HX401715,08/24/2014 01:00:00 AM,064XX S RICHMOND ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,DRIVEWAY - RESIDENTIAL,false,false,0823,008,15,66,07,1157858,1861956,2014,08/31/2014 12:37:21 PM,41.776956199,-87.696848262,"(41.776956199, -87.696848262)" -9744280,HX394241,08/19/2014 08:30:00 AM,016XX N PULASKI RD,0334,ROBBERY,ATTEMPT: ARMED-KNIFE/CUT INSTR,CTA BUS STOP,false,false,2535,025,30,23,03,1149495,1910935,2014,08/26/2014 12:39:33 PM,41.911526656,-87.726237895,"(41.911526656, -87.726237895)" -9742984,HX393429,08/19/2014 03:48:00 AM,057XX W BERENICE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE,false,false,1633,016,38,15,14,1137601,1924979,2014,08/26/2014 12:39:33 PM,41.950287617,-87.76959404,"(41.950287617, -87.76959404)" -9758516,HX392623,08/18/2014 03:40:00 PM,0000X W TERMINAL ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT TERMINAL UPPER LEVEL - SECURE AREA,false,false,1651,016,41,76,26,1100317,1935189,2014,10/31/2014 03:20:56 PM,41.978896531,-87.906463888,"(41.978896531, -87.906463888)" -9741073,HX391490,08/17/2014 04:18:00 PM,036XX S RHODES AVE,0560,ASSAULT,SIMPLE,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,0212,002,4,35,08A,1180140,1880977,2014,08/24/2014 12:37:19 PM,41.828669884,-87.614580294,"(41.828669884, -87.614580294)" -9740756,HX390940,08/17/2014 06:00:00 AM,063XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0725,007,16,67,06,1166712,1862870,2014,08/24/2014 12:37:19 PM,41.77927992,-87.664363567,"(41.77927992, -87.664363567)" -9740047,HX390250,08/15/2014 07:00:00 PM,092XX S BLACKSTONE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0413,004,8,48,26,1187771,1843919,2014,08/22/2014 12:36:05 PM,41.726801095,-87.587761923,"(41.726801095, -87.587761923)" -9738616,HX388445,08/15/2014 10:59:00 AM,110XX S MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0513,005,9,49,06,1178749,1831610,2014,08/22/2014 12:36:05 PM,41.693233223,-87.621183177,"(41.693233223, -87.621183177)" -9736288,HX386331,08/13/2014 06:15:00 PM,102XX S MICHIGAN AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,0511,005,9,49,26,1179016,1836736,2014,08/20/2014 12:42:23 PM,41.707293618,-87.62005021,"(41.707293618, -87.62005021)" -9734857,HX384998,08/12/2014 07:15:00 PM,117XX S PEORIA ST,0820,THEFT,$500 AND UNDER,SIDEWALK,true,true,0524,005,34,53,06,1172476,1826876,2014,08/19/2014 12:37:52 PM,41.680382398,-87.644288515,"(41.680382398, -87.644288515)" -9733500,HX383572,08/11/2014 06:00:00 PM,056XX N CENTRAL AVE,0460,BATTERY,SIMPLE,ALLEY,false,false,1622,016,45,11,08B,1137828,1937425,2014,08/18/2014 12:38:20 PM,41.984436467,-87.768457961,"(41.984436467, -87.768457961)" -9732121,HX382303,08/10/2014 07:31:00 PM,100XX S WESTERN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2211,022,19,72,18,1162121,1837770,2014,08/17/2014 12:37:26 PM,41.710498462,-87.681891359,"(41.710498462, -87.681891359)" -9731541,HX381526,08/09/2014 08:45:00 PM,087XX S LAFAYETTE AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0634,006,21,44,06,1177419,1847206,2014,08/16/2014 12:37:25 PM,41.736060832,-87.625583193,"(41.736060832, -87.625583193)" -9731079,HX380994,08/09/2014 07:50:00 PM,059XX S LOOMIS BLVD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0713,007,16,67,08B,1167971,1865431,2014,08/16/2014 12:37:25 PM,41.786280647,-87.65967438,"(41.786280647, -87.65967438)" -9731005,HX380917,08/09/2014 04:00:00 PM,022XX N CICERO AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,2522,025,31,19,08A,1143994,1914282,2014,08/16/2014 12:37:25 PM,41.92081624,-87.746362884,"(41.92081624, -87.746362884)" -9732914,HX382841,08/08/2014 09:00:00 AM,104XX S SANGAMON ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,2232,022,34,73,11,1171787,1835651,2014,08/15/2014 12:34:08 PM,41.70447748,-87.646554485,"(41.70447748, -87.646554485)" -9728761,HX378475,08/07/2014 10:50:00 PM,050XX W WASHINGTON BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1533,015,28,25,18,1142638,1899990,2014,08/14/2014 12:38:24 PM,41.881622725,-87.751701207,"(41.881622725, -87.751701207)" -9726019,HX375967,08/05/2014 04:00:00 PM,030XX W 24TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1033,010,12,30,14,1156374,1887862,2014,08/12/2014 12:35:59 PM,41.848075675,-87.70159045,"(41.848075675, -87.70159045)" -9724865,HX374809,08/05/2014 12:00:00 AM,005XX S CLAREMONT AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1225,012,2,28,06,1160856,1897515,2014,08/12/2014 12:35:59 PM,41.874472807,-87.684873688,"(41.874472807, -87.684873688)" -9724920,HX374891,08/04/2014 01:30:00 PM,002XX N KEDZIE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1123,011,28,27,03,1154955,1901787,2014,08/11/2014 12:39:47 PM,41.886315899,-87.706425058,"(41.886315899, -87.706425058)" -9722510,HX372885,08/03/2014 07:30:00 PM,075XX S JEFFERY BLVD,0820,THEFT,$500 AND UNDER,PARK PROPERTY,false,false,0414,004,8,43,06,1190802,1855567,2014,08/10/2014 12:34:42 PM,41.758691699,-87.576283827,"(41.758691699, -87.576283827)" -9720689,HX370279,08/01/2014 11:53:00 PM,003XX W HILL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1823,018,27,8,08B,1174098,1907721,2014,08/08/2014 12:34:16 PM,41.90219385,-87.635950699,"(41.90219385, -87.635950699)" -9715033,HX365227,07/28/2014 05:30:00 PM,031XX N HALSTED ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1934,019,44,6,14,1170406,1921370,2014,08/04/2014 12:42:16 PM,41.939728951,-87.649111837,"(41.939728951, -87.649111837)" -9712916,HX363368,07/28/2014 02:38:00 AM,046XX S FAIRFIELD AVE,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,0922,009,12,58,18,1158781,1873576,2014,08/04/2014 12:42:16 PM,41.808824264,-87.693147323,"(41.808824264, -87.693147323)" -9712145,HX362361,07/27/2014 10:12:00 AM,002XX E 32ND ST,1025,ARSON,AGGRAVATED,CHA APARTMENT,false,false,0211,002,3,35,09,1178601,1883799,2014,08/03/2014 12:37:30 PM,41.836448859,-87.620140758,"(41.836448859, -87.620140758)" -9718124,HX360798,07/26/2014 03:00:00 AM,013XX W 79TH ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,false,true,0612,,17,71,04A,,,2014,08/02/2014 12:35:35 PM,,, -9711292,HX361045,07/25/2014 08:00:00 AM,058XX S MARYLAND AVE,1156,DECEPTIVE PRACTICE,ATTEMPT - FINANCIAL IDENTITY THEFT,OTHER,false,false,0235,002,5,41,11,1182938,1866306,2014,08/01/2014 12:38:57 PM,41.788346824,-87.604771066,"(41.788346824, -87.604771066)" -9705965,HX356119,07/22/2014 06:40:00 PM,030XX N ROCKWELL ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1411,014,1,21,14,1158472,1920082,2014,07/29/2014 12:41:54 PM,41.936447598,-87.693008205,"(41.936447598, -87.693008205)" -9705299,HX355475,07/22/2014 11:00:00 AM,047XX S LAKE PARK AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0222,002,4,39,06,1186257,1874027,2014,07/29/2014 12:41:54 PM,41.809456003,-87.592357676,"(41.809456003, -87.592357676)" -9703206,HX353776,07/21/2014 08:28:00 AM,016XX S KOMENSKY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1012,010,24,29,08B,1149694,1891491,2014,07/28/2014 12:40:00 PM,41.858166334,-87.72601235,"(41.858166334, -87.72601235)" -9702075,HX352569,07/19/2014 08:00:00 PM,004XX W 24TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0914,009,25,34,14,1173230,1888308,2014,07/26/2014 12:40:58 PM,41.848942609,-87.639715206,"(41.848942609, -87.639715206)" -9700756,HX350786,07/18/2014 09:13:00 PM,102XX S NORMAL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2232,022,9,73,18,1174737,1836882,2014,07/25/2014 12:40:34 PM,41.707790457,-87.635715544,"(41.707790457, -87.635715544)" -9700541,HX350526,07/18/2014 05:25:00 PM,044XX S LAPORTE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0814,008,23,56,18,1144029,1874968,2014,07/25/2014 12:40:34 PM,41.812932932,-87.747220515,"(41.812932932, -87.747220515)" -9700483,HX350110,07/18/2014 12:20:00 PM,070XX S OGLESBY AVE,0650,BURGLARY,HOME INVASION,APARTMENT,true,false,0331,003,5,43,05,1193021,1858906,2014,10/31/2014 03:20:56 PM,41.767800297,-87.568042624,"(41.767800297, -87.568042624)" -9700827,HX350780,07/17/2014 09:30:00 PM,0000X N WALLER AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1513,015,29,25,06,1138202,1899683,2014,07/24/2014 12:40:50 PM,41.88086162,-87.767997728,"(41.88086162, -87.767997728)" -9699350,HX349080,07/17/2014 02:11:00 AM,009XX S CENTRAL AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,true,false,1522,015,29,25,05,1139294,1895407,2014,10/31/2014 03:20:56 PM,41.8691079,-87.764092057,"(41.8691079, -87.764092057)" -9697540,HX347063,07/16/2014 12:00:00 PM,104XX S CORLISS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0512,005,9,50,08B,1183456,1836137,2014,07/23/2014 12:42:44 PM,41.705547814,-87.603809628,"(41.705547814, -87.603809628)" -9696774,HX347074,07/16/2014 09:10:00 AM,075XX N WESTERN AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,2411,024,50,2,06,1158976,1949813,2014,07/23/2014 12:42:44 PM,42.018020494,-87.690335774,"(42.018020494, -87.690335774)" -9721392,HX371097,07/16/2014 08:30:00 AM,017XX E 72ND ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,0324,003,8,43,26,1189168,1857546,2014,10/31/2014 03:20:56 PM,41.764161549,-87.582208896,"(41.764161549, -87.582208896)" -9694631,HX345022,07/14/2014 04:25:00 PM,044XX S DREXEL BLVD,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),ALLEY,true,false,0221,002,4,39,18,1182899,1875739,2014,07/21/2014 12:50:42 PM,41.814232649,-87.604620838,"(41.814232649, -87.604620838)" -9692664,HX342799,07/12/2014 10:45:00 PM,123XX S UNION AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),true,false,0523,005,34,53,26,1173849,1822967,2014,07/19/2014 12:41:41 PM,41.669625225,-87.639377922,"(41.669625225, -87.639377922)" -9691906,HX341698,07/12/2014 02:55:00 AM,054XX S ABERDEEN ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENTIAL YARD (FRONT/BACK),true,false,0934,009,16,61,15,1169943,1868877,2014,07/19/2014 12:41:41 PM,41.795694239,-87.652343958,"(41.795694239, -87.652343958)" -9690050,HX339536,07/10/2014 04:20:00 PM,004XX W WINNECONNA PKWY,0820,THEFT,$500 AND UNDER,OTHER,false,false,0621,006,17,69,06,1174482,1853160,2014,07/17/2014 12:40:06 PM,41.75246514,-87.63616654,"(41.75246514, -87.63616654)" -9689887,HX339616,07/10/2014 08:45:00 AM,002XX E RANDOLPH ST,0810,THEFT,OVER $500,SIDEWALK,false,false,0114,001,42,32,06,1177892,1901352,2014,07/17/2014 12:40:06 PM,41.884631532,-87.622208838,"(41.884631532, -87.622208838)" -9688545,HX338746,07/10/2014 12:15:00 AM,071XX S YALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0731,007,6,69,08B,1175904,1857440,2014,07/17/2014 12:40:06 PM,41.764178225,-87.630827456,"(41.764178225, -87.630827456)" -9700089,HX349974,07/08/2014 04:00:00 PM,032XX N SEMINARY AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1924,019,44,6,05,1168412,1921843,2014,07/19/2014 12:41:41 PM,41.941070323,-87.656426615,"(41.941070323, -87.656426615)" -9685806,HX336184,07/08/2014 09:30:00 AM,001XX W 79TH ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0623,006,17,69,06,1176831,1852649,2014,07/15/2014 12:40:16 PM,41.75101034,-87.627573854,"(41.75101034, -87.627573854)" -9683505,HX334152,07/06/2014 09:35:00 PM,064XX S WOLCOTT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0726,007,15,67,14,1164828,1862070,2014,07/13/2014 12:37:47 PM,41.777124626,-87.671293105,"(41.777124626, -87.671293105)" -9683433,HX334071,07/06/2014 07:20:00 PM,024XX W PERSHING RD,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,0911,009,12,58,06,1160578,1878777,2014,07/13/2014 12:37:47 PM,41.823059518,-87.686412651,"(41.823059518, -87.686412651)" -9683248,HX333952,07/06/2014 06:35:00 PM,064XX S LOOMIS BLVD,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0725,007,17,67,03,1168057,1862246,2014,07/13/2014 12:37:47 PM,41.777538767,-87.65945058,"(41.777538767, -87.65945058)" -9681413,HX331657,07/04/2014 11:00:00 PM,003XX E ERIE ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1834,018,42,8,04A,1178633,1904814,2014,07/11/2014 12:39:31 PM,41.894114543,-87.619382042,"(41.894114543, -87.619382042)" -9736098,HX386130,07/03/2014 09:44:00 PM,043XX S ARTESIAN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0922,009,12,58,26,1160704,1875820,2014,08/14/2014 12:38:24 PM,41.814942552,-87.686032127,"(41.814942552, -87.686032127)" -9678427,HX328336,07/02/2014 02:40:00 PM,051XX W OAKDALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2521,025,31,19,08B,1141741,1919172,2014,07/09/2014 12:39:14 PM,41.934276921,-87.75451971,"(41.934276921, -87.75451971)" -9679165,HX328128,07/02/2014 12:25:00 PM,122XX S WALLACE ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,0523,005,34,53,11,1174568,1823519,2014,07/09/2014 12:39:14 PM,41.671124084,-87.63673015,"(41.671124084, -87.63673015)" -9676375,HX326244,06/30/2014 09:00:00 PM,054XX S CORNELL AVE,0810,THEFT,OVER $500,STREET,false,false,0234,002,5,41,06,1188135,1869647,2014,07/07/2014 12:43:15 PM,41.797392345,-87.585609361,"(41.797392345, -87.585609361)" -9727785,HX377498,06/29/2014 02:38:00 PM,111XX S HALSTED ST,1582,OFFENSE INVOLVING CHILDREN,CHILD PORNOGRAPHY,APARTMENT,false,false,2233,022,34,49,17,1173009,1830995,2014,08/08/2014 12:34:16 PM,41.691673874,-87.642216524,"(41.691673874, -87.642216524)" -9674893,HX323740,06/29/2014 12:45:00 PM,020XX E 79TH ST,0810,THEFT,OVER $500,SMALL RETAIL STORE,false,false,0414,,8,46,06,,,2014,07/06/2014 12:39:22 PM,,, -9670786,HX320544,06/27/2014 06:20:00 AM,014XX W HURON ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1215,012,27,24,04B,1166287,1904820,2014,07/04/2014 12:37:50 PM,41.894403963,-87.664724537,"(41.894403963, -87.664724537)" -9671481,HX321007,06/27/2014 01:30:00 AM,009XX W WRIGHTWOOD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1935,019,43,7,07,1169293,1917497,2014,07/04/2014 12:37:50 PM,41.929125564,-87.653315326,"(41.929125564, -87.653315326)" -9670356,HX320302,06/26/2014 10:00:00 AM,028XX W WILCOX ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1124,011,2,27,05,1157348,1899266,2014,07/03/2014 12:45:31 PM,41.879349726,-87.697705934,"(41.879349726, -87.697705934)" -9665087,HX315300,06/23/2014 10:59:00 AM,034XX W AUGUSTA BLVD,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1121,011,27,23,18,1153093,1906405,2014,06/30/2014 12:37:16 PM,41.899025271,-87.713140222,"(41.899025271, -87.713140222)" -9663886,HX313975,06/21/2014 07:00:00 PM,018XX N TRIPP AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2534,025,30,20,07,1147795,1912188,2014,06/28/2014 12:36:34 PM,41.91499786,-87.732450961,"(41.91499786, -87.732450961)" -9663074,HX312925,06/21/2014 12:30:00 PM,015XX N CLYBOURN AVE,0460,BATTERY,SIMPLE,CTA TRAIN,false,false,1822,018,27,8,08B,1170846,1910482,2014,06/28/2014 12:36:34 PM,41.909842113,-87.64781463,"(41.909842113, -87.64781463)" -9663018,HX312850,06/21/2014 11:40:00 AM,115XX S YALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0522,005,34,53,08B,1176635,1828469,2014,06/28/2014 12:36:34 PM,41.684661551,-87.629016959,"(41.684661551, -87.629016959)" -9662643,HX312494,06/21/2014 04:36:00 AM,062XX W CUYLER AVE,1090,ARSON,ATTEMPT ARSON,RESIDENCE-GARAGE,false,false,1624,016,38,15,09,1133886,1926223,2014,06/28/2014 12:36:34 PM,41.953767525,-87.783220921,"(41.953767525, -87.783220921)" -9662638,HX312474,06/21/2014 04:10:00 AM,074XX S GREEN ST,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,STREET,false,false,0733,007,17,68,03,1171884,1855553,2014,06/28/2014 12:36:34 PM,41.759089212,-87.645616987,"(41.759089212, -87.645616987)" -9662569,HX312440,06/21/2014 01:20:00 AM,040XX W WILCOX ST,041A,BATTERY,AGGRAVATED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,1115,011,28,26,04B,1149683,1899074,2014,06/28/2014 12:36:34 PM,41.878975185,-87.725855753,"(41.878975185, -87.725855753)" -9661658,HX311366,06/20/2014 11:20:00 AM,069XX S ASHLAND AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0735,007,17,67,03,1166833,1858894,2014,06/27/2014 12:37:10 PM,41.768366678,-87.664033409,"(41.768366678, -87.664033409)" -9658359,HX308295,06/18/2014 02:45:00 AM,091XX S BEVERLY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2221,022,21,73,14,1166214,1844254,2014,06/25/2014 12:38:46 PM,41.728205623,-87.666718093,"(41.728205623, -87.666718093)" -9657339,HX307593,06/17/2014 04:30:00 PM,053XX W QUINCY ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1522,015,29,25,14,1140920,1898446,2014,06/24/2014 12:40:13 PM,41.877417569,-87.758047739,"(41.877417569, -87.758047739)" -9654848,HX305558,06/16/2014 09:12:00 AM,004XX W 105TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,true,false,2233,022,34,49,14,1175278,1835240,2014,06/23/2014 12:44:45 PM,41.703272527,-87.633783236,"(41.703272527, -87.633783236)" -9654231,HX304988,06/15/2014 08:25:00 PM,027XX W CATALPA AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,false,2011,020,40,4,08B,1157179,1936460,2014,06/22/2014 12:39:11 PM,41.981416194,-87.697313387,"(41.981416194, -87.697313387)" -9654346,HX305220,06/15/2014 05:00:00 PM,056XX S MAPLEWOOD AVE,4388,OTHER OFFENSE,VIO BAIL BOND: DOM VIOLENCE,RESIDENCE,true,true,0824,008,16,63,26,1160379,1866998,2014,06/22/2014 12:39:11 PM,41.790740566,-87.687467443,"(41.790740566, -87.687467443)" -9802938,HX452071,06/15/2014 12:00:00 PM,006XX S CENTRAL PARK AVE,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,APARTMENT,false,false,1133,011,24,27,11,1152525,1896827,2014,10/03/2014 12:39:14 PM,41.8727535,-87.715479771,"(41.8727535, -87.715479771)" -9653006,HX303514,06/14/2014 05:24:00 PM,036XX E 106TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SMALL RETAIL STORE,true,false,0432,004,10,52,04B,1201982,1835237,2014,06/21/2014 12:36:33 PM,41.702627447,-87.536001073,"(41.702627447, -87.536001073)" -9651540,HX301643,06/12/2014 07:30:00 PM,002XX W MONROE ST,0810,THEFT,OVER $500,OTHER,false,false,0122,001,2,32,06,1174707,1899918,2014,07/11/2014 12:37:03 PM,41.880768379,-87.633947393,"(41.880768379, -87.633947393)" -9651273,HX301372,06/12/2014 05:30:00 PM,034XX W 31ST ST,0620,BURGLARY,UNLAWFUL ENTRY,RESTAURANT,false,false,1032,010,22,30,05,1154155,1883902,2014,06/19/2014 12:43:10 PM,41.837253462,-87.709839834,"(41.837253462, -87.709839834)" -9678453,HX298334,06/10/2014 07:49:00 PM,008XX E 91ST ST,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0633,,8,47,03,,,2014,07/03/2014 12:45:31 PM,,, -9645261,HX296258,06/09/2014 10:00:00 AM,028XX N AUSTIN AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,2514,025,30,19,06,1135941,1918388,2014,06/16/2014 12:51:59 PM,41.932231013,-87.775853712,"(41.932231013, -87.775853712)" -9644523,HX295659,06/08/2014 09:35:00 PM,002XX S TROY ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1124,011,28,27,18,1155379,1898669,2014,06/15/2014 12:40:25 PM,41.877751287,-87.704951861,"(41.877751287, -87.704951861)" -9643705,HX294660,06/08/2014 03:20:00 AM,037XX S WOOD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0912,009,11,59,14,1165002,1880015,2014,06/15/2014 12:40:25 PM,41.82636417,-87.670147645,"(41.82636417, -87.670147645)" -9643858,HX294683,06/08/2014 01:00:00 AM,066XX N NORTHWEST HWY,0460,BATTERY,SIMPLE,STREET,false,false,1612,016,41,9,08B,1124915,1943895,2014,06/15/2014 12:40:25 PM,42.00241466,-87.81580751,"(42.00241466, -87.81580751)" -9642121,HX292493,06/05/2014 08:00:00 PM,073XX S ASHLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,ALLEY,false,false,0734,007,17,67,14,1166994,1856032,2014,06/12/2014 12:41:22 PM,41.760509529,-87.663524955,"(41.760509529, -87.663524955)" -9641152,HX287518,06/03/2014 12:10:00 AM,024XX W 45TH ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,false,false,0922,009,12,58,24,1161087,1874736,2014,06/10/2014 12:45:15 PM,41.811959999,-87.684657237,"(41.811959999, -87.684657237)" -9934688,HY123629,06/01/2014 12:00:00 AM,065XX S MINERVA AVE,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,false,false,0321,003,20,42,11,1185052,1861728,2014,01/26/2015 12:53:30 PM,41.775734979,-87.597163634,"(41.775734979, -87.597163634)" -9633194,HX284351,05/31/2014 05:55:00 PM,076XX S CICERO AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0833,008,13,65,06,1145766,1853739,2014,06/07/2014 12:40:43 PM,41.754644364,-87.741385133,"(41.754644364, -87.741385133)" -9632434,HX283223,05/30/2014 09:50:00 PM,107XX S YATES AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0434,004,10,51,08B,1194304,1834510,2014,06/06/2014 12:40:22 PM,41.700824113,-87.564139118,"(41.700824113, -87.564139118)" -9632364,HX283153,05/30/2014 08:30:00 PM,074XX S INDIANA AVE,0460,BATTERY,SIMPLE,STREET,false,false,0323,003,6,69,08B,1178934,1855397,2014,06/06/2014 12:40:22 PM,41.758503566,-87.619783957,"(41.758503566, -87.619783957)" -9631862,HX282478,05/30/2014 12:21:00 PM,049XX W WEST END AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1532,015,28,25,18,1143435,1900569,2014,06/06/2014 12:40:22 PM,41.883196711,-87.74876013,"(41.883196711, -87.74876013)" -9631861,HX282458,05/30/2014 11:00:00 AM,063XX S KOSTNER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0813,008,13,65,14,1148169,1862253,2014,06/06/2014 12:40:22 PM,41.777962512,-87.732360716,"(41.777962512, -87.732360716)" -9631036,HX281898,05/29/2014 10:40:00 PM,084XX S VERNON AVE,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,0632,006,6,44,08A,1180874,1848896,2014,06/10/2014 12:41:59 PM,41.740619724,-87.612873573,"(41.740619724, -87.612873573)" -9630714,HX281512,05/29/2014 10:20:00 AM,026XX S CALIFORNIA AVE,0810,THEFT,OVER $500,STREET,false,false,1033,010,12,30,06,1158082,1886563,2014,06/05/2014 12:38:31 PM,41.844476425,-87.695357404,"(41.844476425, -87.695357404)" -9630844,HX281710,05/28/2014 10:00:00 PM,096XX S LA SALLE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0511,005,21,49,14,1177015,1841086,2014,06/04/2014 12:43:29 PM,41.719275863,-87.627247216,"(41.719275863, -87.627247216)" -9629323,HX279878,05/28/2014 10:34:00 AM,017XX W ALBION AVE,0810,THEFT,OVER $500,APARTMENT,false,false,2432,024,40,1,06,1163702,1943935,2014,06/04/2014 12:43:29 PM,42.001792401,-87.673111851,"(42.001792401, -87.673111851)" -9630401,HX281029,05/28/2014 12:48:00 AM,089XX S PARNELL AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,2223,022,21,71,26,1174237,1845760,2014,06/04/2014 12:43:29 PM,41.73216403,-87.637283701,"(41.73216403, -87.637283701)" -9627038,HX277879,05/27/2014 04:14:00 AM,057XX W GRAND AVE,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,2515,025,37,19,18,1137626,1913796,2014,06/03/2014 12:44:29 PM,41.919599824,-87.769772365,"(41.919599824, -87.769772365)" -9669357,HX275028,05/24/2014 06:35:00 PM,030XX W VAN BUREN ST,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),PARK PROPERTY,true,false,1134,011,28,27,18,1156013,1897963,2014,10/31/2014 03:20:56 PM,41.87580119,-87.702643013,"(41.87580119, -87.702643013)" -9624246,HX274031,05/23/2014 10:30:00 PM,041XX W CONGRESS PKWY,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,1132,011,24,26,14,1149055,1897334,2014,05/30/2014 12:40:32 PM,41.874212601,-87.728206718,"(41.874212601, -87.728206718)" -9624539,HX274436,05/23/2014 07:00:00 PM,002XX S LAVERGNE AVE,0460,BATTERY,SIMPLE,STREET,false,false,1533,015,28,25,08B,1143330,1898753,2014,05/30/2014 12:40:32 PM,41.878215347,-87.74919109,"(41.878215347, -87.74919109)" -9622445,HX272206,05/22/2014 03:05:00 PM,015XX W HOWARD ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,OTHER,true,false,2422,024,49,1,15,1164940,1950388,2014,05/29/2014 12:39:18 PM,42.019473264,-87.66837302,"(42.019473264, -87.66837302)" -9667124,HX316825,05/22/2014 02:11:00 AM,0000X S STATE ST,0810,THEFT,OVER $500,DEPARTMENT STORE,true,false,0112,001,42,32,06,1176423,1900356,2014,07/15/2014 12:37:55 PM,41.881931729,-87.627633225,"(41.881931729, -87.627633225)" -9616841,HX267003,05/18/2014 08:07:00 PM,030XX N NEWCASTLE AVE,4625,OTHER OFFENSE,PAROLE VIOLATION,PARK PROPERTY,true,false,2511,025,36,18,26,1130191,1919247,2014,05/25/2014 12:39:09 PM,41.934688863,-87.796964877,"(41.934688863, -87.796964877)" -9615128,HX264609,05/16/2014 10:30:00 PM,072XX S LAWNDALE AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0833,008,13,65,08B,1152912,1856469,2014,05/23/2014 12:38:03 PM,41.761998025,-87.715124936,"(41.761998025, -87.715124936)" -9615221,HX264704,05/16/2014 07:40:00 PM,007XX N CLARK ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1832,018,42,8,06,1175363,1905385,2014,05/23/2014 12:38:03 PM,41.895755436,-87.631374423,"(41.895755436, -87.631374423)" -9660802,HX310550,05/16/2014 06:00:00 PM,022XX N KARLOV AVE,0810,THEFT,OVER $500,STREET,false,false,2525,025,31,20,06,1148715,1914816,2014,06/20/2014 12:39:30 PM,41.922191603,-87.729002923,"(41.922191603, -87.729002923)" -9664302,HX314663,05/13/2014 12:00:00 PM,108XX S EWING AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,0432,004,10,52,26,1202234,1833580,2014,06/23/2014 12:44:45 PM,41.698074092,-87.535134571,"(41.698074092, -87.535134571)" -9606666,HX256705,05/10/2014 08:20:00 PM,010XX N OAKLEY BLVD,0460,BATTERY,SIMPLE,APARTMENT,true,false,1212,012,1,24,08B,1160840,1907072,2014,06/14/2014 12:41:49 PM,41.900698369,-87.684667185,"(41.900698369, -87.684667185)" -9605704,HX253729,05/08/2014 01:00:00 AM,071XX S SANGAMON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0733,007,17,68,06,1171258,1857197,2014,05/15/2014 12:39:28 PM,41.763614265,-87.647863232,"(41.763614265, -87.647863232)" -9602797,HX252929,05/08/2014 12:13:00 AM,009XX N LAVERGNE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1531,015,37,25,26,1142815,1905711,2014,05/15/2014 12:39:28 PM,41.897318537,-87.750908671,"(41.897318537, -87.750908671)" -9599431,HX250048,05/05/2014 08:00:00 PM,069XX S HALSTED ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0733,007,6,68,07,1172120,1859040,2014,05/07/2014 12:40:24 AM,41.768652788,-87.644649741,"(41.768652788, -87.644649741)" -9600076,HX249518,05/04/2014 11:00:00 PM,012XX S MICHIGAN AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0131,001,2,33,06,1177378,1894927,2014,10/31/2014 03:20:56 PM,41.867012636,-87.6242912,"(41.867012636, -87.6242912)" -9597140,HX247894,05/04/2014 12:00:00 AM,019XX W LUNT AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2424,024,49,1,07,1161952,1946467,2014,05/07/2014 12:40:24 AM,42.008777125,-87.679478726,"(42.008777125, -87.679478726)" -9596923,HX247607,05/03/2014 10:30:00 PM,084XX S DANTE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0412,004,8,45,06,1187382,1849199,2014,05/06/2014 12:39:53 AM,41.741299201,-87.589019593,"(41.741299201, -87.589019593)" -9597020,HX247812,05/03/2014 06:30:00 PM,037XX N SAWYER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,false,false,1733,017,33,16,07,1154094,1924763,2014,05/07/2014 12:40:24 AM,41.949381205,-87.708972604,"(41.949381205, -87.708972604)" -9593242,HX243752,05/01/2014 12:15:00 AM,0000X S KENTON AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,25,16,1145622,1899504,2014,05/04/2014 12:39:40 AM,41.880233065,-87.740756251,"(41.880233065, -87.740756251)" -9592330,HX242881,04/30/2014 10:15:00 AM,008XX E 103RD ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0512,005,9,50,08B,1183714,1836812,2014,05/03/2014 12:40:14 AM,41.707394098,-87.602843897,"(41.707394098, -87.602843897)" -9591786,HX242257,04/29/2014 06:30:00 PM,052XX S RICHMOND ST,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0923,009,14,63,06,1157640,1869646,2014,05/02/2014 12:40:03 AM,41.798063068,-87.697438946,"(41.798063068, -87.697438946)" -9591241,HX241733,04/29/2014 01:00:00 PM,086XX S CICERO AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,0834,008,18,70,06,1145964,1846687,2014,05/01/2014 12:39:47 AM,41.735288641,-87.740837457,"(41.735288641, -87.740837457)" -9590499,HX241039,04/28/2014 06:00:00 PM,073XX S CHAPPEL AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0333,003,5,43,05,1191193,1856740,2014,05/07/2014 12:40:24 AM,41.761901057,-87.574812957,"(41.761901057, -87.574812957)" -9589211,HX239851,04/27/2014 08:00:00 PM,056XX W WEST END AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,RESIDENCE,false,true,1512,015,29,25,26,1138966,1900877,2014,04/30/2014 12:39:48 AM,41.884124266,-87.765163308,"(41.884124266, -87.765163308)" -9589392,HX239092,04/26/2014 11:00:00 PM,036XX N SHEFFIELD AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,1923,,44,6,26,,,2014,04/30/2014 12:39:48 AM,,, -21347,HX237678,04/26/2014 01:17:00 AM,054XX S WINCHESTER AVE,0110,HOMICIDE,FIRST DEGREE MURDER,APARTMENT,true,false,0932,009,16,61,01A,1164317,1868727,2014,02/27/2015 12:38:45 PM,41.795403068,-87.672978994,"(41.795403068, -87.672978994)" -21343,HX233807,04/23/2014 06:18:00 AM,078XX S INGLESIDE AVE,0110,HOMICIDE,FIRST DEGREE MURDER,VESTIBULE,false,false,0624,006,8,69,01A,1183884,1853127,2014,04/23/2014 12:06:22 PM,41.752160356,-87.601713536,"(41.752160356, -87.601713536)" -9583054,HX233226,04/22/2014 04:15:00 PM,005XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,1834,018,42,8,06,1177300,1903904,2014,05/05/2014 12:38:28 AM,41.891647792,-87.624305286,"(41.891647792, -87.624305286)" -9600374,HX233046,04/22/2014 01:59:00 PM,006XX S CALIFORNIA AVE,2018,NARCOTICS,MANU/DELIVER:SYNTHETIC DRUGS,VEHICLE NON-COMMERCIAL,true,false,1135,011,2,27,18,1157762,1897188,2014,06/17/2014 12:41:24 PM,41.873639068,-87.696242425,"(41.873639068, -87.696242425)" -9579259,HX229835,04/19/2014 06:05:00 PM,083XX S STEWART AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,0622,006,21,44,06,1175120,1849560,2014,04/22/2014 12:38:23 AM,41.742572081,-87.633935781,"(41.742572081, -87.633935781)" -9646964,HX227294,04/17/2014 05:15:33 PM,040XX W WILCOX ST,2017,NARCOTICS,MANU/DELIVER:CRACK,APARTMENT,true,false,1115,011,28,26,18,1149354,1898987,2014,08/19/2014 12:37:52 PM,41.878742831,-87.727066047,"(41.878742831, -87.727066047)" -9576335,HX226601,04/17/2014 01:00:00 AM,050XX W HURON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1532,015,28,25,06,1142630,1904137,2014,04/20/2014 12:40:33 AM,41.893002742,-87.751627356,"(41.893002742, -87.751627356)" -9578552,HX222468,04/13/2014 04:50:00 PM,0000X E MONROE ST,0870,THEFT,POCKET-PICKING,HOTEL/MOTEL,false,false,0112,,42,32,06,,,2014,04/21/2014 12:38:45 AM,,, -9570986,HX221704,04/13/2014 02:40:00 AM,038XX N KENMORE AVE,0460,BATTERY,SIMPLE,STREET,true,false,1923,019,44,6,08B,1168625,1925785,2014,04/15/2014 12:40:31 AM,41.951882717,-87.655529192,"(41.951882717, -87.655529192)" -9569616,HX220020,04/11/2014 07:00:00 PM,0000X E MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0112,001,42,32,18,1176636,1900450,2014,04/16/2014 12:38:21 AM,41.882184862,-87.62684826,"(41.882184862, -87.62684826)" -9570147,HX218847,04/10/2014 09:20:00 PM,001XX S KENTON AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1113,011,28,25,16,1145635,1899142,2014,04/16/2014 12:38:21 AM,41.879239448,-87.740717694,"(41.879239448, -87.740717694)" -9567953,HX218479,04/10/2014 04:00:00 PM,037XX W FULLERTON AVE,0810,THEFT,OVER $500,VEHICLE-COMMERCIAL,false,false,2524,025,35,22,06,1151278,1915742,2014,04/13/2014 12:40:06 AM,41.924682678,-87.719561286,"(41.924682678, -87.719561286)" -9564306,HX215589,04/08/2014 01:30:00 PM,008XX E 79TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,GROCERY FOOD STORE,true,false,0624,006,8,44,18,1183306,1852770,2014,04/13/2014 12:40:06 AM,41.751194179,-87.603842721,"(41.751194179, -87.603842721)" -9574602,HX225257,04/02/2014 10:00:00 PM,020XX W CHICAGO AVE,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,PARKING LOT/GARAGE(NON.RESID.),false,false,1221,012,1,24,11,1162677,1905295,2014,05/02/2014 12:40:03 AM,41.895783831,-87.677969636,"(41.895783831, -87.677969636)" -9555357,HX207194,04/01/2014 05:30:00 PM,013XX S CALIFORNIA BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1023,010,28,29,08B,1157936,1893781,2014,04/09/2014 12:42:18 AM,41.86428637,-87.695696497,"(41.86428637, -87.695696497)" -9554659,HX206518,04/01/2014 08:30:00 AM,075XX N RIDGE BLVD,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,2411,024,49,2,08B,1160500,1950133,2014,04/27/2014 12:38:22 AM,42.018867029,-87.684718825,"(42.018867029, -87.684718825)" -9553632,HX205472,03/31/2014 12:10:00 PM,077XX N EASTLAKE TER,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,LAKEFRONT/WATERFRONT/RIVERBANK,false,false,2422,024,49,1,04A,1165634,1951414,2014,04/12/2014 12:41:09 AM,42.022273797,-87.665789739,"(42.022273797, -87.665789739)" -9550879,HX202382,03/28/2014 06:30:00 PM,037XX S ELLIS AVE,1020,ARSON,BY FIRE,VEHICLE NON-COMMERCIAL,false,false,0212,002,4,36,09,1182248,1880304,2014,05/11/2014 12:36:24 PM,41.826774468,-87.606867167,"(41.826774468, -87.606867167)" -9550165,HX201779,03/28/2014 10:30:00 AM,050XX S WINCHESTER AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0931,009,16,61,15,1164166,1871195,2014,03/31/2014 12:39:14 AM,41.802178744,-87.673463242,"(41.802178744, -87.673463242)" -9549444,HX201405,03/27/2014 10:00:00 PM,0000X W ONTARIO ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,DRUG STORE,false,false,1832,018,42,8,11,1175596,1904429,2014,03/30/2014 12:39:29 AM,41.893126888,-87.630547435,"(41.893126888, -87.630547435)" -9556693,HX208455,03/27/2014 08:00:00 PM,001XX N KILBOURN AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1113,011,28,26,26,1146325,1900456,2014,04/09/2014 12:42:18 AM,41.882832116,-87.738150643,"(41.882832116, -87.738150643)" -9546928,HX199334,03/26/2014 12:00:00 PM,055XX S SHIELDS AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENTIAL YARD (FRONT/BACK),true,false,0711,007,3,68,18,1174958,1868001,2014,03/30/2014 12:39:29 AM,41.793179917,-87.633979955,"(41.793179917, -87.633979955)" -9546860,HX199339,03/26/2014 11:45:00 AM,035XX W 66TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0831,008,15,66,07,1153698,1860248,2014,03/28/2014 12:40:24 AM,41.772352662,-87.712144089,"(41.772352662, -87.712144089)" -9546313,HX199061,03/26/2014 07:50:00 AM,027XX W 56TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0824,008,16,63,07,1159138,1867452,2014,03/28/2014 12:40:24 AM,41.792011897,-87.692005502,"(41.792011897, -87.692005502)" -9545566,HX198242,03/25/2014 02:00:00 PM,132XX S BALTIMORE AVE,0460,BATTERY,SIMPLE,STREET,false,false,0433,004,10,55,08B,1199056,1817972,2014,04/03/2014 12:40:46 AM,41.655324343,-87.547291826,"(41.655324343, -87.547291826)" -9847079,HX495791,03/24/2014 10:00:00 PM,014XX N ASTOR ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1824,018,43,8,06,1176323,1909900,2014,12/24/2014 12:46:30 PM,41.9081232,-87.6277122,"(41.9081232, -87.6277122)" -9542532,HX196008,03/23/2014 03:00:00 PM,089XX S ESSEX AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0423,004,7,48,08A,1194342,1846245,2014,04/12/2014 12:41:09 AM,41.733025148,-87.563615828,"(41.733025148, -87.563615828)" -9543954,HX197071,03/22/2014 05:00:00 PM,034XX W 53RD PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0822,008,14,63,05,1154278,1868889,2014,04/07/2014 12:40:59 AM,41.796053338,-87.709788246,"(41.796053338, -87.709788246)" -9540644,HX193878,03/21/2014 06:30:00 PM,032XX W 13TH ST,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,SIDEWALK,true,false,1022,010,24,29,26,1155199,1893905,2014,03/29/2014 12:39:43 AM,41.864681984,-87.70574067,"(41.864681984, -87.70574067)" -9539574,HX192950,03/21/2014 06:55:00 AM,093XX S BALTIMORE AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0424,004,10,46,04A,1198571,1843332,2014,04/12/2014 12:41:09 AM,41.724926816,-87.548220696,"(41.724926816, -87.548220696)" -9602243,HX252212,03/20/2014 12:00:00 AM,002XX N PINE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,1523,015,28,25,26,1139416,1901226,2014,05/08/2014 01:20:21 PM,41.885073779,-87.763502323,"(41.885073779, -87.763502323)" -9537477,HX191040,03/19/2014 04:00:00 PM,001XX W 83RD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0622,006,21,44,14,1176867,1849911,2014,03/22/2014 12:39:11 AM,41.743496127,-87.627524234,"(41.743496127, -87.627524234)" -9537987,HX190836,03/19/2014 01:30:00 PM,062XX S STEWART AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0711,007,20,68,08A,1174731,1863728,2014,03/22/2014 12:39:11 AM,41.781459416,-87.634939611,"(41.781459416, -87.634939611)" -9539073,HX192372,03/19/2014 12:36:00 PM,028XX W DEVON AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,ATM (AUTOMATIC TELLER MACHINE),false,false,2413,024,50,2,11,1156470,1942298,2014,03/29/2014 12:39:43 AM,41.997450348,-87.699762044,"(41.997450348, -87.699762044)" -9537702,HX191355,03/19/2014 12:12:00 PM,053XX N OKETO AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1613,016,41,10,26,1125970,1934755,2014,03/27/2014 12:41:25 AM,41.977316027,-87.812130818,"(41.977316027, -87.812130818)" -9536490,HX190346,03/19/2014 02:00:00 AM,072XX S CARPENTER ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,true,0733,007,17,68,14,1170525,1856823,2014,04/02/2014 12:41:31 AM,41.762603959,-87.65056071,"(41.762603959, -87.65056071)" -9535418,HX189234,03/18/2014 09:00:00 AM,059XX N GLENWOOD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,2013,020,48,77,18,1165871,1939326,2014,03/23/2014 12:39:11 AM,41.989099025,-87.665264694,"(41.989099025, -87.665264694)" -9535811,HX189169,03/18/2014 08:45:00 AM,057XX S MICHIGAN AVE,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0232,002,20,40,08A,1178101,1866823,2014,03/21/2014 12:39:35 AM,41.78987663,-87.622490691,"(41.78987663, -87.622490691)" -9535770,HX189465,03/17/2014 05:00:00 PM,112XX S COTTAGE GROVE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,false,false,0531,005,9,50,14,1181767,1830734,2014,03/21/2014 12:39:35 AM,41.690760356,-87.610160661,"(41.690760356, -87.610160661)" -9532540,HX186429,03/15/2014 09:05:00 PM,071XX S ABERDEEN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0733,007,17,68,08B,1170178,1857422,2014,03/28/2014 12:40:24 AM,41.764255242,-87.651815123,"(41.764255242, -87.651815123)" -9531229,HX184578,03/14/2014 10:15:00 AM,051XX W CRYSTAL ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2533,025,37,25,05,1141869,1907798,2014,03/30/2014 12:39:29 AM,41.903063077,-87.754331516,"(41.903063077, -87.754331516)" -9528024,HX182097,03/12/2014 09:30:00 AM,071XX S HALSTED ST,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,RESIDENCE,false,true,0733,007,6,68,04B,1172169,1857259,2014,03/25/2014 12:39:08 AM,41.76376443,-87.644522411,"(41.76376443, -87.644522411)" -9577540,HX227919,03/10/2014 11:00:00 PM,008XX N CALIFORNIA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1211,012,26,24,14,1157524,1905715,2014,04/24/2014 12:40:08 AM,41.897042799,-87.696884056,"(41.897042799, -87.696884056)" -9528027,HX181023,03/10/2014 06:00:00 PM,002XX W MARQUETTE RD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0722,007,6,68,08B,1175548,1860575,2014,03/17/2014 12:39:52 AM,41.772788992,-87.632038586,"(41.772788992, -87.632038586)" -9524636,HX179370,03/10/2014 04:13:00 PM,051XX S WINCHESTER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0932,009,16,61,08B,1164184,1870532,2014,03/28/2014 12:40:24 AM,41.800359012,-87.673415896,"(41.800359012, -87.673415896)" -9522632,HX177750,03/09/2014 05:15:00 AM,007XX W 61ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0711,007,16,68,08B,1172424,1864460,2014,03/13/2014 12:40:30 AM,41.783519213,-87.643376039,"(41.783519213, -87.643376039)" -9520000,HX175139,03/06/2014 10:27:00 PM,007XX N LAMON AVE,3731,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING IDENTIFICATION,SIDEWALK,true,false,1531,015,37,25,24,1143524,1904225,2014,03/09/2014 12:39:51 AM,41.893227545,-87.74834179,"(41.893227545, -87.74834179)" -9519949,HX175085,03/06/2014 09:30:00 PM,086XX S KENWOOD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0412,004,8,45,26,1186710,1847771,2014,03/21/2014 12:39:35 AM,41.737396545,-87.591526827,"(41.737396545, -87.591526827)" -9519659,HX174630,03/06/2014 02:00:00 PM,065XX W DIVERSEY AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,2512,025,36,19,06,1132343,1917856,2014,03/09/2014 12:39:51 AM,41.930834579,-87.789088549,"(41.930834579, -87.789088549)" -9518522,HX174018,03/05/2014 11:50:00 PM,0000X E 87TH ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,true,true,0632,006,6,44,04B,1177946,1847344,2014,03/08/2014 12:40:21 AM,41.736427612,-87.623648296,"(41.736427612, -87.623648296)" -9516681,HX172093,03/04/2014 01:40:00 PM,052XX N MILWAUKEE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1623,016,45,11,06,1138091,1934091,2014,03/07/2014 12:40:58 AM,41.975282927,-87.767571657,"(41.975282927, -87.767571657)" -9511742,HX166413,02/27/2014 01:26:00 PM,034XX W CHICAGO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1121,011,27,23,18,1153532,1905166,2014,03/02/2014 12:39:31 AM,41.895616617,-87.711560762,"(41.895616617, -87.711560762)" -9510829,HX165902,02/27/2014 12:21:00 AM,073XX S WOLCOTT AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE,true,true,0735,007,17,67,04A,1164996,1856090,2014,05/16/2014 12:37:19 PM,41.760711147,-87.670846078,"(41.760711147, -87.670846078)" -9508671,HX163921,02/25/2014 11:15:00 AM,001XX N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0111,001,42,32,06,1176392,1900920,2014,02/27/2014 12:42:14 AM,41.883480076,-87.627730028,"(41.883480076, -87.627730028)" -9507959,HX163577,02/25/2014 01:11:00 AM,020XX W 63RD ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0726,007,15,67,06,1163901,1862818,2014,02/27/2014 12:42:14 AM,41.779196771,-87.674670479,"(41.779196771, -87.674670479)" -9505515,HX160953,02/22/2014 04:15:00 PM,044XX W MONROE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1113,011,28,26,18,1146819,1899334,2014,02/26/2014 12:40:16 AM,41.879743802,-87.736365296,"(41.879743802, -87.736365296)" -9503518,HX158340,02/20/2014 01:30:00 PM,050XX S BLACKSTONE AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0222,002,4,39,06,1186813,1871938,2014,02/23/2014 12:41:45 AM,41.803710468,-87.590384628,"(41.803710468, -87.590384628)" -9500504,HX155544,02/18/2014 07:00:00 AM,087XX S MERRILL AVE,0810,THEFT,OVER $500,STREET,false,false,0412,004,8,48,06,1191989,1847296,2014,02/21/2014 12:39:35 AM,41.735966611,-87.572201766,"(41.735966611, -87.572201766)" -9499318,HX154389,02/17/2014 02:07:00 PM,007XX N TRUMBULL AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),OTHER,true,false,1121,011,27,23,18,1153204,1904794,2014,02/19/2014 12:39:37 AM,41.894602329,-87.712775319,"(41.894602329, -87.712775319)" -9498714,HX153398,02/15/2014 05:00:00 PM,037XX N LAKE SHORE DR,0820,THEFT,$500 AND UNDER,STREET,false,false,1925,019,46,6,06,1171600,1925416,2014,02/19/2014 12:39:37 AM,41.950805085,-87.644604078,"(41.950805085, -87.644604078)" -9508314,HX163806,02/15/2014 03:00:00 AM,006XX N CLARK ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,TAXICAB,false,false,1832,018,42,8,11,1175394,1904200,2014,03/09/2014 12:39:51 AM,41.892503037,-87.631296179,"(41.892503037, -87.631296179)" -9499928,HX149804,02/11/2014 09:00:00 AM,035XX W BELDEN AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,1413,014,26,22,05,1152338,1915099,2014,04/12/2014 12:41:09 AM,41.922897345,-87.715683376,"(41.922897345, -87.715683376)" -9485217,HX137525,02/03/2014 11:10:00 AM,061XX N TALMAN AVE,0460,BATTERY,SIMPLE,OTHER,false,false,2413,024,50,2,08B,1157588,1940774,2014,02/07/2014 12:38:58 AM,41.993245657,-87.695691083,"(41.993245657, -87.695691083)" -9484288,HX137883,02/03/2014 06:00:00 AM,008XX W WELLINGTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1933,019,44,6,14,1170047,1920093,2014,02/06/2014 12:39:04 AM,41.936232663,-87.650468647,"(41.936232663, -87.650468647)" -9482033,HX135312,02/01/2014 10:15:00 AM,037XX S WINCHESTER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0912,009,11,59,14,1164016,1879590,2014,02/03/2014 12:39:04 AM,41.825218752,-87.673777053,"(41.825218752, -87.673777053)" -9481922,HX135119,02/01/2014 01:45:00 AM,024XX N LINCOLN AVE,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,1932,019,43,7,08B,1170293,1916346,2014,02/04/2014 12:39:03 AM,41.925945344,-87.649674382,"(41.925945344, -87.649674382)" -9480375,HX133597,01/30/2014 08:45:00 PM,071XX S ARTESIAN AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,true,false,0832,008,18,66,15,1161245,1856944,2014,02/02/2014 12:39:28 AM,41.763133096,-87.684570132,"(41.763133096, -87.684570132)" -9480165,HX133324,01/30/2014 04:20:00 PM,013XX W THORNDALE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2013,020,48,77,03,1166205,1939678,2014,02/26/2014 12:40:16 AM,41.990057766,-87.664026082,"(41.990057766, -87.664026082)" -9496144,HX129986,01/28/2014 02:00:00 AM,002XX S WELLS ST,0810,THEFT,OVER $500,SIDEWALK,false,false,0122,001,2,32,06,1174725,1899304,2014,02/16/2014 12:39:09 AM,41.879083123,-87.633899673,"(41.879083123, -87.633899673)" -9475081,HX128795,01/26/2014 09:55:00 PM,055XX S JUSTINE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,true,0713,007,16,67,14,1167002,1867662,2014,01/29/2014 12:39:43 AM,41.792423561,-87.663163463,"(41.792423561, -87.663163463)" -9475067,HX128696,01/26/2014 07:00:00 PM,017XX E 70TH ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,OTHER,false,false,0332,003,5,43,04B,1189262,1858957,2014,04/28/2014 12:39:03 AM,41.768031199,-87.581819184,"(41.768031199, -87.581819184)" -9470521,HX123587,01/20/2014 05:00:00 PM,086XX S HONORE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0614,006,18,71,14,1165484,1847286,2014,01/25/2014 12:39:51 AM,41.736541375,-87.669306547,"(41.736541375, -87.669306547)" -9467720,HX120666,01/19/2014 09:55:00 PM,067XX S OAKLEY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0832,008,17,66,07,1162192,1859765,2014,01/23/2014 12:40:19 AM,41.770854668,-87.68102077,"(41.770854668, -87.68102077)" -9467146,HX120110,01/19/2014 10:46:00 AM,007XX N CHRISTIANA AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1121,011,27,23,26,1153876,1904532,2014,01/22/2014 12:39:52 AM,41.893870012,-87.710314231,"(41.893870012, -87.710314231)" -9466913,HX119798,01/19/2014 12:14:00 AM,029XX W 63RD ST,3730,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING JUSTICE,OTHER,true,false,0823,008,15,66,24,1157682,1862760,2014,01/21/2014 12:39:39 AM,41.779166065,-87.697471684,"(41.779166065, -87.697471684)" -9469352,HX119210,01/17/2014 10:30:00 PM,016XX S ALLPORT ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1233,012,25,31,08B,1168275,1891647,2014,03/13/2014 12:40:30 AM,41.858213501,-87.657804026,"(41.858213501, -87.657804026)" -9466006,HX118511,01/17/2014 08:57:00 PM,044XX W GLADYS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1131,011,24,26,05,1146809,1897945,2014,02/12/2014 12:40:02 AM,41.875932413,-87.736437486,"(41.875932413, -87.736437486)" -9465524,HX117944,01/17/2014 11:55:00 AM,002XX S LA SALLE ST,0870,THEFT,POCKET-PICKING,CTA BUS,false,false,0122,001,42,32,06,1175123,1899399,2014,01/20/2014 12:40:05 AM,41.879334899,-87.632435454,"(41.879334899, -87.632435454)" -9465089,HX117534,01/17/2014 07:23:00 AM,021XX E 71ST ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0331,003,5,43,06,1191473,1858372,2014,01/20/2014 12:40:05 AM,41.766372615,-87.573733923,"(41.766372615, -87.573733923)" -9465710,HX118038,01/16/2014 01:15:00 PM,009XX N ASHLAND AVE,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1213,012,1,24,08A,1165513,1906501,2014,01/20/2014 12:40:05 AM,41.899033264,-87.667519286,"(41.899033264, -87.667519286)" -9473883,HX116295,01/16/2014 06:33:48 AM,0000X W CHECKPOINT 5 ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT TERMINAL UPPER LEVEL - SECURE AREA,false,false,1652,016,41,76,26,1100690,1934276,2014,01/29/2014 12:39:43 AM,41.97638602,-87.905108897,"(41.97638602, -87.905108897)" -9463375,HX116168,01/15/2014 10:45:00 PM,064XX N WASHTENAW AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2412,024,50,2,08B,1157108,1942956,2014,01/21/2014 12:39:39 AM,41.999242948,-87.697397101,"(41.999242948, -87.697397101)" -9463073,HX115842,01/15/2014 04:58:00 PM,051XX W ROSCOE ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,1634,016,38,15,26,1141295,1922075,2014,01/23/2014 12:40:19 AM,41.94225129,-87.756086939,"(41.94225129, -87.756086939)" -9562703,HX214341,01/14/2014 08:00:00 AM,082XX S MARSHFIELD AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0614,006,21,71,06,1166811,1850232,2014,04/10/2014 12:40:25 AM,41.744597428,-87.664360942,"(41.744597428, -87.664360942)" -9463358,HX116176,01/13/2014 10:30:00 PM,021XX N PULASKI RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2525,025,30,22,08B,1149412,1913709,2014,01/19/2014 12:40:13 AM,41.919140386,-87.726470703,"(41.919140386, -87.726470703)" -9458937,HX112171,01/12/2014 08:00:00 PM,015XX S SANGAMON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1232,012,25,28,14,1170483,1892698,2014,01/15/2014 12:39:35 AM,41.861049572,-87.64966861,"(41.861049572, -87.64966861)" -9458123,HX111210,01/11/2014 09:17:00 PM,069XX S STONY ISLAND AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE PORCH/HALLWAY,true,false,0332,003,5,43,26,1188013,1859500,2014,01/20/2014 12:40:05 AM,41.769551093,-87.586379992,"(41.769551093, -87.586379992)" -9455812,HX108637,01/09/2014 05:00:00 PM,024XX W CONGRESS PKWY,0810,THEFT,OVER $500,CTA BUS,false,false,1135,011,2,28,06,1160449,1897663,2014,01/22/2014 12:39:52 AM,41.874887361,-87.686363918,"(41.874887361, -87.686363918)" -9461014,HX107512,01/08/2014 06:40:51 PM,070XX S CAMPBELL AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,RESIDENCE,false,false,0832,008,18,66,18,1160881,1858057,2014,03/22/2014 12:39:11 AM,41.766194856,-87.685873561,"(41.766194856, -87.685873561)" -9450517,HX103614,01/04/2014 04:35:00 PM,0000X E 8TH ST,0560,ASSAULT,SIMPLE,OTHER,true,false,0123,001,2,32,08A,1176501,1896707,2014,01/07/2014 12:39:59 AM,41.871916899,-87.627457011,"(41.871916899, -87.627457011)" -9452542,HX105729,01/04/2014 02:00:00 PM,055XX W WAVELAND AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,1633,016,38,15,26,1138414,1924083,2014,01/15/2014 12:39:35 AM,41.947814192,-87.766627259,"(41.947814192, -87.766627259)" -9447548,HX101036,01/01/2014 06:00:00 PM,069XX S PRAIRIE AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0322,003,6,69,08B,1179274,1859254,2014,01/05/2014 12:39:48 AM,41.769079844,-87.61842041,"(41.769079844, -87.61842041)" -9447499,HX100946,01/01/2014 02:30:00 PM,055XX W BELMONT AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2514,025,30,19,05,1139087,1920691,2014,01/30/2014 12:39:55 AM,41.938493968,-87.764236211,"(41.938493968, -87.764236211)" -9446798,HW590618,12/31/2013 09:30:00 PM,045XX N MULLIGAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,1622,016,38,15,14,1133162,1929412,2013,01/03/2014 11:11:01 AM,41.962531191,-87.785807568,"(41.962531191, -87.785807568)" -9463485,HX116303,12/31/2013 11:49:00 AM,017XX W DIVERSEY PKWY,0810,THEFT,OVER $500,RESIDENCE,false,false,1931,019,32,7,06,1164115,1918593,2013,02/10/2014 10:57:46 AM,41.932244166,-87.672311764,"(41.932244166, -87.672311764)" -9445506,HW589726,12/31/2013 03:30:00 AM,082XX S MARYLAND AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0631,006,8,44,06,1183387,1850211,2013,12/31/2013 06:37:38 AM,41.744170126,-87.603625425,"(41.744170126, -87.603625425)" -9443677,HW588194,12/29/2013 02:00:00 PM,018XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0914,009,25,34,06,1175295,1891529,2013,12/30/2013 11:58:17 AM,41.857735248,-87.632039982,"(41.857735248, -87.632039982)" -9441369,HW585335,12/27/2013 10:00:00 AM,069XX S VERNON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,0322,003,6,69,14,1180491,1858955,2013,12/27/2013 12:11:46 PM,41.768231511,-87.613968674,"(41.768231511, -87.613968674)" -9438988,HW583050,12/24/2013 04:15:00 PM,047XX S CALUMET AVE,031A,ROBBERY,ARMED: HANDGUN,OTHER,false,false,0224,002,3,38,03,1179280,1873373,2013,12/30/2013 10:06:52 PM,41.807823592,-87.617967803,"(41.807823592, -87.617967803)" -9445303,HW589380,12/24/2013 11:00:00 AM,001XX E CHESTNUT ST,0460,BATTERY,SIMPLE,HOTEL/MOTEL,false,false,1833,018,42,8,08B,1176968,1906390,2013,01/12/2014 08:03:55 AM,41.898477019,-87.625449228,"(41.898477019, -87.625449228)" -9438193,HW582421,12/22/2013 06:00:00 AM,004XX W BRIAR PL,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1934,019,44,6,05,1172707,1920990,2013,03/31/2014 09:32:37 AM,41.938635508,-87.640666327,"(41.938635508, -87.640666327)" -9436007,HW580185,12/22/2013 04:20:00 AM,022XX N LINCOLN AVE,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,1812,018,43,7,08B,1171535,1915285,2013,01/01/2014 08:26:11 AM,41.923006647,-87.645141966,"(41.923006647, -87.645141966)" -9435371,HW579047,12/21/2013 06:35:00 AM,081XX S EAST END AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,0414,004,8,45,06,1189056,1851233,2013,01/01/2014 05:42:14 PM,41.746840795,-87.58282125,"(41.746840795, -87.58282125)" -9443033,HW587304,12/20/2013 03:00:00 PM,023XX W SCHOOL ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1921,019,32,5,05,1160178,1921820,2013,01/22/2014 12:00:33 PM,41.941181641,-87.686690277,"(41.941181641, -87.686690277)" -9430964,HW574873,12/18/2013 02:45:00 AM,121XX S STEWART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0523,005,34,53,08B,1175855,1824383,2013,12/27/2013 05:32:41 PM,41.673466392,-87.631994066,"(41.673466392, -87.631994066)" -9430928,HW574834,12/18/2013 12:25:00 AM,044XX S DREXEL BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0221,002,4,39,08B,1182896,1875885,2013,01/15/2014 12:28:54 PM,41.814633354,-87.6046273,"(41.814633354, -87.6046273)" -9427754,HW571866,12/15/2013 03:00:00 PM,037XX W LE MOYNE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2535,025,26,23,14,1151055,1909670,2013,12/16/2013 11:27:32 AM,41.908024933,-87.720540109,"(41.908024933, -87.720540109)" -9422258,HW566091,12/09/2013 05:45:00 PM,024XX W THOMAS ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1212,012,1,24,06,1159993,1907286,2013,12/11/2013 10:38:33 AM,41.901303134,-87.687772355,"(41.901303134, -87.687772355)" -9419862,HW563956,12/08/2013 08:15:00 PM,045XX S LOWE AVE,0650,BURGLARY,HOME INVASION,RESIDENCE,false,false,0925,009,11,61,05,1172767,1874641,2013,01/25/2014 02:12:32 PM,41.811449389,-87.641818209,"(41.811449389, -87.641818209)" -9419440,HW563282,12/08/2013 12:40:00 PM,011XX N AVERS AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1112,011,27,23,18,1150467,1907365,2013,12/08/2013 01:55:00 PM,41.901711295,-87.722760401,"(41.901711295, -87.722760401)" -9417989,HW561291,12/06/2013 05:15:00 PM,086XX S LOOMIS BLVD,0495,BATTERY,AGGRAVATED OF A SENIOR CITIZEN,RESIDENCE,false,true,0614,006,21,71,04B,1168464,1847493,2013,12/20/2013 12:35:23 PM,41.7370458,-87.658382843,"(41.7370458, -87.658382843)" -9418209,HW560520,12/06/2013 03:45:00 AM,071XX W HIGGINS AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1613,016,41,10,08B,1127721,1936004,2013,12/08/2013 09:43:21 AM,41.980713995,-87.805663146,"(41.980713995, -87.805663146)" -9417783,HW560249,12/05/2013 07:30:00 PM,026XX W CORTEZ ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1211,012,1,24,08B,1158569,1906844,2013,01/15/2014 12:25:13 PM,41.900119535,-87.69301497,"(41.900119535, -87.69301497)" -9413386,HW556650,12/03/2013 09:20:00 AM,022XX N MILWAUKEE AVE,0870,THEFT,POCKET-PICKING,BANK,false,false,1431,014,1,22,06,1157424,1915108,2013,12/04/2013 08:36:57 AM,41.922819997,-87.696995399,"(41.922819997, -87.696995399)" -9422734,HW555393,11/30/2013 05:00:00 PM,053XX N ELSTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,GROCERY FOOD STORE,false,false,1621,016,45,11,14,1140926,1935350,2013,12/12/2013 10:14:16 AM,41.978685873,-87.757115096,"(41.978685873, -87.757115096)" -9409073,HW552271,11/28/2013 04:30:00 PM,030XX W NORTH AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,1421,014,26,23,06,1155601,1910520,2013,12/02/2013 11:28:35 AM,41.910267073,-87.703817467,"(41.910267073, -87.703817467)" -9408740,HW551993,11/27/2013 02:30:00 PM,004XX E MC FETRIDGE DR,0890,THEFT,FROM BUILDING,SPORTS ARENA/STADIUM,false,false,0132,001,2,33,06,1179306,1894170,2013,11/30/2013 07:00:12 AM,41.864891468,-87.617236533,"(41.864891468, -87.617236533)" -9406044,HW549485,11/26/2013 09:15:00 PM,056XX N CLARK ST,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,2012,020,40,77,26,1164868,1937443,2013,11/27/2013 11:00:28 AM,41.983953427,-87.669007577,"(41.983953427, -87.669007577)" -9401846,HW544563,11/22/2013 09:39:00 PM,095XX S GREENWOOD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0511,005,8,50,14,1185261,1841750,2013,11/23/2013 06:00:53 AM,41.720908403,-87.597024187,"(41.720908403, -87.597024187)" -9405301,HW548719,11/22/2013 01:30:00 PM,027XX E 89TH ST,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0423,004,7,46,08B,1195945,1846528,2013,11/27/2013 08:46:04 AM,41.733762235,-87.557734065,"(41.733762235, -87.557734065)" -9398511,HW541664,11/20/2013 08:30:00 PM,079XX S VINCENNES AVE,0460,BATTERY,SIMPLE,RESTAURANT,false,false,0621,006,17,44,08B,1174965,1852481,2013,11/21/2013 07:36:32 AM,41.750591127,-87.634416769,"(41.750591127, -87.634416769)" -9397579,HW540801,11/20/2013 11:00:00 AM,069XX S STEWART AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,true,false,0731,007,6,68,26,1174869,1858736,2013,11/21/2013 07:38:40 AM,41.767757733,-87.634582377,"(41.767757733, -87.634582377)" -9396480,HW540058,11/19/2013 05:00:00 PM,040XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,false,false,1114,011,28,26,11,1149614,1901482,2013,11/20/2013 10:49:30 AM,41.885584343,-87.726046543,"(41.885584343, -87.726046543)" -9396178,HW539680,11/19/2013 01:53:00 PM,027XX W FLOURNOY ST,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1135,011,2,27,18,1157878,1896874,2013,11/19/2013 02:51:35 PM,41.872775057,-87.695825091,"(41.872775057, -87.695825091)" -9395154,HW538677,11/18/2013 09:30:00 AM,021XX N ST LOUIS AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1413,014,26,22,05,1152957,1913981,2013,12/30/2013 10:35:27 AM,41.919817201,-87.713438645,"(41.919817201, -87.713438645)" -9388727,HW532069,11/13/2013 04:15:00 PM,031XX N CLARK ST,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1933,019,44,6,14,1170331,1920956,2013,11/14/2013 09:31:28 AM,41.93859456,-87.649399622,"(41.93859456, -87.649399622)" -9388289,HW531527,11/12/2013 05:30:00 PM,008XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1833,018,42,8,06,1177379,1906245,2013,11/28/2013 07:03:12 AM,41.898069817,-87.623944075,"(41.898069817, -87.623944075)" -9387653,HW531130,11/12/2013 12:00:00 PM,016XX N CLARK ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,true,false,1814,018,43,7,07,1175174,1911062,2013,11/13/2013 10:58:10 AM,41.911337641,-87.631898083,"(41.911337641, -87.631898083)" -9386279,HW530040,11/12/2013 12:02:00 AM,019XX W LAWRENCE AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1912,019,47,4,08B,1162205,1931845,2013,11/12/2013 07:07:42 AM,41.968648549,-87.678958932,"(41.968648549, -87.678958932)" -9386177,HW529878,11/11/2013 07:31:00 PM,015XX E 55TH ST,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,false,false,0234,002,4,41,08B,1187435,1868879,2013,11/14/2013 10:15:21 AM,41.795301576,-87.58820073,"(41.795301576, -87.58820073)" -9385960,HW529741,11/11/2013 05:45:00 PM,001XX W MONROE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0122,001,42,32,06,1175444,1899856,2013,11/12/2013 08:01:46 AM,41.880581734,-87.63124308,"(41.880581734, -87.63124308)" -9382909,HW525552,11/08/2013 11:30:00 AM,068XX S PERRY AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0722,007,6,69,05,1176620,1859576,2013,11/21/2013 02:50:51 PM,41.770023572,-87.628138968,"(41.770023572, -87.628138968)" -9380477,HW523608,11/06/2013 08:00:00 PM,020XX W VAN BUREN ST,0460,BATTERY,SIMPLE,STREET,false,false,1225,012,2,28,08B,1163092,1898204,2013,11/07/2013 08:51:00 AM,41.876316834,-87.676644735,"(41.876316834, -87.676644735)" -9378817,HW522179,11/05/2013 07:00:00 PM,064XX W IRVING PARK RD,0810,THEFT,OVER $500,GROCERY FOOD STORE,false,false,1632,016,38,17,06,1132665,1925939,2013,12/12/2013 12:32:58 PM,41.953009618,-87.787716178,"(41.953009618, -87.787716178)" -9381262,HW524192,11/05/2013 01:15:00 PM,036XX N MILWAUKEE AVE,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",false,false,1731,017,38,16,06,1146826,1923648,2013,11/10/2013 10:57:29 AM,41.94646373,-87.735717521,"(41.94646373, -87.735717521)" -9378444,HW521658,11/04/2013 02:30:00 AM,040XX W NORTH AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,false,true,2534,025,30,23,08B,1149440,1910376,2013,11/07/2013 01:55:29 PM,41.909993773,-87.726454479,"(41.909993773, -87.726454479)" -9375841,HW519378,11/03/2013 03:00:00 PM,033XX W 55TH ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0822,008,14,63,03,1155215,1867996,2013,12/22/2013 03:42:52 PM,41.793584117,-87.706376059,"(41.793584117, -87.706376059)" -9375532,HW517470,11/02/2013 06:40:00 AM,073XX S DANTE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0324,003,5,43,14,1187106,1856500,2013,11/04/2013 11:58:09 AM,41.761340392,-87.589799654,"(41.761340392, -87.589799654)" -9373859,HW516405,11/01/2013 01:40:00 PM,118XX S UNION AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0524,005,34,53,14,1173732,1826567,2013,11/03/2013 08:03:38 AM,41.679506796,-87.639700066,"(41.679506796, -87.639700066)" -9373995,HW516673,11/01/2013 08:00:00 AM,082XX S HALSTED ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0622,006,21,71,05,1172449,1850113,2013,11/06/2013 12:32:16 AM,41.744148741,-87.643706097,"(41.744148741, -87.643706097)" -9372591,HW515482,10/31/2013 08:30:00 PM,022XX N ORCHARD ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1812,018,43,7,06,1171187,1915438,2013,11/01/2013 07:36:06 AM,41.923434143,-87.646416123,"(41.923434143, -87.646416123)" -9369795,HW512980,10/30/2013 09:30:00 AM,091XX S STONY ISLAND AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0413,004,8,48,06,1188343,1844881,2013,10/31/2013 08:50:52 AM,41.72942731,-87.585636041,"(41.72942731, -87.585636041)" -9369259,HW512671,10/30/2013 12:03:00 AM,011XX S PULASKI RD,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1132,011,24,29,18,1149930,1894710,2013,10/30/2013 01:13:38 AM,41.86699507,-87.72506236,"(41.86699507, -87.72506236)" -9374961,HW517969,10/29/2013 08:00:00 PM,017XX N CENTRAL PARK AVE,0890,THEFT,FROM BUILDING,GAS STATION,false,false,2535,025,26,23,06,1152074,1911121,2013,11/07/2013 12:45:33 PM,41.911986574,-87.716758491,"(41.911986574, -87.716758491)" -9367633,HW511020,10/28/2013 03:00:00 PM,091XX S STEWART AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0634,006,21,49,26,1175435,1844197,2013,11/02/2013 10:54:45 AM,41.727848282,-87.632941532,"(41.727848282, -87.632941532)" -9367453,HW510727,10/28/2013 11:20:00 AM,048XX W IRVING PARK RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1634,016,45,15,06,1143518,1926115,2013,10/30/2013 11:17:00 AM,41.953296043,-87.747814885,"(41.953296043, -87.747814885)" -9365490,HW508655,10/26/2013 07:30:00 PM,0000X E 112TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0531,005,9,49,06,1178300,1830750,2013,10/27/2013 08:44:45 AM,41.690883434,-87.622853021,"(41.690883434, -87.622853021)" -9364471,HW507300,10/25/2013 07:00:00 PM,012XX N WELLS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1821,018,43,8,14,1174531,1908411,2013,10/26/2013 07:48:48 AM,41.904077575,-87.634339591,"(41.904077575, -87.634339591)" -9368192,HW510471,10/25/2013 05:00:00 PM,040XX W GRENSHAW ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1132,011,24,29,05,1149546,1894773,2013,11/03/2013 01:02:50 PM,41.867175407,-87.726470451,"(41.867175407, -87.726470451)" -9362844,HW505807,10/24/2013 04:01:00 PM,010XX W 83RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0613,006,21,71,18,1170959,1849745,2013,10/24/2013 05:35:36 PM,41.743171538,-87.649176324,"(41.743171538, -87.649176324)" -9362926,HW505629,10/24/2013 02:30:00 AM,002XX W 91ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0634,006,21,49,08B,1176260,1844567,2013,10/29/2013 10:56:45 AM,41.72884515,-87.629908349,"(41.72884515, -87.629908349)" -9360142,HW503466,10/22/2013 06:24:00 PM,053XX W DIVISION ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,2532,025,37,25,15,1140246,1907512,2013,10/23/2013 07:13:58 AM,41.902308165,-87.760300215,"(41.902308165, -87.760300215)" -9358780,HW502274,10/21/2013 06:45:00 PM,0000X E LAKE ST,0870,THEFT,POCKET-PICKING,SIDEWALK,false,false,0111,001,42,32,06,1176958,1901785,2013,10/27/2013 06:49:04 AM,41.885840894,-87.625625463,"(41.885840894, -87.625625463)" -9357846,HW501395,10/20/2013 01:00:00 AM,027XX S HAMLIN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1031,010,22,30,06,1151439,1885627,2013,10/21/2013 01:14:04 PM,41.84204075,-87.719760856,"(41.84204075, -87.719760856)" -9356701,HW500367,10/18/2013 07:00:00 PM,015XX N HUDSON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE,false,false,1821,018,43,8,14,1173068,1910776,2013,10/21/2013 11:21:48 AM,41.910599843,-87.639643258,"(41.910599843, -87.639643258)" -9355772,HW499307,10/18/2013 03:00:00 PM,054XX S MICHIGAN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0231,002,3,40,06,1178124,1868891,2013,10/20/2013 10:27:44 AM,41.795550899,-87.622343646,"(41.795550899, -87.622343646)" -9354975,HW498169,10/18/2013 03:00:00 PM,004XX E 42ND ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0214,002,3,38,08B,1180011,1877216,2013,10/22/2013 07:36:27 AM,41.818352371,-87.615168922,"(41.818352371, -87.615168922)" -9351995,HW495731,10/16/2013 07:50:00 PM,067XX S UNION AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,0723,007,6,68,26,1172857,1860296,2013,10/17/2013 04:28:08 AM,41.772083175,-87.641911265,"(41.772083175, -87.641911265)" -9351560,HW495145,10/15/2013 06:09:00 PM,033XX W 26TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1024,010,22,30,06,1154210,1886567,2013,11/05/2013 01:58:17 PM,41.844565451,-87.709566994,"(41.844565451, -87.709566994)" -9350227,HW493843,10/15/2013 02:00:00 PM,004XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,LIBRARY,true,false,0113,001,2,32,26,1176394,1898485,2013,10/16/2013 07:04:32 AM,41.876798252,-87.62779619,"(41.876798252, -87.62779619)" -9350128,HW493773,10/15/2013 01:15:00 PM,060XX W NORTH AVE,0560,ASSAULT,SIMPLE,SMALL RETAIL STORE,false,false,2513,025,29,25,08A,1135975,1910053,2013,10/16/2013 08:07:07 AM,41.909358198,-87.775927859,"(41.909358198, -87.775927859)" -9347997,HW491754,10/13/2013 05:15:00 PM,014XX S TRUMBULL AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1021,010,24,29,04B,1153565,1892742,2013,10/14/2013 12:49:24 PM,41.861523204,-87.711770024,"(41.861523204, -87.711770024)" -9347204,HW490756,10/12/2013 10:00:00 PM,025XX W MOFFAT ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1434,014,1,22,08B,1159251,1912170,2013,10/20/2013 10:03:29 AM,41.914720508,-87.690363324,"(41.914720508, -87.690363324)" -9347060,HW490607,10/12/2013 06:38:00 PM,053XX W BELMONT AVE,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,2514,025,30,19,08B,1139891,1920710,2013,10/13/2013 09:32:00 AM,41.938531422,-87.761280817,"(41.938531422, -87.761280817)" -9346247,HW489698,10/12/2013 12:00:00 AM,033XX N HALSTED ST,0820,THEFT,$500 AND UNDER,BAR OR TAVERN,false,false,1925,019,44,6,06,1170364,1922754,2013,10/14/2013 09:23:06 AM,41.943527622,-87.649225604,"(41.943527622, -87.649225604)" -9345820,HW489083,10/11/2013 03:30:00 PM,036XX N CENTRAL AVE,0820,THEFT,$500 AND UNDER,CONVENIENCE STORE,false,false,1633,016,38,15,06,1138423,1923411,2013,10/16/2013 02:31:08 PM,41.945969994,-87.766610509,"(41.945969994, -87.766610509)" -9344416,HW488030,10/10/2013 08:25:00 PM,039XX S LAKE PARK AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0214,002,4,36,18,1183461,1878927,2013,10/10/2013 10:03:33 PM,41.822967653,-87.602459924,"(41.822967653, -87.602459924)" -9360698,HW503849,10/10/2013 06:00:00 PM,020XX N KENMORE AVE,0810,THEFT,OVER $500,STREET,false,false,1811,018,43,7,06,1168932,1913720,2013,10/23/2013 11:11:05 AM,41.918769129,-87.654751715,"(41.918769129, -87.654751715)" -9345919,HW489237,10/10/2013 03:00:00 PM,013XX S ST LOUIS AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1021,010,24,29,08B,1153223,1893084,2013,10/16/2013 10:12:48 AM,41.862468479,-87.71301638,"(41.862468479, -87.71301638)" -9348839,HW492862,10/10/2013 10:00:00 AM,0000X W 114TH ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,OTHER,false,false,0522,005,34,49,06,1177998,1829418,2013,10/15/2013 12:19:52 PM,41.687235061,-87.623998815,"(41.687235061, -87.623998815)" -9341149,HW485223,10/08/2013 05:30:00 PM,068XX S UNION AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,0723,007,6,68,06,1172873,1859725,2013,10/09/2013 06:30:18 AM,41.770515931,-87.641869442,"(41.770515931, -87.641869442)" -9340907,HW484734,10/08/2013 01:39:00 PM,001XX E 35TH ST,3731,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING IDENTIFICATION,STREET,true,false,0211,002,3,35,24,1178047,1881868,2013,10/09/2013 07:27:48 AM,41.831162653,-87.622232227,"(41.831162653, -87.622232227)" -9340372,HW484367,10/07/2013 08:00:00 PM,011XX N CENTRAL PARK AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1112,011,27,23,07,1152130,1907216,2013,11/01/2013 10:35:50 AM,41.901269783,-87.716655897,"(41.901269783, -87.716655897)" -9337231,HW481152,10/05/2013 05:23:00 PM,010XX W WILSON AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1914,019,46,3,08B,1168209,1930671,2013,10/06/2013 08:30:55 AM,41.965299098,-87.656916624,"(41.965299098, -87.656916624)" -9335258,HW479058,10/03/2013 07:30:00 PM,010XX W VERNON PARK PL,0820,THEFT,$500 AND UNDER,RESIDENCE-GARAGE,false,false,1232,012,25,28,06,1169708,1897023,2013,10/08/2013 12:43:36 PM,41.872934609,-87.652387521,"(41.872934609, -87.652387521)" -9334585,HW478184,10/03/2013 02:25:00 PM,066XX S GREENWOOD AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0321,003,5,42,26,1184397,1861361,2013,10/04/2013 07:23:17 AM,41.774743259,-87.599576249,"(41.774743259, -87.599576249)" -9332022,HW476133,10/02/2013 04:55:00 AM,054XX W HARRISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,1522,015,29,25,08B,1140298,1896829,2013,10/03/2013 08:50:25 AM,41.872991728,-87.760371219,"(41.872991728, -87.760371219)" -9331199,HW474837,10/01/2013 09:15:00 AM,0000X S STATE ST,0890,THEFT,FROM BUILDING,OTHER,false,false,0112,001,42,32,06,1176348,1900301,2013,10/02/2013 07:21:10 AM,41.881782498,-87.627910281,"(41.881782498, -87.627910281)" -9329027,HW472960,09/29/2013 10:00:00 PM,035XX W HIRSCH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1422,014,26,23,14,1152377,1909122,2013,10/02/2013 09:47:51 AM,41.906495151,-87.715698231,"(41.906495151, -87.715698231)" -9327302,HW470730,09/28/2013 08:30:00 AM,058XX W SCHOOL ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1633,016,38,15,08A,1136934,1921306,2013,10/01/2013 08:34:04 AM,41.940220541,-87.772134309,"(41.940220541, -87.772134309)" -9329276,HW473218,09/27/2013 11:00:00 PM,018XX W FULLERTON AVE,0820,THEFT,$500 AND UNDER,BAR OR TAVERN,false,false,1432,014,32,22,06,1163234,1916006,2013,10/01/2013 10:32:17 AM,41.925163873,-87.675622245,"(41.925163873, -87.675622245)" -9333098,HW475335,09/25/2013 08:00:00 AM,051XX W DICKENS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2522,025,37,19,14,1141835,1913519,2013,10/03/2013 07:28:36 AM,41.918762764,-87.754314544,"(41.918762764, -87.754314544)" -9320262,HW464419,09/23/2013 10:22:00 PM,026XX E 77TH ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0421,004,7,43,18,1195449,1854467,2013,09/23/2013 11:26:40 PM,41.755559736,-87.559289506,"(41.755559736, -87.559289506)" -9322704,HW466341,09/23/2013 09:00:00 PM,013XX W LOYOLA AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2432,024,40,1,06,1166125,1943764,2013,09/26/2013 02:30:26 PM,42.001271558,-87.664202897,"(42.001271558, -87.664202897)" -9318532,HW462977,09/22/2013 07:30:00 PM,011XX N AUSTIN BLVD,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,SIDEWALK,false,false,1511,015,29,25,03,1136195,1907104,2013,09/27/2013 01:49:23 PM,41.901261852,-87.775190151,"(41.901261852, -87.775190151)" -9318253,HW462564,09/22/2013 12:00:00 PM,083XX S WOOD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0614,006,18,71,14,1165849,1849067,2013,09/23/2013 06:38:20 AM,41.741420967,-87.667918852,"(41.741420967, -87.667918852)" -9318111,HW462324,09/22/2013 11:40:00 AM,054XX S EAST VIEW PARK,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0234,002,5,41,14,1189105,1869607,2013,09/22/2013 12:36:18 PM,41.797259374,-87.582053577,"(41.797259374, -87.582053577)" -9316582,HW460471,09/20/2013 10:15:00 PM,027XX W 44TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0922,009,12,58,18,1158733,1875413,2013,06/14/2014 12:41:49 PM,41.813866207,-87.693273196,"(41.813866207, -87.693273196)" -9311752,HW455833,09/17/2013 03:07:00 PM,022XX N RACINE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1811,018,32,7,06,1167986,1914852,2013,09/18/2013 06:57:03 AM,41.921895888,-87.658194649,"(41.921895888, -87.658194649)" -9310874,HW455337,09/17/2013 10:00:00 AM,001XX N CLARK ST,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0111,001,42,32,06,1175544,1901630,2013,09/17/2013 11:55:51 AM,41.885447447,-87.63082257,"(41.885447447, -87.63082257)" -9308270,HW452815,09/15/2013 11:10:00 AM,015XX N CENTRAL AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,2532,025,37,25,08A,1138753,1909725,2013,09/18/2013 11:16:41 AM,41.908408135,-87.765730529,"(41.908408135, -87.765730529)" -9308151,HW452734,09/15/2013 08:00:00 AM,044XX W GLADYS AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,RESIDENCE,false,false,1131,011,24,26,26,1146753,1897944,2013,09/17/2013 02:50:20 PM,41.875930737,-87.736643125,"(41.875930737, -87.736643125)" -9307352,HW450765,09/13/2013 03:00:00 PM,062XX N RICHMOND ST,0560,ASSAULT,SIMPLE,APARTMENT,false,true,2413,024,50,2,08A,1155594,1941095,2013,09/27/2013 03:55:58 PM,41.994167003,-87.703017101,"(41.994167003, -87.703017101)" -9305945,HW450171,09/13/2013 12:15:00 PM,006XX N HOMAN AVE,1330,CRIMINAL TRESPASS,TO LAND,ABANDONED BUILDING,true,false,1121,011,27,23,26,1153638,1904044,2013,09/18/2013 12:28:29 PM,41.892535632,-87.711201326,"(41.892535632, -87.711201326)" -9314694,HW458575,09/12/2013 04:00:00 PM,080XX S HALSTED ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0621,006,21,71,07,1172408,1851475,2013,10/08/2013 10:06:51 AM,41.747887149,-87.643816335,"(41.747887149, -87.643816335)" -9304727,HW448997,09/12/2013 03:10:00 PM,002XX E 75TH ST,0460,BATTERY,SIMPLE,BARBERSHOP,false,false,0623,006,6,69,08B,1179087,1855296,2013,09/17/2013 01:08:52 PM,41.758222927,-87.619226301,"(41.758222927, -87.619226301)" -9304482,HW448781,09/12/2013 12:30:00 PM,012XX N LAWNDALE AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,2535,025,26,23,26,1151287,1908142,2013,09/23/2013 01:42:04 PM,41.903827404,-87.719728008,"(41.903827404, -87.719728008)" -9303427,HW448094,09/11/2013 03:30:00 PM,040XX W NELSON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2523,025,31,21,07,1149128,1919939,2013,09/12/2013 11:21:18 AM,41.936241572,-87.727352391,"(41.936241572, -87.727352391)" -9303778,HW448369,09/11/2013 11:00:00 AM,017XX W HOWARD ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2422,024,49,1,06,1163125,1950307,2013,09/12/2013 09:45:30 AM,42.019289497,-87.675054297,"(42.019289497, -87.675054297)" -9301023,HW445780,09/10/2013 01:00:00 PM,061XX S COTTAGE GROVE AVE,1330,CRIMINAL TRESPASS,TO LAND,SIDEWALK,true,false,0313,003,20,42,26,1182662,1864400,2013,09/11/2013 11:15:39 AM,41.783123003,-87.605842173,"(41.783123003, -87.605842173)" -9301033,HW445823,09/10/2013 10:15:00 AM,023XX N GREENVIEW AVE,0810,THEFT,OVER $500,STREET,false,false,1811,018,32,7,06,1165955,1915825,2013,09/10/2013 04:11:01 PM,41.924609492,-87.665629237,"(41.924609492, -87.665629237)" -9297658,HW442865,09/08/2013 11:30:00 AM,050XX S BISHOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0933,009,16,61,18,1167489,1870990,2013,09/09/2013 04:08:50 PM,41.801545549,-87.661282298,"(41.801545549, -87.661282298)" -9297353,HW442554,09/08/2013 04:10:00 AM,0000X N MASON AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,RESIDENCE,true,true,1513,015,29,25,04B,1136732,1899680,2013,09/09/2013 07:31:07 AM,41.880879833,-87.773395618,"(41.880879833, -87.773395618)" -9296152,HW440966,09/06/2013 11:18:00 PM,028XX W 71ST ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",GAS STATION,false,false,0831,008,18,66,07,1158835,1857396,2013,09/09/2013 11:53:26 AM,41.764422991,-87.693390964,"(41.764422991, -87.693390964)" -9298158,HW443520,09/03/2013 09:00:00 AM,087XX S DANTE AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,0412,004,8,48,06,1187357,1847169,2013,09/09/2013 06:55:41 AM,41.735729267,-87.589175504,"(41.735729267, -87.589175504)" -9289930,HW435033,09/02/2013 10:10:00 PM,059XX S MAPLEWOOD AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0824,008,16,66,05,1160359,1864856,2013,09/06/2013 02:02:19 PM,41.78486304,-87.687599767,"(41.78486304, -87.687599767)" -9288722,HW433610,09/01/2013 09:15:00 PM,031XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1222,012,28,27,18,1155636,1899894,2013,09/01/2013 10:17:17 PM,41.881107642,-87.703975234,"(41.881107642, -87.703975234)" -9289606,HW433509,09/01/2013 04:30:00 PM,069XX S CRANDON AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0331,003,5,43,05,1192486,1859296,2013,09/21/2013 07:34:06 PM,41.768883532,-87.569990916,"(41.768883532, -87.569990916)" -9290660,HW435606,08/31/2013 11:55:00 PM,053XX S BLACKSTONE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0234,002,4,41,06,1186856,1870264,2013,09/03/2013 01:20:53 PM,41.799115871,-87.590280001,"(41.799115871, -87.590280001)" -9287829,HW432489,08/31/2013 11:44:00 PM,022XX S ALBANY AVE,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,STREET,true,false,1033,010,24,30,26,1156084,1888859,2013,09/02/2013 02:27:18 PM,41.850817406,-87.702627894,"(41.850817406, -87.702627894)" -9326423,HW469599,08/31/2013 09:30:00 AM,081XX S WOOD ST,0810,THEFT,OVER $500,STREET,false,false,0614,006,18,71,06,1165811,1850449,2013,09/28/2013 06:54:39 AM,41.745214183,-87.668018933,"(41.745214183, -87.668018933)" -9291789,HW436861,08/30/2013 03:15:00 PM,042XX W THOMAS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1111,011,37,23,14,1148112,1907042,2013,09/04/2013 09:38:08 AM,41.900870618,-87.731418997,"(41.900870618, -87.731418997)" -9285193,HW429459,08/29/2013 08:06:00 PM,059XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0232,002,20,40,08B,1179902,1865589,2013,09/01/2013 01:23:27 PM,41.786449366,-87.615924759,"(41.786449366, -87.615924759)" -9281946,HW426728,08/27/2013 10:59:00 PM,063XX N MOZART ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2413,024,50,2,08B,1156226,1941941,2013,08/28/2013 08:36:51 AM,41.996475675,-87.700669333,"(41.996475675, -87.700669333)" -9280854,HW424692,08/26/2013 10:00:00 AM,078XX S YATES BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0414,004,7,43,14,1193523,1853283,2013,08/28/2013 07:40:53 AM,41.752358081,-87.566386359,"(41.752358081, -87.566386359)" -9278699,HW423644,08/25/2013 01:00:00 AM,082XX W IRVING PARK RD,1310,CRIMINAL DAMAGE,TO PROPERTY,VACANT LOT/LAND,false,false,1631,016,36,17,14,1120290,1925502,2013,08/26/2013 09:23:11 AM,41.952017615,-87.833217939,"(41.952017615, -87.833217939)" -9274671,HW419043,08/22/2013 03:15:00 PM,011XX S JEFFERSON ST,0860,THEFT,RETAIL THEFT,TAVERN/LIQUOR STORE,false,false,0124,001,2,28,06,1172454,1895218,2013,08/23/2013 07:32:33 AM,41.867921341,-87.642359085,"(41.867921341, -87.642359085)" -9270198,HW415275,08/20/2013 12:40:00 AM,036XX N CLARK ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,PARKING LOT/GARAGE(NON.RESID.),true,false,1923,019,44,6,18,1168211,1924262,2013,08/20/2013 03:30:24 AM,41.947712517,-87.657095221,"(41.947712517, -87.657095221)" -9268585,HW413851,08/18/2013 02:00:00 PM,106XX S CHAMPLAIN AVE,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,RESIDENCE,false,true,0512,005,9,50,20,1182539,1834278,2013,08/24/2013 06:57:52 AM,41.700467745,-87.607224962,"(41.700467745, -87.607224962)" -9271584,HW416058,08/18/2013 05:00:00 AM,108XX S AVENUE H,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0432,004,10,52,08B,1202895,1833453,2013,08/31/2013 02:06:33 PM,41.697708757,-87.532718716,"(41.697708757, -87.532718716)" -9275579,HW419823,08/17/2013 12:00:00 PM,028XX W TAYLOR ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1135,011,28,27,26,1157337,1895616,2013,08/23/2013 11:52:43 AM,41.869333987,-87.697845551,"(41.869333987, -87.697845551)" -9266861,HW411607,08/17/2013 07:00:00 AM,003XX N CENTRAL PARK AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,true,false,1123,011,28,27,26,1152370,1901862,2013,09/03/2013 12:55:11 PM,41.886573136,-87.715915864,"(41.886573136, -87.715915864)" -9274267,HW417282,08/14/2013 04:30:00 PM,059XX S LOWE AVE,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,OTHER,false,true,0711,007,20,68,02,1172948,1865675,2013,04/18/2014 09:34:42 PM,41.786841754,-87.641419032,"(41.786841754, -87.641419032)" -9259779,HW405080,08/11/2013 07:19:00 PM,002XX E 131ST PL,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0533,005,9,54,05,1180405,1818201,2013,08/24/2013 04:49:01 PM,41.656399208,-87.615529218,"(41.656399208, -87.615529218)" -9256443,HW401407,08/10/2013 08:30:00 AM,0000X E 111TH ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,OTHER,false,true,0531,005,9,49,04A,1178617,1831339,2013,08/27/2013 07:56:49 AM,41.692492554,-87.621674651,"(41.692492554, -87.621674651)" -9256014,HW400932,08/09/2013 10:10:00 PM,014XX W 47TH ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,PARKING LOT/GARAGE(NON.RESID.),true,false,0924,009,3,61,04B,1167491,1873621,2013,08/10/2013 11:07:06 AM,41.808765266,-87.661199508,"(41.808765266, -87.661199508)" -9255251,HW400104,08/09/2013 11:58:00 AM,002XX S LOTUS AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1522,015,29,25,26,1139956,1898540,2013,08/09/2013 01:09:47 PM,41.877693194,-87.761585036,"(41.877693194, -87.761585036)" -9255880,HW400654,08/08/2013 11:00:00 AM,018XX E 72ND ST,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0324,003,5,43,06,1189563,1857635,2013,08/10/2013 07:00:16 AM,41.764396299,-87.580758295,"(41.764396299, -87.580758295)" -9253099,HW398015,08/07/2013 09:20:00 PM,079XX S NORMAL AVE,0460,BATTERY,SIMPLE,ALLEY,false,false,0621,006,17,44,08B,1174311,1851915,2013,08/13/2013 09:45:58 AM,41.749052505,-87.636830113,"(41.749052505, -87.636830113)" -9250995,HW396526,08/06/2013 09:05:00 PM,071XX S ARTESIAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0832,008,18,66,18,1161231,1857440,2013,08/06/2013 10:36:15 PM,41.764494482,-87.684607734,"(41.764494482, -87.684607734)" -9249286,HW395064,08/05/2013 08:13:00 PM,064XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,STREET,false,false,0312,003,20,69,08B,1179983,1862579,2013,08/16/2013 07:36:58 AM,41.778187779,-87.615719878,"(41.778187779, -87.615719878)" -9248845,HW394509,08/04/2013 03:00:00 PM,071XX S CONSTANCE AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,APARTMENT,false,true,0324,003,5,43,26,1189567,1858033,2013,08/08/2013 11:41:47 AM,41.765488348,-87.58073087,"(41.765488348, -87.58073087)" -9244376,HW389774,08/02/2013 03:50:00 AM,055XX S PARKSIDE AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0811,008,23,56,08A,1139598,1867373,2013,08/05/2013 10:15:52 AM,41.792172764,-87.763658484,"(41.792172764, -87.763658484)" -9309840,HW454411,07/31/2013 10:00:00 AM,132XX S RIVERDALE AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0533,005,9,54,06,1182090,1817252,2013,09/17/2013 07:29:24 AM,41.653756335,-87.609392811,"(41.653756335, -87.609392811)" -9238374,HW384927,07/29/2013 09:45:00 PM,005XX E 47TH ST,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0223,002,3,38,04B,1180856,1873939,2013,08/28/2013 05:58:10 PM,41.8093406,-87.612170092,"(41.8093406, -87.612170092)" -9238138,HW384399,07/29/2013 02:30:00 PM,005XX E 115TH ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,0532,005,9,54,18,1182061,1828766,2013,07/29/2013 08:16:36 PM,41.685353114,-87.609144885,"(41.685353114, -87.609144885)" -9238988,HW385225,07/29/2013 08:15:00 AM,076XX S MORGAN ST,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,0621,006,17,71,06,1171011,1854036,2013,07/31/2013 07:05:36 AM,41.754945475,-87.648860721,"(41.754945475, -87.648860721)" -9236482,HW383571,07/29/2013 02:45:00 AM,023XX S ALBANY AVE,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,1033,010,24,30,18,1156105,1888191,2013,07/29/2013 04:14:27 AM,41.848983915,-87.702568828,"(41.848983915, -87.702568828)" -9231548,HW377783,07/24/2013 10:23:00 PM,029XX W 71ST ST,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,STREET,false,false,0831,008,18,66,03,1157634,1857360,2013,09/02/2013 02:41:57 PM,41.764348637,-87.69779395,"(41.764348637, -87.69779395)" -9229928,HW376308,07/23/2013 11:17:00 PM,001XX N LECLAIRE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1532,015,28,25,14,1142303,1900934,2013,07/24/2013 01:19:42 PM,41.884219401,-87.752907889,"(41.884219401, -87.752907889)" -9229636,HW375966,07/23/2013 08:25:00 AM,009XX N KINGSBURY ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1822,018,27,8,14,1171875,1906421,2013,07/24/2013 10:47:19 AM,41.898675875,-87.644154395,"(41.898675875, -87.644154395)" -9225920,HW372833,07/21/2013 06:00:00 PM,027XX S WASHTENAW AVE,0460,BATTERY,SIMPLE,OTHER,false,false,1034,010,12,30,08B,1158754,1885829,2013,07/22/2013 01:39:46 PM,41.842448522,-87.69291135,"(41.842448522, -87.69291135)" -9225609,HW372478,07/20/2013 11:00:00 PM,0000X E DIVISION ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,1824,018,42,8,14,1176267,1908340,2013,07/22/2013 09:33:58 AM,41.903843754,-87.627965036,"(41.903843754, -87.627965036)" -9224788,HW371354,07/20/2013 04:20:00 PM,037XX W 27TH ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,1031,010,22,30,24,1151841,1885757,2013,07/21/2013 01:38:28 PM,41.842389596,-87.718282208,"(41.842389596, -87.718282208)" -9224725,HW371229,07/20/2013 02:53:00 PM,030XX W 63RD ST,0890,THEFT,FROM BUILDING,CLEANING STORE,false,false,0823,008,15,66,06,1157345,1862671,2013,07/21/2013 11:18:38 AM,41.778928668,-87.698709577,"(41.778928668, -87.698709577)" -9223621,HW369682,07/19/2013 02:34:00 PM,012XX S INDEPENDENCE BLVD,0460,BATTERY,SIMPLE,STREET,false,false,1011,010,24,29,08B,1151252,1893995,2013,07/20/2013 10:03:14 AM,41.86500722,-87.720227835,"(41.86500722, -87.720227835)" -9222372,HW368911,07/18/2013 09:30:00 PM,012XX W 119TH ST,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,OTHER,false,false,0524,005,34,53,17,1169947,1825901,2013,10/15/2013 05:07:46 PM,41.677761963,-87.65357403,"(41.677761963, -87.65357403)" -9221120,HW367655,07/18/2013 07:25:00 AM,017XX W MONTVALE AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,2234,022,34,75,06,1166791,1829632,2013,07/20/2013 09:41:34 AM,41.688068218,-87.665020129,"(41.688068218, -87.665020129)" -9241022,HW386903,07/17/2013 12:00:00 PM,097XX S JEFFERY AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0431,004,7,51,06,1191256,1840695,2013,08/01/2013 07:47:00 AM,41.717870574,-87.575100186,"(41.717870574, -87.575100186)" -9221658,HW366033,07/17/2013 04:40:00 AM,001XX N MASON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1512,015,29,25,14,1136785,1900556,2013,07/19/2013 09:23:35 AM,41.883282745,-87.773180007,"(41.883282745, -87.773180007)" -9217203,HW363954,07/15/2013 05:50:00 PM,055XX S HALSTED ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0712,007,20,68,03,1171871,1868201,2013,07/24/2013 09:29:29 AM,41.793797093,-87.64529376,"(41.793797093, -87.64529376)" -9216316,HW362123,07/14/2013 01:27:00 PM,061XX S VERNON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,0313,003,20,42,08B,1180348,1864290,2013,07/19/2013 10:47:41 AM,41.782874563,-87.614329336,"(41.782874563, -87.614329336)" -9215223,HW361982,07/14/2013 11:35:00 AM,003XX S CICERO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1533,015,24,25,18,1144396,1898214,2013,07/14/2013 12:21:10 PM,41.876716289,-87.745290492,"(41.876716289, -87.745290492)" -9217885,HW363147,07/13/2013 04:30:00 PM,055XX S RACINE AVE,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,STREET,false,false,0713,007,16,67,03,1169222,1868128,2013,08/02/2013 12:27:23 PM,41.793654541,-87.655009565,"(41.793654541, -87.655009565)" -9214023,HW360287,07/13/2013 05:25:00 AM,025XX S HOMAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1024,010,22,30,14,1154074,1886680,2013,08/28/2013 07:23:18 AM,41.844878246,-87.710063086,"(41.844878246, -87.710063086)" -9212997,HW358993,07/12/2013 10:57:00 AM,068XX S DAMEN AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0726,007,17,67,03,1164161,1859529,2013,08/16/2013 08:06:23 PM,41.770165845,-87.67380976,"(41.770165845, -87.67380976)" -9216312,HW363056,07/12/2013 08:30:00 AM,0000X S WACKER DR,0890,THEFT,FROM BUILDING,OTHER,false,false,0122,001,2,32,06,1173977,1900284,2013,07/15/2013 12:49:42 PM,41.881788999,-87.636616958,"(41.881788999, -87.636616958)" -9212351,HW358420,07/11/2013 07:31:00 PM,011XX W 66TH ST,1330,CRIMINAL TRESPASS,TO LAND,"SCHOOL, PUBLIC, GROUNDS",false,false,0724,007,17,68,26,1169672,1861069,2013,07/13/2013 07:45:55 AM,41.774274054,-87.65356409,"(41.774274054, -87.65356409)" -9217432,HW357808,07/11/2013 02:45:00 PM,058XX S CALIFORNIA AVE,0460,BATTERY,SIMPLE,STREET,false,false,0824,008,16,63,08B,1158662,1866003,2013,07/22/2013 10:05:23 AM,41.788045372,-87.69379045,"(41.788045372, -87.69379045)" -9211669,HW357693,07/11/2013 01:08:00 PM,002XX E 111TH ST,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,PARK PROPERTY,true,false,0531,005,9,49,26,1179618,1831366,2013,07/29/2013 09:58:40 AM,41.692543893,-87.618009026,"(41.692543893, -87.618009026)" -9208756,HW354909,07/09/2013 01:52:00 PM,083XX S PHILLIPS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,true,false,0423,004,7,46,05,1194003,1849875,2013,07/12/2013 01:00:09 AM,41.742994495,-87.564738956,"(41.742994495, -87.564738956)" -9207821,HW353861,07/08/2013 06:00:00 PM,034XX W PETERSON AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,1711,017,50,13,06,1152420,1939708,2013,07/10/2013 10:09:45 AM,41.990424518,-87.714729357,"(41.990424518, -87.714729357)" -9215757,HW353540,07/08/2013 02:06:00 PM,132XX S BUFFALO AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0433,004,10,55,04B,1200052,1817538,2013,09/25/2013 06:44:57 AM,41.654108417,-87.543662034,"(41.654108417, -87.543662034)" -9248873,HW394366,07/07/2013 11:00:00 AM,004XX W 107TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,2233,022,34,49,14,1175109,1833990,2013,08/06/2013 06:29:21 AM,41.699846109,-87.634439219,"(41.699846109, -87.634439219)" -9204968,HW350693,07/06/2013 02:05:00 PM,012XX N LUIS MUNOZ MARIN DR E,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,PARK PROPERTY,true,false,1423,014,26,24,18,1157251,1908052,2013,07/06/2013 03:05:23 PM,41.903461284,-87.697823163,"(41.903461284, -87.697823163)" -9206684,HW352801,07/05/2013 04:00:00 PM,033XX N AVONDALE AVE,0810,THEFT,OVER $500,CONSTRUCTION SITE,false,false,1732,017,35,21,06,1152705,1922495,2013,07/08/2013 11:54:47 AM,41.943185298,-87.714138621,"(41.943185298, -87.714138621)" -9202921,HW348249,07/04/2013 10:00:00 PM,101XX S DR MARTIN LUTHER KING JR DR,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,0511,005,9,49,06,1180739,1837929,2013,07/05/2013 07:19:50 AM,41.710528029,-87.613704109,"(41.710528029, -87.613704109)" -9204919,HW350585,07/04/2013 10:00:00 PM,028XX N MASON AVE,0810,THEFT,OVER $500,RESIDENCE-GARAGE,false,false,2514,025,30,19,06,1136275,1918287,2013,07/08/2013 12:20:59 PM,41.931947891,-87.774628703,"(41.931947891, -87.774628703)" -9223105,HW369249,07/03/2013 10:00:00 AM,033XX W WARREN BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,ABANDONED BUILDING,false,false,1123,011,28,27,14,1153964,1900103,2013,08/05/2013 09:06:10 AM,41.881714642,-87.710109173,"(41.881714642, -87.710109173)" -9200732,HW345900,07/03/2013 12:30:00 AM,033XX N SHEFFIELD AVE,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,1924,019,44,6,07,1168975,1922434,2013,07/03/2013 11:23:30 AM,41.942679834,-87.654340184,"(41.942679834, -87.654340184)" -9198516,HW344014,07/01/2013 08:00:00 PM,034XX W 25TH ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,1024,010,22,30,26,1153466,1887213,2013,07/23/2013 09:03:54 AM,41.846352949,-87.712280232,"(41.846352949, -87.712280232)" -9198766,HW344368,06/30/2013 08:00:00 PM,097XX S PEORIA ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2223,022,21,73,06,1172072,1840194,2013,07/02/2013 08:04:59 AM,41.716937907,-87.645377948,"(41.716937907, -87.645377948)" -9196391,HW341658,06/30/2013 12:00:00 AM,038XX N KENNETH AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENTIAL YARD (FRONT/BACK),false,false,1731,017,38,16,04B,1145743,1925481,2013,08/30/2013 04:51:17 PM,41.951514289,-87.739651662,"(41.951514289, -87.739651662)" -9195089,HW340083,06/29/2013 01:35:00 AM,057XX S CARPENTER ST,0460,BATTERY,SIMPLE,STREET,false,true,0712,007,16,68,08B,1170260,1866528,2013,07/06/2013 04:20:37 PM,41.789241421,-87.651249851,"(41.789241421, -87.651249851)" -9193441,HW338281,06/27/2013 08:20:00 PM,076XX N MARSHFIELD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2422,024,49,1,18,1164017,1950501,2013,06/27/2013 09:43:38 PM,42.019802964,-87.671766335,"(42.019802964, -87.671766335)" -9193297,HW337998,06/27/2013 05:20:00 PM,077XX S ESSEX AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0421,004,7,43,08B,1194162,1854200,2013,07/06/2013 04:20:21 PM,41.754858746,-87.564014697,"(41.754858746, -87.564014697)" -9191400,HW336273,06/26/2013 03:25:00 PM,0000X W WASHINGTON ST,1330,CRIMINAL TRESPASS,TO LAND,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,true,false,0112,001,42,32,26,1175690,1900776,2013,06/27/2013 07:57:01 AM,41.883100742,-87.630312127,"(41.883100742, -87.630312127)" -9188322,HW333653,06/24/2013 07:26:00 PM,013XX S AVERS AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,1011,010,24,29,18,1150974,1893170,2013,06/14/2014 12:41:49 PM,41.862748767,-87.721269978,"(41.862748767, -87.721269978)" -9188191,HW333242,06/24/2013 03:13:00 PM,075XX S KINGSTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0421,004,7,43,14,1194551,1855130,2013,06/25/2013 07:03:15 AM,41.757401183,-87.562558617,"(41.757401183, -87.562558617)" -9188305,HW333052,06/24/2013 04:42:00 AM,025XX E 79TH ST,0610,BURGLARY,FORCIBLE ENTRY,APPLIANCE STORE,false,false,0422,004,7,46,05,1194715,1853045,2013,08/02/2013 12:50:52 PM,41.751675749,-87.562026098,"(41.751675749, -87.562026098)" -9185682,HW330763,06/22/2013 06:30:00 PM,062XX S DORCHESTER AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0314,003,20,42,08A,1186574,1863800,2013,06/30/2013 07:02:03 AM,41.781384833,-87.591518683,"(41.781384833, -87.591518683)" -9184955,HW329687,06/21/2013 08:30:00 PM,032XX S NORMAL AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0915,009,11,60,08A,1173527,1883516,2013,06/25/2013 10:21:41 AM,41.835786381,-87.638767424,"(41.835786381, -87.638767424)" -9184484,HW329145,06/21/2013 03:57:00 PM,017XX W HOWARD ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2422,024,49,1,06,1163125,1950307,2013,06/24/2013 07:11:00 AM,42.019289497,-87.675054297,"(42.019289497, -87.675054297)" -9189839,HW334835,06/20/2013 08:00:00 PM,036XX S UNION AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,false,false,0915,009,11,60,04B,1172190,1880784,2013,07/23/2013 01:11:40 PM,41.82831909,-87.643753772,"(41.82831909, -87.643753772)" -9179963,HW325198,06/18/2013 11:13:00 PM,051XX N LA CROSSE AVE,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,ALLEY,true,false,1621,016,45,12,18,1143109,1934039,2013,06/19/2013 12:16:46 AM,41.975047812,-87.749119806,"(41.975047812, -87.749119806)" -9179991,HW325187,06/18/2013 03:00:00 PM,050XX S MARSHFIELD AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0931,009,16,61,08B,1166147,1871453,2013,06/19/2013 09:29:19 AM,41.802844763,-87.666190742,"(41.802844763, -87.666190742)" -9176155,HW320657,06/15/2013 09:30:00 PM,006XX E GRAND AVE,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",OTHER,false,false,1834,018,42,8,07,1180773,1904096,2013,06/17/2013 09:39:20 AM,41.892095189,-87.611544796,"(41.892095189, -87.611544796)" -9176135,HW320790,06/15/2013 09:30:00 AM,039XX S ELLIS AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0214,002,4,36,05,1183000,1878659,2013,07/13/2013 10:05:52 PM,41.822242991,-87.604159472,"(41.822242991, -87.604159472)" -9175075,HW319332,06/15/2013 12:32:00 AM,121XX S HARVARD AVE,1512,PROSTITUTION,SOLICIT FOR PROSTITUTE,STREET,true,false,0523,005,34,53,16,1176182,1824444,2013,06/15/2013 02:21:40 AM,41.673626476,-87.630795402,"(41.673626476, -87.630795402)" -9628844,HX273082,06/14/2013 09:33:00 PM,043XX W DIVERSEY AVE,1122,DECEPTIVE PRACTICE,COUNTERFEIT CHECK,CURRENCY EXCHANGE,true,false,2524,,31,20,10,,,2013,05/29/2014 12:39:18 PM,,, -9181321,HW326307,06/14/2013 06:00:00 PM,114XX S SPAULDING AVE,1725,OFFENSE INVOLVING CHILDREN,CONTRIBUTE CRIM DELINQUENCY JUVENILE,"SCHOOL, PUBLIC, GROUNDS",false,false,2211,022,19,74,26,1156373,1828648,2013,06/29/2013 06:42:39 PM,41.685583396,-87.703186236,"(41.685583396, -87.703186236)" -9174786,HW318851,06/14/2013 06:00:00 PM,078XX S KINGSTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0421,004,7,43,08B,1194592,1853385,2013,07/01/2013 04:30:11 PM,41.752611761,-87.562465663,"(41.752611761, -87.562465663)" -9171134,HW316051,06/12/2013 08:30:00 PM,109XX S MICHIGAN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0513,005,9,49,18,1178806,1832645,2013,06/12/2013 10:13:06 PM,41.696072117,-87.620943149,"(41.696072117, -87.620943149)" -9171140,HW316046,06/12/2013 07:20:00 PM,073XX S RICHMOND ST,3730,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING JUSTICE,APARTMENT,true,false,0835,008,18,66,24,1157945,1855601,2013,06/13/2013 10:52:15 AM,41.759515361,-87.696701762,"(41.759515361, -87.696701762)" -9171032,HW315703,06/12/2013 04:30:00 PM,069XX S SANGAMON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0733,007,17,68,06,1171217,1858668,2013,06/13/2013 07:08:10 AM,41.767651767,-87.647970546,"(41.767651767, -87.647970546)" -9170962,HW315686,06/11/2013 10:00:00 PM,069XX N OTTAWA AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1611,016,41,9,06,1124454,1945564,2013,06/13/2013 10:07:18 AM,42.007002188,-87.817466529,"(42.007002188, -87.817466529)" -9167610,HW313022,06/10/2013 06:00:00 AM,067XX N NEWGARD AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,2432,024,40,1,06,1165416,1944842,2013,06/11/2013 03:39:55 PM,42.004244788,-87.666780311,"(42.004244788, -87.666780311)" -9163290,HW308086,06/06/2013 02:00:00 PM,036XX W GRENSHAW ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1133,011,24,29,26,1152089,1894753,2013,06/10/2013 02:47:20 PM,41.867070814,-87.7171352,"(41.867070814, -87.7171352)" -9162152,HW306814,06/06/2013 11:50:00 AM,005XX W HARRISON ST,0560,ASSAULT,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0124,001,2,28,08A,1172629,1897533,2013,06/12/2013 10:00:18 AM,41.874269995,-87.64164815,"(41.874269995, -87.64164815)" -9162380,HW307138,06/06/2013 07:00:00 AM,050XX S DR MARTIN LUTHER KING JR DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0223,002,3,38,14,1179753,1871765,2013,06/07/2013 11:15:20 AM,41.803400285,-87.616282185,"(41.803400285, -87.616282185)" -9160245,HW305229,06/04/2013 10:58:00 AM,001XX W ROOSEVELT RD,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0123,001,2,32,06,1175197,1895070,2013,06/05/2013 01:18:16 PM,41.867454191,-87.632293564,"(41.867454191, -87.632293564)" -9158235,HW303611,06/03/2013 05:37:00 PM,008XX W NORTH AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,SMALL RETAIL STORE,false,false,1822,018,43,8,11,1170686,1910833,2013,06/06/2013 09:09:48 AM,41.910808784,-87.648392103,"(41.910808784, -87.648392103)" -9156124,HW301954,06/03/2013 05:34:00 AM,064XX S LECLAIRE AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,false,0813,008,13,64,08B,1143611,1861564,2013,06/14/2014 12:41:49 PM,41.776157974,-87.749087922,"(41.776157974, -87.749087922)" -9160865,HW304695,06/02/2013 03:50:00 PM,063XX S HALSTED ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,true,0723,007,20,68,20,1172012,1863016,2013,06/23/2013 02:13:39 PM,41.779565774,-87.644928954,"(41.779565774, -87.644928954)" -9154075,HW299357,06/01/2013 01:55:00 AM,014XX N WESTERN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1423,014,1,24,08B,1160104,1909656,2013,06/05/2013 02:08:47 PM,41.90780431,-87.687299081,"(41.90780431, -87.687299081)" -9156958,HW299827,05/31/2013 07:00:00 AM,072XX S MICHIGAN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0323,003,6,69,05,1178460,1856858,2013,06/29/2013 09:45:53 AM,41.762523488,-87.621476808,"(41.762523488, -87.621476808)" -9150070,HW295819,05/29/2013 06:05:00 PM,033XX W 61ST PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0823,008,15,66,08B,1155382,1863614,2013,05/30/2013 09:23:57 AM,41.781555929,-87.705880943,"(41.781555929, -87.705880943)" -9150142,HW295826,05/29/2013 05:50:00 PM,025XX N LONG AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,2515,025,31,19,24,1139985,1916603,2013,05/30/2013 07:38:43 AM,41.927259668,-87.761036097,"(41.927259668, -87.761036097)" -9149287,HW295100,05/28/2013 04:10:00 PM,083XX S ASHLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0614,006,18,71,14,1167080,1849613,2013,11/08/2013 08:05:05 AM,41.742893061,-87.663392947,"(41.742893061, -87.663392947)" -9146439,HW292102,05/26/2013 08:00:00 PM,013XX W TAYLOR ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1231,012,2,28,05,1167641,1895666,2013,06/05/2013 03:27:41 PM,41.869255639,-87.660015494,"(41.869255639, -87.660015494)" -9146120,HW291662,05/26/2013 02:25:00 PM,011XX S STATE ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,CTA TRAIN,true,false,0123,001,2,32,24,1176558,1895307,2013,06/14/2014 12:41:49 PM,41.868073926,-87.627290019,"(41.868073926, -87.627290019)" -9154481,HW299716,05/25/2013 02:00:00 PM,084XX S BRANDON AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0424,004,10,46,05,1198983,1849794,2013,06/13/2013 06:52:12 AM,41.742648719,-87.546495178,"(41.742648719, -87.546495178)" -9144290,HW289353,05/24/2013 04:45:00 PM,048XX S LAMON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0814,008,23,56,08B,1144554,1871928,2013,05/27/2013 02:55:59 PM,41.804580858,-87.745371057,"(41.804580858, -87.745371057)" -9143805,HW288615,05/24/2013 09:00:00 AM,065XX S MOZART ST,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0831,008,15,66,03,1158553,1860816,2013,07/29/2013 09:50:13 AM,41.77381373,-87.694331445,"(41.77381373, -87.694331445)" -9142866,HW287719,05/23/2013 03:00:00 PM,068XX S PERRY AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,true,0722,007,6,69,06,1176536,1859701,2013,05/15/2014 12:36:49 PM,41.770368475,-87.62844312,"(41.770368475, -87.62844312)" -9141631,HW286473,05/22/2013 03:30:00 PM,063XX S DR MARTIN LUTHER KING JR DR,1310,CRIMINAL DAMAGE,TO PROPERTY,CHA PARKING LOT/GROUNDS,false,false,0312,003,20,69,14,1179976,1862780,2013,06/18/2013 05:06:54 PM,41.778739503,-87.615739391,"(41.778739503, -87.615739391)" -9140376,HW285731,05/22/2013 09:55:00 AM,064XX N RIDGE BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,2412,024,50,2,26,1162639,1942586,2013,05/23/2013 02:49:19 PM,41.998113133,-87.677060522,"(41.998113133, -87.677060522)" -9140699,HW285570,05/21/2013 10:00:00 PM,027XX W ROOSEVELT RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1135,011,28,29,08B,1157985,1894634,2013,05/24/2013 02:10:56 PM,41.866626091,-87.695493353,"(41.866626091, -87.695493353)" -9150666,HW296406,05/21/2013 07:59:00 PM,008XX S WOOD ST,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,false,false,1231,012,2,28,06,1164480,1896066,2013,06/09/2013 09:45:02 AM,41.870420725,-87.671608993,"(41.870420725, -87.671608993)" -9139399,HW284567,05/21/2013 02:30:00 PM,062XX N TROY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2413,024,50,2,26,1154260,1941488,2013,05/30/2013 01:08:21 PM,41.995272253,-87.707913591,"(41.995272253, -87.707913591)" -9200265,HW345507,05/21/2013 12:01:00 AM,061XX S TROY ST,0850,THEFT,ATTEMPT THEFT,RESIDENCE,false,false,0823,008,15,66,06,1156485,1863563,2013,07/03/2013 07:51:42 AM,41.78139382,-87.701838422,"(41.78139382, -87.701838422)" -9136040,HW281044,05/19/2013 04:30:00 AM,042XX W DIVISION ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,2534,025,37,23,04B,1148092,1907707,2013,05/22/2013 12:52:57 PM,41.902695832,-87.731475322,"(41.902695832, -87.731475322)" -9138856,HW284161,05/19/2013 02:00:00 AM,010XX W BELMONT AVE,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1924,019,44,6,06,1168911,1921462,2013,05/23/2013 03:31:36 PM,41.940014015,-87.6546037,"(41.940014015, -87.6546037)" -9136464,HW281646,05/18/2013 02:00:00 PM,105XX S OGLESBY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0434,004,10,51,14,1193818,1835718,2013,05/20/2013 07:59:39 AM,41.704150888,-87.565879225,"(41.704150888, -87.565879225)" -9137395,HW282668,05/18/2013 12:30:00 PM,040XX E 106TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0432,004,10,52,07,1204462,1835244,2013,07/28/2013 07:05:06 PM,41.70258329,-87.526919961,"(41.70258329, -87.526919961)" -9138860,HW284195,05/18/2013 11:38:00 AM,036XX N BROADWAY,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,BANK,false,false,1925,019,46,6,11,1170904,1924204,2013,05/22/2013 08:05:07 AM,41.947494633,-87.647198177,"(41.947494633, -87.647198177)" -9159962,HW279894,05/18/2013 10:50:00 AM,079XX S HALSTED ST,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,STREET,true,false,0621,006,17,71,18,1172303,1852301,2013,07/11/2013 02:15:23 PM,41.750156108,-87.644176845,"(41.750156108, -87.644176845)" -9134618,HW278767,05/17/2013 12:45:00 PM,030XX N MANGO AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2514,025,30,19,08B,1137481,1919428,2013,05/19/2013 06:52:55 AM,41.935057267,-87.770169215,"(41.935057267, -87.770169215)" -9134160,HW278200,05/17/2013 02:30:00 AM,027XX W POLK ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1135,011,2,27,06,1158078,1896294,2013,05/20/2013 09:49:28 AM,41.871179401,-87.695106631,"(41.871179401, -87.695106631)" -9213479,HW359690,05/17/2013 12:01:00 AM,018XX W ROSCOE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1922,019,32,5,06,1163583,1922647,2013,07/15/2013 11:50:47 AM,41.943379809,-87.674152237,"(41.943379809, -87.674152237)" -9129516,HW274386,05/14/2013 06:30:00 PM,022XX W 18TH ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,OTHER,false,false,1234,012,25,31,26,1161699,1891330,2013,05/20/2013 10:29:27 AM,41.857483062,-87.681950871,"(41.857483062, -87.681950871)" -9129370,HW272824,05/13/2013 04:58:00 PM,075XX S SANGAMON ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0621,006,17,71,26,1171244,1854744,2013,06/11/2013 08:01:06 AM,41.756883228,-87.647986174,"(41.756883228, -87.647986174)" -9128054,HW272670,05/13/2013 04:20:00 PM,003XX S KEDZIE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,CTA BUS,false,false,1134,011,28,27,14,1155052,1898458,2013,05/14/2013 07:17:19 AM,41.877178845,-87.706158189,"(41.877178845, -87.706158189)" -9136086,HW272284,05/13/2013 11:00:00 AM,047XX S UNION AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,"SCHOOL, PUBLIC, BUILDING",false,false,0935,009,11,61,26,1172475,1873205,2013,05/19/2013 10:59:42 AM,41.807515304,-87.642931557,"(41.807515304, -87.642931557)" -9127449,HW272097,05/12/2013 03:30:00 PM,123XX S LA SALLE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,0523,005,9,53,14,1177537,1823178,2013,05/14/2013 06:39:38 AM,41.670121952,-87.625874034,"(41.670121952, -87.625874034)" -9131698,HW276693,05/10/2013 12:00:00 PM,022XX E 68TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0331,003,5,43,14,1192169,1860273,2013,05/16/2013 10:38:03 AM,41.771572208,-87.571121124,"(41.771572208, -87.571121124)" -9123045,HW267491,05/09/2013 04:24:00 PM,007XX W 79TH ST,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,0621,006,17,71,04A,1172637,1852527,2013,06/23/2013 09:50:30 PM,41.750768934,-87.642946278,"(41.750768934, -87.642946278)" -9120662,HW265424,05/08/2013 11:40:00 AM,013XX S ASHLAND AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,1233,012,2,28,08B,1165893,1893995,2013,05/08/2013 02:18:35 PM,41.864707716,-87.666480488,"(41.864707716, -87.666480488)" -9116986,HW262048,05/06/2013 12:15:00 AM,068XX S LANGLEY AVE,0261,CRIM SEXUAL ASSAULT,AGGRAVATED: HANDGUN,ALLEY,false,false,0321,003,6,42,02,1182024,1860012,2013,06/29/2013 04:35:59 PM,41.771096702,-87.608316896,"(41.771096702, -87.608316896)" -9116423,HW261455,05/05/2013 11:05:00 AM,009XX N MICHIGAN AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1833,018,42,8,06,1177285,1906688,2013,05/06/2013 12:35:12 PM,41.899287561,-87.624275876,"(41.899287561, -87.624275876)" -9115988,HW260851,05/05/2013 02:14:00 AM,070XX S PARNELL AVE,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,0732,007,6,68,08A,1173791,1858424,2013,05/05/2013 06:20:42 AM,41.766925532,-87.638542952,"(41.766925532, -87.638542952)" -9115437,HW260187,05/04/2013 03:40:00 PM,009XX W 65TH ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0723,007,17,68,18,1171290,1861695,2013,05/04/2013 04:30:52 PM,41.775956625,-87.647614506,"(41.775956625, -87.647614506)" -9114984,HW259600,05/04/2013 04:45:00 AM,042XX W CONGRESS PKWY,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1132,011,24,26,03,1148404,1897400,2013,05/08/2013 03:38:38 PM,41.874406282,-87.730595213,"(41.874406282, -87.730595213)" -9115014,HW259633,05/04/2013 01:00:00 AM,060XX S MAY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0712,007,16,68,08B,1169725,1864741,2013,05/21/2013 02:21:15 PM,41.784349315,-87.653263346,"(41.784349315, -87.653263346)" -9112219,HW256823,05/01/2013 10:00:00 PM,071XX S RIDGELAND AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0324,003,5,43,05,1189062,1858051,2013,05/11/2013 09:43:03 AM,41.765549852,-87.582581251,"(41.765549852, -87.582581251)" -9110002,HW254930,04/30/2013 10:55:00 PM,050XX W IRVING PARK RD,0560,ASSAULT,SIMPLE,RESTAURANT,true,false,1624,016,45,15,08A,1142279,1926169,2013,05/01/2013 07:12:52 AM,41.953467362,-87.752368259,"(41.953467362, -87.752368259)" -9109890,HW254690,04/30/2013 07:26:00 PM,024XX W 72ND ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0832,008,18,66,15,1161389,1856805,2013,05/01/2013 02:49:07 PM,41.762748679,-87.684046188,"(41.762748679, -87.684046188)" -9108423,HW252877,04/29/2013 03:00:00 PM,001XX N DEARBORN ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0111,001,42,32,06,1175967,1901030,2013,04/30/2013 10:03:02 AM,41.883791501,-87.629287328,"(41.883791501, -87.629287328)" -9107683,HW252437,04/27/2013 09:00:00 PM,032XX N LAKE SHORE DR SB,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,false,true,1925,019,44,6,08B,1173234,1921685,2013,05/06/2013 01:48:49 PM,41.940530912,-87.638708797,"(41.940530912, -87.638708797)" -9105741,HW250287,04/27/2013 02:35:00 PM,092XX S MICHIGAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0634,006,6,49,08B,1178744,1843430,2013,05/13/2013 07:43:13 PM,41.725669014,-87.620843411,"(41.725669014, -87.620843411)" -9105987,HW250437,04/27/2013 01:00:00 PM,066XX S ROCKWELL ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0831,008,15,66,05,1160150,1860287,2013,07/21/2013 01:00:33 PM,41.772329368,-87.688491674,"(41.772329368, -87.688491674)" -9102244,HW246692,04/25/2013 01:15:00 AM,005XX S STATE ST,0460,BATTERY,SIMPLE,COLLEGE/UNIVERSITY RESIDENCE HALL,false,false,0123,001,2,32,08B,1176487,1897892,2013,07/24/2013 08:50:59 AM,41.875168926,-87.627472632,"(41.875168926, -87.627472632)" -9102820,HW246613,04/24/2013 11:45:00 PM,091XX S STONY ISLAND AVE,0560,ASSAULT,SIMPLE,GAS STATION,false,false,0413,004,8,48,08A,1188557,1844370,2013,05/05/2013 03:13:45 PM,41.728019969,-87.58486839,"(41.728019969, -87.58486839)" -9101969,HW246211,04/24/2013 05:50:00 PM,051XX S MORGAN ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0934,009,20,61,08B,1170555,1870817,2013,04/25/2013 01:21:22 PM,41.801004486,-87.650043184,"(41.801004486, -87.650043184)" -9101721,HW245973,04/24/2013 03:30:00 PM,064XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0312,003,20,69,08B,1179988,1862397,2013,05/06/2013 02:15:52 PM,41.777688239,-87.615707116,"(41.777688239, -87.615707116)" -9099852,HW244419,04/23/2013 11:45:00 AM,070XX S DAMEN AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0735,007,17,67,06,1164286,1857782,2013,04/24/2013 06:38:15 AM,41.765369206,-87.673400694,"(41.765369206, -87.673400694)" -9097276,HW242018,04/21/2013 06:00:00 PM,045XX W NORTH AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,2533,025,37,23,06,1145935,1910208,2013,04/22/2013 06:26:20 AM,41.909600093,-87.739334828,"(41.909600093, -87.739334828)" -9124498,HW242997,04/21/2013 01:49:00 PM,031XX S HALSTED ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,0913,009,11,60,14,1171440,1884079,2013,05/11/2013 08:12:44 AM,41.837377356,-87.64640877,"(41.837377356, -87.64640877)" -9096188,HW240498,04/20/2013 12:10:00 PM,019XX E 71ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0332,003,5,43,18,1190377,1858351,2013,04/20/2013 01:54:55 PM,41.766341479,-87.577751774,"(41.766341479, -87.577751774)" -9096034,HW240298,04/20/2013 09:45:00 AM,061XX S CAMPBELL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0825,008,15,66,08B,1160804,1863629,2013,04/24/2013 06:55:44 AM,41.781486802,-87.686002068,"(41.781486802, -87.686002068)" -9094519,HW238821,04/19/2013 07:00:00 AM,008XX E 82ND ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,APARTMENT,true,false,0631,006,8,44,26,1183188,1850845,2013,04/20/2013 05:37:53 AM,41.745914519,-87.604334893,"(41.745914519, -87.604334893)" -9095079,HW238865,04/18/2013 07:15:00 PM,040XX W MONROE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1115,011,28,26,06,1149638,1899319,2013,04/21/2013 07:41:23 AM,41.879648367,-87.72601462,"(41.879648367, -87.72601462)" -9093809,HW238106,04/18/2013 03:50:00 PM,004XX S CENTRAL PARK AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,true,1133,011,28,27,04A,1152411,1897881,2013,05/01/2013 02:27:46 PM,41.875648042,-87.715870482,"(41.875648042, -87.715870482)" -9092071,HW236897,04/17/2013 02:45:00 PM,038XX N CALIFORNIA AVE,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,PARK PROPERTY,false,false,1733,017,33,16,26,1157066,1925582,2013,05/16/2013 02:26:15 PM,41.951568663,-87.698025611,"(41.951568663, -87.698025611)" -9089544,HW234630,04/15/2013 09:40:00 PM,035XX N RACINE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,1924,019,44,6,26,1167694,1923791,2013,04/16/2013 06:46:55 AM,41.94643125,-87.659009199,"(41.94643125, -87.659009199)" -9089553,HW234605,04/15/2013 09:15:00 PM,003XX S CICERO AVE,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1533,015,24,25,26,1144396,1898214,2013,04/16/2013 06:41:58 AM,41.876716289,-87.745290492,"(41.876716289, -87.745290492)" -9093500,HW237885,04/15/2013 12:00:00 AM,073XX S DORCHESTER AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,APARTMENT,false,false,0324,003,5,43,11,1186858,1856368,2013,04/19/2013 09:37:46 AM,41.760984051,-87.590712758,"(41.760984051, -87.590712758)" -9087954,HW232859,04/14/2013 01:20:00 PM,047XX S ASHLAND AVE,0810,THEFT,OVER $500,STREET,false,false,0931,009,20,61,06,1166424,1873487,2013,04/15/2013 11:38:43 AM,41.808420388,-87.665116861,"(41.808420388, -87.665116861)" -9086602,HW231156,04/12/2013 06:30:00 PM,001XX S SANGAMON ST,0810,THEFT,OVER $500,STREET,false,false,1232,012,2,28,06,1170081,1899476,2013,04/14/2013 01:55:56 PM,41.879657691,-87.650946469,"(41.879657691, -87.650946469)" -9087178,HW231905,04/12/2013 05:00:00 PM,035XX N KOSTNER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1731,017,30,16,26,1146463,1923263,2013,04/17/2013 11:06:35 AM,41.945414194,-87.737061654,"(41.945414194, -87.737061654)" -9085913,HW230261,04/12/2013 04:16:00 PM,103XX S MICHIGAN AVE,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,CTA BUS STOP,true,false,0512,005,9,49,18,1178930,1836678,2013,04/12/2013 05:31:34 PM,41.707136412,-87.620366899,"(41.707136412, -87.620366899)" -9084425,HW228700,04/11/2013 02:00:00 PM,033XX W 25TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1024,010,22,30,18,1154461,1887233,2013,04/11/2013 04:36:22 PM,41.846388028,-87.708628079,"(41.846388028, -87.708628079)" -9083647,HW227107,04/09/2013 06:00:00 PM,0000X E 75TH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,DRUG STORE,false,false,0623,006,6,69,11,1177736,1855240,2013,04/12/2013 07:40:30 AM,41.758099925,-87.624179245,"(41.758099925, -87.624179245)" -9080749,HW225436,04/09/2013 07:00:00 AM,049XX S KEDVALE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE,true,false,0815,008,14,57,07,1149569,1871599,2013,04/17/2013 02:31:32 PM,41.803582419,-87.726986553,"(41.803582419, -87.726986553)" -9089099,HW233021,04/08/2013 08:30:00 PM,026XX N MELVINA AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,2512,025,29,19,08A,1134574,1917167,2013,04/25/2013 10:19:11 AM,41.928904731,-87.780906258,"(41.928904731, -87.780906258)" -9080856,HW225580,04/08/2013 07:00:00 PM,072XX S EAST END AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0324,003,8,43,08B,1188748,1857345,2013,04/12/2013 12:15:57 PM,41.763620042,-87.583754694,"(41.763620042, -87.583754694)" -9080119,HW224505,04/08/2013 01:45:00 PM,132XX S INDIANA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0533,005,9,54,07,1179955,1817599,2013,06/07/2013 01:54:36 PM,41.654757495,-87.617194112,"(41.654757495, -87.617194112)" -9079746,HW224647,04/08/2013 08:00:00 AM,083XX S RHODES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,0632,006,6,44,14,1181219,1849481,2013,04/09/2013 07:02:44 AM,41.742217098,-87.611591562,"(41.742217098, -87.611591562)" -9079183,HW223969,04/08/2013 07:20:00 AM,050XX S CORNELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,0222,002,4,39,14,1187850,1871631,2013,04/08/2013 12:41:19 PM,41.802843379,-87.586591273,"(41.802843379, -87.586591273)" -9078158,HW223047,04/07/2013 12:30:00 AM,0000X W DIVISION ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1824,018,42,8,06,1175957,1908331,2013,04/07/2013 02:24:22 PM,41.903826047,-87.629103999,"(41.903826047, -87.629103999)" -9077116,HW221868,04/06/2013 12:05:00 PM,032XX W NORTH AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1422,014,26,23,05,1154215,1910485,2013,05/05/2013 11:37:00 AM,41.910198831,-87.70891005,"(41.910198831, -87.70891005)" -9076982,HW221682,04/05/2013 07:00:00 PM,057XX S KENWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0235,002,5,41,14,1186123,1867281,2013,04/06/2013 12:05:08 PM,41.790947645,-87.593062248,"(41.790947645, -87.593062248)" -9076211,HW220435,04/05/2013 11:15:00 AM,024XX E 79TH ST,0810,THEFT,OVER $500,RESTAURANT,false,false,0422,004,7,46,06,1193846,1853022,2013,04/16/2013 01:20:46 AM,41.751633969,-87.565211265,"(41.751633969, -87.565211265)" -9081081,HW225549,04/05/2013 11:00:00 AM,038XX W LEXINGTON ST,0810,THEFT,OVER $500,APARTMENT,false,false,1133,011,24,26,06,1150627,1896456,2013,04/10/2013 08:34:07 AM,41.871772713,-87.722457947,"(41.871772713, -87.722457947)" -9074727,HW219477,04/04/2013 02:45:00 PM,010XX N LARAMIE AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,"SCHOOL, PUBLIC, BUILDING",false,false,1524,015,37,25,20,1141465,1906395,2013,04/21/2013 12:34:53 PM,41.899220555,-87.755850198,"(41.899220555, -87.755850198)" -9074623,HW219388,04/03/2013 04:30:00 PM,005XX W SUPERIOR ST,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE-GARAGE,false,false,1831,018,42,8,14,1172377,1905224,2013,04/04/2013 06:27:22 PM,41.895380157,-87.642346001,"(41.895380157, -87.642346001)" -9071659,HW216846,04/02/2013 10:00:00 AM,027XX S KOSTNER AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,1031,010,22,30,14,1147538,1885623,2013,04/03/2013 07:40:25 AM,41.842105356,-87.734076604,"(41.842105356, -87.734076604)" -9070533,HW215888,04/02/2013 08:05:00 AM,021XX W CORTEZ ST,0810,THEFT,OVER $500,STREET,true,false,1212,012,32,24,06,1161650,1907002,2013,05/13/2013 09:38:40 AM,41.900489439,-87.681693959,"(41.900489439, -87.681693959)" -9090581,HW235594,04/02/2013 07:00:00 AM,009XX N LEAMINGTON AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1531,015,37,25,05,1141890,1905919,2013,05/14/2013 11:14:36 AM,41.897906495,-87.754300962,"(41.897906495, -87.754300962)" -9070013,HW215174,04/01/2013 03:50:00 PM,063XX S MORGAN ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0724,007,16,68,06,1170688,1862978,2013,04/02/2013 06:39:25 AM,41.779490481,-87.649783997,"(41.779490481, -87.649783997)" -9071172,HW216235,03/31/2013 10:00:00 AM,043XX S WENTWORTH AVE,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,STREET,false,false,0925,009,3,37,10,1175609,1876459,2013,04/26/2013 10:39:54 AM,41.81637492,-87.631339504,"(41.81637492, -87.631339504)" -9068088,HW213295,03/31/2013 12:19:00 AM,025XX N SPRINGFIELD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2524,025,30,22,18,1149920,1916406,2013,03/31/2013 02:49:30 AM,41.926531317,-87.724533886,"(41.926531317, -87.724533886)" -9066571,HW211257,03/29/2013 02:00:00 PM,062XX N CLAREMONT AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2413,024,50,2,06,1159557,1941410,2013,03/31/2013 09:11:26 AM,41.994950405,-87.688430729,"(41.994950405, -87.688430729)" -9061084,HW206073,03/25/2013 01:00:00 PM,003XX E 47TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0215,002,3,38,18,1179017,1873966,2013,03/25/2013 02:03:45 PM,41.809456838,-87.618914329,"(41.809456838, -87.618914329)" -9077264,HW222126,03/25/2013 09:00:00 AM,088XX S LUELLA AVE,0810,THEFT,OVER $500,RESIDENCE,false,true,0412,004,8,48,06,1192749,1846725,2013,04/24/2013 06:37:23 PM,41.734381257,-87.56943602,"(41.734381257, -87.56943602)" -9083816,HW228168,03/25/2013 01:00:00 AM,0000X W DIVISION ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,OTHER,false,false,1824,018,42,8,11,1175751,1908405,2013,04/12/2013 12:17:46 PM,41.904033744,-87.629858449,"(41.904033744, -87.629858449)" -9060406,HW205350,03/24/2013 06:47:00 PM,069XX N GREENVIEW AVE,0820,THEFT,$500 AND UNDER,STREET,true,false,2431,024,49,1,06,1165164,1945801,2013,03/26/2013 08:31:31 AM,42.006881683,-87.667679987,"(42.006881683, -87.667679987)" -9059825,HW204857,03/24/2013 11:00:00 AM,024XX W GLADYS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1125,011,2,28,08B,1160283,1898322,2013,03/28/2013 02:41:23 PM,41.87669915,-87.686955179,"(41.87669915, -87.686955179)" -9059326,HW204214,03/23/2013 10:00:00 AM,103XX S AVENUE G,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,true,0432,004,10,52,05,1203112,1836868,2013,03/25/2013 06:51:56 PM,41.707074259,-87.531807828,"(41.707074259, -87.531807828)" -9071447,HW216570,03/22/2013 03:10:00 PM,033XX W 71ST ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0831,008,18,66,08A,1155297,1857375,2013,04/03/2013 11:33:22 AM,41.764436863,-87.70635933,"(41.764436863, -87.70635933)" -9054964,HW199729,03/20/2013 11:31:00 AM,057XX S ADA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0713,007,16,67,18,1168276,1866364,2013,03/20/2013 01:31:09 PM,41.788834348,-87.658529247,"(41.788834348, -87.658529247)" -9054429,HW196935,03/18/2013 09:29:00 AM,048XX S PAULINA ST,1570,SEX OFFENSE,PUBLIC INDECENCY,RESIDENCE,false,false,0931,009,20,61,17,1165781,1872809,2013,04/02/2013 02:20:52 AM,41.806573572,-87.667494505,"(41.806573572, -87.667494505)" -9051424,HW196816,03/18/2013 08:50:00 AM,026XX N HOYNE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,1931,019,1,7,08B,1162397,1917830,2013,03/21/2013 11:14:38 AM,41.930186621,-87.678646594,"(41.930186621, -87.678646594)" -9049988,HW195184,03/16/2013 08:05:00 PM,011XX W ADDISON ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1924,019,44,6,08B,1168041,1924023,2013,03/17/2013 11:23:09 AM,41.94706037,-87.657727021,"(41.94706037, -87.657727021)" -9048547,HW193160,03/15/2013 12:13:00 PM,001XX W VAN BUREN ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0122,001,2,32,08B,1175483,1898467,2013,03/16/2013 09:11:20 AM,41.876769359,-87.631141605,"(41.876769359, -87.631141605)" -9048620,HW193267,03/15/2013 12:00:00 PM,006XX W 35TH ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0915,009,11,60,26,1172360,1881726,2013,03/23/2013 02:22:03 PM,41.830900277,-87.643102292,"(41.830900277, -87.643102292)" -9047753,HW192045,03/14/2013 02:48:00 PM,029XX E 78TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0421,004,7,43,14,1196937,1853930,2013,03/15/2013 06:06:48 AM,41.754049303,-87.553854304,"(41.754049303, -87.553854304)" -9046903,HW191731,03/14/2013 12:00:00 PM,029XX N CALIFORNIA AVE,0810,THEFT,OVER $500,OTHER,false,false,1411,014,1,21,06,1157241,1919449,2013,03/15/2013 01:49:09 PM,41.934735743,-87.697549531,"(41.934735743, -87.697549531)" -9044518,HW190109,03/13/2013 08:15:00 AM,008XX N STATE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1832,018,42,8,11,1176184,1905758,2013,03/13/2013 10:46:18 AM,41.896760495,-87.62834785,"(41.896760495, -87.62834785)" -9043531,HW189099,03/12/2013 01:00:00 PM,075XX S MAY ST,1330,CRIMINAL TRESPASS,TO LAND,CONVENIENCE STORE,true,false,0612,006,17,71,26,1169927,1854496,2013,03/13/2013 06:04:50 AM,41.756231373,-87.652819939,"(41.756231373, -87.652819939)" -9042054,HW188077,03/11/2013 02:00:00 PM,016XX W 95TH ST,0820,THEFT,$500 AND UNDER,RESTAURANT,false,false,2221,022,19,72,06,1166876,1841743,2013,03/12/2013 06:46:06 AM,41.721300961,-87.664364532,"(41.721300961, -87.664364532)" -9039993,HW186374,03/09/2013 08:45:00 PM,015XX W MORSE AVE,0810,THEFT,OVER $500,STREET,false,false,2431,024,49,1,06,1164714,1946111,2013,03/11/2013 07:28:47 AM,42.007741918,-87.669326759,"(42.007741918, -87.669326759)" -9049578,HW194495,03/09/2013 10:00:00 AM,069XX S CLYDE AVE,0610,BURGLARY,FORCIBLE ENTRY,VACANT LOT/LAND,false,false,0331,003,5,43,05,1191378,1859098,2013,03/26/2013 04:26:09 PM,41.768367118,-87.574058636,"(41.768367118, -87.574058636)" -9038460,HW184610,03/08/2013 08:59:00 PM,096XX S HALSTED ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,true,false,2223,022,21,73,18,1172638,1840858,2013,03/08/2013 10:30:11 PM,41.718747589,-87.643285453,"(41.718747589, -87.643285453)" -9038211,HW184346,03/08/2013 05:40:00 PM,019XX N MILWAUKEE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1434,014,1,22,14,1160282,1912690,2013,03/10/2013 09:19:08 AM,41.916126154,-87.686561159,"(41.916126154, -87.686561159)" -9037585,HW183828,03/08/2013 11:25:00 AM,065XX S FAIRFIELD AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,STREET,true,false,0831,008,15,66,08B,1159125,1861348,2013,03/09/2013 03:12:31 PM,41.775261933,-87.692220057,"(41.775261933, -87.692220057)" -9052012,HW197372,03/08/2013 09:00:00 AM,038XX W 82ND PL,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,STREET,false,false,0834,008,18,70,06,1152355,1849562,2013,03/19/2013 11:09:20 AM,41.743055023,-87.717347677,"(41.743055023, -87.717347677)" -9034777,HW181955,03/06/2013 09:30:00 PM,049XX W NORTH AVE,0820,THEFT,$500 AND UNDER,ATHLETIC CLUB,false,false,2533,025,37,25,06,1143341,1910146,2013,03/07/2013 07:09:42 AM,41.909478858,-87.748865737,"(41.909478858, -87.748865737)" -9034845,HW182127,03/06/2013 03:00:00 PM,039XX S WESTERN AVE,0810,THEFT,OVER $500,STREET,false,false,0921,009,12,58,06,1160989,1878147,2013,03/07/2013 09:58:33 AM,41.821322222,-87.68492229,"(41.821322222, -87.68492229)" -9032370,HW180288,03/05/2013 04:07:00 PM,036XX W CONGRESS PKWY,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1133,011,28,27,18,1152343,1897501,2013,03/05/2013 06:04:36 PM,41.874606623,-87.716130188,"(41.874606623, -87.716130188)" -9032230,HW180137,03/05/2013 01:50:00 PM,021XX E 83RD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0412,004,8,46,08B,1192261,1850330,2013,03/16/2013 09:27:22 AM,41.744285573,-87.571106823,"(41.744285573, -87.571106823)" -9031719,HW179778,03/04/2013 03:30:00 PM,046XX S WASHTENAW AVE,0890,THEFT,FROM BUILDING,ABANDONED BUILDING,false,false,0922,009,12,58,06,1159193,1873606,2013,03/05/2013 11:19:53 AM,41.808898157,-87.691635362,"(41.808898157, -87.691635362)" -9029384,HW176994,03/02/2013 09:00:00 PM,019XX W MADISON ST,0460,BATTERY,SIMPLE,OTHER,false,false,1223,012,27,28,08B,1163705,1900003,2013,03/03/2013 07:14:30 PM,41.88124055,-87.674343291,"(41.88124055, -87.674343291)" -9027267,HW174500,03/01/2013 12:30:00 AM,021XX N CLARK ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,1814,018,43,7,08B,1173584,1914628,2013,03/07/2013 07:45:30 AM,41.921158441,-87.637632895,"(41.921158441, -87.637632895)" -9028017,HW175099,02/28/2013 03:00:00 PM,011XX W DIVISION ST,0560,ASSAULT,SIMPLE,WAREHOUSE,true,false,1822,018,32,8,08A,1168614,1908122,2013,03/10/2013 07:38:53 AM,41.903414787,-87.656082473,"(41.903414787, -87.656082473)" -9034124,HW172770,02/27/2013 04:16:35 PM,012XX W 73RD PL,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,RESIDENCE,true,false,0734,007,17,67,18,1169065,1855997,2013,04/10/2013 11:47:01 AM,41.760368983,-87.655935674,"(41.760368983, -87.655935674)" -9023328,HW170363,02/25/2013 08:03:00 PM,019XX E 71ST ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0333,003,5,43,03,1190310,1858206,2013,03/01/2013 08:33:01 PM,41.765945202,-87.578002016,"(41.765945202, -87.578002016)" -9022699,HW170319,02/25/2013 06:30:00 PM,003XX S WESTERN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1225,012,2,28,14,1160508,1898174,2013,02/26/2013 08:25:44 AM,41.876288371,-87.686133147,"(41.876288371, -87.686133147)" -9022889,HW170516,02/25/2013 04:00:00 PM,080XX S CHAPPEL AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0414,004,8,46,05,1191304,1851864,2013,04/05/2013 09:55:57 AM,41.748518214,-87.574563752,"(41.748518214, -87.574563752)" -9026296,HW173462,02/25/2013 12:00:00 PM,019XX W NORTH AVE,0890,THEFT,FROM BUILDING,ATHLETIC CLUB,false,false,1434,014,32,24,06,1163045,1910702,2013,02/28/2013 12:24:02 PM,41.910613318,-87.676465994,"(41.910613318, -87.676465994)" -9020820,HW168391,02/24/2013 12:30:00 AM,054XX W EDDY ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1633,016,38,15,14,1139666,1923034,2013,02/25/2013 06:32:32 AM,41.944912826,-87.762050833,"(41.944912826, -87.762050833)" -9013249,HW161197,02/18/2013 02:00:00 PM,049XX W KAMERLING AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2533,025,37,25,07,1142893,1908481,2013,03/11/2013 01:05:25 PM,41.904918279,-87.75055307,"(41.904918279, -87.75055307)" -9011044,HW158167,02/15/2013 07:10:00 PM,053XX S KIMBARK AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0234,002,4,41,03,1185604,1870253,2013,03/04/2013 10:43:42 PM,41.799115293,-87.594871663,"(41.799115293, -87.594871663)" -9058660,HW202916,02/15/2013 03:00:00 PM,030XX W PALMER BLVD,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,1414,014,35,22,06,1155762,1914653,2013,04/28/2013 08:14:51 AM,41.921605121,-87.703114443,"(41.921605121, -87.703114443)" -9010117,HW156490,02/14/2013 02:37:00 PM,085XX S COTTAGE GROVE AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,SIDEWALK,false,false,0632,006,6,44,11,1183020,1848266,2013,02/15/2013 02:40:42 PM,41.738841364,-87.605030451,"(41.738841364, -87.605030451)" -9008368,HW155749,02/13/2013 09:40:00 PM,049XX W WALTON ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,1531,015,37,25,15,1142993,1905814,2013,02/14/2013 07:35:20 AM,41.897597864,-87.750252322,"(41.897597864, -87.750252322)" -9006217,HW153678,02/12/2013 08:00:00 AM,076XX W ADDISON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1631,016,36,17,06,1124228,1923095,2013,02/13/2013 07:36:41 AM,41.945348542,-87.818794589,"(41.945348542, -87.818794589)" -9007607,HW153414,02/12/2013 07:44:00 AM,068XX S ST LAWRENCE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0321,003,20,42,14,1181376,1859881,2013,02/18/2013 08:44:34 AM,41.770752191,-87.610696241,"(41.770752191, -87.610696241)" -9004775,HW152149,02/11/2013 07:50:00 AM,069XX S VERNON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0322,003,6,69,07,1180413,1858861,2013,02/11/2013 10:36:06 AM,41.767975356,-87.614257459,"(41.767975356, -87.614257459)" -9000744,HW147488,02/06/2013 05:00:00 PM,058XX W WASHINGTON BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1513,015,29,25,26,1137493,1900114,2013,02/23/2013 08:14:36 PM,41.882057128,-87.770590787,"(41.882057128, -87.770590787)" -8998290,HW145657,02/05/2013 10:25:00 PM,080XX S INGLESIDE AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,APARTMENT,true,false,0631,006,8,44,18,1183997,1851981,2013,02/06/2013 12:22:58 AM,41.749012976,-87.601335174,"(41.749012976, -87.601335174)" -8996938,HW144451,02/04/2013 08:25:00 PM,031XX S PULASKI RD,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1031,010,22,30,08A,1150163,1883671,2013,03/21/2013 05:24:35 PM,41.836698151,-87.724494316,"(41.836698151, -87.724494316)" -8996688,HW144024,02/04/2013 05:15:00 PM,121XX S PRINCETON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0523,005,34,53,14,1176435,1824280,2013,02/05/2013 06:35:29 AM,41.67317077,-87.629874301,"(41.67317077, -87.629874301)" -8996793,HW144123,02/04/2013 07:00:00 AM,079XX S INGLESIDE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0624,006,8,44,03,1183894,1852756,2013,02/15/2013 12:58:07 AM,41.751142061,-87.601688452,"(41.751142061, -87.601688452)" -8995157,HW142539,02/03/2013 10:34:00 AM,038XX W JACKSON BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1122,011,28,26,18,1150946,1898455,2013,02/03/2013 12:12:29 PM,41.877251956,-87.721234423,"(41.877251956, -87.721234423)" -8993669,HW140577,02/01/2013 02:56:00 PM,010XX E 47TH ST,0890,THEFT,FROM BUILDING,"SCHOOL, PRIVATE, BUILDING",true,false,0222,002,4,39,06,1184100,1874102,2013,02/02/2013 07:29:10 AM,41.809712569,-87.600266727,"(41.809712569, -87.600266727)" -8992364,HW139341,01/31/2013 04:05:00 PM,0000X W 95TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA GARAGE / OTHER PROPERTY,true,false,0634,006,21,49,18,1177744,1841988,2013,01/31/2013 06:26:31 PM,41.721734632,-87.624549931,"(41.721734632, -87.624549931)" -8992227,HW139175,01/31/2013 12:00:00 PM,079XX S ASHLAND AVE,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,0611,006,21,71,26,1167010,1852247,2013,02/01/2013 08:10:13 AM,41.750122626,-87.663574309,"(41.750122626, -87.663574309)" -8990994,HW138279,01/30/2013 08:20:00 PM,052XX S BISHOP ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0934,009,16,61,18,1167598,1869903,2013,01/30/2013 10:00:57 PM,41.798560357,-87.660913739,"(41.798560357, -87.660913739)" -8990552,HW137681,01/30/2013 01:35:00 PM,095XX S JEFFERY AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0431,004,7,51,06,1191138,1842112,2013,01/31/2013 05:05:00 AM,41.721761818,-87.575486681,"(41.721761818, -87.575486681)" -8990681,HW137895,01/30/2013 02:00:00 AM,032XX S HALSTED ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0913,009,11,60,14,1171460,1883306,2013,01/31/2013 07:08:33 AM,41.835255736,-87.646358067,"(41.835255736, -87.646358067)" -8989530,HW136892,01/29/2013 09:30:00 PM,015XX S HOMAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1021,010,24,29,08B,1153913,1892140,2013,01/30/2013 03:37:15 PM,41.859864328,-87.710508603,"(41.859864328, -87.710508603)" -8990672,HW137671,01/29/2013 08:00:00 PM,004XX W 129TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0523,005,9,53,07,1175628,1818856,2013,02/03/2013 11:31:00 AM,41.65830447,-87.632989292,"(41.65830447, -87.632989292)" -8986960,HW134560,01/28/2013 11:15:00 AM,044XX W VAN BUREN ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,1131,011,24,26,18,1146763,1897692,2013,01/28/2013 12:10:26 PM,41.875239029,-87.736612841,"(41.875239029, -87.736612841)" -8985714,HW133357,01/27/2013 06:00:00 AM,029XX W SHAKESPEARE AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,1414,014,35,22,08A,1156469,1914257,2013,01/30/2013 03:25:18 PM,41.920504179,-87.700527469,"(41.920504179, -87.700527469)" -8985371,HW132935,01/26/2013 08:57:00 PM,051XX S DREXEL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0233,002,4,41,18,1183086,1870792,2013,01/26/2013 10:58:23 PM,41.800653342,-87.604088881,"(41.800653342, -87.604088881)" -8984770,HW132070,01/26/2013 09:00:00 AM,060XX S CARPENTER ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,false,true,0712,007,16,68,26,1170384,1864906,2013,01/28/2013 04:53:39 PM,41.784787766,-87.650842393,"(41.784787766, -87.650842393)" -8984117,HW131241,01/25/2013 04:34:00 PM,027XX W DEVON AVE,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,false,false,2412,024,50,2,08B,1156696,1942384,2013,01/28/2013 11:34:11 AM,41.997681744,-87.698928329,"(41.997681744, -87.698928329)" -8978349,HW125975,01/21/2013 02:15:00 PM,046XX W ROSCOE ST,0810,THEFT,OVER $500,STREET,false,false,1731,017,30,15,06,1144678,1922239,2013,01/22/2013 06:21:53 AM,41.942638133,-87.743648613,"(41.942638133, -87.743648613)" -8981092,HW128360,01/20/2013 07:00:00 PM,011XX N DEARBORN ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1824,018,42,8,06,1175689,1907957,2013,01/24/2013 01:26:08 PM,41.902805806,-87.630099679,"(41.902805806, -87.630099679)" -8975632,HW122697,01/18/2013 06:40:00 PM,058XX S LAFLIN ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0713,007,16,67,15,1167373,1866083,2013,01/20/2013 06:11:06 PM,41.788082651,-87.661848281,"(41.788082651, -87.661848281)" -8970992,HW118789,01/15/2013 07:15:00 PM,0000X W 79TH ST,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,false,false,0623,006,6,69,03,1177642,1852676,2013,02/17/2013 06:09:30 PM,41.751066138,-87.624601153,"(41.751066138, -87.624601153)" -8970568,HW118275,01/15/2013 12:01:00 AM,071XX S MAY ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0733,007,17,68,08A,1169850,1857322,2013,02/02/2013 06:25:16 AM,41.763987954,-87.653020222,"(41.763987954, -87.653020222)" -8970587,HW118183,01/15/2013 12:00:00 AM,043XX W AINSLIE ST,0890,THEFT,FROM BUILDING,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,1712,017,39,14,06,1146191,1932245,2013,01/16/2013 09:43:24 AM,41.97006671,-87.73783201,"(41.97006671, -87.73783201)" -8969173,HW117366,01/14/2013 06:34:00 PM,005XX E 50TH PL,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE PORCH/HALLWAY,true,false,0223,002,3,38,26,1180678,1871611,2013,01/15/2013 11:04:53 AM,41.80295647,-87.612894532,"(41.80295647, -87.612894532)" -8963545,HW111688,01/10/2013 01:00:00 AM,008XX E 87TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0632,006,8,44,04B,1183116,1847509,2013,01/19/2013 09:20:22 AM,41.736761842,-87.604702211,"(41.736761842, -87.604702211)" -8987839,HW134962,01/09/2013 05:00:00 PM,071XX S STONY ISLAND AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,BANK,false,false,0324,003,5,43,11,1188000,1858165,2013,01/29/2013 01:30:49 PM,41.765888048,-87.586470135,"(41.765888048, -87.586470135)" -8962609,HW110972,01/08/2013 11:30:00 PM,016XX E 69TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0332,003,5,43,14,1188296,1859599,2013,01/10/2013 09:22:16 AM,41.769816008,-87.585339501,"(41.769816008, -87.585339501)" -8956430,HW104433,01/04/2013 01:35:00 PM,030XX N CLYBOURN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1931,019,1,5,14,1160603,1920381,2013,01/06/2013 08:36:54 AM,41.937224129,-87.685168228,"(41.937224129, -87.685168228)" -8956589,HW105718,01/03/2013 11:00:00 PM,025XX N NEVA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2512,025,36,18,07,1128039,1915946,2013,01/15/2013 10:12:35 AM,41.92566718,-87.804948431,"(41.92566718, -87.804948431)" -8950257,HV622625,12/30/2012 08:30:00 PM,080XX S KENWOOD AVE,0810,THEFT,OVER $500,STREET,false,false,0411,004,8,45,06,1186572,1851692,2012,01/01/2013 07:26:21 AM,41.74815943,-87.591908643,"(41.74815943, -87.591908643)" -8948936,HV621249,12/29/2012 08:50:00 PM,0000X S HOYNE AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,1223,012,2,28,24,1162382,1899663,2012,01/01/2013 02:50:39 PM,41.880335335,-87.679210786,"(41.880335335, -87.679210786)" -8943965,HV616299,12/25/2012 04:00:00 PM,055XX W WASHINGTON BLVD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1522,015,29,25,08B,1139122,1900154,2012,12/27/2012 12:37:24 PM,41.882137425,-87.764608045,"(41.882137425, -87.764608045)" -8954009,HV616983,12/25/2012 12:04:00 PM,009XX N HOMAN AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),VEHICLE NON-COMMERCIAL,true,false,1121,011,27,23,18,1153499,1905991,2012,01/10/2013 08:24:15 AM,41.897881152,-87.711660008,"(41.897881152, -87.711660008)" -8944826,HV617170,12/24/2012 05:00:00 PM,001XX E CHESTNUT ST,0460,BATTERY,SIMPLE,RESTAURANT,false,false,1833,018,42,8,08B,1176968,1906390,2012,12/30/2012 09:07:05 AM,41.898477019,-87.625449228,"(41.898477019, -87.625449228)" -8942797,HV614869,12/24/2012 01:15:00 AM,055XX N CLARK ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2012,020,40,77,06,1164970,1936797,2012,12/24/2012 07:34:57 AM,41.982178611,-87.668650876,"(41.982178611, -87.668650876)" -8942616,HV614636,12/23/2012 03:00:00 PM,012XX S FAIRFIELD AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1023,010,28,29,05,1158191,1894112,2012,12/26/2012 02:04:24 PM,41.865189467,-87.694751358,"(41.865189467, -87.694751358)" -8941478,HV613170,12/22/2012 03:25:00 PM,031XX W 15TH ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1022,010,24,29,18,1155375,1892717,2012,12/22/2012 04:15:20 PM,41.861418451,-87.705126484,"(41.861418451, -87.705126484)" -8941877,HV613667,12/22/2012 01:30:00 PM,078XX S ELLIS AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0624,006,8,69,05,1184215,1853079,2012,01/16/2013 03:02:59 PM,41.752020909,-87.60050208,"(41.752020909, -87.60050208)" -8942103,HV614034,12/22/2012 12:00:00 PM,060XX W NELSON ST,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,RESIDENCE,false,false,2511,025,29,19,26,1135501,1919686,2012,01/03/2013 09:41:19 AM,41.935800708,-87.777439753,"(41.935800708, -87.777439753)" -8977239,HV615005,12/21/2012 09:30:00 PM,038XX S ELLIS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0212,002,4,36,14,1182574,1879753,2012,01/20/2013 01:50:56 PM,41.825254915,-87.605688269,"(41.825254915, -87.605688269)" -8939087,HV610608,12/20/2012 02:00:00 PM,026XX W WASHINGTON BLVD,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1222,012,2,27,03,1158585,1900620,2012,01/10/2013 01:04:53 PM,41.88304,-87.693126773,"(41.88304, -87.693126773)" -8938768,HV610334,12/20/2012 12:50:00 PM,009XX E 132ND ST,0560,ASSAULT,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,0533,005,9,54,08A,1184927,1818054,2012,12/21/2012 09:05:01 AM,41.655891292,-87.598987414,"(41.655891292, -87.598987414)" -8939390,HV610836,12/20/2012 11:30:00 AM,009XX N ORLEANS ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1823,018,27,8,06,1173710,1906560,2012,12/21/2012 07:48:39 AM,41.899016651,-87.63741046,"(41.899016651, -87.63741046)" -8938409,HV610040,12/20/2012 08:00:00 AM,064XX S ARTESIAN AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,true,false,0825,008,15,66,04B,1161113,1861643,2012,01/08/2013 08:45:32 PM,41.776030554,-87.684924098,"(41.776030554, -87.684924098)" -8934500,HV606305,12/17/2012 02:15:00 PM,063XX W ROSCOE ST,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,1633,016,36,17,05,1133418,1921895,2012,12/26/2012 02:25:15 PM,41.941899258,-87.785043149,"(41.941899258, -87.785043149)" -8932488,HV604420,12/16/2012 12:00:00 AM,038XX N BROADWAY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1923,019,46,6,08B,1170189,1925866,2012,12/18/2012 03:17:59 PM,41.952070898,-87.649777594,"(41.952070898, -87.649777594)" -8932415,HV604268,12/15/2012 08:00:00 PM,004XX W 59TH ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0711,007,20,68,18,1174197,1865844,2012,12/16/2012 12:03:37 AM,41.787277835,-87.636834528,"(41.787277835, -87.636834528)" -8931281,HV602682,12/14/2012 06:50:00 PM,027XX W 68TH ST,0560,ASSAULT,SIMPLE,HOSPITAL BUILDING/GROUNDS,true,false,0831,008,15,66,08A,1159516,1859408,2012,12/15/2012 10:55:44 AM,41.769930285,-87.690839819,"(41.769930285, -87.690839819)" -8936102,HV607615,12/14/2012 08:00:00 AM,010XX W MADISON ST,0560,ASSAULT,SIMPLE,CTA BUS,false,false,1224,012,27,28,08A,1169746,1900256,2012,12/19/2012 12:53:51 PM,41.881805369,-87.6521538,"(41.881805369, -87.6521538)" -8929871,HV601276,12/13/2012 07:00:00 PM,007XX N DRAKE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,false,1121,011,27,23,08B,1152626,1904577,2012,12/14/2012 08:53:22 AM,41.894018312,-87.714903904,"(41.894018312, -87.714903904)" -8926381,HV598340,12/11/2012 02:38:00 PM,023XX S HOMAN AVE,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,APARTMENT,false,false,1024,010,22,30,26,1154025,1888288,2012,12/22/2012 03:32:31 PM,41.849291765,-87.710200092,"(41.849291765, -87.710200092)" -8925652,HV597834,12/10/2012 11:00:00 PM,013XX S KOMENSKY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1011,010,24,29,07,1149559,1893412,2012,01/16/2013 10:56:16 AM,41.863440409,-87.726458047,"(41.863440409, -87.726458047)" -8944565,HV597396,12/10/2012 09:00:00 PM,056XX S MAY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0712,007,16,68,26,1169580,1867154,2012,12/27/2012 03:15:12 PM,41.790974014,-87.653725041,"(41.790974014, -87.653725041)" -8924953,HV597314,12/10/2012 07:25:00 PM,039XX N SHERIDAN RD,2022,NARCOTICS,POSS: COCAINE,SIDEWALK,true,false,1923,019,46,6,18,1168934,1926424,2012,12/10/2012 09:02:05 PM,41.953629446,-87.654374706,"(41.953629446, -87.654374706)" -8924197,HV596201,12/10/2012 12:20:00 AM,064XX N WESTERN AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,2412,024,50,2,04B,1159114,1942452,2012,12/17/2012 11:14:04 PM,41.997818835,-87.6900315,"(41.997818835, -87.6900315)" -8913011,HV586561,12/03/2012 05:20:00 AM,016XX S HOMAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1021,010,24,29,14,1154008,1891667,2012,12/07/2012 10:38:38 AM,41.858564471,-87.710172484,"(41.858564471, -87.710172484)" -8908591,HV581713,11/29/2012 03:30:00 PM,118XX S WESTERN AVE,1330,CRIMINAL TRESPASS,TO LAND,DRUG STORE,true,false,2212,022,19,75,26,1162569,1825927,2012,12/02/2012 10:35:22 AM,41.677989869,-87.680579369,"(41.677989869, -87.680579369)" -8907239,HV580907,11/28/2012 09:25:00 PM,040XX W 21ST PL,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1012,010,24,29,18,1149805,1889414,2012,10/31/2014 03:20:56 PM,41.852464635,-87.725658863,"(41.852464635, -87.725658863)" -8907796,HV581139,11/28/2012 11:30:00 AM,022XX S ST LOUIS AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1024,010,22,30,05,1153350,1888675,2012,12/02/2012 02:00:54 PM,41.850367153,-87.71266717,"(41.850367153, -87.71266717)" -8905818,HV579789,11/28/2012 09:30:00 AM,011XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,0123,001,2,32,26,1176547,1895698,2012,11/28/2012 10:23:47 AM,41.869147103,-87.627318596,"(41.869147103, -87.627318596)" -8906677,HV580211,11/26/2012 11:00:00 PM,100XX S YATES AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0431,004,7,51,26,1194191,1838551,2012,11/29/2012 05:02:42 PM,41.711915796,-87.564420757,"(41.711915796, -87.564420757)" -8902768,HV576942,11/26/2012 08:00:00 AM,016XX S CALIFORNIA BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1023,010,28,29,08B,1158001,1891592,2012,11/29/2012 11:02:10 PM,41.858278201,-87.695517581,"(41.858278201, -87.695517581)" -20712,HV575223,11/25/2012 08:47:00 PM,055XX S EMERALD AVE,0110,HOMICIDE,FIRST DEGREE MURDER,HALLWAY,false,false,0711,007,3,68,01A,1172212,1867877,2012,05/11/2015 12:38:40 PM,41.792900506,-87.644052865,"(41.792900506, -87.644052865)" -8901791,HV576185,11/25/2012 02:45:00 PM,019XX W FARGO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,2424,024,49,1,08B,1162178,1949372,2012,11/26/2012 11:50:43 AM,42.016743771,-87.678565457,"(42.016743771, -87.678565457)" -8901115,HV575538,11/25/2012 12:20:00 AM,051XX W CHICAGO AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1531,015,28,25,08B,1142191,1904807,2012,11/27/2012 09:21:49 AM,41.894849457,-87.75322302,"(41.894849457, -87.75322302)" -8997924,HW144989,11/21/2012 02:00:00 PM,068XX S MAY ST,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,false,false,0724,007,17,68,10,1169876,1859257,2012,02/06/2013 10:56:56 AM,41.769297274,-87.652868818,"(41.769297274, -87.652868818)" -8897548,HV571030,11/20/2012 04:00:00 PM,047XX N KILBOURN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1722,017,45,16,14,1145182,1931135,2012,11/26/2012 08:34:41 AM,41.96703997,-87.741570378,"(41.96703997, -87.741570378)" From 01cd31ce44873a31d5ac03d203fcd835522650c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:32:13 -0700 Subject: [PATCH 054/248] Delete part-00001-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 921 ------------------ 1 file changed, 921 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00001-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00001-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00001-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index 28f57ae8..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00001-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,921 +0,0 @@ -8892616,HV566862,11/18/2012 03:10:00 AM,008XX N ORLEANS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1823,018,27,8,14,1173794,1906444,2012,11/20/2012 10:24:11 AM,41.898696471,-87.637105392,"(41.898696471, -87.637105392)" -8891107,HV564871,11/16/2012 04:42:00 PM,060XX S PAULINA ST,0560,ASSAULT,SIMPLE,STREET,false,false,0714,007,15,67,08A,1166013,1864342,2012,11/22/2012 12:36:55 PM,41.783334168,-87.666884354,"(41.783334168, -87.666884354)" -8889934,HV563994,11/16/2012 01:30:00 AM,067XX S RIDGELAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0332,003,5,43,08B,1189067,1860619,2012,10/31/2014 03:20:56 PM,41.772596537,-87.582480754,"(41.772596537, -87.582480754)" -8889296,HV563198,11/15/2012 01:40:00 PM,027XX W WASHINGTON BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1331,012,2,27,18,1158294,1900533,2012,11/15/2012 03:34:31 PM,41.882807216,-87.694197721,"(41.882807216, -87.694197721)" -8987498,HW134941,11/15/2012 12:00:00 AM,036XX W 114TH PL,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,2211,022,19,74,26,1154166,1828373,2012,02/07/2013 07:46:23 AM,41.684872758,-87.711272932,"(41.684872758, -87.711272932)" -8895356,HV569442,11/14/2012 07:00:00 PM,010XX W 81ST ST,0266,CRIM SEXUAL ASSAULT,PREDATORY,APARTMENT,false,true,0612,006,21,71,02,1170431,1851137,2012,12/01/2012 12:56:41 PM,41.747002878,-87.651070501,"(41.747002878, -87.651070501)" -8886202,HV560657,11/12/2012 07:30:00 PM,016XX N WASHTENAW AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1421,014,1,24,26,1158070,1911058,2012,12/20/2012 11:51:43 AM,41.911693305,-87.694732585,"(41.911693305, -87.694732585)" -8883343,HV556942,11/10/2012 09:00:00 PM,094XX S LOOMIS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2222,022,21,73,08B,1168702,1841826,2012,11/21/2012 02:24:45 PM,41.721489594,-87.657673857,"(41.721489594, -87.657673857)" -8882678,HV556791,11/10/2012 08:15:00 PM,049XX S LAFLIN ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0933,009,20,61,18,1167129,1872007,2012,11/10/2012 09:13:53 PM,41.80434403,-87.662573448,"(41.80434403, -87.662573448)" -8881920,HV555670,11/10/2012 03:09:00 AM,058XX W LAKE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,1512,015,29,25,14,1137413,1902282,2012,11/12/2012 10:01:38 AM,41.888007843,-87.770832369,"(41.888007843, -87.770832369)" -8882507,HV556465,11/07/2012 02:30:00 PM,014XX N HUMBOLDT DR,0820,THEFT,$500 AND UNDER,PARK PROPERTY,false,false,1423,014,26,24,06,1156241,1909195,2012,11/11/2012 11:33:11 AM,41.906618247,-87.701502203,"(41.906618247, -87.701502203)" -8876670,HV550232,11/06/2012 05:45:00 AM,021XX W JACKSON BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1211,012,2,28,14,1162323,1898638,2012,11/06/2012 01:09:20 PM,41.877523879,-87.679456102,"(41.877523879, -87.679456102)" -8876036,HV549818,11/05/2012 11:38:00 PM,004XX E 49TH ST,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,false,false,0223,002,4,38,03,1180177,1872592,2012,11/29/2012 05:40:16 PM,41.805659927,-87.614701828,"(41.805659927, -87.614701828)" -8874194,HV548057,11/04/2012 04:00:00 PM,082XX S MARSHFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0614,006,21,71,08B,1166818,1849952,2012,11/17/2012 01:22:07 PM,41.743828919,-87.664343269,"(41.743828919, -87.664343269)" -8872064,HV545303,11/02/2012 02:30:00 PM,015XX S ST LOUIS AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,1021,010,24,29,03,1153247,1892246,2012,11/05/2012 05:53:29 PM,41.860168436,-87.712950507,"(41.860168436, -87.712950507)" -8871002,HV544671,11/02/2012 03:57:00 AM,022XX N MAJOR AVE,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,2515,025,37,19,18,1137985,1914146,2012,11/02/2012 05:29:16 AM,41.920553782,-87.768444856,"(41.920553782, -87.768444856)" -8870894,HV544583,11/02/2012 12:05:00 AM,051XX W CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1531,015,37,25,18,1141942,1904883,2012,11/02/2012 01:00:31 AM,41.895062626,-87.754135657,"(41.895062626, -87.754135657)" -8870226,HV543679,11/01/2012 12:20:00 PM,049XX S LEAMINGTON AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,true,false,0814,008,23,56,05,1142820,1871433,2012,11/11/2012 03:52:23 PM,41.803254873,-87.751742981,"(41.803254873, -87.751742981)" -8866638,HV540483,10/30/2012 12:00:00 AM,005XX E 88TH PL,0890,THEFT,FROM BUILDING,VACANT LOT/LAND,false,false,0632,006,6,44,06,1181529,1846385,2012,10/31/2012 09:48:26 AM,41.733714178,-87.610551004,"(41.733714178, -87.610551004)" -8866240,HV540055,10/29/2012 08:00:00 PM,029XX N CENTRAL AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,2514,025,31,19,06,1138562,1919170,2012,11/20/2012 04:59:59 AM,41.934329733,-87.766202716,"(41.934329733, -87.766202716)" -8863886,HV537827,10/28/2012 03:38:00 AM,047XX S WESTERN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0922,009,12,58,14,1161120,1873431,2012,10/30/2012 11:11:06 AM,41.808378235,-87.684572328,"(41.808378235, -87.684572328)" -8863850,HV537713,10/27/2012 09:30:00 PM,002XX N ADA ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1212,012,27,28,06,1167420,1901949,2012,10/28/2012 02:39:14 PM,41.886501431,-87.66064605,"(41.886501431, -87.66064605)" -8862944,HV536619,10/27/2012 07:00:00 AM,005XX N PINE AVE,0810,THEFT,OVER $500,STREET,false,false,1523,015,37,25,06,1139400,1903001,2012,10/28/2012 07:55:04 AM,41.889944895,-87.763517796,"(41.889944895, -87.763517796)" -8862980,HV536621,10/27/2012 06:40:00 AM,029XX S POPLAR AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0913,009,11,60,08B,1170520,1885472,2012,11/04/2012 02:25:07 PM,41.841220013,-87.649743948,"(41.841220013, -87.649743948)" -8854574,HV528223,10/21/2012 01:16:00 PM,054XX W CRYSTAL ST,0460,BATTERY,SIMPLE,STREET,false,false,2532,025,37,25,08B,1139913,1907756,2012,10/23/2012 02:06:06 PM,41.902983827,-87.761517419,"(41.902983827, -87.761517419)" -8853044,HV526400,10/20/2012 02:39:00 AM,050XX S PULASKI RD,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SMALL RETAIL STORE,true,false,0815,008,14,57,14,1150519,1870611,2012,10/20/2012 07:54:05 AM,41.800852758,-87.723528099,"(41.800852758, -87.723528099)" -8851467,HV524786,10/18/2012 09:00:00 PM,062XX N KENMORE AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,RESIDENCE PORCH/HALLWAY,true,false,2433,024,48,77,26,1168137,1941934,2012,10/19/2012 03:44:51 AM,41.996206622,-87.656854296,"(41.996206622, -87.656854296)" -8857204,HV530966,10/18/2012 03:30:00 PM,020XX W BIRCHWOOD AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,2424,024,49,1,11,1161122,1949761,2012,11/05/2012 05:01:37 PM,42.017833296,-87.682440366,"(42.017833296, -87.682440366)" -8854312,HV523305,10/18/2012 05:45:00 AM,0000X W TERMINAL ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT TERMINAL UPPER LEVEL - SECURE AREA,false,false,1653,016,41,76,26,1101811,1934379,2012,10/23/2012 09:45:21 AM,41.976653215,-87.900984463,"(41.976653215, -87.900984463)" -8849703,HV522771,10/17/2012 05:30:00 PM,019XX S CARPENTER ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1233,012,25,31,04B,1169512,1890706,2012,11/25/2012 01:04:08 AM,41.855604522,-87.653290842,"(41.855604522, -87.653290842)" -8850913,HV523621,10/17/2012 01:25:00 AM,080XX S KARLOV AVE,5004,SEX OFFENSE,ATT CRIM SEXUAL ABUSE,RESIDENCE,false,false,0834,008,13,70,17,1150437,1850878,2012,11/26/2012 10:47:51 AM,41.746703818,-87.724341277,"(41.746703818, -87.724341277)" -8849423,HV522180,10/16/2012 04:20:00 PM,011XX S ALBANY AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,1134,011,24,29,03,1155829,1894856,2012,11/08/2012 08:59:13 AM,41.867278968,-87.703402314,"(41.867278968, -87.703402314)" -8847526,HV520690,10/16/2012 12:00:00 PM,001XX N LONG AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1523,015,28,25,08B,1140341,1900867,2012,10/20/2012 01:00:03 PM,41.884071733,-87.760114326,"(41.884071733, -87.760114326)" -8847568,HV520541,10/15/2012 03:40:00 PM,039XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0213,002,3,38,08B,1179457,1879187,2012,10/20/2012 11:57:50 AM,41.82377364,-87.617140893,"(41.82377364, -87.617140893)" -8855590,HV529120,10/15/2012 09:00:00 AM,132XX S RHODES AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),false,false,0533,005,9,54,26,1182015,1817681,2012,10/23/2012 09:00:25 AM,41.654935305,-87.609654054,"(41.654935305, -87.609654054)" -8847777,HV520951,10/14/2012 05:00:00 PM,021XX W GLADYS AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1211,012,2,28,05,1161991,1898370,2012,11/07/2012 06:05:21 PM,41.876795398,-87.6806826,"(41.876795398, -87.6806826)" -8840086,HV513018,10/10/2012 09:29:00 PM,044XX W WASHINGTON BLVD,0610,BURGLARY,FORCIBLE ENTRY,VACANT LOT/LAND,true,false,1113,011,28,26,05,1146556,1900081,2012,11/20/2012 03:35:42 PM,41.881798673,-87.737311957,"(41.881798673, -87.737311957)" -8839833,HV512787,10/10/2012 04:00:00 PM,035XX W 62ND PL,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0823,008,15,66,08A,1153640,1862983,2012,10/11/2012 10:04:43 AM,41.779859073,-87.712284299,"(41.779859073, -87.712284299)" -8837875,HV510858,10/09/2012 01:35:00 PM,071XX S EAST END AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,false,false,0324,003,5,43,18,1188807,1858045,2012,10/10/2012 12:29:41 PM,41.765539491,-87.583516085,"(41.765539491, -87.583516085)" -8837856,HV510806,10/09/2012 10:00:00 AM,061XX N DAMEN AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2413,024,40,2,05,1161837,1940962,2012,10/27/2012 02:24:30 PM,41.993673655,-87.680056379,"(41.993673655, -87.680056379)" -8838396,HV511339,10/08/2012 07:00:00 PM,015XX W JARVIS AVE,0320,ROBBERY,STRONGARM - NO WEAPON,CTA TRAIN,false,false,2423,024,49,1,03,1164762,1949091,2012,10/29/2012 09:21:52 AM,42.015918069,-87.669065079,"(42.015918069, -87.669065079)" -8836180,HV509278,10/08/2012 11:40:00 AM,047XX S EVANS AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0223,002,4,38,05,1182096,1873636,2012,01/04/2013 12:55:29 PM,41.808480501,-87.607631429,"(41.808480501, -87.607631429)" -8835822,HV508892,10/07/2012 06:00:00 PM,020XX W CRYSTAL ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,1424,014,1,24,06,1162685,1908290,2012,10/08/2012 08:31:13 AM,41.904002172,-87.677856209,"(41.904002172, -87.677856209)" -8835690,HV508681,10/07/2012 03:30:00 PM,064XX N CALIFORNIA AVE,0560,ASSAULT,SIMPLE,OTHER,false,true,2412,024,50,2,08A,1156448,1942784,2012,10/10/2012 02:52:50 PM,41.998784398,-87.699829747,"(41.998784398, -87.699829747)" -8834781,HV507576,10/06/2012 10:40:00 PM,049XX W THOMAS ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,true,false,1531,015,37,25,18,1143047,1906903,2012,10/07/2012 12:16:29 AM,41.900585197,-87.750026788,"(41.900585197, -87.750026788)" -8832916,HV505266,10/04/2012 11:00:00 PM,046XX N KEDVALE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1722,017,39,14,07,1147948,1930214,2012,10/05/2012 01:00:02 PM,41.964459805,-87.731423849,"(41.964459805, -87.731423849)" -8830934,HV503596,10/04/2012 04:40:00 AM,027XX S SPAULDING AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1032,010,22,30,08B,1154760,1885842,2012,10/08/2012 12:35:15 PM,41.842564985,-87.707567953,"(41.842564985, -87.707567953)" -8829061,HV501890,10/02/2012 10:13:00 PM,023XX E 79TH ST,051A,ASSAULT,AGGRAVATED: HANDGUN,ALLEY,false,false,0414,004,7,46,04A,1193012,1853001,2012,10/22/2012 03:02:22 PM,41.751596734,-87.568268108,"(41.751596734, -87.568268108)" -8828651,HV501364,10/02/2012 03:00:00 PM,010XX W LAWRENCE AVE,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2024,020,46,3,08B,1168520,1932090,2012,10/03/2012 10:54:43 AM,41.969186136,-87.655731893,"(41.969186136, -87.655731893)" -8827127,HV499976,10/01/2012 06:30:00 AM,035XX S BELL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0912,009,11,59,06,1161890,1881424,2012,10/02/2012 12:22:54 PM,41.830295978,-87.681525747,"(41.830295978, -87.681525747)" -8826682,HV499662,09/29/2012 10:30:00 PM,0000X E 118TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0532,005,9,53,14,1178653,1826778,2012,10/02/2012 07:32:03 AM,41.679975685,-87.621680793,"(41.679975685, -87.621680793)" -8823617,HV496477,09/29/2012 03:48:00 AM,037XX N HERMITAGE AVE,0460,BATTERY,SIMPLE,STREET,false,false,1922,019,47,6,08B,1164057,1924647,2012,10/07/2012 09:07:18 AM,41.948857896,-87.672353361,"(41.948857896, -87.672353361)" -8821568,HV494637,09/27/2012 08:20:00 PM,025XX W GLENLAKE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2413,024,50,2,18,1158076,1940449,2012,09/27/2012 09:34:51 PM,41.992343859,-87.693904957,"(41.992343859, -87.693904957)" -8851056,HV523925,09/25/2012 09:00:00 AM,053XX N LINCOLN AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,APARTMENT,false,false,2011,020,40,4,11,1158509,1935343,2012,10/24/2012 02:36:04 PM,41.978323891,-87.692452777,"(41.978323891, -87.692452777)" -8816430,HV489840,09/21/2012 02:00:00 PM,087XX W HIGGINS RD,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,1614,016,41,76,06,1116990,1938423,2012,09/25/2012 03:07:36 PM,41.98752663,-87.845078401,"(41.98752663, -87.845078401)" -8811375,HV484526,09/20/2012 06:55:00 PM,004XX N LARAMIE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1523,015,28,25,18,1141584,1902490,2012,09/20/2012 07:33:05 PM,41.88850257,-87.755509702,"(41.88850257, -87.755509702)" -8808747,HV482121,09/19/2012 08:25:00 AM,064XX S DR MARTIN LUTHER KING JR DR,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,0312,003,20,42,14,1180067,1862427,2012,10/02/2012 01:17:30 PM,41.777768752,-87.615416585,"(41.777768752, -87.615416585)" -8808318,HV481854,09/18/2012 10:00:00 PM,083XX S PULASKI RD,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,0834,008,18,70,08B,1151154,1848626,2012,09/23/2012 08:11:11 AM,41.740509982,-87.721772621,"(41.740509982, -87.721772621)" -8809115,HV482202,09/18/2012 05:00:00 PM,016XX N RICHMOND ST,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,APARTMENT,false,false,1421,014,35,24,17,1156597,1911117,2012,10/25/2012 02:24:19 PM,41.911885173,-87.700142349,"(41.911885173, -87.700142349)" -8807141,HV480759,09/17/2012 04:00:00 PM,002XX W 106TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0512,005,34,49,05,1176425,1834607,2012,12/01/2013 10:44:44 PM,41.70150984,-87.629602134,"(41.70150984, -87.629602134)" -8805576,HV479445,09/17/2012 10:25:00 AM,071XX S ARTESIAN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),PARKING LOT/GARAGE(NON.RESID.),true,false,0832,008,18,66,18,1161312,1857393,2012,09/17/2012 11:37:12 AM,41.764363831,-87.684312146,"(41.764363831, -87.684312146)" -8805646,HV479394,09/16/2012 03:30:00 PM,025XX W 60TH ST,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,0824,008,16,66,06,1160416,1864831,2012,09/18/2012 08:35:47 AM,41.784793262,-87.687391469,"(41.784793262, -87.687391469)" -8811483,HV484469,09/15/2012 06:30:00 PM,022XX W WALTON ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1312,012,32,24,06,1161445,1906253,2012,09/21/2012 08:35:03 AM,41.898438394,-87.682467806,"(41.898438394, -87.682467806)" -8800941,HV474090,09/13/2012 01:05:00 PM,064XX W IRVING PARK RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1632,016,38,17,06,1132426,1925932,2012,09/14/2012 10:19:48 AM,41.952994581,-87.788594938,"(41.952994581, -87.788594938)" -8800909,HV473073,09/12/2012 08:00:00 AM,024XX W RICE ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1312,012,1,24,05,1160110,1905629,2012,09/28/2012 10:42:19 AM,41.896753774,-87.687388428,"(41.896753774, -87.687388428)" -8796621,HV470735,09/11/2012 12:00:00 AM,042XX W DIVISION ST,0890,THEFT,FROM BUILDING,VACANT LOT/LAND,false,false,1111,011,37,23,06,1147817,1907620,2012,09/11/2012 10:07:06 AM,41.902462385,-87.732487693,"(41.902462385, -87.732487693)" -8796622,HV470753,09/10/2012 10:00:00 PM,043XX N KENNETH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1722,017,38,16,07,1145640,1928625,2012,11/15/2012 09:58:28 AM,41.96014364,-87.739950267,"(41.96014364, -87.739950267)" -8796998,HV470983,09/10/2012 09:00:00 PM,027XX W FULTON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1331,012,27,27,06,1157934,1901933,2012,09/11/2012 01:45:22 PM,41.886656296,-87.695481445,"(41.886656296, -87.695481445)" -8794045,HV468321,09/09/2012 01:30:00 PM,085XX S COTTAGE GROVE AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0632,006,6,44,06,1183016,1848390,2012,09/10/2012 08:41:47 AM,41.739181727,-87.605041262,"(41.739181727, -87.605041262)" -8793816,HV467932,09/09/2012 02:00:00 AM,010XX W ROSCOE ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1924,019,44,6,06,1168691,1922790,2012,09/19/2012 11:45:07 AM,41.943662882,-87.655373663,"(41.943662882, -87.655373663)" -8792473,HV466281,09/08/2012 01:10:00 AM,008XX W ALDINE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1924,019,44,6,03,1169835,1922153,2012,09/11/2012 01:11:53 PM,41.941890022,-87.65118752,"(41.941890022, -87.65118752)" -8795642,HV469689,09/07/2012 02:00:00 PM,030XX N CLYBOURN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1931,019,1,5,26,1160787,1920205,2012,09/26/2012 02:37:56 PM,41.936737354,-87.684496894,"(41.936737354, -87.684496894)" -8790993,HV464929,09/06/2012 05:00:00 PM,017XX W IRVING PARK RD,0810,THEFT,OVER $500,STREET,false,false,1922,019,47,6,06,1163931,1926567,2012,09/10/2012 10:34:32 AM,41.954129135,-87.672762117,"(41.954129135, -87.672762117)" -8786460,HV460471,09/04/2012 10:05:00 AM,040XX W LAWRENCE AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,1712,017,39,14,06,1148728,1931636,2012,09/04/2012 12:29:10 PM,41.968346803,-87.728519074,"(41.968346803, -87.728519074)" -8799927,HV470945,09/04/2012 06:45:00 AM,056XX S KIMBARK AVE,0810,THEFT,OVER $500,SIDEWALK,false,false,0235,002,5,41,06,1185668,1867788,2012,09/13/2012 10:14:30 AM,41.792349633,-87.594714634,"(41.792349633, -87.594714634)" -8788412,HV462310,09/04/2012 12:00:00 AM,020XX W JARVIS AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,COMMERCIAL / BUSINESS OFFICE,false,false,2424,024,49,1,26,1161166,1948739,2012,09/26/2012 02:36:48 PM,42.015027986,-87.682307059,"(42.015027986, -87.682307059)" -8785107,HV459106,09/03/2012 05:22:00 AM,037XX N CLARK ST,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,1923,019,44,6,05,1167840,1925021,2012,01/14/2013 08:58:07 AM,41.949803269,-87.658436951,"(41.949803269, -87.658436951)" -8784696,HV458645,09/02/2012 10:35:00 PM,064XX N CLARK ST,3710,INTERFERENCE WITH PUBLIC OFFICER,RESIST/OBSTRUCT/DISARM OFFICER,POLICE FACILITY/VEH PARKING LOT,true,false,2432,024,40,1,24,1164194,1943199,2012,09/03/2012 12:10:39 PM,41.999762374,-87.671322786,"(41.999762374, -87.671322786)" -8785938,HV458640,09/02/2012 09:55:00 PM,134XX S HOUSTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0433,004,10,55,08B,1198807,1816227,2012,09/28/2012 10:05:10 AM,41.650542087,-87.54826106,"(41.650542087, -87.54826106)" -8781836,HV455146,08/31/2012 12:40:00 PM,048XX W HURON ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1532,015,28,25,26,1143764,1904157,2012,08/31/2012 01:03:25 PM,41.893036452,-87.747462052,"(41.893036452, -87.747462052)" -8781876,HV454874,08/31/2012 09:47:00 AM,016XX W 38TH PL,0650,BURGLARY,HOME INVASION,RESIDENCE,true,true,0912,009,11,59,05,1166017,1879238,2012,09/01/2012 10:51:15 PM,41.824210439,-87.666445942,"(41.824210439, -87.666445942)" -8992059,HW139075,08/30/2012 12:00:00 PM,071XX S CONSTANCE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0324,003,5,43,14,1189652,1857840,2012,02/01/2013 07:04:02 AM,41.764956699,-87.580425515,"(41.764956699, -87.580425515)" -8779225,HV453091,08/30/2012 12:14:00 AM,0000X E 23RD ST,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,0131,001,2,33,06,1176902,1889156,2012,09/18/2012 12:18:34 AM,41.851187404,-87.626213124,"(41.851187404, -87.626213124)" -8777107,HV450875,08/28/2012 12:00:00 PM,053XX S PRINCETON AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,APARTMENT,false,false,0935,009,3,37,11,1175157,1869390,2012,08/29/2012 02:22:40 PM,41.796987029,-87.633208764,"(41.796987029, -87.633208764)" -8774797,HV449269,08/27/2012 02:00:00 PM,056XX W MADISON ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,true,true,1513,015,29,25,26,1138744,1899496,2012,08/28/2012 08:54:30 AM,41.880338653,-87.766012053,"(41.880338653, -87.766012053)" -8774320,HV448970,08/27/2012 09:57:00 AM,0000X E BELLEVUE PL,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,1824,018,42,8,26,1176755,1907564,2012,09/25/2012 05:38:39 PM,41.90170335,-87.626196011,"(41.90170335, -87.626196011)" -8777461,HV449286,08/27/2012 12:00:00 AM,072XX S YALE AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0731,007,17,69,06,1175830,1857192,2012,08/29/2012 08:20:12 AM,41.763499343,-87.631106103,"(41.763499343, -87.631106103)" -8773252,HV448055,08/26/2012 03:00:00 PM,051XX N KENMORE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2024,020,48,3,14,1168360,1934506,2012,08/27/2012 08:12:27 AM,41.975819182,-87.656249997,"(41.975819182, -87.656249997)" -8773414,HV448263,08/26/2012 01:00:00 PM,018XX S CALIFORNIA AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1023,010,28,29,05,1158023,1890945,2012,08/31/2012 11:52:43 PM,41.856502315,-87.695454471,"(41.856502315, -87.695454471)" -8772501,HV446998,08/25/2012 09:45:00 PM,061XX S ELLIS AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0313,003,20,42,03,1183909,1864404,2012,08/30/2012 08:25:25 PM,41.783104937,-87.601270196,"(41.783104937, -87.601270196)" -8771532,HV445766,08/25/2012 02:00:00 AM,011XX N PULASKI RD,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1112,011,27,23,04B,1149555,1907197,2012,08/27/2012 02:44:36 PM,41.901268049,-87.726114681,"(41.901268049, -87.726114681)" -8770828,HV444908,08/24/2012 01:50:00 PM,043XX N ELSTON AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,false,false,1722,017,39,16,26,1148579,1928738,2012,08/26/2012 07:43:41 AM,41.960397365,-87.729142083,"(41.960397365, -87.729142083)" -8770260,HV444434,08/24/2012 08:00:00 AM,039XX W BELMONT AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1732,017,31,21,06,1149943,1921037,2012,08/24/2012 10:58:00 AM,41.939238728,-87.724328494,"(41.939238728, -87.724328494)" -8812544,HV485356,08/24/2012 12:01:00 AM,054XX S KOSTNER AVE,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",OTHER,false,false,0815,008,23,62,11,1147909,1868367,2012,09/25/2012 08:31:14 AM,41.794745288,-87.733157437,"(41.794745288, -87.733157437)" -8767493,HV441686,08/22/2012 12:15:00 PM,113XX S NORMAL AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,STREET,true,false,2233,022,34,49,08B,1174945,1829912,2012,09/07/2012 04:53:03 PM,41.688659113,-87.635160749,"(41.688659113, -87.635160749)" -8767607,HV441927,08/22/2012 09:00:00 AM,021XX W BRADLEY PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1921,019,47,5,05,1161574,1924845,2012,09/26/2012 05:29:47 PM,41.949453401,-87.681474889,"(41.949453401, -87.681474889)" -8766314,HV441118,08/21/2012 11:22:00 PM,044XX W THOMAS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1111,011,37,23,14,1146410,1906994,2012,08/23/2012 07:17:41 AM,41.900771499,-87.73767185,"(41.900771499, -87.73767185)" -8760182,HV434134,08/17/2012 12:00:00 AM,056XX W THOMAS ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,1511,015,29,25,14,1138721,1906735,2012,08/20/2012 11:50:48 AM,41.900203799,-87.765920735,"(41.900203799, -87.765920735)" -8773822,HV433038,08/16/2012 12:45:00 PM,003XX W MARQUETTE RD,2024,NARCOTICS,POSS: HEROIN(WHITE),VEHICLE NON-COMMERCIAL,true,false,0722,007,6,68,18,1174897,1860475,2012,06/27/2013 08:46:27 AM,41.772529123,-87.634427947,"(41.772529123, -87.634427947)" -8757825,HV432610,08/16/2012 06:52:00 AM,059XX S EGGLESTON AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,false,true,0711,007,20,68,26,1174355,1865321,2012,09/06/2012 07:01:31 AM,41.785839153,-87.636270761,"(41.785839153, -87.636270761)" -8848748,HV521983,08/15/2012 09:00:00 AM,103XX S AVENUE G,1140,DECEPTIVE PRACTICE,EMBEZZLEMENT,APARTMENT,false,false,0432,004,10,52,12,1203115,1836651,2012,11/25/2012 04:43:08 PM,41.706478717,-87.531804239,"(41.706478717, -87.531804239)" -8756448,HV431403,08/15/2012 02:00:00 AM,042XX S ARTESIAN AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0921,009,12,58,06,1160768,1876410,2012,08/15/2012 01:22:48 PM,41.81656026,-87.685781056,"(41.81656026, -87.685781056)" -8755869,HV430952,08/15/2012 01:45:00 AM,032XX S LITUANICA AVE,0560,ASSAULT,SIMPLE,SIDEWALK,true,true,0913,009,11,60,08A,1170872,1883541,2012,08/15/2012 06:50:43 PM,41.835913482,-87.648508735,"(41.835913482, -87.648508735)" -8755544,HV430602,08/14/2012 07:36:00 PM,007XX W 66TH PL,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,OTHER,true,false,0723,007,6,68,15,1172438,1860735,2012,08/15/2012 08:28:57 AM,41.773297076,-87.643434278,"(41.773297076, -87.643434278)" -8755254,HV430199,08/14/2012 05:15:00 PM,059XX N LEONARD AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,1622,016,45,11,06,1136596,1939256,2012,08/15/2012 08:43:27 AM,41.989483089,-87.772945108,"(41.989483089, -87.772945108)" -8756409,HV431232,08/11/2012 12:00:00 PM,045XX W SCHUBERT AVE,0820,THEFT,$500 AND UNDER,ALLEY,false,false,2521,025,31,20,06,1145466,1917528,2012,08/15/2012 12:51:00 PM,41.929695804,-87.740871975,"(41.929695804, -87.740871975)" -8750026,HV425009,08/10/2012 09:15:00 PM,030XX W FLOURNOY ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1134,011,28,27,08B,1156190,1896917,2012,08/19/2012 09:49:19 AM,41.872927289,-87.702021379,"(41.872927289, -87.702021379)" -8783123,HV456645,08/10/2012 10:00:00 AM,007XX N PULASKI RD,0810,THEFT,OVER $500,OTHER,false,false,1112,011,27,23,06,1149633,1904538,2012,09/02/2012 11:17:47 AM,41.893969964,-87.725897327,"(41.893969964, -87.725897327)" -8750836,HV424995,08/08/2012 07:00:00 PM,021XX W 19TH ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,true,1223,012,25,31,04A,1162476,1890763,2012,09/10/2012 01:17:16 PM,41.855910947,-87.679114684,"(41.855910947, -87.679114684)" -8742851,HV418566,08/06/2012 05:40:00 PM,010XX W PRATT BLVD,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,PARK PROPERTY,true,false,2432,024,49,1,22,1167682,1945305,2012,08/06/2012 06:59:15 PM,42.005466555,-87.658430283,"(42.005466555, -87.658430283)" -8742679,HV418323,08/06/2012 03:10:00 PM,093XX S EMERALD AVE,1661,GAMBLING,GAME/DICE,SIDEWALK,true,false,2223,022,21,73,19,1172905,1843130,2012,08/06/2012 04:11:04 PM,41.724976402,-87.642240722,"(41.724976402, -87.642240722)" -8741361,HV417467,08/06/2012 12:05:00 AM,023XX W DIVISION ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1424,014,1,24,18,1160513,1907962,2012,08/06/2012 01:02:55 AM,41.903147379,-87.685843603,"(41.903147379, -87.685843603)" -8741373,HV417429,08/05/2012 11:55:00 PM,113XX S AVENUE H,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0433,004,10,52,08B,1202924,1830187,2012,08/09/2012 08:28:00 AM,41.68874583,-87.532723684,"(41.68874583, -87.532723684)" -8741412,HV417455,08/05/2012 09:50:00 PM,003XX S MAPLEWOOD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1125,011,2,28,07,1159391,1898542,2012,08/21/2012 06:58:06 AM,41.877321238,-87.690224275,"(41.877321238, -87.690224275)" -8740881,HV416907,08/05/2012 03:15:00 PM,116XX S MARSHFIELD AVE,0560,ASSAULT,SIMPLE,DEPARTMENT STORE,false,false,2234,022,34,75,08A,1167443,1827362,2012,08/06/2012 06:45:25 AM,41.681825045,-87.662697896,"(41.681825045, -87.662697896)" -8740391,HV414546,08/03/2012 11:30:00 PM,009XX N SPRINGFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,1112,011,27,23,08B,1150173,1906094,2012,08/07/2012 10:26:08 AM,41.89822928,-87.723873472,"(41.89822928, -87.723873472)" -8748176,HV421582,08/03/2012 10:30:00 PM,035XX N CENTRAL AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,1633,016,38,15,06,1138439,1922891,2012,08/10/2012 09:05:52 AM,41.944542772,-87.766564336,"(41.944542772, -87.766564336)" -8737442,HV413001,08/03/2012 12:10:00 AM,018XX S ALLPORT ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1222,012,25,31,06,1168294,1890966,2012,08/04/2012 09:54:55 AM,41.856344369,-87.657753953,"(41.856344369, -87.657753953)" -8737391,HV412889,08/02/2012 10:35:00 PM,028XX W 40TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0921,009,14,58,08B,1157924,1877960,2012,08/08/2012 10:42:46 PM,41.820871993,-87.696171417,"(41.820871993, -87.696171417)" -8738145,HV413512,08/02/2012 05:15:00 PM,005XX E 88TH PL,0460,BATTERY,SIMPLE,STREET,false,true,0632,006,6,44,08B,1181629,1846467,2012,08/07/2012 09:29:17 PM,41.73393689,-87.610182132,"(41.73393689, -87.610182132)" -8782125,HV413616,08/02/2012 02:00:00 PM,057XX S HONORE ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,0715,007,15,67,06,1165046,1866373,2012,09/02/2012 12:43:44 PM,41.788928002,-87.670372294,"(41.788928002, -87.670372294)" -8736740,HV412067,08/02/2012 01:26:00 PM,050XX W WEST END AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,true,false,1532,015,28,25,04A,1142804,1900554,2012,08/03/2012 11:01:53 AM,41.883167321,-87.751077602,"(41.883167321, -87.751077602)" -8737017,HV412444,08/02/2012 09:15:00 AM,008XX W EVERGREEN AVE,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",STREET,false,false,1822,018,32,8,07,1170643,1909177,2012,08/03/2012 08:01:18 AM,41.90626557,-87.648598632,"(41.90626557, -87.648598632)" -8733721,HV409698,07/31/2012 10:10:00 PM,012XX N SPRINGFIELD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2535,025,27,23,18,1150202,1907790,2012,07/31/2012 11:02:35 PM,41.902882709,-87.723722692,"(41.902882709, -87.723722692)" -8733322,HV409181,07/31/2012 04:14:00 PM,010XX N WALLER AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,1511,015,29,25,24,1138210,1906173,2012,08/01/2012 12:36:09 PM,41.898670861,-87.767811292,"(41.898670861, -87.767811292)" -8739644,HV414909,07/31/2012 12:00:00 AM,032XX N Broadway,0320,ROBBERY,STRONGARM - NO WEAPON,,false,false,1925,019,44,6,03,1171635,1921871,2012,08/16/2012 11:00:18 PM,41.941076707,-87.644580134,"(41.941076707, -87.644580134)" -8732079,HV408258,07/30/2012 11:49:00 PM,015XX N LAWLER AVE,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,RESIDENCE-GARAGE,false,false,2533,025,37,25,03,1142471,1909537,2012,09/02/2012 06:05:02 PM,41.907823917,-87.752076939,"(41.907823917, -87.752076939)" -8731318,HV407370,07/30/2012 02:05:00 PM,001XX W WASHINGTON ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,COMMERCIAL / BUSINESS OFFICE,false,false,0122,001,42,32,04A,1175431,1900774,2012,08/08/2012 01:06:09 PM,41.883101072,-87.631263239,"(41.883101072, -87.631263239)" -8730762,HV407014,07/30/2012 10:00:00 AM,035XX S UNION AVE,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,RESIDENCE,false,true,0915,009,11,60,26,1172260,1881133,2012,09/02/2012 09:27:45 PM,41.829275236,-87.643486667,"(41.829275236, -87.643486667)" -8728444,HV404456,07/28/2012 02:18:00 PM,012XX W 59TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0713,007,16,67,08B,1169141,1865617,2012,07/29/2012 07:37:19 AM,41.786765818,-87.655379194,"(41.786765818, -87.655379194)" -8727499,HV403318,07/27/2012 07:17:00 PM,005XX W 60TH PL,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0711,007,20,68,15,1173969,1864831,2012,07/28/2012 09:08:15 AM,41.784503118,-87.637700551,"(41.784503118, -87.637700551)" -8727517,HV403153,07/27/2012 05:15:00 PM,053XX W WASHINGTON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,1523,015,28,25,08B,1140609,1900271,2012,08/26/2012 09:28:35 AM,41.882431317,-87.759144831,"(41.882431317, -87.759144831)" -8727504,HV403340,07/27/2012 05:00:00 PM,045XX N CLARENDON AVE,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,PARK PROPERTY,false,true,1914,019,46,3,26,1170064,1930106,2012,07/30/2012 02:23:59 PM,41.963708333,-87.650112825,"(41.963708333, -87.650112825)" -8725667,HV401356,07/26/2012 09:00:00 AM,089XX S BLACKSTONE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0413,004,8,48,05,1187712,1846231,2012,12/20/2013 12:10:36 PM,41.733146868,-87.587904699,"(41.733146868, -87.587904699)" -8724334,HV400669,07/26/2012 01:40:00 AM,027XX S SACRAMENTO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1033,010,12,30,08B,1156767,1885652,2012,07/29/2012 09:24:48 AM,41.842003239,-87.700207909,"(41.842003239, -87.700207909)" -8725086,HV401201,07/25/2012 10:03:00 PM,018XX E 81ST ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0414,004,8,46,14,1190038,1851599,2012,07/27/2012 08:19:59 AM,41.747821572,-87.579211254,"(41.747821572, -87.579211254)" -8724066,HV400462,07/25/2012 09:35:00 PM,023XX W 69TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0832,008,17,66,18,1161806,1858887,2012,07/26/2012 01:03:35 PM,41.768453337,-87.682460064,"(41.768453337, -87.682460064)" -8724186,HV400441,07/25/2012 08:00:00 PM,028XX N RUTHERFORD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2511,025,36,18,08B,1130886,1918314,2012,08/12/2012 09:49:20 AM,41.93211664,-87.794432245,"(41.93211664, -87.794432245)" -8720457,HV397159,07/23/2012 08:10:00 PM,035XX W WALNUT ST,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,1123,011,28,27,04B,1152747,1901428,2012,08/13/2012 10:33:09 PM,41.885374744,-87.714542909,"(41.885374744, -87.714542909)" -8717976,HV394811,07/22/2012 08:05:00 AM,024XX W THOMAS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,1312,012,1,24,08B,1159937,1907285,2012,07/25/2012 07:08:20 PM,41.901301547,-87.687978076,"(41.901301547, -87.687978076)" -8717082,HV393225,07/19/2012 12:00:00 AM,035XX N PINE GROVE AVE,0820,THEFT,$500 AND UNDER,,false,false,1925,019,46,6,06,1171392,1924182,2012,07/26/2012 11:54:47 AM,41.94742353,-87.645405076,"(41.94742353, -87.645405076)" -8712738,HV389345,07/18/2012 04:00:00 PM,023XX W LOGAN BLVD,0890,THEFT,FROM BUILDING,ATHLETIC CLUB,false,false,1432,014,1,22,06,1160445,1917855,2012,07/20/2012 01:28:39 PM,41.930295899,-87.685819017,"(41.930295899, -87.685819017)" -8709803,HV386612,07/17/2012 12:47:00 AM,093XX S PAXTON AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0413,004,7,48,04B,1192440,1843186,2012,08/20/2012 06:22:00 AM,41.724677428,-87.57068291,"(41.724677428, -87.57068291)" -8709484,HV386265,07/16/2012 07:45:00 PM,015XX W ROOSEVELT RD,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1231,012,2,28,26,1166067,1894741,2012,08/01/2012 07:28:48 AM,41.866751093,-87.665820442,"(41.866751093, -87.665820442)" -8707046,HV383595,07/15/2012 04:30:00 AM,056XX S SAWYER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0822,008,14,63,08B,1155710,1867274,2012,07/18/2012 05:52:48 PM,41.791592926,-87.704580279,"(41.791592926, -87.704580279)" -8708857,HV385356,07/14/2012 05:30:00 AM,056XX W BYRON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1633,016,38,15,07,1137691,1925310,2012,08/08/2012 09:57:35 AM,41.951194289,-87.769255195,"(41.951194289, -87.769255195)" -8778704,HV452317,07/13/2012 01:00:00 PM,037XX W DICKENS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2525,025,26,22,07,1151070,1913655,2012,12/21/2012 12:06:05 PM,41.918959848,-87.720380388,"(41.918959848, -87.720380388)" -8701643,HV377699,07/11/2012 02:50:00 PM,008XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,1833,018,42,8,06,1177368,1906565,2012,07/12/2012 07:11:47 AM,41.898948161,-87.623974758,"(41.898948161, -87.623974758)" -8702044,HV378360,07/11/2012 12:30:00 AM,013XX N MENARD AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2531,025,29,25,05,1137405,1908099,2012,08/06/2012 07:36:21 PM,41.903970566,-87.770721666,"(41.903970566, -87.770721666)" -8720834,HV396427,07/10/2012 09:00:00 AM,076XX S YATES BLVD,1110,DECEPTIVE PRACTICE,BOGUS CHECK,APARTMENT,false,false,0421,004,7,43,11,1193572,1854574,2012,07/25/2012 12:11:16 PM,41.755899489,-87.566164613,"(41.755899489, -87.566164613)" -8698791,HV375217,07/10/2012 12:30:00 AM,085XX S BURLEY AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,0424,004,10,46,04A,1199252,1849034,2012,07/10/2012 07:35:11 AM,41.74055647,-87.545535073,"(41.74055647, -87.545535073)" -8698255,HV374681,07/09/2012 03:30:00 AM,065XX S CALIFORNIA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0831,008,15,66,14,1158793,1861339,2012,07/10/2012 07:45:41 AM,41.775244021,-87.693437382,"(41.775244021, -87.693437382)" -8697075,HV373643,07/09/2012 01:30:00 AM,070XX S SOUTH SHORE DR,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0331,003,5,43,07,1193400,1858993,2012,07/12/2012 11:39:05 AM,41.768029769,-87.566650603,"(41.768029769, -87.566650603)" -8696105,HV372538,07/08/2012 12:20:00 PM,074XX S SOUTH CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,VEHICLE NON-COMMERCIAL,true,false,0324,003,5,69,18,1184924,1856156,2012,07/08/2012 01:30:34 PM,41.7604479,-87.597807541,"(41.7604479, -87.597807541)" -8696062,HV372440,07/08/2012 11:31:00 AM,050XX W ROSCOE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1634,016,38,15,18,1142021,1922092,2012,07/08/2012 12:44:02 PM,41.942284493,-87.753418108,"(41.942284493, -87.753418108)" -8695927,HV372296,07/08/2012 08:30:00 AM,065XX N SEELEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2412,024,50,2,08B,1161402,1943394,2012,07/15/2012 09:21:13 AM,42.000356235,-87.681588394,"(42.000356235, -87.681588394)" -8692580,HV368196,07/05/2012 03:30:00 PM,112XX S MICHIGAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,true,false,0531,005,9,49,08B,1178759,1830704,2012,07/06/2012 07:49:47 AM,41.690746802,-87.621173989,"(41.690746802, -87.621173989)" -8756598,HV424349,07/05/2012 03:00:00 PM,046XX W NORTH AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,2533,025,37,25,11,1144835,1910260,2012,08/19/2012 12:46:12 PM,41.909763619,-87.743374487,"(41.909763619, -87.743374487)" -8692966,HV368692,07/05/2012 02:00:00 AM,069XX S THROOP ST,0460,BATTERY,SIMPLE,STREET,false,false,0734,007,17,67,08B,1168810,1858982,2012,07/09/2012 04:28:21 PM,41.768565716,-87.656784208,"(41.768565716, -87.656784208)" -8690397,HV365857,07/04/2012 04:00:00 AM,042XX W MADISON ST,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,APARTMENT,false,true,1115,011,28,26,04B,1147966,1899712,2012,07/14/2012 08:39:11 AM,41.880759107,-87.732143909,"(41.880759107, -87.732143909)" -8690252,HV365573,07/03/2012 10:56:00 PM,009XX N ORLEANS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,false,1823,018,27,8,14,1173778,1906880,2012,07/04/2012 08:35:58 AM,41.899893234,-87.637151163,"(41.899893234, -87.637151163)" -8694640,HV369348,07/02/2012 07:00:00 PM,022XX W GRAND AVE,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,1313,012,26,24,06,1161138,1903474,2012,07/07/2012 10:52:03 AM,41.890818976,-87.683672683,"(41.890818976, -87.683672683)" -8685708,HV361109,07/01/2012 03:00:00 AM,034XX N ELSTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1733,017,33,21,08B,1155285,1922663,2012,07/03/2012 08:16:41 AM,41.943594769,-87.704651262,"(41.943594769, -87.704651262)" -8688193,HV363852,06/29/2012 04:00:00 PM,009XX N OAKLEY BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,1312,012,32,24,06,1160933,1906575,2012,07/03/2012 08:52:24 AM,41.899332631,-87.6843394,"(41.899332631, -87.6843394)" -8683576,HV358559,06/29/2012 12:10:00 PM,014XX S KEDVALE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),ABANDONED BUILDING,true,false,1011,010,24,29,18,1148922,1892420,2012,06/29/2012 01:12:21 PM,41.860730573,-87.728822089,"(41.860730573, -87.728822089)" -8681095,HV356197,06/26/2012 08:00:00 AM,024XX N SHEFFIELD AVE,0810,THEFT,OVER $500,STREET,false,false,1932,019,43,7,06,1169183,1916147,2012,06/28/2012 08:54:35 AM,41.925423491,-87.653758857,"(41.925423491, -87.653758857)" -8678121,HV353460,06/25/2012 06:00:00 PM,016XX W 105TH ST,0810,THEFT,OVER $500,STREET,false,false,2212,022,19,72,06,1166912,1835085,2012,06/27/2012 07:20:46 AM,41.703029584,-87.664422123,"(41.703029584, -87.664422123)" -8678078,HV352301,06/25/2012 01:28:00 PM,024XX W 47TH ST,0460,BATTERY,SIMPLE,CURRENCY EXCHANGE,false,false,0922,009,12,58,08B,1161126,1873491,2012,07/11/2012 03:42:47 PM,41.808542758,-87.68454866,"(41.808542758, -87.68454866)" -8680482,HV351831,06/22/2012 05:00:00 PM,044XX N CENTRAL AVE,0810,THEFT,OVER $500,STREET,false,false,1623,016,45,15,06,1138248,1928952,2012,06/28/2012 09:30:00 AM,41.961178206,-87.767119197,"(41.961178206, -87.767119197)" -8691881,HV346450,06/21/2012 06:12:00 PM,037XX W CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,APARTMENT,true,false,1112,011,27,23,18,1151260,1905041,2012,07/11/2012 11:18:18 AM,41.895318483,-87.719908633,"(41.895318483, -87.719908633)" -8670091,HV345276,06/20/2012 09:00:00 PM,110XX S WESTERN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,2212,022,19,75,14,1162314,1831613,2012,06/21/2012 06:43:03 AM,41.693598579,-87.681355251,"(41.693598579, -87.681355251)" -8669818,HV344880,06/20/2012 08:15:00 PM,083XX S STEWART AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0622,006,21,44,06,1175115,1849742,2012,06/21/2012 06:10:36 AM,41.743071624,-87.633948682,"(41.743071624, -87.633948682)" -8669280,HV344028,06/20/2012 12:00:00 PM,106XX S EDBROOKE AVE,0810,THEFT,OVER $500,STREET,false,false,0512,005,9,49,06,1179099,1834590,2012,06/21/2012 06:51:48 AM,41.701402813,-87.619811378,"(41.701402813, -87.619811378)" -8672653,HV343627,06/19/2012 03:30:00 PM,065XX S CHAMPLAIN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0321,003,20,42,06,1181737,1861593,2012,06/23/2012 06:58:55 AM,41.775441755,-87.609320135,"(41.775441755, -87.609320135)" -8663205,HV338481,06/16/2012 10:50:00 PM,058XX N MEDINA AVE,0560,ASSAULT,SIMPLE,STREET,false,false,1622,016,45,10,08A,1134505,1938775,2012,06/18/2012 09:02:58 AM,41.988200472,-87.780647694,"(41.988200472, -87.780647694)" -8662645,HV337633,06/16/2012 11:19:00 AM,075XX S CARPENTER ST,3760,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING SERVICE,RESIDENCE,true,false,0612,006,17,71,24,1170660,1854784,2012,06/17/2012 10:18:33 AM,41.75700574,-87.650125267,"(41.75700574, -87.650125267)" -8660118,HV335090,06/14/2012 07:42:00 PM,063XX W FULLERTON AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,PARK PROPERTY,true,false,2512,025,29,19,24,1133847,1915308,2012,06/15/2012 10:24:41 AM,41.923816239,-87.783621592,"(41.923816239, -87.783621592)" -8658543,HV333813,06/14/2012 01:30:00 AM,024XX N CLYBOURN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1931,019,32,7,08B,1164918,1915987,2012,03/10/2013 04:03:40 PM,41.925076125,-87.669435003,"(41.925076125, -87.669435003)" -9019372,HW166261,06/12/2012 09:00:00 AM,013XX S SACRAMENTO DR,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,1022,010,24,29,06,1156216,1893730,2012,03/04/2013 02:28:31 PM,41.864181304,-87.702011974,"(41.864181304, -87.702011974)" -8654237,HV329565,06/11/2012 04:00:00 PM,043XX W WEST END AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1114,011,28,26,08B,1147147,1900574,2012,06/16/2012 03:16:51 PM,41.883140238,-87.735129177,"(41.883140238, -87.735129177)" -8652150,HV327782,06/10/2012 01:00:00 PM,073XX S DAMEN AVE,0820,THEFT,$500 AND UNDER,STREET,false,true,0735,007,17,67,06,1164337,1855926,2012,06/15/2012 09:03:09 AM,41.760275009,-87.673265964,"(41.760275009, -87.673265964)" -8651233,HV326643,06/09/2012 01:15:00 PM,010XX W WINONA ST,0890,THEFT,FROM BUILDING,RESIDENTIAL YARD (FRONT/BACK),false,false,2024,020,46,3,06,1168482,1934266,2012,06/11/2012 11:09:01 AM,41.975157968,-87.65580834,"(41.975157968, -87.65580834)" -8652000,HV327502,06/08/2012 04:00:00 PM,011XX N LA SALLE DR,0820,THEFT,$500 AND UNDER,STREET,false,false,1824,018,43,8,06,1174888,1908039,2012,06/10/2012 12:33:03 PM,41.903048799,-87.633039407,"(41.903048799, -87.633039407)" -8652102,HV326699,06/08/2012 11:00:00 AM,036XX S RHODES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0212,002,4,35,14,1180140,1880967,2012,06/10/2012 02:13:13 PM,41.828642443,-87.614580601,"(41.828642443, -87.614580601)" -8658159,HV333474,06/06/2012 09:00:00 PM,013XX N HOMAN AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,1422,014,26,23,06,1153421,1908458,2012,06/14/2012 10:53:47 AM,41.904652383,-87.711880857,"(41.904652383, -87.711880857)" -8643881,HV319179,06/05/2012 01:45:00 AM,010XX N CENTRAL AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,true,1511,015,29,25,06,1138784,1906365,2012,06/05/2012 08:29:13 AM,41.899187331,-87.765698323,"(41.899187331, -87.765698323)" -8639719,HV314336,06/01/2012 07:50:00 PM,076XX S INGLESIDE AVE,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,PARK PROPERTY,true,false,0624,006,8,69,18,1183923,1854644,2012,06/01/2012 09:20:31 PM,41.756322249,-87.601523334,"(41.756322249, -87.601523334)" -8639648,HV314276,06/01/2012 07:00:00 PM,062XX S KILBOURN AVE,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,APARTMENT,false,false,0813,008,13,65,26,1147480,1863020,2012,06/18/2012 02:52:40 PM,41.780080472,-87.734867079,"(41.780080472, -87.734867079)" -8641603,HV314163,06/01/2012 06:10:00 PM,060XX N SHERIDAN RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,2433,024,48,77,08B,1168569,1940512,2012,06/06/2012 12:23:53 PM,41.992295252,-87.65530659,"(41.992295252, -87.65530659)" -8641357,HV316429,06/01/2012 02:30:00 PM,0000X E 112TH PL,0890,THEFT,FROM BUILDING,BARBERSHOP,false,false,0531,005,9,49,06,1178586,1830347,2012,06/04/2012 03:20:05 PM,41.689771066,-87.621818146,"(41.689771066, -87.621818146)" -9047741,HW192464,06/01/2012 06:00:00 AM,057XX S DORCHESTER AVE,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,RESIDENCE,false,true,0235,002,5,41,02,1186482,1867417,2012,04/13/2013 10:05:51 AM,41.79131235,-87.591741595,"(41.79131235, -87.591741595)" -8635872,HV310025,05/29/2012 10:30:00 PM,045XX N ARTESIAN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1911,019,47,4,06,1159258,1930157,2012,05/30/2012 11:41:47 AM,41.964077845,-87.689841562,"(41.964077845, -87.689841562)" -8635205,HV309669,05/29/2012 06:30:00 PM,082XX S TRIPP AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0834,008,13,70,14,1149102,1849618,2012,05/30/2012 09:06:27 AM,41.743271978,-87.729265531,"(41.743271978, -87.729265531)" -8631342,HV305139,05/27/2012 12:00:00 AM,040XX W HIRSCH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2534,025,27,23,14,1148824,1908965,2012,05/28/2012 10:10:51 AM,41.906133787,-87.728753967,"(41.906133787, -87.728753967)" -8631615,HV305515,05/26/2012 07:30:00 PM,059XX W MIDWAY PARK,0820,THEFT,$500 AND UNDER,STREET,false,false,1512,015,29,25,06,1136332,1902581,2012,05/29/2012 08:54:59 AM,41.888847715,-87.774795081,"(41.888847715, -87.774795081)" -8631158,HV304541,05/26/2012 02:30:00 PM,002XX W GARFIELD BLVD,0820,THEFT,$500 AND UNDER,CTA PLATFORM,false,false,0935,009,3,37,06,1175655,1868540,2012,05/27/2012 12:10:37 PM,41.794643399,-87.631408003,"(41.794643399, -87.631408003)" -8642794,HV315554,05/25/2012 05:00:00 PM,029XX N ROCKWELL ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,1411,014,1,21,06,1158575,1919329,2012,06/05/2012 10:43:35 AM,41.934379203,-87.692650349,"(41.934379203, -87.692650349)" -8629536,HV302800,05/25/2012 12:50:00 PM,0000X W CTA 69TH ST LN,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA GARAGE / OTHER PROPERTY,true,false,0322,003,6,69,11,1177342,1859092,2012,05/26/2012 09:50:16 AM,41.768679147,-87.625507039,"(41.768679147, -87.625507039)" -8628525,HV301826,05/24/2012 07:03:00 PM,066XX N WESTERN AVE,2021,NARCOTICS,POSS: BARBITUATES,SIDEWALK,true,false,2412,024,50,2,18,1159144,1944294,2012,05/24/2012 08:44:38 PM,42.002872728,-87.689870218,"(42.002872728, -87.689870218)" -8628713,HV301852,05/24/2012 06:50:00 PM,008XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1833,018,42,8,06,1177298,1906201,2012,05/25/2012 12:56:59 PM,41.897950916,-87.624242912,"(41.897950916, -87.624242912)" -8630841,HV303343,05/22/2012 10:00:00 PM,008XX E 87TH PL,0820,THEFT,$500 AND UNDER,ALLEY,false,true,0632,006,8,44,06,1183770,1847194,2012,10/31/2014 03:20:56 PM,41.735882228,-87.602315991,"(41.735882228, -87.602315991)" -8669705,HV344216,05/22/2012 11:10:00 AM,023XX W GRAND AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,OTHER,false,false,1313,012,26,24,11,1160573,1903457,2012,07/26/2012 11:36:56 AM,41.890784046,-87.685748114,"(41.890784046, -87.685748114)" -8623741,HV297509,05/19/2012 08:00:00 AM,007XX W FULTON MARKET,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1212,012,27,28,06,1171022,1902125,2012,05/22/2012 03:21:57 PM,41.886906142,-87.647413534,"(41.886906142, -87.647413534)" -8619940,HV293456,05/18/2012 09:00:00 PM,032XX W POTOMAC AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1422,014,26,23,06,1154489,1908506,2012,05/22/2012 09:42:40 AM,41.904762801,-87.707956481,"(41.904762801, -87.707956481)" -8620799,HV292454,05/18/2012 05:00:00 PM,0000X E 87TH ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0632,006,6,44,06,1178576,1847300,2012,05/20/2012 10:59:32 AM,41.736292592,-87.621341537,"(41.736292592, -87.621341537)" -8617765,HV291031,05/17/2012 07:00:00 AM,029XX N MONITOR AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2514,025,30,19,05,1136842,1918713,2012,06/15/2012 08:26:11 PM,41.933106724,-87.772534787,"(41.933106724, -87.772534787)" -8615169,HV288861,05/16/2012 11:05:00 AM,008XX W SUNNYSIDE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1914,019,46,3,18,1169688,1930041,2012,05/16/2012 11:39:38 AM,41.96353819,-87.651497149,"(41.96353819, -87.651497149)" -8611059,HV285278,05/14/2012 01:35:00 AM,043XX W ADAMS ST,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,RESIDENCE,false,true,1115,011,28,26,04B,1147331,1898695,2012,05/16/2012 04:26:04 PM,41.877980523,-87.734501656,"(41.877980523, -87.734501656)" -8609345,HV283125,05/11/2012 03:00:00 PM,058XX N WHIPPLE ST,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,2011,020,40,2,06,1155018,1938471,2012,05/14/2012 10:56:33 AM,41.986978237,-87.70520668,"(41.986978237, -87.70520668)" -8608773,HV282295,05/11/2012 07:30:00 AM,046XX S EVANS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0221,002,4,38,14,1182076,1874427,2012,05/12/2012 07:59:35 AM,41.810651531,-87.607680287,"(41.810651531, -87.607680287)" -8609380,HV283172,05/10/2012 12:00:00 PM,0000X N CENTRAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1513,015,29,25,08B,1138998,1900113,2012,05/14/2012 02:12:45 PM,41.88202717,-87.765064376,"(41.88202717, -87.765064376)" -8606119,HV279814,05/10/2012 08:00:00 AM,025XX W DIVISION ST,031A,ROBBERY,ARMED: HANDGUN,VEHICLE NON-COMMERCIAL,false,false,1312,012,26,24,03,1159152,1907850,2012,06/17/2012 10:12:42 AM,41.902868122,-87.690845917,"(41.902868122, -87.690845917)" -8603802,HV277767,05/08/2012 09:20:00 PM,001XX E 71ST ST,1330,CRIMINAL TRESPASS,TO LAND,SIDEWALK,true,false,0322,003,6,69,26,1178758,1858024,2012,05/09/2012 09:16:06 AM,41.765716346,-87.620349179,"(41.765716346, -87.620349179)" -8602636,HV276524,05/08/2012 08:20:00 AM,076XX S RHODES AVE,0820,THEFT,$500 AND UNDER,APARTMENT,true,true,0624,006,6,69,06,1181197,1854108,2012,05/09/2012 08:19:43 AM,41.754914605,-87.611529951,"(41.754914605, -87.611529951)" -8602715,HV276546,05/07/2012 10:00:00 PM,025XX E 71ST ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0334,003,7,43,14,1194985,1858337,2012,05/08/2012 12:00:40 PM,41.766190743,-87.560862559,"(41.766190743, -87.560862559)" -8646153,HV321150,05/05/2012 12:05:00 PM,042XX W 63RD ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,0813,008,13,65,11,1149239,1862449,2012,06/12/2012 02:28:31 PM,41.778479781,-87.728432954,"(41.778479781, -87.728432954)" -8597902,HV271639,05/04/2012 06:37:00 PM,065XX S JUSTINE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0725,007,17,67,18,1167084,1861589,2012,05/04/2012 07:51:58 PM,41.775756744,-87.66303638,"(41.775756744, -87.66303638)" -8596376,HV270390,05/03/2012 03:48:00 PM,031XX N PINE GROVE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1934,019,44,6,06,1172314,1921284,2012,05/04/2012 10:31:23 AM,41.93945096,-87.64210197,"(41.93945096, -87.64210197)" -8594229,HV268270,05/02/2012 05:30:00 PM,057XX S THROOP ST,0460,BATTERY,SIMPLE,APARTMENT,false,false,0713,007,16,67,08B,1168598,1866710,2012,05/05/2012 01:31:43 PM,41.789776871,-87.657338611,"(41.789776871, -87.657338611)" -8593951,HV267902,05/02/2012 01:30:00 PM,017XX N KEELER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2534,025,30,20,08B,1148147,1911543,2012,05/03/2012 08:01:32 AM,41.913221143,-87.73117438,"(41.913221143, -87.73117438)" -8585706,HV259905,04/26/2012 11:20:00 PM,048XX N SAWYER AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,1713,017,39,14,06,1153800,1931903,2012,04/27/2012 10:17:13 AM,41.968979702,-87.709862353,"(41.968979702, -87.709862353)" -8585468,HV259642,04/26/2012 07:28:00 PM,019XX W 70TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0735,007,17,67,18,1164526,1858206,2012,04/26/2012 08:33:22 PM,41.766527664,-87.672509077,"(41.766527664, -87.672509077)" -8584053,HV258407,04/24/2012 04:00:00 PM,056XX S SANGAMON ST,0820,THEFT,$500 AND UNDER,RESIDENCE,false,true,0712,007,16,68,06,1170895,1867580,2012,04/27/2012 03:44:34 PM,41.79211438,-87.648890808,"(41.79211438, -87.648890808)" -8582091,HV256096,04/23/2012 11:00:00 AM,068XX S DORCHESTER AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,0321,003,5,43,11,1186674,1860096,2012,05/03/2012 03:09:42 PM,41.771218375,-87.591269244,"(41.771218375, -87.591269244)" -8579874,HV254421,04/23/2012 02:00:00 AM,075XX S NORMAL AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,0621,006,17,69,26,1174329,1854786,2012,05/23/2012 03:52:24 PM,41.756930484,-87.636678968,"(41.756930484, -87.636678968)" -8579192,HV253936,04/23/2012 12:40:00 AM,005XX E 63RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0312,003,20,42,18,1180970,1863318,2012,04/23/2012 02:15:15 AM,41.780193007,-87.612078805,"(41.780193007, -87.612078805)" -8578730,HV253411,04/22/2012 03:40:00 PM,057XX S CARPENTER ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0712,007,16,68,14,1170335,1866716,2012,04/23/2012 02:35:52 PM,41.789755681,-87.650969379,"(41.789755681, -87.650969379)" -8578418,HV252952,04/22/2012 09:34:00 AM,0000X S LOTUS AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1522,015,29,25,18,1139926,1899441,2012,04/22/2012 10:45:44 AM,41.880166203,-87.761673154,"(41.880166203, -87.761673154)" -8575475,HV249684,04/19/2012 07:50:00 PM,075XX N ASHLAND AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,2422,024,49,1,04B,1164177,1950187,2012,12/09/2013 09:10:58 PM,42.018937949,-87.67118649,"(42.018937949, -87.67118649)" -8575924,HV250191,04/19/2012 06:30:00 PM,083XX S COTTAGE GROVE AVE,031A,ROBBERY,ARMED: HANDGUN,GROCERY FOOD STORE,false,false,0632,006,8,44,03,1183053,1849808,2012,06/20/2012 08:27:03 PM,41.743072016,-87.604861723,"(41.743072016, -87.604861723)" -8573885,HV248462,04/19/2012 01:26:00 AM,016XX E 93RD ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0413,004,8,48,14,1188816,1843678,2012,04/30/2012 06:54:46 AM,41.726114865,-87.583941708,"(41.726114865, -87.583941708)" -8573133,HV247525,04/18/2012 12:26:00 PM,056XX N CENTRAL AVE,0495,BATTERY,AGGRAVATED OF A SENIOR CITIZEN,RESTAURANT,false,false,1623,016,45,11,04B,1137909,1937492,2012,05/05/2012 07:27:24 PM,41.984618854,-87.768158423,"(41.984618854, -87.768158423)" -8572337,HV247001,04/18/2012 02:32:00 AM,084XX S PEORIA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0613,006,21,71,08B,1171745,1848776,2012,04/18/2012 05:45:44 AM,41.740495287,-87.646324732,"(41.740495287, -87.646324732)" -8572107,HV246743,04/17/2012 07:31:00 PM,057XX S WINCHESTER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0715,007,15,67,14,1164292,1866788,2012,04/18/2012 06:45:01 AM,41.790082736,-87.673125275,"(41.790082736, -87.673125275)" -8572879,HV247242,04/17/2012 02:00:00 PM,029XX W POLK ST,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,1135,011,28,27,06,1156777,1896187,2012,04/19/2012 10:15:35 AM,41.870912227,-87.699885997,"(41.870912227, -87.699885997)" -8575778,HV250136,04/17/2012 01:00:00 AM,033XX S LOWE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0915,009,11,60,06,1172465,1882984,2012,04/20/2012 11:30:59 AM,41.834350025,-87.642679933,"(41.834350025, -87.642679933)" -8569855,HV244629,04/16/2012 12:30:00 PM,085XX S INGLESIDE AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0632,006,8,44,08A,1184079,1848753,2012,04/17/2012 08:42:41 AM,41.740153086,-87.601135348,"(41.740153086, -87.601135348)" -8567357,HV242221,04/14/2012 07:15:00 PM,033XX W PIERCE AVE,0820,THEFT,$500 AND UNDER,STREET,false,true,1422,014,26,23,06,1153567,1910054,2012,04/16/2012 09:49:28 AM,41.909029048,-87.711302041,"(41.909029048, -87.711302041)" -8761437,HV436101,04/12/2012 06:45:00 PM,016XX W 105TH PL,051B,ASSAULT,AGGRAVATED: OTHER FIREARM,DRIVEWAY - RESIDENTIAL,false,false,2212,022,19,72,04A,1167209,1834765,2012,09/24/2012 02:18:02 PM,41.702145116,-87.663343692,"(41.702145116, -87.663343692)" -8562941,HV237772,04/11/2012 04:54:00 PM,028XX N DRAKE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1412,014,35,21,14,1152188,1918680,2012,04/12/2012 10:00:20 AM,41.932726871,-87.716139818,"(41.932726871, -87.716139818)" -8562145,HV237215,04/11/2012 10:49:00 AM,033XX N ASHLAND AVE,0460,BATTERY,SIMPLE,DEPARTMENT STORE,true,false,1922,019,44,6,08B,1165028,1921997,2012,04/12/2012 08:20:19 AM,41.94156556,-87.668859659,"(41.94156556, -87.668859659)" -8563848,HV238662,04/10/2012 06:00:00 PM,019XX W WILSON AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,1912,019,47,4,06,1162436,1930597,2012,04/13/2012 08:29:00 AM,41.965219137,-87.678144646,"(41.965219137, -87.678144646)" -8561022,HV236200,04/10/2012 11:59:00 AM,035XX S DR MARTIN LUTHER KING JR DR,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,OTHER,false,false,0212,002,4,35,26,1179528,1881716,2012,04/17/2012 01:49:29 PM,41.830711784,-87.61680304,"(41.830711784, -87.61680304)" -8565863,HV240430,04/09/2012 08:00:00 PM,027XX W 38TH ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,0911,009,12,58,06,1158609,1879296,2012,04/14/2012 10:05:18 AM,41.824524173,-87.693622,"(41.824524173, -87.693622)" -8556826,HV232670,04/07/2012 09:00:00 PM,026XX W GLADYS AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1125,011,28,27,26,1158977,1898374,2012,05/10/2012 12:32:13 PM,41.876868732,-87.691748981,"(41.876868732, -87.691748981)" -8556774,HV232597,04/07/2012 08:43:00 PM,021XX S DRAKE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),true,false,1024,010,24,29,26,1153112,1889677,2012,04/08/2012 11:58:23 AM,41.853121477,-87.713514134,"(41.853121477, -87.713514134)" -8556355,HV232065,04/07/2012 09:00:00 AM,028XX E 84TH ST,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,0423,004,10,46,06,1196817,1849869,2012,04/08/2012 07:44:12 AM,41.742908598,-87.554428774,"(41.742908598, -87.554428774)" -8742646,HV407063,04/06/2012 12:00:00 PM,045XX S MICHIGAN AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0215,002,3,38,06,1177885,1874735,2012,08/07/2012 10:56:05 AM,41.811592789,-87.623042964,"(41.811592789, -87.623042964)" -8555602,HV231037,04/06/2012 07:15:00 AM,001XX E WACKER DR,0820,THEFT,$500 AND UNDER,HOTEL/MOTEL,false,false,0114,001,42,32,06,1177785,1902579,2012,04/07/2012 11:57:14 AM,41.888000915,-87.622564433,"(41.888000915, -87.622564433)" -8590527,HV230287,04/05/2012 08:00:00 PM,006XX W 129TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0523,005,9,53,07,1174290,1818880,2012,05/25/2012 01:24:06 PM,41.658400059,-87.63788462,"(41.658400059, -87.63788462)" -8554015,HV229644,04/05/2012 06:30:00 PM,024XX N NEW ENGLAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2512,025,36,18,18,1129969,1915661,2012,04/05/2012 07:11:45 PM,41.92485225,-87.79786305,"(41.92485225, -87.79786305)" -8554151,HV229608,04/05/2012 06:00:00 PM,063XX S RHODES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0312,003,20,42,14,1180958,1862832,2012,04/06/2012 12:46:46 PM,41.778859653,-87.612137741,"(41.778859653, -87.612137741)" -8552329,HV228218,04/04/2012 05:00:00 PM,082XX S EVANS AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0631,006,6,44,26,1182711,1850180,2012,04/05/2012 03:39:23 PM,41.744100762,-87.606103294,"(41.744100762, -87.606103294)" -8553267,HV228883,04/04/2012 02:00:00 PM,065XX S WASHTENAW AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),false,false,0831,008,15,66,26,1159467,1860962,2012,04/07/2012 09:23:44 PM,41.77419569,-87.690976888,"(41.77419569, -87.690976888)" -8551852,HV227702,04/04/2012 11:57:00 AM,080XX S ELLIS AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0631,006,8,44,18,1184243,1852130,2012,04/04/2012 01:04:16 PM,41.749416101,-87.600429097,"(41.749416101, -87.600429097)" -8550902,HV226653,04/03/2012 10:30:00 AM,069XX S PAXTON AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0331,003,5,43,05,1192125,1859119,2012,04/10/2012 03:25:17 PM,41.768406615,-87.571319889,"(41.768406615, -87.571319889)" -8549744,HV225861,04/03/2012 03:15:00 AM,016XX W 18TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1222,012,25,31,08B,1165476,1891501,2012,04/08/2012 10:29:45 AM,41.857872835,-87.668082232,"(41.857872835, -87.668082232)" -8549475,HV225488,04/01/2012 08:00:00 PM,017XX W WABANSIA AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1433,014,32,24,06,1164312,1911322,2012,04/04/2012 10:13:43 AM,41.912287919,-87.671793947,"(41.912287919, -87.671793947)" -8546265,HV221938,03/31/2012 02:51:00 AM,063XX S DR MARTIN LUTHER KING JR DR,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0312,003,20,69,14,1179978,1862707,2012,04/02/2012 08:58:12 AM,41.778539138,-87.615734292,"(41.778539138, -87.615734292)" -8551096,HV226673,03/31/2012 01:00:00 AM,011XX W 51ST ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0933,009,16,61,03,1169631,1871020,2012,04/08/2012 01:05:40 PM,41.801581646,-87.653425916,"(41.801581646, -87.653425916)" -8545511,HV221010,03/30/2012 01:00:00 PM,008XX E 133RD PL,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,0533,005,9,54,08B,1184160,1817039,2012,03/31/2012 08:18:14 AM,41.653123877,-87.601825426,"(41.653123877, -87.601825426)" -8544255,HV220018,03/29/2012 04:00:00 PM,042XX W BYRON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1731,017,38,16,07,1146924,1925535,2012,04/02/2012 09:40:55 AM,41.951639939,-87.735308905,"(41.951639939, -87.735308905)" -8559788,HV219312,03/29/2012 10:05:00 AM,003XX S SACRAMENTO BLVD,2017,NARCOTICS,MANU/DELIVER:CRACK,VEHICLE NON-COMMERCIAL,true,false,1124,011,28,27,18,1156396,1898085,2012,04/18/2012 02:21:07 PM,41.876128239,-87.701233473,"(41.876128239, -87.701233473)" -8541124,HV217186,03/27/2012 07:10:00 PM,019XX W VAN BUREN ST,0460,BATTERY,SIMPLE,COLLEGE/UNIVERSITY GROUNDS,true,false,1211,012,2,28,08B,1163738,1898218,2012,03/28/2012 11:24:48 AM,41.876341664,-87.674272449,"(41.876341664, -87.674272449)" -8583035,HV257505,03/27/2012 12:01:00 AM,043XX N KENNETH AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1722,017,38,16,06,1145727,1928410,2012,06/04/2012 12:33:00 PM,41.95955201,-87.739635887,"(41.95955201, -87.739635887)" -8536015,HV212727,03/24/2012 02:40:00 PM,035XX W FLOURNOY ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1133,011,24,27,18,1152892,1896763,2012,03/24/2012 03:35:33 PM,41.87257062,-87.714134032,"(41.87257062, -87.714134032)" -8549938,HV212650,03/24/2012 12:45:54 PM,020XX N SAWYER AVE,2022,NARCOTICS,POSS: COCAINE,APARTMENT,true,false,1413,014,35,22,18,1154213,1913732,2012,04/06/2012 02:22:40 PM,41.919108918,-87.708830542,"(41.919108918, -87.708830542)" -8532515,HV209192,03/22/2012 12:00:00 AM,034XX N CENTRAL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,false,false,1633,016,38,15,14,1138372,1922501,2012,03/22/2012 01:26:15 PM,41.943473788,-87.766820077,"(41.943473788, -87.766820077)" -8531688,HV208081,03/21/2012 02:45:00 PM,010XX N FRANCISCO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,HOSPITAL BUILDING/GROUNDS,false,true,1311,012,26,24,08B,1156820,1906978,2012,03/31/2012 10:26:55 AM,41.900522885,-87.699435477,"(41.900522885, -87.699435477)" -8530733,HV207701,03/21/2012 06:30:00 AM,052XX S DREXEL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0233,002,5,41,07,1183092,1870494,2012,03/23/2012 08:00:46 AM,41.799835467,-87.604076149,"(41.799835467, -87.604076149)" -8528962,HV206095,03/20/2012 11:05:00 AM,066XX S MARYLAND AVE,1661,GAMBLING,GAME/DICE,RESIDENTIAL YARD (FRONT/BACK),true,false,0321,003,5,42,19,1183071,1861360,2012,03/20/2012 11:06:58 AM,41.774771458,-87.604437136,"(41.774771458, -87.604437136)" -8526127,HV204026,03/18/2012 11:50:00 PM,071XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0323,003,6,69,08B,1180190,1857608,2012,04/03/2012 05:22:08 PM,41.764542106,-87.6151132,"(41.764542106, -87.6151132)" -8527704,HV204791,03/18/2012 10:30:00 PM,003XX E OHIO ST,0810,THEFT,OVER $500,STREET,false,false,1834,018,42,8,06,1178885,1904235,2012,03/20/2012 07:22:59 AM,41.892519983,-87.618474255,"(41.892519983, -87.618474255)" -8524723,HV202348,03/17/2012 07:45:00 PM,020XX W 69TH ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0735,007,17,67,18,1164184,1858860,2012,03/17/2012 07:31:07 PM,41.768329534,-87.673744258,"(41.768329534, -87.673744258)" -8536309,HV205338,03/17/2012 02:00:00 PM,035XX W 116TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,2211,022,19,74,08B,1154906,1827486,2012,04/12/2012 10:48:09 AM,41.682423961,-87.708587502,"(41.682423961, -87.708587502)" -8522814,HV198568,03/15/2012 10:30:00 AM,059XX N CALIFORNIA AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,2011,020,40,2,08B,1156635,1939501,2012,03/22/2012 02:34:09 PM,41.989771908,-87.699231258,"(41.989771908, -87.699231258)" -8520709,HV197625,03/14/2012 07:05:00 PM,049XX W KAMERLING AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,2533,025,37,25,08B,1143259,1908489,2012,03/15/2012 06:44:48 AM,41.9049334,-87.749208425,"(41.9049334, -87.749208425)" -8520352,HV197126,03/14/2012 12:37:00 PM,065XX S LAFLIN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE,true,false,0725,007,17,67,18,1167429,1861062,2012,03/14/2012 02:28:27 PM,41.774303202,-87.661786728,"(41.774303202, -87.661786728)" -8520059,HV196809,03/14/2012 07:45:00 AM,050XX S ARTESIAN AVE,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0923,009,14,63,08A,1160846,1870986,2012,05/22/2014 12:38:42 PM,41.801674518,-87.68564488,"(41.801674518, -87.68564488)" -8519188,HV195689,03/13/2012 12:55:00 PM,112XX S WESTERN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CURRENCY EXCHANGE,false,true,2212,022,19,75,08B,1162357,1830213,2012,03/21/2012 09:26:28 AM,41.689755837,-87.681236621,"(41.689755837, -87.681236621)" -8517659,HV194867,03/12/2012 10:00:00 PM,079XX S HERMITAGE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0611,006,21,71,08B,1166015,1852212,2012,03/21/2012 10:21:37 AM,41.750047777,-87.667221432,"(41.750047777, -87.667221432)" -8515199,HV192319,03/11/2012 02:00:00 AM,021XX E 96TH PL,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,RESIDENCE,false,true,0431,004,7,51,04B,1191865,1841431,2012,04/15/2012 10:23:26 AM,41.719875493,-87.572845884,"(41.719875493, -87.572845884)" -8514805,HV191863,03/10/2012 05:15:00 PM,0000X W HURON ST,0870,THEFT,POCKET-PICKING,GROCERY FOOD STORE,true,false,1832,018,42,8,06,1175745,1905098,2012,03/11/2012 11:51:55 AM,41.894959308,-87.629980079,"(41.894959308, -87.629980079)" -8514372,HV191085,03/10/2012 07:25:00 AM,033XX N PULASKI RD,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,1732,017,30,21,06,1149182,1921804,2012,03/11/2012 07:17:17 AM,41.941358241,-87.727105464,"(41.941358241, -87.727105464)" -8511951,HV188768,03/08/2012 12:30:00 PM,007XX W 31ST ST,0560,ASSAULT,SIMPLE,RESTAURANT,true,false,0915,009,11,60,08A,1171606,1884286,2012,03/16/2012 11:08:39 AM,41.837941738,-87.645793568,"(41.837941738, -87.645793568)" -8506953,HV184090,03/05/2012 12:31:00 PM,061XX N RICHMOND ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2413,024,50,2,06,1155613,1940497,2012,03/06/2012 08:18:13 AM,41.992525681,-87.702963403,"(41.992525681, -87.702963403)" -8506533,HV183688,03/05/2012 08:53:00 AM,083XX S RACINE AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0613,006,21,71,06,1169812,1849596,2012,03/08/2012 07:52:52 AM,41.742787608,-87.653383299,"(41.742787608, -87.653383299)" -8504949,HV181647,03/02/2012 07:20:00 AM,026XX E 95TH ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,0423,004,7,48,06,1195615,1842521,2012,03/04/2012 08:52:25 AM,41.722774831,-87.55907504,"(41.722774831, -87.55907504)" -8503005,HV179775,03/02/2012 01:35:00 AM,007XX E 79TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0624,006,6,44,08B,1182683,1852751,2012,03/03/2012 07:46:51 AM,41.751156513,-87.606126271,"(41.751156513, -87.606126271)" -8496611,HV173990,02/26/2012 09:59:00 PM,059XX S DAMEN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0714,007,15,67,18,1163997,1865492,2012,02/26/2012 10:36:20 PM,41.786532558,-87.67424339,"(41.786532558, -87.67424339)" -8494866,HV171615,02/24/2012 07:50:00 PM,064XX S DREXEL AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,VACANT LOT/LAND,false,false,0312,003,20,42,15,1183457,1862632,2012,02/25/2012 10:30:36 AM,41.778252957,-87.602982534,"(41.778252957, -87.602982534)" -8494724,HV171572,02/24/2012 07:00:00 AM,014XX W GARFIELD BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0713,007,16,67,05,1167773,1868102,2012,03/12/2012 11:07:08 AM,41.793614445,-87.660323686,"(41.793614445, -87.660323686)" -8490022,HV167358,02/21/2012 06:00:00 PM,026XX N LARAMIE AVE,0810,THEFT,OVER $500,APPLIANCE STORE,false,false,2521,025,31,19,06,1141296,1917403,2012,02/25/2012 07:21:38 PM,41.929430838,-87.756198864,"(41.929430838, -87.756198864)" -8494235,HV171059,02/21/2012 01:00:00 AM,001XX N HOYNE AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,1332,012,2,28,06,1162349,1900905,2012,02/27/2012 08:10:51 AM,41.88374418,-87.679297203,"(41.88374418, -87.679297203)" -8488754,HV166207,02/20/2012 09:30:00 PM,007XX N RIDGEWAY AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1112,011,27,23,18,1151216,1904615,2012,02/20/2012 10:56:18 PM,41.894150359,-87.720081418,"(41.894150359, -87.720081418)" -8489063,HV166425,02/20/2012 10:00:00 AM,079XX S CAMPBELL AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,0835,008,18,70,26,1161055,1851768,2012,02/25/2012 02:07:43 PM,41.748933309,-87.685409398,"(41.748933309, -87.685409398)" -8487903,HV165075,02/19/2012 10:13:00 PM,004XX N DRAKE AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,STREET,false,true,1123,011,27,23,04B,1152677,1902816,2012,02/25/2012 08:05:47 PM,41.889184943,-87.714763222,"(41.889184943, -87.714763222)" -8486123,HV162736,02/17/2012 11:30:00 PM,037XX W 59TH ST,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0822,008,14,62,04A,1152206,1865259,2012,02/25/2012 09:59:53 PM,41.786133066,-87.717481838,"(41.786133066, -87.717481838)" -8484304,HV160943,02/16/2012 06:05:00 PM,040XX W MADISON ST,2028,NARCOTICS,POSS: SYNTHETIC DRUGS,SIDEWALK,true,false,1115,011,28,26,18,1149363,1899744,2012,02/16/2012 08:49:03 PM,41.88081995,-87.727013364,"(41.88081995, -87.727013364)" -8483084,HV159815,02/15/2012 10:35:00 PM,020XX N LA CROSSE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,2522,025,31,19,18,1143736,1913429,2012,02/16/2012 12:05:36 AM,41.918480362,-87.747332259,"(41.918480362, -87.747332259)" -8481524,HV158303,02/14/2012 09:15:00 PM,067XX S PEORIA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0723,007,17,68,18,1171508,1860156,2012,02/14/2012 09:53:43 PM,41.771728652,-87.646860372,"(41.771728652, -87.646860372)" -8479851,HV156306,02/13/2012 11:55:00 AM,019XX S JOURDAN CT,0820,THEFT,$500 AND UNDER,STREET,false,false,1233,012,25,31,06,1171139,1890766,2012,02/14/2012 09:33:41 AM,41.855733652,-87.647317253,"(41.855733652, -87.647317253)" -9500616,HX155728,02/13/2012 08:00:00 AM,049XX S KOLIN AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,0815,008,23,57,06,1148161,1871327,2012,02/20/2014 10:21:36 AM,41.802863151,-87.732157431,"(41.802863151, -87.732157431)" -8479884,HV156556,02/13/2012 03:30:00 AM,002XX E 121ST PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0532,005,9,53,07,1179994,1824407,2012,02/22/2012 11:29:11 PM,41.673438809,-87.616844321,"(41.673438809, -87.616844321)" -8489388,HV155104,02/12/2012 09:41:00 AM,041XX N PLAINFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1614,016,36,17,14,1120043,1926843,2012,02/22/2012 11:34:08 AM,41.955701439,-87.83409722,"(41.955701439, -87.83409722)" -8487598,HV164636,02/11/2012 01:00:00 PM,041XX W 31ST ST,0820,THEFT,$500 AND UNDER,TAVERN/LIQUOR STORE,true,false,1031,010,22,30,06,1149226,1883676,2012,02/20/2012 07:52:18 AM,41.836730045,-87.727932442,"(41.836730045, -87.727932442)" -8477616,HV153534,02/10/2012 09:30:00 PM,044XX S DREXEL BLVD,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,2123,002,4,39,05,1182898,1875775,2012,02/19/2012 02:30:49 PM,41.814331459,-87.604623386,"(41.814331459, -87.604623386)" -8475730,HV151081,02/09/2012 09:05:00 AM,065XX N CALIFORNIA AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,true,false,2412,024,50,2,03,1156518,1943202,2012,02/16/2012 02:51:50 PM,41.999929986,-87.699560856,"(41.999929986, -87.699560856)" -8474038,HV150006,02/08/2012 09:30:00 AM,034XX W DOUGLAS BLVD,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1021,010,24,29,08B,1153435,1893278,2012,02/09/2012 11:08:27 AM,41.86299663,-87.712232998,"(41.86299663, -87.712232998)" -8472882,HV149004,02/07/2012 02:50:00 PM,020XX N ORCHARD ST,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,"SCHOOL, PUBLIC, BUILDING",true,false,1812,018,43,7,02,1171322,1913569,2012,04/24/2012 09:28:35 AM,41.918302548,-87.645975132,"(41.918302548, -87.645975132)" -8529428,HV182027,02/07/2012 09:00:00 AM,082XX S STATE ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0631,006,6,44,06,1177762,1850454,2012,03/21/2012 06:14:49 AM,41.744965993,-87.62422852,"(41.744965993, -87.62422852)" -8470222,HV146964,02/05/2012 11:25:00 PM,002XX W GARFIELD BLVD,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0711,007,3,68,03,1175663,1868333,2012,03/01/2012 01:54:07 PM,41.794075191,-87.631384866,"(41.794075191, -87.631384866)" -8468776,HV145036,02/04/2012 10:30:00 AM,038XX S LAKE PARK AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,2122,002,4,36,06,1182900,1879908,2012,02/05/2012 11:24:47 AM,41.825672663,-87.604487453,"(41.825672663, -87.604487453)" -8468702,HV145109,02/03/2012 07:45:00 PM,070XX S HALSTED ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0733,007,6,68,04B,1172138,1858410,2012,02/11/2012 04:04:11 PM,41.766923596,-87.644602254,"(41.766923596, -87.644602254)" -8466595,HV143266,02/02/2012 11:38:00 PM,034XX W FULLERTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,TAVERN/LIQUOR STORE,false,true,1413,014,26,22,08B,1152937,1915701,2012,02/05/2012 07:28:46 AM,41.924537423,-87.713466447,"(41.924537423, -87.713466447)" -8466493,HV143132,02/02/2012 08:53:00 PM,001XX N STATE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SMALL RETAIL STORE,true,false,0122,001,42,32,18,1176311,1900931,2012,02/02/2012 11:11:00 PM,41.883512088,-87.62802713,"(41.883512088, -87.62802713)" -8463335,HV140420,01/31/2012 10:17:00 PM,084XX S DORCHESTER AVE,1477,WEAPONS VIOLATION,RECKLESS FIREARM DISCHARGE,SIDEWALK,false,false,0412,004,8,45,15,1187045,1849391,2012,02/01/2012 07:13:30 AM,41.74183406,-87.590248249,"(41.74183406, -87.590248249)" -8463106,HV140223,01/31/2012 08:22:00 PM,071XX S ASHLAND AVE,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,0735,007,17,67,26,1166868,1857616,2012,02/01/2012 10:40:20 AM,41.764858929,-87.663941573,"(41.764858929, -87.663941573)" -8463109,HV140111,01/31/2012 06:40:00 PM,029XX E 90TH ST,0460,BATTERY,SIMPLE,STREET,true,false,0423,004,10,46,08B,1196970,1845889,2012,02/01/2012 08:12:11 AM,41.731983359,-87.554000243,"(41.731983359, -87.554000243)" -8957708,HW101855,01/30/2012 08:00:00 PM,017XX W 21ST ST,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,false,1234,012,25,31,14,1164832,1890155,2012,01/07/2013 10:54:58 AM,41.854192953,-87.670484239,"(41.854192953, -87.670484239)" -8459933,HV137434,01/29/2012 09:45:00 PM,016XX W 21ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,1222,012,25,31,18,1165565,1890093,2012,01/29/2012 11:06:24 PM,41.854007261,-87.667795608,"(41.854007261, -87.667795608)" -8460854,HV138073,01/28/2012 07:30:00 PM,020XX W ADAMS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1211,012,2,28,14,1162594,1899036,2012,01/31/2012 06:45:57 AM,41.878610356,-87.678449913,"(41.878610356, -87.678449913)" -8458787,HV136073,01/28/2012 05:57:00 PM,024XX W CONGRESS PKWY,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1135,011,2,28,18,1159836,1897650,2012,01/28/2012 08:08:24 PM,41.874864345,-87.688614959,"(41.874864345, -87.688614959)" -8460278,HV137680,01/28/2012 09:00:00 AM,026XX W WASHINGTON BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1331,012,2,28,07,1158917,1900628,2012,02/26/2012 02:17:31 PM,41.88305515,-87.69190743,"(41.88305515, -87.69190743)" -8459371,HV134472,01/27/2012 11:45:00 AM,048XX W NEWPORT AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1634,016,38,15,05,1143295,1922535,2012,03/30/2012 09:27:06 PM,41.943476379,-87.748724425,"(41.943476379, -87.748724425)" -8457294,HV134030,01/27/2012 10:20:00 AM,081XX S EXCHANGE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,SIDEWALK,true,true,0422,004,7,46,26,1197278,1851719,2012,01/28/2012 07:23:59 AM,41.747973674,-87.552678197,"(41.747973674, -87.552678197)" -8456599,HV133666,01/27/2012 12:01:00 AM,0000X E HARRISON ST,0460,BATTERY,SIMPLE,STREET,false,false,0132,001,2,32,08B,1176786,1897574,2012,01/27/2012 07:35:45 AM,41.874289563,-87.626384454,"(41.874289563, -87.626384454)" -8455684,HV132760,01/26/2012 11:50:00 AM,102XX S PERRY AVE,0460,BATTERY,SIMPLE,STREET,true,false,0511,005,9,49,08B,1177365,1837006,2012,01/27/2012 08:55:29 AM,41.708071904,-87.62608803,"(41.708071904, -87.62608803)" -8454559,HV132002,01/25/2012 07:00:00 PM,004XX E 103RD ST,1330,CRIMINAL TRESPASS,TO LAND,CONVENIENCE STORE,true,false,0512,005,9,49,26,1181002,1836726,2012,01/26/2012 06:00:49 AM,41.707220804,-87.612777825,"(41.707220804, -87.612777825)" -8454153,HV131562,01/25/2012 02:15:00 PM,061XX S LAWNDALE AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0823,008,13,65,03,1152796,1863892,2012,02/23/2012 02:12:07 PM,41.782370194,-87.715354604,"(41.782370194, -87.715354604)" -8451039,HV128899,01/23/2012 02:30:00 PM,008XX N ASHLAND AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,1323,012,1,24,05,1165618,1905599,2012,01/25/2012 09:45:29 AM,41.896555875,-87.667159351,"(41.896555875, -87.667159351)" -8458576,HX135858A,01/20/2012 02:30:00 PM,047XX S ARCHER AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,0821,008,14,57,06,1152379,1872621,2012,01/29/2012 10:17:33 AM,41.806332073,-87.716653887,"(41.806332073, -87.716653887)" -8531167,HV208003,01/19/2012 12:00:00 AM,013XX N WALLER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,true,false,2531,025,29,25,07,1138143,1908201,2012,07/17/2012 05:04:26 PM,41.904237152,-87.768008297,"(41.904237152, -87.768008297)" -8488522,HV123348,01/18/2012 09:08:00 PM,068XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,STREET,false,false,0322,003,20,69,08B,1180050,1860023,2012,02/24/2012 07:00:38 AM,41.771172323,-87.615552464,"(41.771172323, -87.615552464)" -8447846,HV122065,01/17/2012 08:00:00 PM,054XX W HURON ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,1524,015,37,25,03,1139420,1904052,2012,02/17/2012 06:22:25 PM,41.892828605,-87.763418709,"(41.892828605, -87.763418709)" -8443730,HV121908,01/17/2012 05:45:00 PM,061XX S RHODES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0313,003,20,42,08B,1180924,1864158,2012,01/20/2012 08:03:00 AM,41.782499106,-87.61222162,"(41.782499106, -87.61222162)" -8442491,HV120854,01/17/2012 06:30:00 AM,027XX W FULLERTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1431,014,1,22,08B,1157387,1915793,2012,01/19/2012 09:25:01 PM,41.924700442,-87.697112676,"(41.924700442, -87.697112676)" -8441712,HV119790,01/16/2012 10:28:00 AM,005XX N CENTRAL PARK AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,1121,011,27,23,06,1152329,1903277,2012,01/17/2012 07:04:52 AM,41.89045685,-87.716029046,"(41.89045685, -87.716029046)" -8440259,HV118161,01/14/2012 08:25:00 PM,038XX W MONTROSE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1723,017,39,14,18,1150249,1929012,2012,01/14/2012 09:24:46 PM,41.961116765,-87.722995125,"(41.961116765, -87.722995125)" -8439675,HV117305,01/14/2012 03:40:00 AM,011XX S MASON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1513,015,29,25,26,1136939,1894186,2012,01/15/2012 12:10:59 PM,41.865799833,-87.772767267,"(41.865799833, -87.772767267)" -8438678,HV114955,01/12/2012 07:45:00 AM,052XX S HYDE PARK BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2132,002,4,41,08B,1188493,1870554,2012,01/31/2012 07:59:49 AM,41.799872664,-87.584267562,"(41.799872664, -87.584267562)" -8430595,HV109026,01/07/2012 07:30:00 PM,037XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1011,010,24,29,08B,1151286,1894405,2012,01/09/2012 01:25:36 AM,41.866131641,-87.720092268,"(41.866131641, -87.720092268)" -8430353,HV108810,01/07/2012 01:43:00 PM,012XX S LAKE SHORE DR E,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,OTHER,false,false,0133,001,2,33,11,1178826,1895067,2012,01/19/2012 03:59:08 PM,41.867363862,-87.618971193,"(41.867363862, -87.618971193)" -8434845,HV112810,01/07/2012 06:00:00 AM,012XX S WASHTENAW AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1023,010,28,29,26,1158521,1894318,2012,01/14/2012 03:03:36 PM,41.86574801,-87.69353428,"(41.86574801, -87.69353428)" -8428075,HV106341,01/05/2012 09:00:00 AM,085XX S WABASH AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0632,006,6,44,03,1178154,1848625,2012,01/15/2012 11:20:13 PM,41.739938124,-87.622847514,"(41.739938124, -87.622847514)" -8426117,HV104761,01/04/2012 04:45:00 PM,023XX N LAVERGNE AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2522,025,31,19,06,1142635,1915045,2012,01/05/2012 11:59:50 AM,41.922935408,-87.751337177,"(41.922935408, -87.751337177)" -8425973,HV104560,01/04/2012 03:45:00 PM,011XX S CANAL ST,0460,BATTERY,SIMPLE,RESTAURANT,true,false,0131,001,2,28,08B,1173357,1895045,2012,01/05/2012 07:37:50 AM,41.867426623,-87.639049172,"(41.867426623, -87.639049172)" -8422568,HV101447,01/02/2012 05:50:00 AM,070XX S STONY ISLAND AVE,0560,ASSAULT,SIMPLE,GAS STATION,false,false,0332,003,5,43,08A,1188171,1858862,2012,01/03/2012 07:18:35 AM,41.7677966,-87.585821169,"(41.7677966, -87.585821169)" -8422160,HV101026,01/01/2012 05:30:00 PM,061XX S WESTERN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0825,008,15,66,06,1161462,1863973,2012,01/01/2012 06:57:13 PM,41.782417166,-87.683580145,"(41.782417166, -87.683580145)" -8421756,HV100392,01/01/2012 05:30:00 AM,052XX N OAKVIEW AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,OTHER,true,false,1614,016,41,76,26,1117355,1933533,2012,01/02/2012 09:16:47 AM,41.974102179,-87.84383866,"(41.974102179, -87.84383866)" -8422024,HV100714,12/31/2011 05:00:00 PM,064XX W WARNER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,false,false,1632,016,38,17,14,1132534,1927100,2011,01/02/2012 09:11:02 AM,41.956197812,-87.788170602,"(41.956197812, -87.788170602)" -8422057,HV100880,12/31/2011 03:00:00 PM,002XX N CENTRAL AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1512,015,29,25,05,1138963,1901113,2011,02/15/2012 10:27:54 AM,41.884771935,-87.765168587,"(41.884771935, -87.765168587)" -8422790,HV101621,12/31/2011 06:00:00 AM,095XX S BENNETT AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0431,004,7,51,26,1190482,1841848,2011,01/05/2012 11:25:05 AM,41.721053197,-87.577897944,"(41.721053197, -87.577897944)" -8419926,HT653035,12/30/2011 12:30:00 PM,069XX S DAMEN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0735,007,17,67,03,1164177,1858867,2011,01/27/2012 03:22:05 PM,41.76834889,-87.673769719,"(41.76834889, -87.673769719)" -8416674,HT650089,12/28/2011 10:50:00 AM,008XX N PARKSIDE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1511,015,29,25,14,1138490,1905282,2011,12/29/2011 09:26:59 AM,41.896220778,-87.766804461,"(41.896220778, -87.766804461)" -8415475,HT648915,12/27/2011 12:10:00 PM,069XX S PEORIA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,0733,007,17,68,08B,1171549,1858604,2011,12/31/2011 01:57:40 PM,41.767468878,-87.646755494,"(41.767468878, -87.646755494)" -8414546,HT648298,12/26/2011 09:00:00 PM,006XX N MC CLURG CT,0870,THEFT,POCKET-PICKING,SIDEWALK,false,false,1834,018,42,8,06,1179123,1904546,2011,12/27/2011 08:10:56 AM,41.893367937,-87.617590662,"(41.893367937, -87.617590662)" -8413638,HT647149,12/25/2011 05:30:00 PM,069XX S CAMPBELL AVE,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,0832,008,15,66,03,1160874,1858299,2011,01/19/2012 09:31:04 AM,41.766859084,-87.685892542,"(41.766859084, -87.685892542)" -8419643,HT652664,12/23/2011 07:00:00 AM,016XX S RACINE AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,1233,012,25,31,05,1168675,1892082,2011,12/30/2011 10:49:14 AM,41.859398532,-87.656323192,"(41.859398532, -87.656323192)" -8410987,HT643546,12/22/2011 02:15:00 PM,117XX S INDIANA AVE,1020,ARSON,BY FIRE,VEHICLE NON-COMMERCIAL,false,false,0532,005,9,53,09,1179645,1827037,2011,01/22/2012 05:29:27 PM,41.680663877,-87.618041772,"(41.680663877, -87.618041772)" -8411701,HT643154,12/22/2011 06:30:00 AM,044XX S WALLACE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0935,009,11,61,07,1173078,1875455,2011,12/24/2011 08:11:13 AM,41.813676212,-87.640653418,"(41.813676212, -87.640653418)" -8409075,HT642050,12/20/2011 10:00:00 AM,112XX S STATE ST,0460,BATTERY,SIMPLE,STREET,false,false,0522,005,34,49,08B,1178213,1830477,2011,12/25/2011 11:06:23 AM,41.690136251,-87.623179772,"(41.690136251, -87.623179772)" -8404259,HT637601,12/18/2011 03:05:00 PM,001XX N KENTON AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,1113,011,28,25,04B,1145734,1900510,2011,01/15/2012 01:01:09 PM,41.882991525,-87.74031947,"(41.882991525, -87.74031947)" -8403560,HT636678,12/17/2011 07:39:00 PM,006XX N LOTUS AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,ALLEY,false,true,1524,015,37,25,04A,1139757,1903921,2011,01/13/2012 03:46:34 PM,41.892462976,-87.762184224,"(41.892462976, -87.762184224)" -8406970,HT635908,12/17/2011 03:20:00 AM,049XX W PARKER AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2521,025,31,19,08B,1142721,1917788,2011,12/21/2011 01:25:36 PM,41.930460876,-87.750952726,"(41.930460876, -87.750952726)" -8402666,HT635396,12/16/2011 07:30:00 PM,004XX S WESTERN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA PLATFORM,true,false,1135,011,2,28,18,1160438,1897806,2011,12/16/2011 10:13:22 PM,41.875279993,-87.686400348,"(41.875279993, -87.686400348)" -8403882,HT635508,12/16/2011 06:00:00 PM,0000X E MADISON ST,0820,THEFT,$500 AND UNDER,RESTAURANT,false,false,0123,001,42,32,06,1176961,1900378,2011,12/19/2011 10:33:28 AM,41.881979942,-87.625657054,"(41.881979942, -87.625657054)" -8402368,HT634847,12/16/2011 12:45:00 PM,045XX W DIVERSEY AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2521,025,31,20,06,1145738,1918272,2011,12/19/2011 01:04:00 PM,41.931732248,-87.739853515,"(41.931732248, -87.739853515)" -8421362,HT654960,12/14/2011 11:30:00 PM,012XX W ARDMORE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,true,false,2013,020,48,77,26,1166557,1939013,2011,01/12/2012 03:55:28 AM,41.988225433,-87.662750515,"(41.988225433, -87.662750515)" -8396755,HT629506,12/12/2011 10:10:00 PM,043XX W 63RD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0813,008,13,65,08B,1148529,1862513,2011,12/16/2011 01:50:03 PM,41.778669083,-87.73103425,"(41.778669083, -87.73103425)" -8396600,HT629124,12/12/2011 05:30:00 PM,003XX E 95TH ST,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0511,005,6,49,06,1180430,1842024,2011,12/13/2011 06:48:01 AM,41.721772315,-87.614710546,"(41.721772315, -87.614710546)" -8395819,HT628288,12/12/2011 08:30:00 AM,060XX S ROCKWELL ST,0331,ROBBERY,ATTEMPT: AGGRAVATED,SIDEWALK,false,false,0825,008,15,66,03,1160029,1864712,2011,01/31/2012 01:34:50 PM,41.784474679,-87.688813652,"(41.784474679, -87.688813652)" -8395112,HT628161,12/11/2011 09:00:00 PM,007XX N WASHTENAW AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1313,012,26,24,06,1158289,1905186,2011,12/12/2011 09:51:11 AM,41.89557557,-87.694088795,"(41.89557557, -87.694088795)" -8405083,HT638429,12/11/2011 08:00:00 AM,029XX N PINE GROVE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2333,019,44,6,07,1172442,1919822,2011,12/19/2011 10:47:40 AM,41.935436343,-87.64167489,"(41.935436343, -87.64167489)" -8390958,HT623419,12/07/2011 05:20:00 PM,026XX W HARRISON ST,5011,OTHER OFFENSE,LICENSE VIOLATION,ATHLETIC CLUB,false,false,1135,011,28,27,26,1158695,1897222,2011,12/09/2011 07:41:05 AM,41.873713313,-87.692815967,"(41.873713313, -87.692815967)" -8408265,HT640273,12/07/2011 08:00:00 AM,023XX S CHRISTIANA AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,1024,010,22,30,06,1154443,1888049,2011,01/19/2012 11:04:57 AM,41.848627587,-87.708672355,"(41.848627587, -87.708672355)" -8389405,HT622125,12/07/2011 07:00:00 AM,102XX S WALLACE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,2232,022,9,73,14,1174147,1837091,2011,12/08/2011 05:52:33 AM,41.708377079,-87.637869958,"(41.708377079, -87.637869958)" -8392701,HT625095,12/07/2011 06:30:00 AM,037XX W HAYFORD ST,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,0833,008,18,70,06,1152292,1854222,2011,12/26/2011 01:17:13 PM,41.75584409,-87.717456298,"(41.75584409, -87.717456298)" -8401174,HT633412,12/07/2011 12:01:00 AM,038XX S COTTAGE GROVE AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,OTHER,false,false,0212,002,4,36,11,1182131,1879460,2011,12/26/2011 12:57:01 PM,41.824461186,-87.60732258,"(41.824461186, -87.60732258)" -8397310,HT621077,12/06/2011 09:25:00 PM,062XX S ASHLAND AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0714,007,16,67,16,1166696,1863537,2011,12/15/2011 11:54:29 AM,41.781110593,-87.664403203,"(41.781110593, -87.664403203)" -8386968,HT620111,12/06/2011 10:50:00 AM,044XX S MICHIGAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,0221,002,3,38,14,1177855,1875741,2011,10/31/2014 03:20:56 PM,41.814354021,-87.623122506,"(41.814354021, -87.623122506)" -8383828,HT617227,12/03/2011 05:30:00 PM,075XX N SHERIDAN RD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2422,024,49,1,14,1165674,1950059,2011,12/05/2011 08:37:22 AM,42.018554805,-87.665681435,"(42.018554805, -87.665681435)" -8380523,HT613625,12/01/2011 08:40:00 PM,062XX S LANGLEY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0313,003,20,42,14,1182012,1863585,2011,12/02/2011 06:39:48 AM,41.780901634,-87.608250454,"(41.780901634, -87.608250454)" -8495145,HV166428,12/01/2011 08:11:00 PM,031XX W ROOSEVELT RD,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1134,011,24,29,06,1155229,1894574,2011,02/27/2012 08:07:09 AM,41.866517191,-87.705612582,"(41.866517191, -87.705612582)" -8388022,HT620849,12/01/2011 07:30:00 PM,009XX W MADISON ST,0560,ASSAULT,SIMPLE,OTHER,false,false,1212,012,27,28,08A,1170276,1900272,2011,12/07/2011 08:46:24 AM,41.881837714,-87.650207197,"(41.881837714, -87.650207197)" -8378964,HT612034,11/30/2011 04:46:00 PM,034XX W NORTH AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,PAWN SHOP,false,false,1422,014,26,23,04B,1153271,1910383,2011,02/18/2012 12:45:28 PM,41.909937739,-87.712380665,"(41.909937739, -87.712380665)" -8378729,HT611796,11/30/2011 03:35:00 PM,088XX S ABERDEEN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2222,022,21,71,08B,1170567,1846339,2011,12/06/2011 09:42:51 AM,41.733833545,-87.650711618,"(41.733833545, -87.650711618)" -8378960,HT612265,11/30/2011 02:30:00 PM,003XX N CLINTON ST,1200,DECEPTIVE PRACTICE,STOLEN PROP: BUY/RECEIVE/POS.,STREET,true,false,1212,012,42,28,13,1172708,1902440,2011,12/07/2011 11:19:06 AM,41.887733374,-87.641212806,"(41.887733374, -87.641212806)" -8377396,HT610895,11/29/2011 07:25:00 PM,086XX S SANGAMON ST,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,false,false,0613,006,21,71,03,1171442,1847772,2011,12/07/2011 09:33:39 PM,41.737746806,-87.647464208,"(41.737746806, -87.647464208)" -8392519,HT624749,11/29/2011 04:00:00 PM,012XX N PARKSIDE AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,2531,025,29,25,06,1138401,1907952,2011,12/14/2011 11:26:45 AM,41.903549197,-87.767066618,"(41.903549197, -87.767066618)" -8374581,HT608499,11/28/2011 11:55:00 AM,014XX N CENTRAL PARK AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,2535,025,26,23,08B,1152054,1909529,2011,11/29/2011 07:18:03 AM,41.907618373,-87.716874,"(41.907618373, -87.716874)" -8373692,HT607965,11/27/2011 11:45:00 PM,020XX W 69TH PL,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0735,007,17,67,18,1163628,1858517,2011,11/28/2011 01:20:22 AM,41.767399976,-87.675791884,"(41.767399976, -87.675791884)" -8373656,HT607934,11/27/2011 10:30:00 PM,046XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,25,16,1145668,1899660,2011,11/28/2011 12:34:36 AM,41.880660276,-87.740583386,"(41.880660276, -87.740583386)" -8430488,HV108970,11/27/2011 07:00:00 PM,068XX S PAXTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0331,003,5,43,26,1192102,1859866,2011,01/08/2012 06:40:17 AM,41.770456999,-87.571379937,"(41.770456999, -87.571379937)" -8375140,HT609044,11/27/2011 07:00:00 PM,024XX W WILSON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1911,019,47,4,26,1159506,1930485,2011,01/02/2012 02:49:46 PM,41.964972779,-87.688920669,"(41.964972779, -87.688920669)" -8373299,HT607398,11/27/2011 12:27:00 PM,081XX S RACINE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0613,006,21,71,14,1169699,1850736,2011,11/28/2011 05:49:07 AM,41.745918375,-87.653764347,"(41.745918375, -87.653764347)" -8372764,HT606779,11/27/2011 01:50:00 AM,031XX N RICHMOND ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1411,014,33,21,26,1156205,1920677,2011,11/28/2011 12:11:59 PM,41.938126482,-87.701323587,"(41.938126482, -87.701323587)" -8371281,HT604522,11/25/2011 01:29:00 PM,069XX S CONSTANCE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0332,003,5,43,05,1189699,1859287,2011,01/07/2012 09:39:49 PM,41.768926257,-87.580206811,"(41.768926257, -87.580206811)" -8370493,HT603806,11/24/2011 08:05:00 PM,012XX W 108TH PL,0460,BATTERY,SIMPLE,RESIDENCE,true,true,2234,022,34,75,08B,1170131,1832874,2011,11/25/2011 06:45:56 AM,41.696893035,-87.65269887,"(41.696893035, -87.65269887)" -8370127,HT595061,11/24/2011 08:00:00 AM,087XX S LOOMIS ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,2222,022,21,71,06,1168565,1846740,2011,11/25/2011 06:24:59 AM,41.734977285,-87.658034456,"(41.734977285, -87.658034456)" -8370187,HT603438,11/23/2011 08:00:00 PM,014XX W 110TH PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2234,022,34,75,05,1168584,1831509,2011,11/21/2013 09:14:36 PM,41.693180659,-87.658402252,"(41.693180659, -87.658402252)" -8369611,HT602644,11/23/2011 05:51:00 PM,009XX W MARQUETTE RD,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,APARTMENT,true,false,0723,007,17,68,26,1171078,1860364,2011,01/25/2012 04:32:21 PM,41.772308837,-87.648430537,"(41.772308837, -87.648430537)" -8367494,HT600595,11/22/2011 12:00:00 PM,069XX S MICHIGAN AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0322,003,6,69,07,1178316,1859228,2011,12/10/2011 11:04:31 PM,41.769030295,-87.621932743,"(41.769030295, -87.621932743)" -8366499,HT599937,11/21/2011 11:28:00 PM,055XX S LAFLIN ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,0713,007,16,67,24,1167247,1867822,2011,11/22/2011 09:32:25 AM,41.792857376,-87.662260503,"(41.792857376, -87.662260503)" -8369107,HT600366,11/21/2011 07:00:00 PM,078XX S ASHLAND AVE,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,0611,006,17,71,05,1167002,1852471,2011,12/13/2011 09:36:39 AM,41.750737484,-87.663597235,"(41.750737484, -87.663597235)" -8367602,HT600407,11/20/2011 02:00:00 PM,038XX N SOUTHPORT AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1923,019,44,6,06,1166235,1925928,2011,11/23/2011 10:36:39 AM,41.952326647,-87.664310686,"(41.952326647, -87.664310686)" -8363914,HT597358,11/20/2011 04:40:00 AM,011XX S KOSTNER AVE,0460,BATTERY,SIMPLE,STREET,true,false,1131,011,24,29,08B,1147265,1894629,2011,11/21/2011 09:40:59 AM,41.866824197,-87.734848089,"(41.866824197, -87.734848089)" -8361209,HT594244,11/17/2011 10:05:00 PM,006XX W HARRISON ST,0870,THEFT,POCKET-PICKING,STREET,false,false,0131,001,2,28,06,1172057,1897599,2011,11/18/2011 08:49:48 AM,41.874463733,-87.643746311,"(41.874463733, -87.643746311)" -8359867,HT592988,11/16/2011 05:30:00 PM,004XX W MARQUETTE RD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0722,007,6,68,14,1174515,1860464,2011,11/17/2011 10:20:59 AM,41.772507448,-87.635828573,"(41.772507448, -87.635828573)" -8358821,HT592050,11/16/2011 07:00:00 AM,123XX S INDIANA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0532,005,9,53,14,1179899,1823385,2011,11/17/2011 07:46:09 AM,41.670636454,-87.617223112,"(41.670636454, -87.617223112)" -8357833,HT591424,11/16/2011 12:20:00 AM,0000X W HUBBARD ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1831,018,42,8,06,1175757,1903263,2011,01/11/2012 05:10:47 PM,41.889923702,-87.629991251,"(41.889923702, -87.629991251)" -8353104,HT587002,11/13/2011 03:10:00 AM,063XX S EBERHART AVE,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,true,false,0312,003,20,42,08B,1180637,1862751,2011,11/14/2011 05:57:59 AM,41.778644763,-87.613317028,"(41.778644763, -87.613317028)" -8352603,HT586220,11/11/2011 09:20:00 PM,049XX S KEDVALE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0815,008,14,57,05,1149573,1871433,2011,11/13/2011 12:21:00 PM,41.803126813,-87.726976178,"(41.803126813, -87.726976178)" -8348023,HT581496,11/09/2011 10:15:00 AM,044XX N MONTICELLO AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1723,017,33,14,06,1151223,1929077,2011,11/10/2011 10:46:37 AM,41.961276037,-87.719412448,"(41.961276037, -87.719412448)" -8349072,HT582089,11/09/2011 05:45:00 AM,012XX N SPAULDING AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1422,014,26,23,05,1154089,1908335,2011,12/04/2011 11:34:11 PM,41.904301554,-87.709430374,"(41.904301554, -87.709430374)" -8350135,HT580415,11/07/2011 07:00:00 PM,022XX N FREMONT ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1812,018,43,7,06,1169954,1915239,2011,11/11/2011 07:09:59 AM,41.922915091,-87.650952402,"(41.922915091, -87.650952402)" -8342615,HT576457,11/05/2011 05:29:00 PM,104XX S AVENUE G,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,APARTMENT,true,false,0432,004,10,52,18,1203119,1836163,2011,11/05/2011 06:45:35 PM,41.705139504,-87.531806224,"(41.705139504, -87.531806224)" -8341657,HT575266,11/04/2011 12:00:00 PM,054XX S HYDE PARK BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2132,002,5,41,14,1188621,1869351,2011,11/05/2011 09:41:28 AM,41.796568486,-87.583836625,"(41.796568486, -87.583836625)" -8339839,HT573503,11/03/2011 06:40:00 PM,087XX S MICHIGAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0632,006,6,44,18,1178632,1847274,2011,11/03/2011 07:23:14 PM,41.736219973,-87.621137162,"(41.736219973, -87.621137162)" -8339484,HT573069,11/03/2011 02:30:00 PM,011XX S CANAL ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0131,001,2,28,14,1173340,1895546,2011,11/04/2011 07:53:05 AM,41.86880178,-87.639096707,"(41.86880178, -87.639096707)" -8338280,HT571928,11/02/2011 03:45:00 PM,035XX W POLK ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,1133,011,24,27,08A,1152984,1896183,2011,11/04/2011 08:54:27 AM,41.870977216,-87.713811626,"(41.870977216, -87.713811626)" -8337809,HT571444,11/02/2011 12:50:00 PM,099XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,GOVERNMENT BUILDING/PROPERTY,true,true,0511,005,6,49,08B,1180691,1839393,2011,11/03/2011 09:41:49 AM,41.714546535,-87.613835091,"(41.714546535, -87.613835091)" -8336008,HT569844,11/01/2011 01:55:00 PM,061XX S INDIANA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0311,003,20,40,18,1178687,1864551,2011,11/01/2011 01:33:28 PM,41.783628725,-87.620411093,"(41.783628725, -87.620411093)" -8337296,HT569778,10/31/2011 11:00:00 PM,067XX S ARTESIAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0832,008,15,66,08B,1161157,1860092,2011,11/27/2011 10:11:30 AM,41.771773482,-87.684805673,"(41.771773482, -87.684805673)" -8336429,HT570286,10/31/2011 11:00:00 AM,070XX S CONSTANCE AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,0332,003,5,43,11,1189801,1858523,2011,11/10/2011 11:24:34 AM,41.766827327,-87.579857467,"(41.766827327, -87.579857467)" -8334381,HT568383,10/31/2011 07:00:00 AM,008XX N LARAMIE AVE,0820,THEFT,$500 AND UNDER,VEHICLE-COMMERCIAL,false,false,1531,015,37,25,06,1141573,1905222,2011,11/01/2011 10:59:49 AM,41.89599971,-87.75548253,"(41.89599971, -87.75548253)" -8347175,HT580534,10/29/2011 04:00:00 PM,049XX W ADAMS ST,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,RESIDENCE,true,true,1533,015,28,25,20,1143689,1898922,2011,11/30/2011 09:23:40 PM,41.878672391,-87.747868674,"(41.878672391, -87.747868674)" -8331568,HT565489,10/29/2011 03:30:00 PM,011XX E 46TH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,2123,002,4,39,11,1184440,1874774,2011,12/11/2011 10:07:07 AM,41.811548622,-87.598998616,"(41.811548622, -87.598998616)" -8330822,HT564505,10/28/2011 06:00:00 PM,074XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0835,008,18,66,06,1161622,1855356,2011,10/30/2011 11:23:58 AM,41.758767582,-87.683232336,"(41.758767582, -87.683232336)" -8330414,HT563849,10/28/2011 11:00:00 AM,056XX W WASHINGTON BLVD,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,1513,015,29,25,06,1138772,1900144,2011,10/29/2011 01:05:28 PM,41.882116342,-87.765893506,"(41.882116342, -87.765893506)" -8329221,HT562907,10/27/2011 05:00:00 PM,0000X S WABASH AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0123,001,42,32,06,1176860,1900085,2011,10/28/2011 07:59:05 AM,41.881178218,-87.626036787,"(41.881178218, -87.626036787)" -8339637,HT573245,10/27/2011 04:00:00 PM,027XX W AUGUSTA BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1311,012,1,24,14,1158045,1906579,2011,11/04/2011 06:28:19 AM,41.899403068,-87.694946883,"(41.899403068, -87.694946883)" -8327425,HT561420,10/26/2011 11:20:00 PM,047XX W OHIO ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1111,011,28,25,08B,1144429,1903601,2011,10/27/2011 10:22:42 AM,41.891498237,-87.745033731,"(41.891498237, -87.745033731)" -8329344,HT563113,10/26/2011 08:35:00 PM,047XX W LAKE ST,0320,ROBBERY,STRONGARM - NO WEAPON,CTA TRAIN,false,false,1113,011,28,25,03,1144387,1901853,2011,11/21/2011 06:51:54 PM,41.886702312,-87.745231977,"(41.886702312, -87.745231977)" -8326862,HT560713,10/26/2011 03:05:00 PM,054XX W WEST END AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1523,015,28,25,04A,1139770,1900895,2011,10/30/2011 12:11:40 PM,41.884159015,-87.762210447,"(41.884159015, -87.762210447)" -8337455,HT560593,10/26/2011 01:32:00 PM,0000X W TERMINAL ST,0460,BATTERY,SIMPLE,AIRPORT TERMINAL UPPER LEVEL - NON-SECURE AREA,false,false,1655,016,41,76,08B,1104700,1933700,2011,11/12/2011 11:55:23 AM,41.974749442,-87.890372931,"(41.974749442, -87.890372931)" -8325038,HT559357,10/25/2011 02:26:00 PM,021XX S CHINA PL,0820,THEFT,$500 AND UNDER,TAVERN/LIQUOR STORE,false,false,2111,009,25,34,06,1174721,1890179,2011,11/27/2011 11:32:30 AM,41.854043596,-87.634187235,"(41.854043596, -87.634187235)" -8325360,HT559539,10/25/2011 12:15:00 PM,053XX S WABASH AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0232,002,3,40,05,1177582,1869587,2011,11/17/2011 10:24:13 AM,41.797473073,-87.624310112,"(41.797473073, -87.624310112)" -8323027,HT557441,10/24/2011 02:55:00 PM,050XX W DIVISION ST,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,SIDEWALK,true,false,1531,015,37,25,18,1142407,1907478,2011,10/24/2011 04:16:38 PM,41.902174979,-87.752363271,"(41.902174979, -87.752363271)" -8335164,HT569233,10/24/2011 09:00:00 AM,027XX W 37TH PL,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0913,009,12,58,08A,1158785,1879714,2011,11/05/2011 11:43:39 AM,41.825667617,-87.692964877,"(41.825667617, -87.692964877)" -8333790,HT567771,10/24/2011 08:00:00 AM,103XX S AVENUE M,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0432,004,10,52,07,1201458,1837201,2011,11/04/2011 12:24:08 PM,41.708030126,-87.537853346,"(41.708030126, -87.537853346)" -8321636,HT556270,10/23/2011 07:50:00 PM,033XX S MORGAN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0924,009,11,60,08B,1170149,1882713,2011,11/07/2011 12:53:30 PM,41.83365716,-87.651185788,"(41.83365716, -87.651185788)" -8321333,HT556046,10/23/2011 03:20:00 PM,019XX W 63RD ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0714,007,15,67,14,1164222,1862905,2011,10/24/2011 01:52:56 PM,41.779428758,-87.673491209,"(41.779428758, -87.673491209)" -8321339,HT555949,10/23/2011 02:00:00 PM,005XX W FULLERTON PKWY,0820,THEFT,$500 AND UNDER,RESIDENCE-GARAGE,false,false,1933,019,43,7,06,1172403,1916263,2011,10/24/2011 07:18:22 AM,41.925671163,-87.64192369,"(41.925671163, -87.64192369)" -8320599,HT554752,10/22/2011 05:23:00 PM,068XX S CHAMPLAIN AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,true,false,0321,003,6,42,04B,1181777,1860004,2011,11/02/2011 06:56:36 PM,41.77108046,-87.609222547,"(41.77108046, -87.609222547)" -8349213,HT582646,10/22/2011 02:00:00 PM,040XX N TROY ST,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,RESIDENCE,false,true,1724,017,33,16,26,1154704,1926765,2011,11/14/2011 12:19:47 PM,41.954862611,-87.706676513,"(41.954862611, -87.706676513)" -8320100,HT554315,10/22/2011 01:05:00 PM,087XX S UNION AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2223,022,21,71,14,1173128,1846903,2011,10/24/2011 08:02:56 AM,41.735325116,-87.641312757,"(41.735325116, -87.641312757)" -8332800,HT567119,10/22/2011 12:00:00 PM,061XX S ARCHER AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0811,008,23,56,06,1137719,1868155,2011,10/31/2011 10:02:40 AM,41.79435267,-87.770529848,"(41.79435267, -87.770529848)" -8338422,HT572051,10/19/2011 06:00:00 PM,003XX W 79TH ST,1110,DECEPTIVE PRACTICE,BOGUS CHECK,CURRENCY EXCHANGE,false,false,0623,006,17,44,11,1175105,1852514,2011,12/08/2011 01:33:59 PM,41.750678561,-87.633902763,"(41.750678561, -87.633902763)" -8314552,HT548916,10/18/2011 09:23:00 PM,009XX W BELMONT AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1924,019,44,6,11,1169268,1921470,2011,10/19/2011 08:42:08 AM,41.940028203,-87.653291387,"(41.940028203, -87.653291387)" -8314434,HT548711,10/18/2011 12:12:00 PM,063XX N RIDGE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,true,2413,024,50,2,26,1162959,1941688,2011,10/20/2011 03:04:28 PM,41.995642259,-87.675908715,"(41.995642259, -87.675908715)" -8315041,HT548270,10/18/2011 10:00:00 AM,002XX S WABASH AVE,0890,THEFT,FROM BUILDING,COLLEGE/UNIVERSITY GROUNDS,true,false,0113,001,42,32,06,1176807,1899299,2011,06/09/2012 07:47:28 PM,41.879022588,-87.626255176,"(41.879022588, -87.626255176)" -8311911,HT546386,10/17/2011 10:30:00 AM,011XX N WESTERN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,1312,012,1,24,18,1160235,1907765,2011,10/17/2011 12:11:17 PM,41.902612548,-87.686870207,"(41.902612548, -87.686870207)" -8311034,HT545597,10/16/2011 05:00:00 PM,001XX W 112TH PL,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0522,005,34,49,08B,1177096,1830309,2011,10/19/2011 11:39:11 AM,41.689700431,-87.627274168,"(41.689700431, -87.627274168)" -8327576,HT544942,10/16/2011 04:31:00 AM,069XX W ARCHER AVE,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,0811,008,23,56,05,1130829,1867321,2011,11/08/2011 01:50:07 PM,41.792185021,-87.795814969,"(41.792185021, -87.795814969)" -8307866,HT542001,10/14/2011 08:30:00 AM,003XX N LARAMIE AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,SIDEWALK,false,false,1523,015,28,25,03,1141601,1901917,2011,11/20/2011 11:31:41 AM,41.886929874,-87.755461441,"(41.886929874, -87.755461441)" -8308402,HT541921,10/13/2011 08:30:00 PM,087XX S HOUSTON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0424,004,10,46,07,1198002,1847455,2011,10/16/2011 01:31:53 AM,41.736254882,-87.550167487,"(41.736254882, -87.550167487)" -8307276,HT541443,10/13/2011 10:04:00 AM,026XX S CALIFORNIA AVE,3960,INTIMIDATION,INTIMIDATION,GOVERNMENT BUILDING/PROPERTY,false,false,1033,010,12,30,26,1158098,1886049,2011,11/28/2011 11:25:25 AM,41.843065624,-87.695312699,"(41.843065624, -87.695312699)" -8308062,HT541956,10/12/2011 11:00:00 AM,033XX W 16TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1021,010,24,29,08B,1153998,1891796,2011,10/15/2011 05:58:09 AM,41.85891866,-87.710205754,"(41.85891866, -87.710205754)" -8333674,HT537661,10/11/2011 12:50:00 PM,129XX S GREEN ST,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,RESIDENCE,false,false,0523,005,34,53,26,1173069,1819055,2011,11/09/2011 08:38:51 AM,41.658907236,-87.642347405,"(41.658907236, -87.642347405)" -8305878,HT538654,10/11/2011 10:00:00 AM,001XX N CENTRAL AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1523,015,29,25,05,1139061,1900593,2011,01/22/2012 10:39:02 PM,41.883343207,-87.764821361,"(41.883343207, -87.764821361)" -8301012,HT535325,10/09/2011 08:30:00 PM,055XX S ASHLAND AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0715,007,15,67,03,1166574,1868056,2011,11/16/2011 04:04:52 PM,41.793513889,-87.664721643,"(41.793513889, -87.664721643)" -8300413,HT534494,10/09/2011 08:50:00 AM,081XX S KIMBARK AVE,0460,BATTERY,SIMPLE,STREET,false,true,0411,004,8,45,08B,1186252,1851238,2011,10/12/2011 11:04:35 AM,41.746921169,-87.593095525,"(41.746921169, -87.593095525)" -8300857,HT533972,10/08/2011 07:00:00 PM,049XX N LINCOLN AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,2031,020,47,4,06,1159081,1932778,2011,10/12/2011 03:34:47 PM,41.971273647,-87.690420026,"(41.971273647, -87.690420026)" -8297301,HT531053,10/06/2011 11:55:00 PM,031XX W MARQUETTE RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0831,008,15,66,08B,1156728,1860073,2011,10/09/2011 10:33:19 AM,41.771811843,-87.701041599,"(41.771811843, -87.701041599)" -8297088,HT530620,10/06/2011 05:48:00 PM,018XX W TOUHY AVE,0820,THEFT,$500 AND UNDER,STREET,true,false,2424,024,49,1,06,1162463,1947818,2011,10/07/2011 10:38:00 AM,42.012473575,-87.677560543,"(42.012473575, -87.677560543)" -8292850,HT526873,10/04/2011 11:00:00 AM,025XX N NARRAGANSETT AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,2512,025,36,19,06,1133270,1916413,2011,10/05/2011 10:31:23 AM,41.926858621,-87.785715823,"(41.926858621, -87.785715823)" -8293620,HT527662,10/03/2011 11:00:00 PM,015XX N ASHLAND AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,1433,014,1,24,26,1165485,1910303,2011,10/07/2011 01:07:08 PM,41.909466809,-87.66751374,"(41.909466809, -87.66751374)" -8290441,HT524040,10/02/2011 08:00:00 AM,058XX N CENTRAL PARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1711,017,39,13,14,1151365,1938621,2011,10/04/2011 09:52:32 AM,41.987462576,-87.718638597,"(41.987462576, -87.718638597)" -8288251,HT522361,10/01/2011 01:30:00 AM,133XX S BRANDON AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,ALLEY,true,false,0433,004,10,55,14,1199480,1816887,2011,10/01/2011 06:48:20 AM,41.652336358,-87.54577669,"(41.652336358, -87.54577669)" -8288297,HT520630,09/29/2011 11:50:00 PM,087XX S STATE ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",GAS STATION,false,false,0632,006,6,44,07,1177847,1847232,2011,10/22/2011 11:22:30 PM,41.73612251,-87.624014378,"(41.73612251, -87.624014378)" -8285890,HT519652,09/29/2011 12:05:00 PM,0000X W 87TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0634,006,21,44,06,1176990,1847235,2011,09/30/2011 06:15:37 AM,41.736150082,-87.627154015,"(41.736150082, -87.627154015)" -8285428,HT519286,09/28/2011 07:00:00 PM,033XX S RHODES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2122,002,4,35,14,1180108,1883107,2011,09/29/2011 12:44:12 PM,41.834515493,-87.614632318,"(41.834515493, -87.614632318)" -8286045,HT518445,09/28/2011 03:30:00 PM,034XX W ROOSEVELT RD,1330,CRIMINAL TRESPASS,TO LAND,DRUG STORE,false,false,1021,010,24,29,26,1153821,1894461,2011,09/30/2011 10:54:17 AM,41.866235242,-87.710784531,"(41.866235242, -87.710784531)" -8304239,HT517637,09/28/2011 05:30:00 AM,016XX N WOOD ST,1512,PROSTITUTION,SOLICIT FOR PROSTITUTE,STREET,true,false,1433,014,32,24,16,1164141,1910758,2011,10/18/2011 02:40:36 PM,41.910743883,-87.672438119,"(41.910743883, -87.672438119)" -8282789,HT517511,09/27/2011 11:43:00 PM,054XX S PAULINA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0932,009,16,61,18,1165980,1868459,2011,09/28/2011 12:52:35 AM,41.794632427,-87.666888339,"(41.794632427, -87.666888339)" -8282632,HT517278,09/27/2011 08:09:00 PM,119XX S LA SALLE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0522,005,9,53,18,1177361,1825974,2011,09/27/2011 09:51:42 PM,41.677798574,-87.626434225,"(41.677798574, -87.626434225)" -8278192,HT512765,09/24/2011 09:30:00 PM,080XX S WENTWORTH AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0623,006,17,44,08B,1176418,1851864,2011,09/26/2011 07:34:56 AM,41.748865492,-87.629110826,"(41.748865492, -87.629110826)" -8278095,HT512535,09/24/2011 06:03:00 PM,066XX S PULASKI RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0833,008,13,65,06,1150808,1860166,2011,09/25/2011 01:09:52 PM,41.772184433,-87.722740256,"(41.772184433, -87.722740256)" -8277882,HT512185,09/24/2011 01:51:00 PM,038XX W MADISON ST,041A,BATTERY,AGGRAVATED: HANDGUN,VEHICLE NON-COMMERCIAL,true,false,1122,011,28,26,04B,1150474,1899690,2011,02/06/2014 12:24:29 PM,41.880650157,-87.722935236,"(41.880650157, -87.722935236)" -8280827,HT515204,09/23/2011 04:30:00 PM,017XX W HARRISON ST,0810,THEFT,OVER $500,HOSPITAL BUILDING/GROUNDS,false,false,1211,012,2,28,06,1164590,1897457,2011,09/30/2011 09:50:31 AM,41.87423542,-87.671165752,"(41.87423542, -87.671165752)" -8278902,HT510406,09/23/2011 11:03:00 AM,020XX E 95TH ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,PARKING LOT/GARAGE(NON.RESID.),false,true,0413,004,7,51,20,1191226,1842411,2011,10/05/2011 02:30:31 PM,41.722580178,-87.575154712,"(41.722580178, -87.575154712)" -8277925,HT512400,09/23/2011 12:00:00 AM,052XX W HUTCHINSON ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,OTHER,false,false,1624,016,38,15,11,1140859,1927799,2011,10/11/2011 10:25:14 AM,41.957966526,-87.757548117,"(41.957966526, -87.757548117)" -8275568,HT509875,09/22/2011 11:15:00 PM,081XX S KIMBARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,0411,004,8,45,14,1186331,1851277,2011,09/28/2011 02:25:35 PM,41.747026324,-87.592804822,"(41.747026324, -87.592804822)" -8275471,HT509676,09/22/2011 09:10:00 PM,071XX S CALUMET AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0323,003,6,69,14,1179752,1857860,2011,09/29/2011 12:18:15 PM,41.765243645,-87.616710877,"(41.765243645, -87.616710877)" -8273433,HT507606,09/21/2011 04:50:00 PM,009XX N DAMEN AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,true,1312,012,32,24,08A,1162865,1906059,2011,09/22/2011 01:13:25 PM,41.897876363,-87.677257697,"(41.897876363, -87.677257697)" -8267089,HT500753,09/17/2011 06:20:00 AM,006XX W 43RD PL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0935,009,11,61,14,1172823,1876099,2011,09/18/2011 01:51:09 PM,41.815449047,-87.641569755,"(41.815449047, -87.641569755)" -8274146,HT507313,09/17/2011 03:00:00 AM,061XX N DAMEN AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,2413,024,40,2,11,1161848,1940511,2011,10/01/2011 09:10:35 PM,41.992435866,-87.680028573,"(41.992435866, -87.680028573)" -8267016,HT500510,09/17/2011 12:20:00 AM,068XX S CHAMPLAIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0321,003,6,42,08B,1181778,1859986,2011,10/06/2011 11:49:40 AM,41.771031043,-87.609219437,"(41.771031043, -87.609219437)" -8264747,HT498083,09/15/2011 12:30:00 PM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0622,006,21,44,06,1176857,1847317,2011,09/16/2011 06:00:16 AM,41.736378094,-87.627638815,"(41.736378094, -87.627638815)" -8358677,HT497801,09/15/2011 09:05:00 AM,011XX N MONTICELLO AVE,2050,NARCOTICS,CRIMINAL DRUG CONSPIRACY,STREET,true,false,1112,011,27,23,18,1151799,1907151,2011,12/15/2011 12:23:16 PM,41.901097939,-87.717873412,"(41.901097939, -87.717873412)" -8263219,HT496865,09/14/2011 04:30:00 PM,057XX W AUGUSTA BLVD,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,false,false,1511,015,29,25,08B,1137625,1906042,2011,09/18/2011 11:30:52 AM,41.898321943,-87.769963158,"(41.898321943, -87.769963158)" -8263191,HT496856,09/14/2011 11:00:00 AM,057XX S LAKE SHORE DR,0820,THEFT,$500 AND UNDER,STREET,false,false,0331,003,5,41,06,1189657,1867446,2011,09/15/2011 06:28:15 AM,41.791316184,-87.580098791,"(41.791316184, -87.580098791)" -8263063,HT496362,09/13/2011 08:00:00 PM,013XX W WILSON AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,2311,019,46,3,05,1166447,1930624,2011,09/26/2011 11:23:33 AM,41.965208115,-87.663396414,"(41.965208115, -87.663396414)" -8259402,HT493213,09/12/2011 01:15:00 PM,074XX S NORMAL AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0732,007,17,68,06,1174209,1855638,2011,09/26/2011 10:28:36 AM,41.759271141,-87.637093475,"(41.759271141, -87.637093475)" -8261535,HT495224,09/11/2011 10:00:00 AM,071XX S GREENWOOD AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,true,0324,003,5,69,06,1184754,1857612,2011,09/19/2011 10:43:54 AM,41.76444729,-87.598384996,"(41.76444729, -87.598384996)" -8255344,HT489151,09/09/2011 02:00:00 PM,082XX S COMMERCIAL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0424,004,7,46,06,1197578,1851035,2011,09/10/2011 08:19:41 AM,41.746089253,-87.551601697,"(41.746089253, -87.551601697)" -8245338,HT478898,09/03/2011 12:36:00 AM,002XX W SCOTT ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,APARTMENT,false,false,1821,018,43,8,26,1174008,1908674,2011,09/23/2011 05:52:31 PM,41.904810938,-87.636252834,"(41.904810938, -87.636252834)" -8244822,HT478166,09/02/2011 04:40:00 PM,085XX S COTTAGE GROVE AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,SMALL RETAIL STORE,true,false,0632,006,6,44,08B,1183008,1848629,2011,09/03/2011 09:24:55 AM,41.739837755,-87.605063162,"(41.739837755, -87.605063162)" -8244840,HT478154,09/02/2011 04:24:00 PM,002XX N LAVERGNE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1532,015,28,25,18,1142961,1901186,2011,09/02/2011 05:51:29 PM,41.884898681,-87.75048532,"(41.884898681, -87.75048532)" -8244891,HT478071,09/02/2011 03:05:00 PM,028XX W DEVON AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,2413,024,50,2,06,1156226,1942289,2011,09/06/2011 10:03:26 AM,41.997430602,-87.700659875,"(41.997430602, -87.700659875)" -8240713,HT474275,08/31/2011 09:30:00 AM,083XX S DREXEL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0632,006,8,44,08B,1183709,1850088,2011,09/04/2011 09:20:01 AM,41.743825102,-87.602449424,"(41.743825102, -87.602449424)" -8243063,HT475018,08/30/2011 12:00:00 PM,041XX N PULASKI RD,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,1722,017,39,16,11,1148936,1927489,2011,09/06/2011 12:37:09 PM,41.956963101,-87.727862011,"(41.956963101, -87.727862011)" -8238855,HT472827,08/29/2011 01:00:00 PM,005XX W BELMONT AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,2332,019,44,6,06,1172311,1921553,2011,08/30/2011 11:44:51 AM,41.940189172,-87.642105024,"(41.940189172, -87.642105024)" -8235343,HT469765,08/28/2011 10:10:00 AM,022XX N KARLOV AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2525,025,31,20,14,1148720,1914613,2011,08/28/2011 12:29:07 PM,41.921634456,-87.728989808,"(41.921634456, -87.728989808)" -8235217,HT469651,08/27/2011 10:00:00 PM,034XX W ROOSEVELT RD,0620,BURGLARY,UNLAWFUL ENTRY,NURSING HOME/RETIREMENT HOME,false,false,1133,011,24,29,05,1153452,1894533,2011,08/29/2011 11:02:03 AM,41.866440153,-87.712137257,"(41.866440153, -87.712137257)" -8234595,HT468660,08/27/2011 01:30:00 PM,044XX W FILLMORE ST,0820,THEFT,$500 AND UNDER,ABANDONED BUILDING,false,false,1131,011,24,29,06,1147145,1895040,2011,08/29/2011 08:37:18 AM,41.867954326,-87.735278116,"(41.867954326, -87.735278116)" -8236231,HT468461,08/27/2011 12:45:00 PM,055XX S WOOD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0715,007,15,67,08B,1165255,1867852,2011,09/02/2011 02:27:55 PM,41.792982137,-87.669564091,"(41.792982137, -87.669564091)" -8234133,HT468129,08/27/2011 06:30:00 AM,066XX N DAMEN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,false,false,2412,024,50,2,14,1161713,1944069,2011,08/29/2011 10:08:23 AM,42.002201953,-87.680425356,"(42.002201953, -87.680425356)" -8296309,HT530002,08/26/2011 06:00:00 PM,028XX N LAWNDALE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,2523,025,35,21,26,1151194,1918550,2011,10/26/2011 11:31:24 AM,41.932389718,-87.71979611,"(41.932389718, -87.71979611)" -8231079,HT464653,08/25/2011 06:00:00 AM,015XX S KOMENSKY AVE,0460,BATTERY,SIMPLE,ALLEY,false,false,1012,010,24,29,08B,1149595,1892154,2011,08/26/2011 09:35:21 AM,41.859987607,-87.726358541,"(41.859987607, -87.726358541)" -8229064,HT463066,08/23/2011 09:00:00 PM,017XX W HIGHLAND AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2433,024,40,77,06,1163271,1942068,2011,08/25/2011 08:27:49 AM,41.996678411,-87.67475027,"(41.996678411, -87.67475027)" -8225807,HT460161,08/22/2011 12:15:00 PM,016XX N PULASKI RD,2029,NARCOTICS,POSS: HEROIN(BLACK TAR),STREET,true,false,2535,025,30,23,18,1149507,1910532,2011,08/22/2011 01:02:26 PM,41.910420552,-87.72620429,"(41.910420552, -87.72620429)" -8226220,HT459529,08/21/2011 06:42:00 PM,072XX N DAMEN AVE,0460,BATTERY,SIMPLE,STREET,false,false,2424,024,49,1,08B,1161757,1948135,2011,09/21/2011 02:47:06 PM,42.013358242,-87.680149357,"(42.013358242, -87.680149357)" -8226639,HT461066,08/20/2011 07:00:00 PM,020XX W JACKSON BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1211,012,2,28,07,1162603,1898579,2011,08/23/2011 10:20:50 AM,41.87735612,-87.678429671,"(41.87735612, -87.678429671)" -8276946,HT511084,08/20/2011 05:01:00 PM,006XX N CLARK ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,DRUG STORE,false,false,1832,018,42,8,06,1175463,1904612,2011,10/06/2011 08:20:13 PM,41.893632038,-87.631030388,"(41.893632038, -87.631030388)" -8230825,HT457039,08/20/2011 08:40:00 AM,046XX S EVANS AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE,true,false,0222,002,4,38,18,1182076,1874427,2011,09/16/2011 03:24:59 PM,41.810651531,-87.607680287,"(41.810651531, -87.607680287)" -8222903,HT456666,08/20/2011 12:30:00 AM,002XX N SANGAMON ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1212,012,27,28,06,1170091,1901809,2011,08/22/2011 09:29:38 AM,41.886059387,-87.650841624,"(41.886059387, -87.650841624)" -8222396,HT456058,08/19/2011 08:30:00 AM,031XX W VAN BUREN ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1124,011,28,27,07,1155245,1898026,2011,08/29/2011 03:44:53 PM,41.87598952,-87.705461148,"(41.87598952, -87.705461148)" -8219649,HT453592,08/18/2011 07:37:00 AM,052XX N RIVERS EDGE TER,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1712,017,39,13,26,1146906,1934790,2011,08/23/2011 07:13:25 PM,41.977036703,-87.735137552,"(41.977036703, -87.735137552)" -8219867,HT453521,08/18/2011 07:15:00 AM,079XX S WOLCOTT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0611,006,18,71,14,1165116,1851741,2011,08/19/2011 07:05:11 AM,41.748774337,-87.670529069,"(41.748774337, -87.670529069)" -8219036,HT452972,08/17/2011 07:15:00 PM,010XX W 87TH ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,2222,022,21,71,06,1170803,1847084,2011,08/23/2011 12:29:27 PM,41.73587279,-87.649825354,"(41.73587279, -87.649825354)" -8215722,HT450080,08/15/2011 11:29:00 PM,006XX N STATE ST,1330,CRIMINAL TRESPASS,TO LAND,HOTEL/MOTEL,true,false,1832,018,42,8,26,1176208,1904830,2011,08/16/2011 10:51:13 AM,41.894213475,-87.628287711,"(41.894213475, -87.628287711)" -8215432,HT449746,08/15/2011 07:10:00 PM,071XX S SEELEY AVE,0460,BATTERY,SIMPLE,STREET,false,false,0735,007,17,67,08B,1163882,1857503,2011,08/16/2011 10:42:46 AM,41.764612087,-87.674889314,"(41.764612087, -87.674889314)" -8214614,HT449010,08/15/2011 07:00:00 AM,097XX S YATES AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0431,004,7,51,26,1194064,1841029,2011,08/24/2011 03:03:22 PM,41.71871878,-87.564804852,"(41.71871878, -87.564804852)" -8217280,HT451466,08/14/2011 10:45:00 PM,002XX W 103RD ST,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),true,false,0511,005,9,49,08B,1176620,1836684,2011,08/17/2011 04:43:14 AM,41.707205049,-87.628825892,"(41.707205049, -87.628825892)" -8210360,HT444123,08/12/2011 08:00:00 AM,007XX E 132ND ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0533,005,9,54,08A,1183855,1817980,2011,08/18/2011 12:39:12 PM,41.655713219,-87.602912216,"(41.655713219, -87.602912216)" -8210759,HT443403,08/11/2011 07:15:00 PM,022XX N MILWAUKEE AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,BANK,false,false,1431,014,1,22,03,1158029,1914620,2011,08/29/2011 07:23:30 PM,41.921468547,-87.694785777,"(41.921468547, -87.694785777)" -8212765,HT442225,08/11/2011 01:35:00 AM,010XX N WELLS ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1824,018,42,8,06,1174571,1907312,2011,08/15/2011 10:55:39 AM,41.901060969,-87.634225561,"(41.901060969, -87.634225561)" -8207408,HT441365,08/10/2011 03:17:00 PM,066XX S CARPENTER ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ABANDONED BUILDING,true,false,0724,007,17,68,18,1170417,1860744,2011,08/10/2011 04:10:36 PM,41.773366023,-87.650842512,"(41.773366023, -87.650842512)" -8208847,HT442568,08/10/2011 11:30:00 AM,014XX W GREENLEAF AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,2423,024,49,1,05,1165494,1947023,2011,08/21/2011 04:31:48 PM,42.010227825,-87.666430844,"(42.010227825, -87.666430844)" -8206491,HT440691,08/10/2011 03:49:00 AM,033XX W ADAMS ST,0820,THEFT,$500 AND UNDER,ALLEY,false,false,1124,011,28,27,06,1154205,1898837,2011,08/10/2011 08:33:18 AM,41.878235802,-87.709258027,"(41.878235802, -87.709258027)" -8206386,HT440538,08/09/2011 11:15:00 PM,047XX N SACRAMENTO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1713,017,33,14,08B,1155472,1931597,2011,08/11/2011 02:38:06 PM,41.968106468,-87.703722683,"(41.968106468, -87.703722683)" -8207044,HT440807,08/09/2011 09:30:00 PM,054XX W ARDMORE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1621,016,45,11,05,1139021,1938007,2011,08/29/2011 10:26:35 AM,41.986011847,-87.764055968,"(41.986011847, -87.764055968)" -8204306,HT438794,08/08/2011 08:59:00 PM,026XX W 51ST ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0911,009,14,63,15,1159525,1870787,2011,08/09/2011 11:02:18 AM,41.801155649,-87.69049498,"(41.801155649, -87.69049498)" -8201944,HT436528,08/07/2011 12:20:00 PM,010XX W ARGYLE ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2024,020,48,3,08B,1168164,1933540,2011,08/22/2011 01:34:01 PM,41.973172699,-87.656998805,"(41.973172699, -87.656998805)" -8200452,HT434575,08/06/2011 06:00:00 AM,092XX S CALUMET AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0633,006,6,49,26,1180254,1843498,2011,08/10/2011 02:20:13 PM,41.725821184,-87.615310167,"(41.725821184, -87.615310167)" -8217967,HT433059,08/05/2011 10:00:00 AM,018XX W CULLERTON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1223,012,25,31,14,1164486,1890479,2011,08/17/2011 11:17:29 AM,41.855089362,-87.671745031,"(41.855089362, -87.671745031)" -8205599,HT439277,08/05/2011 09:30:00 AM,003XX N LATROBE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1523,015,28,25,26,1141361,1901595,2011,08/11/2011 10:45:12 AM,41.886050698,-87.756350749,"(41.886050698, -87.756350749)" -8197719,HT431583,08/04/2011 01:30:00 PM,072XX S WESTERN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,DAY CARE CENTER,false,false,0832,008,18,66,26,1161663,1856787,2011,08/05/2011 12:28:02 PM,41.762693604,-87.683042426,"(41.762693604, -87.683042426)" -8197857,HT431658,08/04/2011 02:00:00 AM,046XX S WINCHESTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0914,009,20,61,07,1164091,1873992,2011,08/05/2011 08:04:20 AM,41.809855625,-87.673659566,"(41.809855625, -87.673659566)" -8195375,HT428065,08/02/2011 01:38:00 PM,037XX S DR MARTIN LUTHER KING JR DR,1320,CRIMINAL DAMAGE,TO VEHICLE,SIDEWALK,false,false,0211,002,3,35,14,1179426,1880431,2011,08/20/2011 12:10:32 PM,41.827187981,-87.61721658,"(41.827187981, -87.61721658)" -8193764,HT427887,08/02/2011 12:00:00 AM,016XX S DRAKE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1021,010,24,29,05,1153019,1891362,2011,08/06/2011 04:05:35 PM,41.857747155,-87.713810855,"(41.857747155, -87.713810855)" -8530853,HV207767,08/01/2011 09:00:00 AM,044XX W WASHINGTON BLVD,1549,PROSTITUTION,OTHER PROSTITUTION OFFENSE,APARTMENT,true,true,1113,011,28,26,16,1147010,1900171,2011,03/21/2012 12:12:36 PM,41.882036979,-87.73564256,"(41.882036979, -87.73564256)" -8191144,HT425728,08/01/2011 04:15:00 AM,062XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,0313,003,20,42,08B,1181928,1863748,2011,08/03/2011 12:11:08 PM,41.781350864,-87.608553375,"(41.781350864, -87.608553375)" -8190386,HT424643,07/31/2011 11:00:00 AM,091XX S WENTWORTH AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0634,006,21,49,15,1176595,1844252,2011,08/01/2011 10:57:43 AM,41.72797323,-87.628690619,"(41.72797323, -87.628690619)" -8190221,HT424554,07/31/2011 10:00:00 AM,008XX E 89TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0632,006,8,44,08B,1183580,1846189,2011,08/01/2011 06:27:45 AM,41.733128821,-87.603043316,"(41.733128821, -87.603043316)" -8192494,HT426858,07/30/2011 08:00:00 PM,030XX N KEARSARGE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2523,025,31,21,07,1147652,1919612,2011,08/10/2011 09:55:47 AM,41.935372756,-87.732785307,"(41.935372756, -87.732785307)" -8189477,HT423589,07/30/2011 04:45:00 PM,074XX S STEWART AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0732,007,17,69,18,1174880,1855347,2011,07/30/2011 07:24:06 PM,41.758457674,-87.634642957,"(41.758457674, -87.634642957)" -8189023,HT422989,07/30/2011 10:00:00 AM,019XX S LEAVITT ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1223,012,25,31,26,1161970,1890476,2011,08/11/2011 04:50:12 PM,41.855133955,-87.680979958,"(41.855133955, -87.680979958)" -8189200,HT422892,07/29/2011 06:00:00 PM,0000X W 105TH ST,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,RESIDENCE-GARAGE,false,false,0512,005,34,49,02,1177854,1835386,2011,03/20/2013 07:31:14 AM,41.703615364,-87.624346139,"(41.703615364, -87.624346139)" -8189402,HT423489,07/28/2011 05:30:00 PM,061XX W FULLERTON AVE,0890,THEFT,FROM BUILDING,PARK PROPERTY,false,false,2512,025,29,19,06,1135302,1915346,2011,07/31/2011 09:16:58 AM,41.923894796,-87.778274361,"(41.923894796, -87.778274361)" -8187995,HT420516,07/28/2011 04:30:00 AM,009XX W BELMONT AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1924,019,44,6,08B,1169603,1921481,2011,08/01/2011 08:32:38 AM,41.940051089,-87.652059842,"(41.940051089, -87.652059842)" -8184808,HT419107,07/27/2011 11:45:00 PM,062XX S MENARD AVE,0460,BATTERY,SIMPLE,RESIDENTIAL YARD (FRONT/BACK),true,false,0812,008,13,64,08B,1138766,1862788,2011,08/19/2011 10:34:46 AM,41.779605803,-87.766820133,"(41.779605803, -87.766820133)" -8184922,HT419157,07/27/2011 09:30:00 PM,030XX W 108TH ST,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,2211,022,19,74,08B,1157969,1832892,2011,07/31/2011 10:17:26 AM,41.697197541,-87.697228851,"(41.697197541, -87.697228851)" -8186340,HT418500,07/27/2011 04:30:00 PM,011XX N LARAMIE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1531,015,37,25,03,1141530,1906972,2011,08/21/2011 01:47:29 PM,41.90080271,-87.755597179,"(41.90080271, -87.755597179)" -8188544,HT421964,07/27/2011 09:52:00 AM,0000X N GREEN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1212,012,27,28,05,1170765,1900517,2011,08/02/2011 04:03:47 PM,41.882499316,-87.648404431,"(41.882499316, -87.648404431)" -8183688,HT417968,07/26/2011 07:30:00 PM,001XX W DIVISION ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1821,018,43,8,03,1174774,1908377,2011,08/02/2011 08:07:29 AM,41.90397884,-87.633448018,"(41.90397884, -87.633448018)" -8180921,HT415883,07/26/2011 01:00:00 AM,119XX S WALLACE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0524,005,34,53,14,1174423,1825505,2011,07/26/2011 06:41:47 AM,41.676577205,-87.637202121,"(41.676577205, -87.637202121)" -8178328,HT413548,07/24/2011 03:00:00 PM,070XX S UNION AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0732,007,6,68,14,1172890,1858307,2011,08/13/2011 05:11:59 PM,41.766624395,-87.641848915,"(41.766624395, -87.641848915)" -8227273,HT450789,07/22/2011 02:00:00 PM,102XX S INDIANA AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0511,005,9,49,26,1179355,1836894,2011,08/25/2011 12:15:31 PM,41.707719479,-87.618803997,"(41.707719479, -87.618803997)" -8174634,HT409211,07/21/2011 10:45:00 PM,057XX W MADISON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1513,015,29,25,18,1138024,1899475,2011,07/22/2011 12:35:37 AM,41.880294056,-87.768656366,"(41.880294056, -87.768656366)" -8193549,HT408163,07/21/2011 08:45:00 AM,019XX W 21ST PL,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1223,012,25,31,05,1163691,1889792,2011,08/04/2011 03:57:04 PM,41.85322094,-87.674682376,"(41.85322094, -87.674682376)" -8187883,HT406450,07/20/2011 10:58:00 AM,033XX W CHICAGO AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,1121,011,27,23,18,1153771,1905090,2011,07/29/2011 02:39:32 PM,41.89540331,-87.710684991,"(41.89540331, -87.710684991)" -8170901,HT405572,07/19/2011 06:05:00 PM,046XX W NORTH AVE,0460,BATTERY,SIMPLE,DEPARTMENT STORE,false,false,2533,025,37,25,08B,1144852,1910260,2011,07/24/2011 02:19:14 PM,41.909763298,-87.743312036,"(41.909763298, -87.743312036)" -8170221,HT404935,07/19/2011 12:29:00 PM,044XX S MAPLEWOOD AVE,2890,PUBLIC PEACE VIOLATION,OTHER VIOLATION,SIDEWALK,true,false,0914,009,12,58,26,1160059,1875341,2011,10/31/2014 03:20:56 PM,41.813641425,-87.688411277,"(41.813641425, -87.688411277)" -8363574,HT596276,07/19/2011 07:00:00 AM,031XX S AVERS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1031,010,22,30,07,1151160,1883701,2011,11/23/2011 10:37:15 AM,41.836761024,-87.720835112,"(41.836761024, -87.720835112)" -8165791,HT400725,07/16/2011 07:50:00 PM,030XX W 63RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0823,008,15,66,18,1157431,1862752,2011,07/16/2011 08:24:16 PM,41.779149201,-87.698392099,"(41.779149201, -87.698392099)" -8165792,HT400633,07/16/2011 06:45:00 PM,047XX S MICHIGAN AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,true,0231,002,3,38,08A,1177917,1873553,2011,07/19/2011 09:39:55 AM,41.808348552,-87.622961427,"(41.808348552, -87.622961427)" -8166011,HT400672,07/16/2011 11:50:00 AM,020XX N MILWAUKEE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1431,014,1,22,06,1159347,1913561,2011,07/28/2011 08:34:22 AM,41.91853554,-87.689972296,"(41.91853554, -87.689972296)" -8161211,HT396025,07/14/2011 12:30:00 AM,005XX N LARAMIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1523,015,28,25,08B,1141551,1903428,2011,07/27/2011 02:38:05 PM,41.891077166,-87.755607699,"(41.891077166, -87.755607699)" -8160782,HT395545,07/13/2011 06:30:00 PM,012XX S ST LOUIS AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,1021,010,24,29,06,1153202,1893781,2011,07/14/2011 10:31:58 AM,41.864381542,-87.713074983,"(41.864381542, -87.713074983)" -8160569,HT395162,07/13/2011 02:49:00 PM,054XX S UNION AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,OTHER,true,false,0934,009,3,61,15,1172518,1868771,2011,07/14/2011 11:10:42 AM,41.795347,-87.642904475,"(41.795347, -87.642904475)" -8156930,HT391935,07/11/2011 05:29:00 PM,010XX W DAKIN ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,2324,019,44,6,18,1168677,1926334,2011,07/11/2011 07:43:54 PM,41.953388066,-87.655322076,"(41.953388066, -87.655322076)" -8165081,HT391063,07/11/2011 07:40:00 AM,035XX S RHODES AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,true,0212,002,4,35,08A,1180121,1881754,2011,07/18/2011 11:54:51 AM,41.830802465,-87.614626154,"(41.830802465, -87.614626154)" -8155163,HT390302,07/10/2011 07:00:00 PM,042XX S SACRAMENTO AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SIDEWALK,true,false,0912,009,14,58,14,1157021,1876376,2011,10/31/2014 03:20:56 PM,41.816543623,-87.69952694,"(41.816543623, -87.69952694)" -8154687,HT389442,07/10/2011 05:55:00 AM,077XX S CICERO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,HOTEL/MOTEL,false,false,0834,008,13,70,08B,1145779,1853068,2011,07/13/2011 07:26:41 AM,41.752802774,-87.74135441,"(41.752802774, -87.74135441)" -8159018,HT392216,07/08/2011 05:30:00 PM,0000X E 101ST ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0511,005,9,49,05,1178315,1837975,2011,07/13/2011 07:11:55 PM,41.710709508,-87.622579811,"(41.710709508, -87.622579811)" -8151753,HT386133,07/07/2011 08:30:00 PM,109XX S CENTRAL PARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2211,022,19,74,14,1154333,1832025,2011,07/09/2011 08:03:16 AM,41.694891246,-87.71056493,"(41.694891246, -87.71056493)" -8151069,HT385515,07/07/2011 07:58:00 PM,015XX S ALBANY AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1022,010,24,29,18,1155929,1892066,2011,07/07/2011 08:26:35 PM,41.859620894,-87.703110387,"(41.859620894, -87.703110387)" -8209114,HT443088,07/07/2011 05:00:00 PM,089XX S LOWE AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,2223,022,21,71,26,1173491,1845837,2011,08/18/2011 12:38:35 PM,41.732391851,-87.640014333,"(41.732391851, -87.640014333)" -8149592,HT384333,07/07/2011 12:30:00 AM,079XX S MICHIGAN AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0623,006,6,44,07,1178486,1852465,2011,07/11/2011 08:48:49 AM,41.75046801,-87.621514736,"(41.75046801, -87.621514736)" -8149591,HT384339,07/06/2011 04:35:00 PM,002XX N PARKSIDE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,"SCHOOL, PUBLIC, BUILDING",false,false,1512,015,29,25,14,1138585,1901355,2011,07/08/2011 10:54:14 AM,41.885442873,-87.766550811,"(41.885442873, -87.766550811)" -8146886,HT381904,07/05/2011 06:00:00 PM,066XX S COTTAGE GROVE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0321,003,20,42,14,1182658,1861358,2011,07/06/2011 08:12:12 AM,41.774775566,-87.605951177,"(41.774775566, -87.605951177)" -8146600,HT381005,07/05/2011 05:00:00 AM,061XX S INGLESIDE AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0313,003,20,42,07,1183458,1864701,2011,07/11/2011 07:52:46 AM,41.783930456,-87.602914438,"(41.783930456, -87.602914438)" -8146167,HT380958,07/03/2011 07:00:00 AM,054XX W POTOMAC AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,true,2532,025,37,25,06,1139969,1908086,2011,07/06/2011 08:27:16 AM,41.903888361,-87.761303634,"(41.903888361, -87.761303634)" -8157643,HT384810,07/01/2011 05:00:00 PM,057XX S GREEN ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0712,007,16,68,06,1171657,1866840,2011,07/13/2011 11:26:29 AM,41.790067056,-87.646118375,"(41.790067056, -87.646118375)" -8142827,HT376635,07/01/2011 12:00:00 PM,045XX N SHERIDAN RD,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2313,019,46,3,06,1168753,1930348,2011,08/01/2011 09:05:19 AM,41.964400973,-87.654925876,"(41.964400973, -87.654925876)" -8385246,HT618573,07/01/2011 07:00:00 AM,061XX N WASHTENAW AVE,0820,THEFT,$500 AND UNDER,RESIDENCE-GARAGE,false,false,2413,024,50,2,06,1157174,1940855,2011,12/06/2011 08:36:29 AM,41.993476374,-87.697211722,"(41.993476374, -87.697211722)" -8143944,HT378458,06/29/2011 06:30:00 PM,098XX S AVENUE G,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,PARK PROPERTY,false,false,0432,004,10,52,11,1203077,1840713,2011,07/26/2011 01:29:57 PM,41.71762613,-87.531804924,"(41.71762613, -87.531804924)" -8138704,HT371707,06/29/2011 12:00:00 PM,001XX W 51ST ST,0560,ASSAULT,SIMPLE,GOVERNMENT BUILDING/PROPERTY,false,false,0232,002,3,37,08A,1175993,1871129,2011,07/20/2011 12:34:48 PM,41.801740289,-87.630090902,"(41.801740289, -87.630090902)" -8136851,HT370897,06/28/2011 09:55:00 PM,015XX S AVERS AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,true,1014,010,24,29,04A,1151011,1891889,2011,07/03/2011 03:47:40 PM,41.859232828,-87.721167683,"(41.859232828, -87.721167683)" -8136722,HT370650,06/28/2011 06:35:00 PM,046XX W IRVING PARK RD,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1722,017,45,15,06,1144771,1926228,2011,06/29/2011 09:29:23 AM,41.953582541,-87.743205844,"(41.953582541, -87.743205844)" -8136185,HT368689,06/27/2011 04:08:00 PM,048XX N DAMEN AVE,4230,KIDNAPPING,UNLAWFUL RESTRAINT,SIDEWALK,false,false,2032,020,47,4,26,1162095,1932149,2011,08/06/2011 05:24:47 PM,41.969485043,-87.679354865,"(41.969485043, -87.679354865)" -8134734,HT369216,06/27/2011 08:00:00 AM,034XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0924,009,11,34,06,1175462,1882360,2011,06/28/2011 11:48:57 AM,41.832571068,-87.631701956,"(41.832571068, -87.631701956)" -8131470,HT365897,06/25/2011 10:30:00 PM,075XX S RACINE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0612,006,17,71,18,1169664,1854897,2011,06/25/2011 11:32:43 PM,41.757337475,-87.65377217,"(41.757337475, -87.65377217)" -8144866,HT379541,06/25/2011 08:00:00 AM,078XX S MARYLAND AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0624,006,6,69,26,1183229,1852892,2011,07/07/2011 12:52:47 PM,41.751530751,-87.604121095,"(41.751530751, -87.604121095)" -8130428,HT364331,06/24/2011 10:25:00 PM,085XX S BUFFALO AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0424,004,10,46,03,1199585,1848878,2011,06/27/2011 07:46:58 AM,41.740120023,-87.544320265,"(41.740120023, -87.544320265)" -8127082,HT361635,06/23/2011 04:00:00 AM,020XX W 75TH PL,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,0611,006,18,71,06,1163930,1854651,2011,06/24/2011 09:40:37 AM,41.756784788,-87.674793405,"(41.756784788, -87.674793405)" -8126602,HT361373,06/23/2011 02:40:00 AM,009XX W WEED ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,1822,018,32,8,08B,1169901,1910422,2011,06/25/2011 04:25:50 PM,41.909698142,-87.651287898,"(41.909698142, -87.651287898)" -8126564,HT361296,06/23/2011 12:45:00 AM,085XX S KINGSTON AVE,0560,ASSAULT,SIMPLE,SIDEWALK,true,false,0423,004,7,46,08A,1194605,1848987,2011,06/24/2011 04:45:30 AM,41.740542973,-87.562562391,"(41.740542973, -87.562562391)" -8132557,HT362379,06/21/2011 03:00:00 PM,027XX S TRUMBULL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1032,010,22,30,05,1153774,1885396,2011,07/21/2011 10:57:43 AM,41.841360763,-87.711198186,"(41.841360763, -87.711198186)" -8122324,HT357645,06/20/2011 08:40:00 PM,037XX W GRENSHAW ST,2024,NARCOTICS,POSS: HEROIN(WHITE),RESIDENTIAL YARD (FRONT/BACK),true,false,1133,011,24,29,18,1151769,1894825,2011,06/20/2011 09:41:16 PM,41.867274687,-87.718308077,"(41.867274687, -87.718308077)" -8122368,HT357660,06/20/2011 04:00:00 PM,057XX N SHERIDAN RD,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,2022,020,48,77,26,1168551,1938391,2011,08/09/2011 12:50:20 PM,41.986475574,-87.655434554,"(41.986475574, -87.655434554)" -8126295,HT355454,06/19/2011 03:30:00 PM,075XX S EGGLESTON AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0621,006,17,69,06,1174560,1854874,2011,07/21/2011 10:56:56 AM,41.757166831,-87.635829781,"(41.757166831, -87.635829781)" -8121120,HT354934,06/19/2011 06:15:00 AM,114XX S STEWART AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,RESIDENCE,false,false,0522,005,34,49,04B,1175713,1829073,2011,06/21/2011 07:04:15 AM,41.686339654,-87.632374142,"(41.686339654, -87.632374142)" -8119682,HT354890,06/19/2011 01:30:00 AM,043XX W 13TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1011,010,24,29,08B,1147889,1893731,2011,06/21/2011 01:58:14 PM,41.864348015,-87.732580357,"(41.864348015, -87.732580357)" -8119257,HT354389,06/18/2011 08:00:00 PM,027XX W DIVISION ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,ALLEY,false,false,1423,014,26,24,07,1157852,1907904,2011,09/26/2011 11:23:13 AM,41.90304292,-87.695619594,"(41.90304292, -87.695619594)" -8119202,HT352757,06/17/2011 05:30:00 PM,032XX N KEATING AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,true,1731,017,30,15,04A,1144290,1921381,2011,06/23/2011 01:25:44 PM,41.940291018,-87.745096351,"(41.940291018, -87.745096351)" -8118068,HT352745,06/17/2011 09:00:00 AM,054XX W CORTEZ ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1524,015,37,25,14,1139582,1906420,2011,07/20/2011 03:57:47 PM,41.899323731,-87.762765902,"(41.899323731, -87.762765902)" -8116429,HT351311,06/17/2011 12:30:00 AM,032XX E 92ND ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0424,004,10,46,15,1198960,1844524,2011,06/17/2011 05:50:22 AM,41.728188015,-87.546755921,"(41.728188015, -87.546755921)" -8115962,HT350424,06/16/2011 03:35:00 PM,059XX W BERTEAU AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1624,016,38,15,08B,1135801,1927348,2011,06/19/2011 10:52:22 AM,41.95682069,-87.776154166,"(41.95682069, -87.776154166)" -8108772,HT344000,06/12/2011 07:40:00 PM,070XX S EAST END AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0332,003,5,43,04A,1189030,1858767,2011,06/13/2011 07:18:44 AM,41.767515382,-87.582675636,"(41.767515382, -87.582675636)" -8113951,HT342638,06/11/2011 08:00:00 AM,026XX W CHICAGO AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1311,012,26,24,05,1158425,1905263,2011,08/25/2011 12:44:07 PM,41.895784083,-87.693587189,"(41.895784083, -87.693587189)" -8106672,HT341354,06/11/2011 12:02:00 AM,105XX S WABASH AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0512,005,9,49,18,1178397,1835167,2011,06/11/2011 01:08:55 AM,41.703002113,-87.622364414,"(41.703002113, -87.622364414)" -8106500,HT341052,06/10/2011 07:38:00 PM,115XX S STATE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0522,005,34,53,18,1178283,1828197,2011,06/10/2011 09:58:39 PM,41.683878012,-87.622992329,"(41.683878012, -87.622992329)" -8105095,HT339692,06/10/2011 02:26:00 AM,056XX S ABERDEEN ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0712,007,16,68,03,1169908,1867254,2011,06/29/2011 06:15:58 PM,41.791241304,-87.652519438,"(41.791241304, -87.652519438)" -8107149,HT340083,06/08/2011 12:00:00 PM,033XX W POLK ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,OTHER,false,false,1134,011,24,27,06,1154355,1896215,2011,06/30/2011 01:11:27 PM,41.871037764,-87.708777311,"(41.871037764, -87.708777311)" -8101366,HT335950,06/07/2011 07:55:00 PM,097XX S EWING AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,CTA BUS,false,false,0432,004,10,52,04B,1202080,1841338,2011,06/26/2011 03:30:40 PM,41.71936659,-87.535435219,"(41.71936659, -87.535435219)" -8180527,HT415429,06/06/2011 03:00:00 PM,062XX W GEORGE ST,0495,BATTERY,AGGRAVATED OF A SENIOR CITIZEN,APARTMENT,true,false,2511,025,29,19,04B,1134017,1918568,2011,09/15/2011 07:08:37 PM,41.932759065,-87.782920041,"(41.932759065, -87.782920041)" -8099062,HT333537,06/06/2011 02:00:00 PM,042XX N DRAKE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1723,017,33,16,08B,1151926,1927842,2011,06/07/2011 08:11:58 AM,41.957873262,-87.716860491,"(41.957873262, -87.716860491)" -8135801,HT333347,06/06/2011 12:50:00 PM,040XX W MONTROSE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1722,017,39,16,06,1148903,1928899,2011,07/05/2011 12:45:39 AM,41.960832886,-87.727946709,"(41.960832886, -87.727946709)" -8097650,HT332252,06/05/2011 06:00:00 PM,058XX S PRAIRIE AVE,0460,BATTERY,SIMPLE,STREET,false,false,0233,002,20,40,08B,1178993,1866552,2011,06/28/2011 11:13:22 AM,41.789112696,-87.619228266,"(41.789112696, -87.619228266)" -8095793,HT330030,06/04/2011 02:30:00 AM,003XX N RACINE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1212,012,27,28,07,1168415,1902057,2011,07/11/2011 02:25:52 PM,41.886776329,-87.656989056,"(41.886776329, -87.656989056)" -8101971,HT325148,06/02/2011 11:30:00 AM,111XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0531,005,9,49,08B,1178833,1831020,2011,06/09/2011 11:25:43 AM,41.691612272,-87.620893504,"(41.691612272, -87.620893504)" -8206731,HT440861,06/01/2011 12:01:00 AM,049XX S HONORE ST,1753,OFFENSE INVOLVING CHILDREN,SEX ASSLT OF CHILD BY FAM MBR,RESIDENCE,false,false,0931,009,16,61,02,1164815,1871713,2011,08/17/2011 09:19:04 PM,41.803586501,-87.671068448,"(41.803586501, -87.671068448)" -8088990,HT322535,05/31/2011 04:00:00 AM,038XX W CERMAK RD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE,false,false,1014,010,24,29,07,1151224,1889149,2011,06/14/2011 03:12:04 PM,41.851709768,-87.72045761,"(41.851709768, -87.72045761)" -8088302,HT321931,05/30/2011 08:06:00 PM,060XX S WABASH AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0311,003,20,40,04B,1177800,1864651,2011,06/06/2011 06:24:30 PM,41.78392327,-87.623660098,"(41.78392327, -87.623660098)" -8087428,HT320970,05/30/2011 03:43:00 AM,045XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,SIDEWALK,true,false,1113,011,28,26,16,1145861,1899664,2011,05/30/2011 05:06:24 AM,41.880667592,-87.739874597,"(41.880667592, -87.739874597)" -8086759,HT320019,05/29/2011 02:44:00 AM,010XX W 19TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1233,012,25,31,14,1169808,1891051,2011,05/30/2011 09:04:50 AM,41.856544793,-87.652194341,"(41.856544793, -87.652194341)" -8092320,HT318642,05/28/2011 11:00:00 AM,002XX W 111TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0522,005,34,49,08B,1176405,1830955,2011,06/15/2011 02:52:48 PM,41.691488666,-87.629784598,"(41.691488666, -87.629784598)" -8085062,HT317756,05/27/2011 07:04:00 PM,022XX S WOOD ST,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,1034,010,25,31,04B,1164675,1889392,2011,12/27/2011 06:38:34 PM,41.852102533,-87.671082089,"(41.852102533, -87.671082089)" -8083695,HT316594,05/27/2011 02:51:00 AM,014XX W DIVISION ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1433,014,1,24,06,1166376,1908131,2011,05/27/2011 10:07:02 AM,41.903487673,-87.664302838,"(41.903487673, -87.664302838)" -8083624,HT316507,05/27/2011 01:10:00 AM,021XX N NARRAGANSETT AVE,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,2512,025,29,19,18,1133442,1913499,2011,05/27/2011 02:30:56 AM,41.918859241,-87.785152237,"(41.918859241, -87.785152237)" -8090670,HT316327,05/26/2011 08:43:00 PM,084XX S SAGINAW AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0423,004,7,46,15,1195254,1849703,2011,06/02/2011 09:03:14 AM,41.74249176,-87.560161001,"(41.74249176, -87.560161001)" -8081767,HT314640,05/25/2011 07:00:00 PM,003XX E 136TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0533,005,9,54,04B,1180825,1815075,2011,06/15/2011 09:54:12 AM,41.64781136,-87.614087833,"(41.64781136, -87.614087833)" -8081248,HT313977,05/25/2011 02:15:00 PM,032XX W 38TH ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0913,009,12,58,18,1155408,1879182,2011,05/25/2011 03:59:46 PM,41.824276145,-87.705368622,"(41.824276145, -87.705368622)" -8081740,HT314660,05/25/2011 03:30:00 AM,057XX W 64TH ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0812,008,13,64,06,1139228,1861580,2011,05/26/2011 09:09:55 AM,41.77628247,-87.76515561,"(41.77628247, -87.76515561)" -8079676,HT312823,05/24/2011 02:45:00 PM,013XX N SEDGWICK ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),true,false,1821,018,27,8,26,1173372,1909048,2011,05/25/2011 07:50:00 AM,41.905851372,-87.638577902,"(41.905851372, -87.638577902)" -8088873,HT311973,05/24/2011 12:19:03 PM,010XX N WALLER AVE,0935,MOTOR VEHICLE THEFT,"THEFT/RECOVERY: TRUCK,BUS,MHOME",STREET,true,false,1511,015,29,25,07,1138112,1906692,2011,10/31/2014 03:20:56 PM,41.900096833,-87.768158688,"(41.900096833, -87.768158688)" -8082081,HT311743,05/24/2011 10:00:00 AM,001XX N CICERO AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1113,011,28,25,07,1144394,1900624,2011,06/07/2011 01:33:16 PM,41.883329658,-87.7452372,"(41.883329658, -87.7452372)" -8092370,HT311326,05/23/2011 11:12:02 PM,133XX S RIVERDALE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0533,005,9,54,04B,1182391,1816800,2011,07/13/2011 02:43:54 PM,41.652509035,-87.60830538,"(41.652509035, -87.60830538)" -8079152,HT312051,05/23/2011 03:30:00 PM,021XX N HAMLIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2525,025,26,22,08B,1150647,1914242,2011,05/26/2011 10:00:20 AM,41.920578915,-87.72191917,"(41.920578915, -87.72191917)" -8080674,HT313552,05/23/2011 02:30:00 PM,088XX S BISHOP ST,3960,INTIMIDATION,INTIMIDATION,RESIDENCE,false,false,2222,022,21,71,26,1168258,1845911,2011,06/12/2011 09:56:53 AM,41.732708993,-87.659182965,"(41.732708993, -87.659182965)" -8107086,HT341841,05/23/2011 12:01:00 AM,002XX E 121ST PL,1242,DECEPTIVE PRACTICE,COMPUTER FRAUD,RESIDENCE,false,false,0532,005,9,53,11,1180276,1824494,2011,06/15/2011 12:14:44 PM,41.673671111,-87.615809532,"(41.673671111, -87.615809532)" -8075346,HT307996,05/22/2011 02:19:00 AM,032XX S WOOD ST,0560,ASSAULT,SIMPLE,STREET,true,false,0922,009,11,59,08A,1164922,1883054,2011,05/22/2011 10:39:12 AM,41.834705201,-87.670355102,"(41.834705201, -87.670355102)" -8077939,HT310612,05/22/2011 01:00:00 AM,005XX N CLINTON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,1323,012,42,24,08B,1172360,1903547,2011,05/28/2011 09:20:43 AM,41.890778745,-87.642458031,"(41.890778745, -87.642458031)" -8075172,HT307572,05/21/2011 08:20:00 PM,056XX W CHICAGO AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1511,015,29,25,08B,1138760,1904743,2011,05/26/2011 09:59:55 AM,41.894736799,-87.765825883,"(41.894736799, -87.765825883)" -8076092,HT308970,05/21/2011 04:00:00 PM,023XX W SHAKESPEARE AVE,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",STREET,true,false,1432,014,32,22,07,1160484,1914296,2011,06/28/2011 08:45:09 AM,41.920528951,-87.685774469,"(41.920528951, -87.685774469)" -8073584,HT305337,05/20/2011 01:50:00 PM,006XX N SPAULDING AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE PORCH/HALLWAY,false,true,1121,011,27,23,14,1154296,1904274,2011,05/23/2011 07:01:09 AM,41.893153656,-87.708778599,"(41.893153656, -87.708778599)" -8081361,HT314162,05/20/2011 12:00:00 PM,072XX S COLES AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,0334,003,7,43,06,1194315,1857776,2011,06/30/2011 02:45:35 PM,41.764667803,-87.563336706,"(41.764667803, -87.563336706)" -8147950,HT305083,05/20/2011 09:00:00 AM,057XX S UNIVERSITY AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,2133,002,5,41,06,1184717,1867322,2011,07/06/2011 03:13:20 PM,41.791093259,-87.598216374,"(41.791093259, -87.598216374)" -8070677,HT302709,05/19/2011 12:15:00 AM,059XX S MOZART ST,1460,WEAPONS VIOLATION,POSS FIREARM/AMMO:NO FOID CARD,RESIDENCE,true,false,0824,008,16,66,15,1158353,1865164,2011,05/19/2011 10:33:16 AM,41.785749341,-87.69494628,"(41.785749341, -87.69494628)" -8070824,HT302836,05/18/2011 10:00:00 PM,001XX S LOTUS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,1522,015,29,25,07,1139859,1899043,2011,05/20/2011 08:54:06 AM,41.879075264,-87.761928904,"(41.879075264, -87.761928904)" -8163062,HT301117,05/17/2011 11:30:00 PM,027XX W 61ST ST,0460,BATTERY,SIMPLE,APARTMENT,false,true,0825,008,15,66,08B,1159187,1864129,2011,07/15/2011 10:00:10 AM,41.782892123,-87.691916728,"(41.782892123, -87.691916728)" -8067364,HT299543,05/17/2011 01:05:00 AM,012XX S KARLOV AVE,0810,THEFT,OVER $500,APARTMENT,false,true,1011,010,24,29,06,1149212,1893846,2011,06/01/2011 09:11:01 AM,41.864638081,-87.72772063,"(41.864638081, -87.72772063)" -8069345,HT299726,05/16/2011 03:00:00 PM,118XX S LAFAYETTE AVE,0610,BURGLARY,FORCIBLE ENTRY,VACANT LOT/LAND,false,false,0522,005,34,53,05,1178088,1826234,2011,06/21/2011 09:56:33 AM,41.678495655,-87.623765339,"(41.678495655, -87.623765339)" -8066706,HT298657,05/16/2011 02:30:00 PM,065XX S EBERHART AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0321,003,20,42,14,1180736,1861867,2011,05/17/2011 05:29:29 AM,41.776216705,-87.612981238,"(41.776216705, -87.612981238)" -8065194,HT297018,05/15/2011 01:00:00 PM,061XX S COTTAGE GROVE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0313,003,20,42,08B,1182585,1864268,2011,05/30/2011 08:26:48 AM,41.78276257,-87.606128569,"(41.78276257, -87.606128569)" -8064874,HT296937,05/15/2011 06:45:00 AM,011XX W ADAMS ST,0810,THEFT,OVER $500,STREET,false,false,1213,012,2,28,06,1168741,1899293,2011,05/16/2011 08:58:44 AM,41.879184657,-87.655872031,"(41.879184657, -87.655872031)" -8063245,HT294646,05/13/2011 07:35:00 PM,050XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,APARTMENT,true,false,0223,002,3,38,08B,1179812,1871457,2011,05/14/2011 08:33:51 AM,41.802553755,-87.616075232,"(41.802553755, -87.616075232)" -8057556,HT287630,05/09/2011 06:20:00 PM,069XX S THROOP ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,true,false,0734,007,17,67,04B,1168826,1858417,2011,05/26/2011 12:38:28 PM,41.767014939,-87.656741852,"(41.767014939, -87.656741852)" -8053020,HT284956,05/07/2011 07:00:00 PM,0000X W KINZIE ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1831,018,42,8,06,1175932,1902973,2011,05/09/2011 10:41:22 AM,41.889123988,-87.629357318,"(41.889123988, -87.629357318)" -8052803,HT284725,05/06/2011 09:00:00 PM,018XX W CULLERTON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1223,012,25,31,14,1164192,1890472,2011,05/09/2011 08:27:56 AM,41.855076365,-87.672824339,"(41.855076365, -87.672824339)" -8051732,HT283254,05/06/2011 07:32:00 PM,005XX W 80TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0621,006,17,44,18,1174174,1851901,2011,05/06/2011 10:10:07 PM,41.74901713,-87.637332547,"(41.74901713, -87.637332547)" -8051046,HT282557,05/06/2011 01:00:00 PM,068XX N NORTHWEST HWY,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,1611,016,41,9,26,1123582,1945116,2011,05/07/2011 09:27:56 AM,42.005787206,-87.820684712,"(42.005787206, -87.820684712)" -8055273,HT287130,05/05/2011 01:55:00 PM,0000X E BALBO AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0132,001,2,32,07,1176491,1897095,2011,05/27/2011 09:16:29 AM,41.87298182,-87.62748201,"(41.87298182, -87.62748201)" -8049083,HT280638,05/05/2011 10:20:00 AM,039XX W 79TH ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,"SCHOOL, PUBLIC, BUILDING",true,false,0834,008,18,70,24,1151306,1851847,2011,05/06/2011 08:54:15 AM,41.749346,-87.72113174,"(41.749346, -87.72113174)" -8048380,HT280239,05/05/2011 01:43:00 AM,060XX N WASHTENAW AVE,2028,NARCOTICS,POSS: SYNTHETIC DRUGS,OTHER,true,false,2413,024,50,2,18,1157274,1940225,2011,05/05/2011 03:30:45 AM,41.991745588,-87.696861105,"(41.991745588, -87.696861105)" -8049180,HT280829,05/04/2011 08:00:00 PM,019XX N CLARK ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1814,018,43,7,06,1174173,1913200,2011,05/06/2011 06:46:31 AM,41.917226815,-87.635511486,"(41.917226815, -87.635511486)" -8046984,HT278433,05/03/2011 09:03:00 PM,065XX S WESTERN AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,true,false,0832,008,15,66,04A,1161451,1861421,2011,05/06/2011 10:36:46 AM,41.775414355,-87.683691158,"(41.775414355, -87.683691158)" -8048512,HT277738,05/03/2011 02:00:00 PM,042XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,STREET,false,false,0214,002,3,38,08B,1177824,1876874,2011,05/10/2011 11:30:03 AM,41.817463773,-87.623201871,"(41.817463773, -87.623201871)" -8040960,HT271788,04/29/2011 03:15:00 PM,043XX S PRINCETON AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0935,009,3,37,08B,1174965,1876291,2011,04/30/2011 09:11:47 AM,41.815928326,-87.633706843,"(41.815928326, -87.633706843)" -8039299,HT270861,04/28/2011 10:30:00 PM,031XX W 63RD ST,0560,ASSAULT,SIMPLE,RESTAURANT,true,false,0823,008,15,66,08A,1156355,1862643,2011,04/29/2011 08:52:56 AM,41.778871823,-87.702339786,"(41.778871823, -87.702339786)" -8037612,HT269226,04/27/2011 08:15:00 PM,054XX W CHICAGO AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1524,015,37,25,06,1140130,1904767,2011,04/28/2011 09:17:15 AM,41.894777682,-87.760793595,"(41.894777682, -87.760793595)" -8037783,HT269379,04/27/2011 02:00:00 PM,051XX S LAWLER AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0814,008,23,56,05,1143609,1869852,2011,04/28/2011 01:59:28 PM,41.798901669,-87.74888872,"(41.798901669, -87.74888872)" -8044507,HT268468,04/27/2011 01:30:00 PM,056XX S WINCHESTER AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0715,007,15,67,06,1164287,1866965,2011,05/03/2011 11:02:21 AM,41.790568552,-87.673138624,"(41.790568552, -87.673138624)" -8041659,HT269132,04/27/2011 07:40:00 AM,024XX W MC LEAN AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1431,014,1,22,05,1159967,1913623,2011,05/19/2011 10:31:08 PM,41.918692887,-87.687692647,"(41.918692887, -87.687692647)" -8194024,HT427928,04/26/2011 05:00:00 PM,030XX N LAVERGNE AVE,0275,CRIM SEXUAL ASSAULT,ATTEMPT AGG: OTHER,ALLEY,false,false,2521,025,31,19,02,1142460,1920037,2011,10/19/2011 10:17:05 AM,41.936637215,-87.751855799,"(41.936637215, -87.751855799)" -8033959,HT265692,04/25/2011 04:54:00 PM,005XX W ROOSEVELT RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0131,001,2,28,06,1172714,1894928,2011,04/26/2011 07:55:00 AM,41.867119813,-87.641413167,"(41.867119813, -87.641413167)" -8033784,HT265359,04/25/2011 01:50:00 PM,008XX N STATE ST,1570,SEX OFFENSE,PUBLIC INDECENCY,CTA TRAIN,true,false,1832,018,42,8,17,1176183,1905757,2011,10/31/2014 03:20:56 PM,41.896757773,-87.628351553,"(41.896757773, -87.628351553)" -8032360,HT261807,04/22/2011 09:30:00 PM,028XX N LINCOLN AVE,0460,BATTERY,SIMPLE,STREET,false,false,1932,019,32,6,08B,1167704,1918895,2011,04/25/2011 06:50:21 AM,41.932996181,-87.659113982,"(41.932996181, -87.659113982)" -8028964,HT260052,04/21/2011 04:10:00 PM,022XX W 66TH ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE PORCH/HALLWAY,true,false,0832,008,15,66,26,1162242,1860800,2011,04/22/2011 10:56:02 AM,41.773693812,-87.680808702,"(41.773693812, -87.680808702)" -8030877,HT262231,04/21/2011 03:30:00 PM,038XX S VINCENNES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0212,002,4,35,14,1180684,1879440,2011,04/23/2011 09:39:30 AM,41.824439735,-87.612631725,"(41.824439735, -87.612631725)" -8024592,HT256281,04/19/2011 01:45:00 AM,015XX N LONG AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2532,025,37,25,18,1140102,1909933,2011,04/19/2011 02:31:51 AM,41.908954309,-87.7607698,"(41.908954309, -87.7607698)" -8021780,HT253275,04/16/2011 06:00:00 PM,073XX S JEFFERY BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0333,003,5,43,05,1190779,1856472,2011,04/21/2011 11:09:18 AM,41.76117565,-87.576338932,"(41.76117565, -87.576338932)" -8018212,HT249385,04/13/2011 06:00:00 PM,021XX N HARLEM AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,2512,025,36,25,06,1127782,1913502,2011,04/15/2011 09:52:39 AM,41.91896487,-87.805948027,"(41.91896487, -87.805948027)" -8035165,HT265312,04/12/2011 03:00:00 PM,039XX W LEXINGTON ST,0479,BATTERY,AGG: HANDS/FIST/FEET SERIOUS INJURY,STREET,false,false,1132,011,24,26,04B,1150434,1896452,2011,06/21/2011 01:47:04 PM,41.871765503,-87.723166638,"(41.871765503, -87.723166638)" -8011901,HT244026,04/10/2011 10:30:00 PM,011XX S LAFLIN ST,0460,BATTERY,SIMPLE,STREET,false,false,1231,012,2,28,08B,1166585,1895258,2011,06/19/2011 01:42:51 PM,41.868158716,-87.66390401,"(41.868158716, -87.66390401)" -8011880,HT243977,04/10/2011 07:40:00 PM,096XX S BALTIMORE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0431,004,10,51,14,1198529,1841623,2011,04/11/2011 06:24:10 AM,41.720238229,-87.548431615,"(41.720238229, -87.548431615)" -8009866,HT241212,04/09/2011 02:00:00 AM,071XX S SEELEY AVE,0560,ASSAULT,SIMPLE,SIDEWALK,true,false,0735,007,17,67,08A,1163969,1857249,2011,04/09/2011 08:30:34 AM,41.763913248,-87.674577564,"(41.763913248, -87.674577564)" -8011130,HT241500,04/09/2011 01:30:00 AM,072XX S ADA ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0734,007,17,67,07,1168644,1856966,2011,04/13/2011 10:06:12 AM,41.763037133,-87.657450747,"(41.763037133, -87.657450747)" -8009960,HT240398,04/08/2011 02:30:00 PM,057XX W 58TH ST,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,0811,008,23,56,05,1139271,1865511,2011,04/17/2011 11:29:34 AM,41.787069053,-87.764902707,"(41.787069053, -87.764902707)" -8008910,HT239861,04/08/2011 10:30:00 AM,105XX S VERNON AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,0512,005,9,49,05,1181155,1834986,2011,04/10/2011 01:57:35 PM,41.7024425,-87.612270896,"(41.7024425, -87.612270896)" -8007588,HT238851,04/07/2011 03:00:00 PM,032XX S HAMLIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,1031,010,22,30,14,1151512,1882941,2011,04/13/2011 05:33:13 PM,41.834668591,-87.7195634,"(41.834668591, -87.7195634)" -8012912,HT244601,04/07/2011 07:00:00 AM,057XX W OHIO ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1511,015,29,25,05,1137977,1903438,2011,04/13/2011 11:29:52 AM,41.89116989,-87.768733207,"(41.89116989, -87.768733207)" -8028763,HT234802,04/04/2011 11:25:00 PM,043XX W 36TH ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,WAREHOUSE,true,false,1031,010,22,30,18,1147660,1880121,2011,05/02/2011 12:26:38 PM,41.827004777,-87.733769823,"(41.827004777, -87.733769823)" -8002383,HT232921,04/03/2011 08:37:00 PM,049XX S LAMON AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,0814,008,23,56,04A,1144495,1871095,2011,04/05/2011 08:56:51 PM,41.802296082,-87.745608336,"(41.802296082, -87.745608336)" -8000348,HT232127,04/03/2011 11:50:00 AM,066XX S HALSTED ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0723,007,6,68,18,1172162,1860466,2011,04/03/2011 12:29:31 PM,41.772564979,-87.644453924,"(41.772564979, -87.644453924)" -7997139,HT228483,03/31/2011 08:39:00 PM,068XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0322,003,20,69,08B,1180144,1859515,2011,04/03/2011 08:47:38 AM,41.769776166,-87.615223444,"(41.769776166, -87.615223444)" -7996704,HT227856,03/31/2011 01:51:00 PM,015XX E 92ND ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0413,004,8,48,18,1188087,1844326,2011,03/31/2011 03:28:02 PM,41.72791043,-87.586591461,"(41.72791043, -87.586591461)" -7991936,HT223872,03/27/2011 06:00:00 PM,024XX N NORMANDY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2512,025,36,18,07,1131383,1915493,2011,03/31/2011 10:46:16 AM,41.92436689,-87.792671171,"(41.92436689, -87.792671171)" -7990336,HT222510,03/27/2011 02:00:00 PM,123XX S PARNELL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0523,005,34,53,26,1174833,1823007,2011,04/01/2011 08:06:00 AM,41.669713191,-87.635775433,"(41.669713191, -87.635775433)" -7989970,HT221773,03/27/2011 10:53:00 AM,008XX N LARAMIE AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,false,1531,015,37,25,04B,1141574,1905185,2011,03/28/2011 10:10:00 AM,41.895898159,-87.755479772,"(41.895898159, -87.755479772)" -7989616,HT221506,03/27/2011 03:27:00 AM,002XX N LARAMIE AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,1532,015,28,25,15,1141707,1901211,2011,03/27/2011 09:33:20 AM,41.884990564,-87.755089646,"(41.884990564, -87.755089646)" -7996330,HT222014,03/26/2011 04:00:00 PM,004XX W 107TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,2233,022,34,49,07,1174988,1833987,2011,08/10/2011 01:19:19 AM,41.699840571,-87.634882359,"(41.699840571, -87.634882359)" -7988307,HT219886,03/25/2011 08:58:00 PM,009XX N MOZART ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1311,012,26,24,08B,1157172,1906205,2011,03/27/2011 08:14:29 AM,41.898394561,-87.69816358,"(41.898394561, -87.69816358)" -7986363,HT218186,03/24/2011 09:00:00 AM,071XX S SOUTH CHICAGO AVE,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,"SCHOOL, PRIVATE, BUILDING",false,false,0324,003,5,69,14,1183073,1857902,2011,03/25/2011 06:28:39 AM,41.765282327,-87.60453722,"(41.765282327, -87.60453722)" -7984843,HT216548,03/23/2011 02:00:00 PM,082XX S SOUTH SHORE DR,0460,BATTERY,SIMPLE,"SCHOOL, PRIVATE, BUILDING",false,false,0424,004,7,46,08B,1198623,1850862,2011,03/25/2011 06:31:02 AM,41.745588413,-87.54777847,"(41.745588413, -87.54777847)" -7984755,HT216480,03/22/2011 09:00:00 PM,107XX S WENTWORTH AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0513,005,34,49,06,1176812,1833692,2011,03/24/2011 08:16:59 AM,41.698990262,-87.628212501,"(41.698990262, -87.628212501)" -7981143,HT213342,03/21/2011 06:00:00 AM,053XX S CAMPBELL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0911,009,14,63,08B,1160654,1868993,2011,03/22/2011 10:07:01 AM,41.796209436,-87.68640403,"(41.796209436, -87.68640403)" -7979839,HT212520,03/21/2011 12:01:00 AM,088XX S HERMITAGE AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,2221,022,21,71,05,1166268,1845880,2011,04/16/2011 09:33:32 AM,41.732666466,-87.666474133,"(41.732666466, -87.666474133)" -7979639,HT212268,03/20/2011 07:40:00 PM,057XX S PAULINA ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,OTHER,true,false,0715,007,15,67,18,1165945,1866816,2011,03/20/2011 09:19:28 PM,41.790124579,-87.667063376,"(41.790124579, -87.667063376)" -7978871,HT211307,03/20/2011 12:30:00 AM,001XX W 104TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0512,005,34,49,18,1177134,1835952,2011,03/20/2011 02:34:09 AM,41.705184783,-87.62696562,"(41.705184783, -87.62696562)" -7979051,HT211569,03/19/2011 11:15:00 PM,005XX W 28TH ST,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0923,009,11,60,07,1172853,1886308,2011,03/20/2011 09:38:40 AM,41.843462794,-87.641157982,"(41.843462794, -87.641157982)" -7978077,HT210270,03/19/2011 10:15:00 AM,025XX E 79TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0422,004,7,46,18,1194674,1853044,2011,03/19/2011 10:58:28 AM,41.751674014,-87.562176373,"(41.751674014, -87.562176373)" -7974107,HT206294,03/16/2011 12:00:00 AM,054XX W ALTGELD ST,1242,DECEPTIVE PRACTICE,COMPUTER FRAUD,RESIDENCE,false,false,2515,025,30,19,11,1139480,1916043,2011,04/06/2011 10:14:27 AM,41.925732202,-87.762905479,"(41.925732202, -87.762905479)" -7972698,HT204873,03/15/2011 10:30:00 PM,035XX W MONROE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1123,011,28,27,26,1152855,1899346,2011,03/17/2011 12:11:57 PM,41.879659382,-87.714201468,"(41.879659382, -87.714201468)" -7972441,HT204774,03/15/2011 08:30:00 PM,026XX N MILWAUKEE AVE,1120,DECEPTIVE PRACTICE,FORGERY,SIDEWALK,true,false,1412,014,35,22,10,1154173,1917635,2011,04/02/2011 10:48:53 AM,41.929819866,-87.708873076,"(41.929819866, -87.708873076)" -7972272,HT204499,03/15/2011 05:10:00 PM,035XX W DOUGLAS BLVD,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,1021,010,24,29,08B,1153191,1893272,2011,03/26/2011 10:22:16 AM,41.862985006,-87.713128863,"(41.862985006, -87.713128863)" -7975197,HT207140,03/15/2011 07:00:00 AM,135XX S FOREST AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,VACANT LOT/LAND,false,false,0533,005,9,54,14,1180643,1815411,2011,03/18/2011 06:54:20 AM,41.648737563,-87.614743453,"(41.648737563, -87.614743453)" -7970782,HT203434,03/14/2011 10:50:00 PM,045XX W MADISON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,ALLEY,false,false,1113,011,28,26,07,1146143,1899670,2011,03/28/2011 02:04:59 PM,41.880678701,-87.738838954,"(41.880678701, -87.738838954)" -7970488,HT203018,03/14/2011 05:15:00 PM,090XX S GREENWOOD AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0413,004,8,47,08B,1185089,1845150,2011,03/15/2011 08:45:28 AM,41.730242423,-87.597547733,"(41.730242423, -87.597547733)" -7972214,HT204265,03/14/2011 11:30:00 AM,026XX N ASHLAND AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1931,019,32,7,05,1165169,1917781,2011,04/09/2011 12:57:57 PM,41.929993628,-87.668461602,"(41.929993628, -87.668461602)" -7969107,HT201805,03/13/2011 07:00:00 PM,045XX N LONG AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1623,016,45,15,05,1139552,1929832,2011,04/01/2011 07:45:39 PM,41.96356926,-87.762303366,"(41.96356926, -87.762303366)" -7968881,HT201551,03/13/2011 04:45:00 PM,043XX W MAYPOLE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,1114,011,28,26,18,1147254,1901057,2011,03/13/2011 05:47:04 PM,41.884463597,-87.734723892,"(41.884463597, -87.734723892)" -7968243,HT200761,03/13/2011 12:50:00 AM,005XX N MICHIGAN AVE,0850,THEFT,ATTEMPT THEFT,DEPARTMENT STORE,false,false,1834,018,42,8,06,1177299,1903904,2011,03/14/2011 08:08:00 AM,41.891647815,-87.624308958,"(41.891647815, -87.624308958)" -7968247,HT200713,03/12/2011 11:30:00 PM,053XX S MASSASOIT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,0811,008,23,56,14,1138975,1868677,2011,03/13/2011 09:29:18 AM,41.795762471,-87.765911411,"(41.795762471, -87.765911411)" -7968097,HT200522,03/12/2011 08:30:00 PM,043XX W CULLERTON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,1012,010,24,29,08B,1147910,1890030,2011,03/15/2011 10:02:32 AM,41.854191606,-87.732598328,"(41.854191606, -87.732598328)" -7972401,HT204702,03/12/2011 05:00:00 PM,078XX S PHILLIPS AVE,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,0421,004,7,43,06,1193852,1853292,2011,03/16/2011 06:17:36 AM,41.752374723,-87.565180445,"(41.752374723, -87.565180445)" -7971191,HT203690,03/12/2011 03:00:00 PM,040XX S STATE ST,0560,ASSAULT,SIMPLE,STREET,false,false,0214,002,3,38,08A,1176906,1878155,2011,03/19/2011 07:30:03 AM,41.820999716,-87.626530678,"(41.820999716, -87.626530678)" -7968676,HT200373,03/12/2011 03:00:00 AM,029XX W FLOURNOY ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1135,011,2,27,08A,1157018,1896935,2011,03/18/2011 01:01:24 PM,41.872959931,-87.698980903,"(41.872959931, -87.698980903)" -7966754,HT198767,03/11/2011 03:30:00 PM,023XX S KEDZIE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1024,010,24,30,14,1155356,1888198,2011,03/14/2011 08:34:43 AM,41.849018188,-87.705317557,"(41.849018188, -87.705317557)" -7966981,HT199043,03/11/2011 01:00:00 PM,029XX N LONG AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2514,025,31,19,05,1139902,1919016,2011,03/13/2011 09:22:38 AM,41.933882712,-87.761281933,"(41.933882712, -87.761281933)" -7966283,HT198133,03/11/2011 11:15:00 AM,018XX S KARLOV AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1012,010,24,29,08B,1149392,1890763,2011,03/13/2011 12:38:33 PM,41.856174469,-87.727139755,"(41.856174469, -87.727139755)" -7970079,HT202475,03/10/2011 07:00:00 PM,111XX S WHIPPLE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2211,022,19,74,06,1157957,1830550,2011,03/23/2011 10:22:00 AM,41.690770902,-87.697336105,"(41.690770902, -87.697336105)" -7962100,HT194402,03/08/2011 07:00:00 PM,038XX W MONTROSE AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,true,false,1723,017,39,16,14,1149767,1928920,2011,03/09/2011 08:24:10 AM,41.960873718,-87.724769628,"(41.960873718, -87.724769628)" -7961340,HT193633,03/08/2011 11:44:00 AM,011XX W 76TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0612,006,17,71,18,1169831,1854438,2011,03/08/2011 01:50:34 PM,41.756074297,-87.653173439,"(41.756074297, -87.653173439)" -7960365,HT193182,03/08/2011 12:50:00 AM,073XX S MAY ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,0733,007,17,68,06,1169963,1856107,2011,03/08/2011 10:18:44 AM,41.760651385,-87.652641291,"(41.760651385, -87.652641291)" -7961261,HT192166,03/06/2011 11:00:00 PM,018XX W ADDISON ST,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,1923,019,47,5,06,1163466,1923894,2011,03/10/2011 03:19:38 PM,41.946804111,-87.674547044,"(41.946804111, -87.674547044)" -7963633,HT191219,03/06/2011 02:00:00 PM,029XX S PARNELL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0923,009,11,60,06,1173150,1885169,2011,03/10/2011 10:05:46 AM,41.84033071,-87.640101803,"(41.84033071, -87.640101803)" -7958416,HT190773,03/05/2011 10:45:00 PM,008XX S CLARK ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0131,001,2,32,14,1175605,1896660,2011,03/07/2011 07:33:38 AM,41.8718081,-87.630747973,"(41.8718081, -87.630747973)" -7957821,HT189709,03/05/2011 01:09:00 PM,058XX N CALIFORNIA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,2011,020,40,2,18,1156658,1938780,2011,03/05/2011 01:59:17 PM,41.987792984,-87.699166297,"(41.987792984, -87.699166297)" -7959182,HT189048,03/04/2011 10:20:00 PM,029XX S MICHIGAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,2112,001,2,35,14,1177771,1885549,2011,03/18/2011 07:34:57 AM,41.84126986,-87.623133214,"(41.84126986, -87.623133214)" -7955091,HT186699,03/03/2011 12:01:00 AM,045XX N ELSTON AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,OTHER,false,true,1722,017,39,14,26,1147140,1930154,2011,03/07/2011 11:53:41 AM,41.964310698,-87.73439621,"(41.964310698, -87.73439621)" -7953853,HT185945,03/02/2011 08:41:00 PM,076XX S KINGSTON AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0421,004,7,43,18,1194481,1854723,2011,03/02/2011 10:09:46 PM,41.756286065,-87.562828511,"(41.756286065, -87.562828511)" -7953864,HT185885,03/02/2011 06:45:00 PM,066XX N SHERIDAN RD,0460,BATTERY,SIMPLE,APARTMENT,false,false,2432,024,49,1,08B,1167085,1944378,2011,03/03/2011 06:10:56 AM,42.002935744,-87.66065348,"(42.002935744, -87.66065348)" -7953408,HT185312,03/02/2011 01:20:00 PM,011XX W WILSON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2311,019,46,3,18,1167811,1930740,2011,03/02/2011 02:51:04 PM,41.965497049,-87.658377972,"(41.965497049, -87.658377972)" -7951937,HT184105,03/01/2011 03:22:00 PM,069XX S HALSTED ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,ALLEY,false,false,0733,007,6,68,15,1172135,1858508,2011,03/02/2011 10:08:48 AM,41.767192586,-87.644610374,"(41.767192586, -87.644610374)" -7953891,HT185966,02/28/2011 07:00:00 PM,022XX W FILLMORE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1224,012,25,28,06,1161423,1895151,2011,03/03/2011 07:56:12 AM,41.867973998,-87.682857688,"(41.867973998, -87.682857688)" -7950240,HT182392,02/28/2011 09:00:00 AM,075XX S PULASKI RD,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0833,008,13,65,06,1150961,1854579,2011,03/01/2011 09:30:54 AM,41.756849802,-87.722324877,"(41.756849802, -87.722324877)" -7949916,HT181973,02/27/2011 10:30:00 PM,071XX S MERRILL AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0333,003,5,43,05,1191831,1858042,2011,03/18/2011 06:11:39 AM,41.765458386,-87.572432445,"(41.765458386, -87.572432445)" -7949359,HT181785,02/27/2011 08:00:00 PM,015XX W JONQUIL TER,0810,THEFT,OVER $500,APARTMENT,false,false,2422,024,49,1,06,1164447,1951034,2011,03/25/2011 03:45:47 PM,42.021256393,-87.670168781,"(42.021256393, -87.670168781)" -7951658,HT183763,02/26/2011 10:45:00 PM,065XX S ROCKWELL ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,true,true,0831,008,15,66,20,1160129,1861073,2011,06/10/2011 09:28:31 AM,41.774486696,-87.688547052,"(41.774486696, -87.688547052)" -7947337,HT179321,02/26/2011 12:01:00 AM,060XX N NAVARRE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1611,016,41,10,05,1130635,1939960,2011,03/02/2011 10:45:46 AM,41.991519869,-87.794854763,"(41.991519869, -87.794854763)" -7947024,HT178573,02/25/2011 04:55:00 PM,088XX S EXCHANGE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0423,004,10,46,03,1197341,1846865,2011,03/18/2011 08:46:49 AM,41.734652356,-87.552608715,"(41.734652356, -87.552608715)" -7946481,HT178167,02/24/2011 03:00:00 PM,016XX N HARDING AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,2535,025,30,23,26,1149759,1910538,2011,02/27/2011 08:31:40 PM,41.910432118,-87.725278374,"(41.910432118, -87.725278374)" -7943351,HT176060,02/23/2011 08:09:00 PM,048XX W HURON ST,2027,NARCOTICS,POSS: CRACK,RESIDENCE,true,false,1531,015,28,25,18,1143759,1904237,2011,02/23/2011 10:18:13 PM,41.893256075,-87.747478409,"(41.893256075, -87.747478409)" -7943321,HT175846,02/23/2011 06:08:00 PM,017XX N PULASKI RD,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,RESTAURANT,false,false,2535,025,30,23,03,1149490,1911068,2011,04/11/2011 05:12:40 PM,41.911891717,-87.726252805,"(41.911891717, -87.726252805)" -7951248,HT182070,02/22/2011 11:23:00 AM,036XX N LEAVITT ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1912,019,47,5,26,1160999,1924433,2011,05/08/2011 04:57:02 PM,41.948334831,-87.683599989,"(41.948334831, -87.683599989)" -7941160,HT174389,02/22/2011 09:00:00 AM,026XX W 47TH ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,0911,009,14,58,06,1159402,1873362,2011,02/23/2011 10:19:19 AM,41.808224305,-87.690875478,"(41.808224305, -87.690875478)" -7939198,HT172361,02/21/2011 01:00:00 PM,008XX W BUENA AVE,0810,THEFT,OVER $500,OTHER,false,false,2322,019,46,3,06,1169423,1928146,2011,02/22/2011 06:40:18 AM,41.95834403,-87.652526816,"(41.95834403, -87.652526816)" -7938556,HT171312,02/18/2011 06:00:00 PM,016XX E 83RD ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0412,004,8,45,05,1188856,1850240,2011,03/07/2011 10:10:04 AM,41.744120693,-87.583585793,"(41.744120693, -87.583585793)" -7953792,HT185194,02/18/2011 03:00:00 PM,080XX S MANISTEE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0422,004,7,46,05,1195860,1852314,2011,03/03/2011 02:35:40 PM,41.749641586,-87.557854442,"(41.749641586, -87.557854442)" -7933872,HT166179,02/17/2011 11:20:00 AM,021XX E 71ST ST,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,0333,003,5,43,26,1191476,1858232,2011,02/18/2011 06:06:23 AM,41.765988371,-87.573727459,"(41.765988371, -87.573727459)" -7933726,HT166134,02/17/2011 09:00:00 AM,030XX N AUSTIN AVE,0560,ASSAULT,SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,false,2514,025,30,19,08A,1135902,1919565,2011,02/20/2011 07:20:50 AM,41.935461526,-87.775968914,"(41.935461526, -87.775968914)" -7931002,HT164081,02/15/2011 10:00:00 PM,052XX N CLARK ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,2013,020,48,77,24,1165088,1934651,2011,10/31/2014 03:20:56 PM,41.976287402,-87.668278182,"(41.976287402, -87.668278182)" -7931029,HT163950,02/15/2011 08:40:00 PM,032XX S HARDING AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,1031,010,22,30,26,1150593,1883005,2011,02/16/2011 09:19:25 AM,41.834862185,-87.722933828,"(41.834862185, -87.722933828)" -7932868,HT165689,02/15/2011 08:00:00 PM,065XX S ALBANY AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0831,008,15,66,06,1156879,1861300,2011,03/01/2011 12:35:34 PM,41.775175866,-87.700454977,"(41.775175866, -87.700454977)" -7928356,HT161330,02/14/2011 12:00:00 AM,015XX N ARTESIAN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1423,014,1,24,06,1159838,1910041,2011,02/15/2011 08:14:25 AM,41.908866273,-87.688265589,"(41.908866273, -87.688265589)" -7927377,HT160373,02/13/2011 02:57:00 AM,032XX N MILWAUKEE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1732,017,30,21,14,1149616,1921404,2011,02/25/2011 10:16:01 AM,41.940252175,-87.725520754,"(41.940252175, -87.725520754)" -7941518,HT159580,02/12/2011 08:00:00 PM,011XX N CLEAVER ST,0810,THEFT,OVER $500,STREET,false,false,1323,012,27,24,06,1166550,1907910,2011,03/25/2011 07:15:20 PM,41.902877509,-87.663670038,"(41.902877509, -87.663670038)" -7926418,HT158705,02/12/2011 12:15:00 PM,061XX N WINTHROP AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,2433,024,48,77,03,1167705,1940958,2011,03/04/2011 09:23:21 PM,41.993537812,-87.658471716,"(41.993537812, -87.658471716)" -8107097,HT341923,02/11/2011 09:00:00 AM,069XX S PAXTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0331,003,5,43,26,1192127,1859048,2011,06/14/2011 11:36:43 AM,41.768211737,-87.571314864,"(41.768211737, -87.571314864)" -7924781,HT156332,02/10/2011 09:32:00 PM,119XX S PERRY AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0522,005,9,53,18,1177683,1825981,2011,02/10/2011 10:32:11 PM,41.677810527,-87.625255393,"(41.677810527, -87.625255393)" -7920353,HT151588,02/07/2011 06:35:00 PM,035XX W CERMAK RD,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,1024,010,22,30,14,1153237,1889114,2011,02/28/2011 11:19:37 AM,41.851574062,-87.713070265,"(41.851574062, -87.713070265)" -8083519,HT316125,02/07/2011 12:00:00 PM,055XX N KENMORE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2023,020,48,77,26,1168285,1937084,2011,05/30/2011 12:17:20 PM,41.982894908,-87.656450884,"(41.982894908, -87.656450884)" -7919067,HT150472,02/06/2011 11:37:00 PM,003XX W 79TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0623,006,17,44,18,1175543,1852527,2011,02/07/2011 02:06:40 AM,41.750704453,-87.632297342,"(41.750704453, -87.632297342)" -7918739,HT149945,02/06/2011 11:00:00 AM,004XX W 95TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2223,022,21,73,06,1175279,1841955,2011,02/07/2011 05:49:43 AM,41.721699413,-87.633579745,"(41.721699413, -87.633579745)" -7918270,HT149263,02/05/2011 09:50:00 PM,040XX N LEAVITT ST,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,"SCHOOL, PUBLIC, GROUNDS",true,false,1912,019,47,5,14,1160924,1927058,2011,02/07/2011 07:07:04 AM,41.955539534,-87.683802545,"(41.955539534, -87.683802545)" -7919483,HT148775,02/05/2011 01:50:00 PM,038XX S ARCHER AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0913,009,12,58,08B,1160172,1879108,2011,02/07/2011 02:29:08 PM,41.8239762,-87.68789299,"(41.8239762, -87.68789299)" -7918532,HT148664,02/05/2011 12:35:00 PM,039XX S WESTERN AVE,4651,OTHER OFFENSE,SEX OFFENDER: FAIL REG NEW ADD,APARTMENT,false,false,0921,009,12,58,26,1160987,1878203,2011,02/09/2014 04:23:26 PM,41.821475934,-87.684928077,"(41.821475934, -87.684928077)" -7916503,HT146874,02/03/2011 10:00:00 PM,048XX N KENTUCKY AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,1712,017,39,14,06,1144701,1931749,2011,02/05/2011 09:45:27 AM,41.968733936,-87.743323425,"(41.968733936, -87.743323425)" -7915300,HT144992,02/01/2011 04:26:37 PM,026XX W 68TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0831,008,15,66,07,1159623,1859410,2011,02/06/2011 08:52:26 AM,41.769933579,-87.690447546,"(41.769933579, -87.690447546)" -7913579,HT143749,01/30/2011 10:00:00 PM,085XX S BUFFALO AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0424,004,10,46,14,1199585,1848859,2011,02/01/2011 06:18:28 AM,41.740067886,-87.544320904,"(41.740067886, -87.544320904)" -7924637,HT141204,01/30/2011 11:58:00 AM,075XX S WABASH AVE,0460,BATTERY,SIMPLE,APARTMENT,false,false,0623,006,6,69,08B,1178069,1854742,2011,02/13/2011 03:32:22 PM,41.756725817,-87.622973913,"(41.756725817, -87.622973913)" -7912041,HT142080,01/30/2011 10:25:00 AM,001XX W 127TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,GAS STATION,true,false,0523,005,9,53,18,1177406,1820765,2011,01/30/2011 12:20:02 PM,41.663503247,-87.626425918,"(41.663503247, -87.626425918)" -7908857,HT138673,01/27/2011 07:28:00 PM,037XX W 80TH ST,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0834,008,18,70,04B,1152550,1851234,2011,02/05/2011 03:47:14 PM,41.747639444,-87.716589271,"(41.747639444, -87.716589271)" -7906069,HT136068,01/26/2011 12:30:00 AM,011XX E 45TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2123,002,4,39,14,1184931,1875369,2011,01/26/2011 10:44:04 AM,41.813169817,-87.597178983,"(41.813169817, -87.597178983)" -7905357,HT135505,01/25/2011 08:15:00 PM,044XX W FULLERTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,GAS STATION,true,false,2522,025,31,20,18,1146617,1915552,2011,01/25/2011 08:58:41 PM,41.924251571,-87.73669285,"(41.924251571, -87.73669285)" -7904377,HT134470,01/25/2011 06:30:00 AM,018XX N RICHMOND ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,1421,014,35,22,08A,1156561,1912252,2011,01/26/2011 09:07:32 AM,41.915000435,-87.700243824,"(41.915000435, -87.700243824)" -7906831,HT133905,01/22/2011 03:00:00 PM,017XX W ROSCOE ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1924,019,32,6,05,1164038,1922658,2011,02/16/2011 02:57:36 PM,41.94340038,-87.672479572,"(41.94340038, -87.672479572)" -7905952,HT130234,01/22/2011 10:00:00 AM,0000X W CHECKPOINT 7 ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT TERMINAL UPPER LEVEL - SECURE AREA,false,false,1653,016,41,76,26,1101708,1934266,2011,01/28/2011 10:13:55 AM,41.976344553,-87.901365347,"(41.976344553, -87.901365347)" -7900305,HT129785,01/21/2011 09:41:00 PM,013XX N MASON AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2531,025,29,25,18,1136412,1908160,2011,01/21/2011 10:21:18 PM,41.904155771,-87.774367803,"(41.904155771, -87.774367803)" -7900766,HT128660,01/20/2011 12:15:00 PM,112XX S WALLACE ST,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,2233,022,34,49,08A,1174273,1830362,2011,01/23/2011 07:14:17 AM,41.689908902,-87.637607596,"(41.689908902, -87.637607596)" -7897339,HT127151,01/19/2011 10:00:00 PM,035XX W DOUGLAS BLVD,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,RESIDENCE,false,true,1021,010,24,29,26,1153209,1893027,2011,02/10/2011 09:22:36 AM,41.862312342,-87.713069284,"(41.862312342, -87.713069284)" -7897234,HT126930,01/19/2011 08:00:00 PM,024XX E 73RD ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0334,003,7,43,08A,1193733,1857068,2011,02/01/2011 02:51:17 PM,41.762739275,-87.565493016,"(41.762739275, -87.565493016)" -7907298,HT126752,01/19/2011 07:30:00 PM,095XX S WINCHESTER AVE,1360,CRIMINAL TRESPASS,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2213,022,19,72,26,1165181,1841317,2011,01/27/2011 05:34:40 AM,41.720167926,-87.670585018,"(41.720167926, -87.670585018)" -7895435,HT125514,01/19/2011 12:05:00 AM,037XX S CALIFORNIA AVE,0560,ASSAULT,SIMPLE,APARTMENT,true,false,0913,009,12,58,08A,1158364,1879360,2011,01/19/2011 10:16:31 AM,41.824704799,-87.694519089,"(41.824704799, -87.694519089)" -7900828,HT130283,01/17/2011 09:00:00 PM,060XX S MENARD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0812,008,13,64,14,1138814,1863667,2011,01/24/2011 09:20:29 AM,41.782017069,-87.766622917,"(41.782017069, -87.766622917)" -7892814,HT122806,01/17/2011 12:00:00 AM,090XX S EUCLID AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0413,004,8,48,14,1190712,1845486,2011,01/18/2011 06:31:09 AM,41.731030691,-87.576938428,"(41.731030691, -87.576938428)" -7894113,HT124071,01/16/2011 10:50:00 AM,019XX N LA CROSSE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2533,025,31,19,07,1143778,1912771,2011,01/22/2011 09:10:59 AM,41.916673954,-87.747194469,"(41.916673954, -87.747194469)" -7892238,HT121481,01/15/2011 11:45:00 PM,016XX N TRIPP AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2534,025,30,23,08B,1147768,1910396,2011,01/19/2011 10:17:16 AM,41.910080954,-87.732596269,"(41.910080954, -87.732596269)" -7893464,HT121316,01/15/2011 08:20:00 PM,079XX S EXCHANGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0422,004,7,46,14,1197169,1852958,2011,01/20/2011 06:58:20 AM,41.751376294,-87.553036426,"(41.751376294, -87.553036426)" -7891298,HT120801,01/15/2011 12:50:00 PM,080XX S ELLIS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,0631,006,8,44,08B,1184255,1851710,2011,01/16/2011 05:52:39 AM,41.748263297,-87.600398234,"(41.748263297, -87.600398234)" -7885926,HT116119,01/12/2011 10:30:00 AM,058XX S PEORIA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE,true,false,0712,007,16,68,18,1171349,1865958,2011,01/12/2011 11:19:41 AM,41.787653499,-87.647273529,"(41.787653499, -87.647273529)" -7890186,HT119543,01/10/2011 01:00:00 PM,037XX S DAMEN AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0922,009,11,59,06,1163680,1879692,2011,01/16/2011 10:22:41 AM,41.825505723,-87.675006881,"(41.825505723, -87.675006881)" -7881488,HT112581,01/09/2011 02:00:00 PM,062XX S NATOMA AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0812,008,23,64,05,1133190,1862469,2011,01/12/2011 08:52:06 AM,41.778829394,-87.78727034,"(41.778829394, -87.78727034)" -7898133,HT117793,01/07/2011 01:59:00 PM,002XX W JACKSON BLVD,0870,THEFT,POCKET-PICKING,RESTAURANT,false,false,0112,001,2,32,06,1174733,1898992,2011,01/24/2011 06:26:11 PM,41.878226797,-87.633879635,"(41.878226797, -87.633879635)" -7874436,HT105007,01/04/2011 02:20:00 PM,081XX S MAY ST,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0613,006,21,71,08B,1170110,1850747,2011,01/05/2011 06:46:20 AM,41.745939643,-87.652258041,"(41.745939643, -87.652258041)" -7873961,HT104666,01/03/2011 10:00:00 AM,032XX W MONROE ST,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",true,false,1124,011,28,,06,1154528,1899388,2011,01/05/2011 10:22:29 AM,41.879741351,-87.708057298,"(41.879741351, -87.708057298)" -7870056,HT100716,01/01/2011 11:25:00 AM,078XX S ASHLAND AVE,0560,ASSAULT,SIMPLE,SMALL RETAIL STORE,true,false,0611,006,17,71,08A,1166991,1852927,2011,01/02/2011 07:57:47 AM,41.751989047,-87.663624538,"(41.751989047, -87.663624538)" -8027624,HT258669,01/01/2011 09:00:00 AM,031XX N LECLAIRE AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,2521,025,30,19,06,1141787,1920163,2011,06/18/2011 08:45:25 AM,41.936995471,-87.754326062,"(41.936995471, -87.754326062)" -8129452,HT363355,01/01/2011 08:00:00 AM,011XX N LOCKWOOD AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1524,015,37,25,06,1140848,1907381,2011,06/29/2011 10:01:21 AM,41.901937629,-87.758092172,"(41.901937629, -87.758092172)" -7867271,HS681358,12/29/2010 05:41:04 PM,068XX S PRAIRIE AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,0322,003,20,69,26,1179188,1859446,2010,12/31/2010 06:20:15 AM,41.769608673,-87.618729795,"(41.769608673, -87.618729795)" -7865317,HS679558,12/28/2010 01:28:00 PM,027XX W ADDISON ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,BRIDGE,true,false,1912,019,47,5,26,1157699,1923851,2010,12/28/2010 06:40:32 PM,41.946805791,-87.695746045,"(41.946805791, -87.695746045)" -7862059,HS676648,12/25/2010 10:00:00 PM,038XX W ARGYLE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1712,017,39,14,07,1149779,1932907,2010,12/31/2010 11:56:37 AM,41.971814088,-87.724621369,"(41.971814088, -87.724621369)" -7861627,HS676024,12/25/2010 11:00:00 AM,050XX W WABANSIA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2533,025,37,25,07,1142539,1910795,2010,01/06/2011 09:21:01 AM,41.911274743,-87.751795808,"(41.911274743, -87.751795808)" -7868299,HS681212,12/23/2010 03:00:00 PM,012XX W 31ST ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0924,009,11,60,08A,1168702,1884210,2010,12/31/2010 09:07:19 AM,41.83779648,-87.656451843,"(41.83779648, -87.656451843)" -7857300,HS671175,12/21/2010 10:00:00 AM,068XX S PERRY AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0722,007,6,69,06,1176624,1859414,2010,12/24/2010 11:29:59 AM,41.769578936,-87.628129175,"(41.769578936, -87.628129175)" -7854474,HS668561,12/20/2010 12:30:00 AM,039XX S WESTERN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0914,009,12,58,14,1160960,1878738,2010,12/20/2010 11:11:37 AM,41.822944596,-87.685012317,"(41.822944596, -87.685012317)" -7853532,HS667173,12/18/2010 08:45:00 PM,015XX N LATROBE AVE,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,APARTMENT,false,false,2532,025,37,25,10,1141122,1909812,2010,12/21/2010 02:15:06 PM,41.908603526,-87.757025729,"(41.908603526, -87.757025729)" -7852399,HS665543,12/17/2010 05:00:00 PM,0000X W WACKER DR,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,0122,001,42,32,06,1175970,1902093,2010,12/20/2010 07:55:08 AM,41.886708365,-87.629244285,"(41.886708365, -87.629244285)" -7852508,HS665313,12/17/2010 12:00:00 PM,107XX S COTTAGE GROVE AVE,0810,THEFT,OVER $500,STREET,false,false,0513,005,9,50,06,1182283,1833916,2010,12/18/2010 07:04:06 AM,41.699480288,-87.608173488,"(41.699480288, -87.608173488)" -7852570,HS665721,12/16/2010 07:30:00 PM,030XX S QUINN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0923,009,11,60,05,1170767,1884704,2010,12/31/2010 09:59:51 AM,41.839107155,-87.648860008,"(41.839107155, -87.648860008)" -7849405,HS662290,12/15/2010 09:50:00 AM,026XX W 36TH ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0913,009,12,58,05,1159204,1880648,2010,12/23/2010 06:23:52 PM,41.828222044,-87.691402056,"(41.828222044, -87.691402056)" -7846554,HS659630,12/14/2010 12:43:00 AM,055XX S WOOD ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0715,007,15,67,14,1165251,1868005,2010,12/14/2010 02:39:32 PM,41.793402072,-87.669574427,"(41.793402072, -87.669574427)" -7845069,HS658108,12/13/2010 05:15:00 AM,0000X S DEARBORN ST,0820,THEFT,$500 AND UNDER,CTA PLATFORM,false,false,0112,001,42,32,06,1175909,1900111,2010,12/13/2010 10:47:41 AM,41.881271018,-87.629527982,"(41.881271018, -87.629527982)" -8082273,HT315077,12/12/2010 09:21:00 PM,037XX N RICHMOND ST,2860,PUBLIC PEACE VIOLATION,FALSE POLICE REPORT,RESIDENCE,true,false,1733,017,33,16,24,1156011,1924755,2010,07/28/2011 08:46:13 AM,41.949320715,-87.70192618,"(41.949320715, -87.70192618)" -7854329,HS668352,12/12/2010 09:00:00 PM,016XX W JULIAN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1433,014,1,24,14,1165352,1909936,2010,12/20/2010 10:25:03 AM,41.908462569,-87.66801278,"(41.908462569, -87.66801278)" -7842420,HS653618,12/09/2010 10:00:00 PM,015XX W 77TH ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,false,true,0612,006,17,71,26,1167160,1853621,2010,12/22/2010 11:10:59 AM,41.753889867,-87.662985413,"(41.753889867, -87.662985413)" -7839663,HS651580,12/07/2010 05:00:00 PM,024XX S LEAVITT ST,0810,THEFT,OVER $500,STREET,false,false,1034,010,25,31,06,1162121,1887975,2010,12/09/2010 10:02:21 AM,41.848267809,-87.680495511,"(41.848267809, -87.680495511)" -7834911,HS646182,12/04/2010 03:00:00 PM,124XX S HARVARD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0523,005,34,53,07,1176162,1822631,2010,01/18/2011 07:06:10 PM,41.668651763,-87.630922692,"(41.668651763, -87.630922692)" -7833814,HS644806,12/03/2010 09:04:00 PM,035XX N OKETO AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,1631,016,36,17,03,1126174,1922812,2010,12/06/2010 05:43:33 PM,41.944539677,-87.811647992,"(41.944539677, -87.811647992)" -7872035,HT102893,12/03/2010 12:01:00 AM,024XX W GRANVILLE AVE,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,RESIDENCE,false,false,2413,024,50,2,26,1158938,1941048,2010,01/04/2011 07:17:46 AM,41.993969833,-87.690717702,"(41.993969833, -87.690717702)" -7831961,HS642754,12/02/2010 03:00:00 PM,035XX N CLAREMONT AVE,0820,THEFT,$500 AND UNDER,ALLEY,false,false,1913,019,47,5,06,1160112,1923637,2010,12/03/2010 09:08:02 AM,41.946168965,-87.686882488,"(41.946168965, -87.686882488)" -7831435,HS642493,12/02/2010 10:30:00 AM,055XX S WASHTENAW AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0824,008,16,63,05,1159361,1867632,2010,12/21/2010 10:33:42 AM,41.792501273,-87.691182863,"(41.792501273, -87.691182863)" -7830558,HS641975,12/01/2010 07:30:00 PM,013XX N LAWNDALE AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,2535,025,26,23,06,1151494,1908833,2010,12/02/2010 08:57:00 AM,41.905719509,-87.718949463,"(41.905719509, -87.718949463)" -7833599,HS641579,12/01/2010 05:00:00 PM,057XX S COTTAGE GROVE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2133,002,5,41,07,1182594,1867250,2010,12/04/2010 07:36:53 AM,41.790945235,-87.606003087,"(41.790945235, -87.606003087)" -7829693,HS640744,11/30/2010 04:31:00 PM,070XX N TONTY AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,1621,016,41,12,26,1136849,1946197,2010,01/13/2011 03:07:32 PM,42.00852518,-87.771847104,"(42.00852518, -87.771847104)" -7823720,HS634374,11/27/2010 12:40:00 AM,045XX W JACKSON BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,1131,011,24,26,06,1146390,1898267,2010,12/28/2010 02:35:43 PM,41.876824005,-87.737967719,"(41.876824005, -87.737967719)" -7821678,HS630225,11/23/2010 06:00:00 AM,002XX S LAVERGNE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1533,015,28,25,14,1143329,1898775,2010,11/25/2010 09:05:39 AM,41.878275736,-87.749194212,"(41.878275736, -87.749194212)" -8313661,HS628691,11/22/2010 09:48:00 PM,053XX S PAULINA ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,0932,009,16,61,07,1165872,1869490,2010,12/04/2011 11:52:39 AM,41.797463912,-87.667255079,"(41.797463912, -87.667255079)" -7855696,HS669242,11/20/2010 12:00:00 PM,108XX S AVENUE H,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0432,004,10,52,06,1202893,1833543,2010,01/06/2011 10:32:23 PM,41.697955776,-87.532722976,"(41.697955776, -87.532722976)" -7839122,HS622794,11/19/2010 09:30:00 AM,033XX W FILLMORE ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,POLICE FACILITY/VEH PARKING LOT,true,false,1134,011,24,29,26,1154096,1895210,2010,12/28/2010 01:48:53 PM,41.868285103,-87.709755003,"(41.868285103, -87.709755003)" -7813524,HS622967,11/18/2010 02:30:00 PM,036XX W FIFTH AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,1133,011,28,27,08A,1151962,1897752,2010,12/06/2010 12:47:21 PM,41.875302904,-87.717522452,"(41.875302904, -87.717522452)" -7828192,HS621548,11/18/2010 11:38:00 AM,045XX W CONGRESS PKWY,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),VEHICLE NON-COMMERCIAL,true,false,1131,011,24,26,18,1146126,1897343,2010,12/03/2010 03:00:27 PM,41.874293459,-87.73896055,"(41.874293459, -87.73896055)" -7810398,HS620433,11/17/2010 04:25:00 PM,003XX N LOCKWOOD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1523,015,28,25,18,1140935,1901958,2010,11/17/2010 05:11:18 PM,41.887054664,-87.757906199,"(41.887054664, -87.757906199)" -7811594,HS621527,11/17/2010 02:30:00 PM,076XX N SHERIDAN RD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2422,024,49,1,26,1165513,1950757,2010,12/14/2010 12:43:12 PM,42.02047357,-87.666253868,"(42.02047357, -87.666253868)" -7808983,HS619435,11/17/2010 12:57:00 AM,006XX N LEAMINGTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1532,015,28,25,18,1141949,1903873,2010,11/17/2010 03:03:55 AM,41.892290936,-87.754134988,"(41.892290936, -87.754134988)" -7803831,HS613974,11/13/2010 03:35:00 PM,002XX E HURON ST,0460,BATTERY,SIMPLE,HOSPITAL BUILDING/GROUNDS,true,false,1834,018,42,8,08B,1178235,1905097,2010,10/31/2014 03:20:56 PM,41.894900187,-87.62083512,"(41.894900187, -87.62083512)" -7811379,HS613400,11/13/2010 10:15:00 AM,0000X W CHECKPOINT 7 ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT TERMINAL UPPER LEVEL - SECURE AREA,false,false,1653,016,41,76,26,1101708,1934266,2010,11/22/2010 10:18:16 AM,41.976344553,-87.901365347,"(41.976344553, -87.901365347)" -7803598,HS613525,11/13/2010 12:30:00 AM,074XX N RIDGE BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2411,024,49,2,14,1160595,1949116,2010,11/15/2010 10:24:53 AM,42.016074381,-87.684397612,"(42.016074381, -87.684397612)" -7803095,HS612603,11/12/2010 07:15:00 PM,009XX N RIDGEWAY AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1112,011,27,23,04B,1151173,1905992,2010,12/29/2010 12:20:27 PM,41.897929829,-87.720203203,"(41.897929829, -87.720203203)" -7801102,HS610865,11/11/2010 06:15:00 PM,005XX W 85TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,OTHER,true,false,0622,006,21,71,18,1173899,1848514,2010,11/11/2010 09:13:11 PM,41.739728866,-87.638440474,"(41.739728866, -87.638440474)" -7802497,HS611729,11/11/2010 05:00:00 PM,062XX S KENWOOD AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0314,003,20,42,26,1186185,1863926,2010,11/17/2010 04:48:41 PM,41.781739788,-87.592940847,"(41.781739788, -87.592940847)" -7900336,HS609652,11/10/2010 11:20:00 PM,041XX S PRAIRIE AVE,0291,CRIM SEXUAL ASSAULT,ATTEMPT NON-AGGRAVATED,ALLEY,false,false,0214,002,3,38,02,1178767,1877557,2010,02/16/2011 06:46:05 PM,41.819316544,-87.619721901,"(41.819316544, -87.619721901)" -8582916,HV257272,11/10/2010 09:00:00 AM,013XX W WASHBURNE AVE,0842,THEFT,AGG: FINANCIAL ID THEFT,APARTMENT,false,false,1231,012,2,28,06,1167755,1894557,2010,04/27/2012 01:40:01 PM,41.866209998,-87.659628924,"(41.866209998, -87.659628924)" -7807117,HS617845,11/10/2010 06:30:00 AM,011XX N HERMITAGE AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,1322,012,1,24,06,1164553,1907838,2010,11/16/2010 09:38:06 AM,41.902722479,-87.671007411,"(41.902722479, -87.671007411)" -7833073,HS634848,11/09/2010 01:00:00 PM,038XX N CICERO AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,1634,016,45,15,07,1143644,1925050,2010,12/21/2010 06:59:34 AM,41.950371227,-87.74737846,"(41.950371227, -87.74737846)" -7797721,HS606075,11/09/2010 02:45:00 AM,0000X E CHICAGO AVE,0810,THEFT,OVER $500,RESTAURANT,false,false,1833,018,42,8,06,1176344,1905771,2010,11/10/2010 07:43:33 AM,41.896792558,-87.62775981,"(41.896792558, -87.62775981)" -7795635,HS604804,11/08/2010 11:00:00 AM,108XX S AVENUE H,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,0432,004,10,52,26,1202891,1833798,2010,11/09/2010 06:25:28 AM,41.698655569,-87.53272162,"(41.698655569, -87.53272162)" -7796332,HS605277,11/08/2010 10:00:00 AM,003XX W MARQUETTE RD,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,APARTMENT,false,false,0722,007,6,68,06,1175433,1860491,2010,12/03/2010 02:11:19 PM,41.772561059,-87.632462653,"(41.772561059, -87.632462653)" -7798840,HS605201,11/08/2010 08:50:00 AM,0000X W PARKING LOT C ST,0810,THEFT,OVER $500,AIRPORT PARKING LOT,false,false,1654,016,41,76,06,1099358,1935446,2010,11/15/2010 09:23:47 AM,41.979614836,-87.909986119,"(41.979614836, -87.909986119)" -7805463,HS604803,11/06/2010 10:00:00 PM,080XX S LANGLEY AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,true,0631,006,6,44,20,1182326,1851993,2010,12/06/2010 07:37:28 PM,41.749084752,-87.607457919,"(41.749084752, -87.607457919)" -7814366,HS599788,11/05/2010 02:01:00 AM,064XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,STREET,false,false,0312,,20,69,08B,,,2010,11/23/2010 01:20:06 PM,,, -7789631,HS598339,11/04/2010 10:00:00 AM,050XX W DIVISION ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,2533,025,37,25,26,1142444,1907559,2010,11/04/2010 11:53:37 AM,41.902396565,-87.752225347,"(41.902396565, -87.752225347)" -7788644,HS597310,11/03/2010 04:00:00 PM,057XX W BELMONT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,2514,025,30,19,14,1137551,1920654,2010,12/08/2010 12:07:54 PM,41.938420278,-87.769882345,"(41.938420278, -87.769882345)" -7788991,HS596292,11/03/2010 01:30:00 AM,058XX S MICHIGAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,true,0233,002,20,40,14,1178201,1866105,2010,11/09/2010 03:24:29 PM,41.787904099,-87.6221458,"(41.787904099, -87.6221458)" -7788221,HS596964,11/02/2010 10:30:00 PM,042XX N BROADWAY,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2322,019,46,3,14,1169192,1928464,2010,11/04/2010 07:11:18 AM,41.959221666,-87.653366775,"(41.959221666, -87.653366775)" -7788591,HS597340,11/02/2010 09:30:00 PM,061XX S MASON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0812,008,13,64,07,1137826,1863335,2010,11/04/2010 08:27:40 AM,41.781123812,-87.77025323,"(41.781123812, -87.77025323)" -7787164,HS596299,11/02/2010 04:00:00 PM,013XX W 79TH ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0612,006,17,71,08A,1168740,1852418,2010,11/06/2010 09:48:25 AM,41.750554744,-87.657229892,"(41.750554744, -87.657229892)" -7784394,HS593301,11/01/2010 11:05:00 AM,045XX N CENTRAL PARK AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1723,017,33,14,18,1151521,1930245,2010,11/01/2010 12:12:54 PM,41.964475244,-87.718286009,"(41.964475244, -87.718286009)" -7783560,HS592386,10/31/2010 05:30:00 PM,094XX S ELIZABETH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,2222,022,21,73,04B,1169696,1841935,2010,11/24/2010 10:56:57 AM,41.721767241,-87.654029866,"(41.721767241, -87.654029866)" -7782620,HS591236,10/30/2010 11:00:00 PM,030XX W IRVING PARK RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1733,017,33,16,08B,1155394,1926395,2010,11/20/2010 04:38:23 PM,41.953833434,-87.704149932,"(41.953833434, -87.704149932)" -7782654,HS591233,10/30/2010 10:44:00 PM,048XX N SAWYER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1713,017,39,14,08B,1153876,1932048,2010,11/04/2010 12:12:42 PM,41.969376072,-87.70957902,"(41.969376072, -87.70957902)" -7782267,HS590420,10/30/2010 12:01:00 AM,034XX N RACINE AVE,0870,THEFT,POCKET-PICKING,APARTMENT,false,false,1924,019,44,6,06,1167710,1923249,2010,11/01/2010 06:49:30 AM,41.944943633,-87.658966062,"(41.944943633, -87.658966062)" -7780703,HS588432,10/29/2010 08:20:00 AM,078XX S HALSTED ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0621,006,17,71,26,1172283,1852998,2010,11/01/2010 06:06:30 AM,41.752069206,-87.644229677,"(41.752069206, -87.644229677)" -7780045,HS587912,10/28/2010 08:55:00 PM,006XX N ST LOUIS AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1121,011,27,23,18,1152971,1904151,2010,10/29/2010 12:03:52 AM,41.892842495,-87.713648122,"(41.892842495, -87.713648122)" -7786244,HS595130,10/28/2010 12:00:00 AM,025XX W 57TH ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,0824,008,16,63,14,1160146,1866818,2010,11/02/2010 04:23:01 PM,41.790251422,-87.688326754,"(41.790251422, -87.688326754)" -7776048,HS584218,10/26/2010 05:53:00 PM,044XX W 59TH ST,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,APARTMENT,false,true,0813,008,13,62,26,1147787,1865155,2010,12/02/2010 06:52:25 AM,41.785933389,-87.733686968,"(41.785933389, -87.733686968)" -7775250,HS583310,10/26/2010 10:00:00 AM,034XX W WILSON AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,"SCHOOL, PUBLIC, BUILDING",true,false,1723,017,33,14,04B,1152451,1930390,2010,11/04/2010 10:45:51 AM,41.964854764,-87.714862788,"(41.964854764, -87.714862788)" -7775877,HS584123,10/25/2010 09:00:00 PM,036XX W OGDEN AVE,0610,BURGLARY,FORCIBLE ENTRY,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,1014,010,24,29,05,1152535,1890176,2010,02/03/2011 04:38:15 PM,41.854502202,-87.715618756,"(41.854502202, -87.715618756)" -7772009,HS580340,10/24/2010 02:55:00 PM,086XX S LAFLIN ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENTIAL YARD (FRONT/BACK),true,false,0614,006,21,71,15,1167801,1847475,2010,10/25/2010 06:57:10 AM,41.737010648,-87.660812394,"(41.737010648, -87.660812394)" -7771506,HS579696,10/24/2010 02:40:00 AM,001XX W ERIE ST,0460,BATTERY,SIMPLE,STREET,false,false,1832,018,42,8,08B,1174976,1904785,2010,10/25/2010 09:52:34 AM,41.894117684,-87.632813766,"(41.894117684, -87.632813766)" -7777646,HS585285,10/23/2010 10:00:00 PM,0000X W ONTARIO ST,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,1832,018,42,8,14,1176174,1904444,2010,10/28/2010 06:57:33 AM,41.893155038,-87.628424228,"(41.893155038, -87.628424228)" -7773542,HS581424,10/22/2010 12:00:00 PM,006XX S STATE ST,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,0132,001,2,32,06,1176412,1897619,2010,01/04/2011 01:46:36 PM,41.87442149,-87.627756239,"(41.87442149, -87.627756239)" -7769524,HS576820,10/22/2010 09:30:00 AM,013XX W 83RD ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0613,006,21,71,06,1168719,1849761,2010,10/23/2010 09:16:23 AM,41.743264021,-87.657383333,"(41.743264021, -87.657383333)" -7784284,HS576050,10/21/2010 07:27:56 PM,008XX E 89TH ST,2027,NARCOTICS,POSS: CRACK,APARTMENT,true,false,0632,006,8,44,18,1183562,1846188,2010,11/10/2010 03:04:15 PM,41.733126496,-87.603109289,"(41.733126496, -87.603109289)" -7767952,HS575714,10/21/2010 05:00:00 PM,107XX S WABASH AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0513,005,9,49,18,1178519,1833748,2010,10/21/2010 05:39:20 PM,41.699105414,-87.621960601,"(41.699105414, -87.621960601)" -7766176,HS573956,10/20/2010 04:44:00 PM,021XX N CALIFORNIA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1431,014,1,22,18,1157398,1914002,2010,10/20/2010 05:40:22 PM,41.919785577,-87.697121082,"(41.919785577, -87.697121082)" -7766055,HS573714,10/19/2010 10:00:00 PM,058XX S PRAIRIE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0233,002,20,40,07,1179004,1866093,2010,10/21/2010 08:56:07 AM,41.787852905,-87.619201912,"(41.787852905, -87.619201912)" -7761672,HS570049,10/18/2010 10:00:00 AM,006XX W 63RD ST,0820,THEFT,$500 AND UNDER,GOVERNMENT BUILDING/PROPERTY,false,false,0723,007,20,68,06,1172817,1863065,2010,11/07/2010 08:15:20 AM,41.779682513,-87.641976291,"(41.779682513, -87.641976291)" -7763702,HS571572,10/18/2010 03:13:00 AM,026XX W PRATT BLVD,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,2412,024,50,2,26,1157480,1944987,2010,10/27/2010 05:22:18 PM,42.004808498,-87.695972995,"(42.004808498, -87.695972995)" -7761063,HS569758,10/17/2010 09:00:00 PM,070XX N WASHTENAW AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2411,024,50,2,07,1157128,1946776,2010,10/22/2010 08:28:39 AM,42.009724761,-87.697219117,"(42.009724761, -87.697219117)" -7760097,HS568612,10/16/2010 10:00:00 PM,036XX N OLEANDER AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,1631,016,36,17,14,1125054,1923483,2010,10/18/2010 10:56:30 AM,41.946399614,-87.815749841,"(41.946399614, -87.815749841)" -7758332,HS565929,10/15/2010 12:53:00 PM,072XX N ROGERS AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2424,024,49,1,26,1161400,1948081,2010,11/08/2010 08:03:36 PM,42.013217532,-87.681464463,"(42.013217532, -87.681464463)" -7758838,HS567045,10/15/2010 06:00:00 AM,045XX W WASHINGTON BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1113,011,28,26,26,1146006,1900148,2010,10/23/2010 09:29:35 PM,41.881992993,-87.739329863,"(41.881992993, -87.739329863)" -7765099,HS571976,10/14/2010 10:30:00 AM,044XX S DREXEL BLVD,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,2123,002,4,39,06,1183113,1875561,2010,10/20/2010 09:43:21 AM,41.813739222,-87.603841416,"(41.813739222, -87.603841416)" -7754712,HS562910,10/13/2010 01:20:00 PM,122XX S WALLACE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0523,005,34,53,26,1174485,1823607,2010,10/31/2014 03:20:56 PM,41.671367411,-87.637031323,"(41.671367411, -87.637031323)" -7753010,HS561735,10/13/2010 12:09:00 AM,109XX S EDBROOKE AVE,502R,OTHER OFFENSE,VEHICLE TITLE/REG OFFENSE,STREET,false,false,0513,005,9,49,26,1179226,1832471,2010,10/13/2010 07:08:50 AM,41.695585094,-87.619410664,"(41.695585094, -87.619410664)" -7751081,HS559915,10/11/2010 11:45:00 PM,014XX S RIDGEWAY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1011,010,24,29,08B,1151573,1892682,2010,10/15/2010 12:20:08 PM,41.861397899,-87.719083917,"(41.861397899, -87.719083917)" -7747811,HS555914,10/09/2010 01:05:00 PM,050XX S JUSTINE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,true,0931,009,16,61,08B,1166899,1871231,2010,10/15/2010 01:16:56 PM,41.802219519,-87.663439163,"(41.802219519, -87.663439163)" -7747472,HS555477,10/09/2010 12:30:00 AM,004XX N DRAKE AVE,0820,THEFT,$500 AND UNDER,CHA PARKING LOT/GROUNDS,false,false,1123,011,27,23,06,1152594,1902893,2010,10/11/2010 09:21:46 AM,41.88939788,-87.715065995,"(41.88939788, -87.715065995)" -7751690,HS560313,10/08/2010 05:00:00 PM,021XX N LONG AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,2515,025,37,19,06,1139990,1913950,2010,10/13/2010 10:25:49 AM,41.919979458,-87.761082782,"(41.919979458, -87.761082782)" -7746719,HS554338,10/08/2010 02:44:00 PM,007XX W 111TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2233,022,34,49,08B,1173508,1831295,2010,10/09/2010 06:55:42 AM,41.69248612,-87.640380793,"(41.69248612, -87.640380793)" -7747112,HS554119,10/08/2010 12:30:00 PM,034XX W MADISON ST,0880,THEFT,PURSE-SNATCHING,STREET,false,false,1123,011,28,27,06,1153650,1899849,2010,10/11/2010 11:46:39 AM,41.881023891,-87.71126894,"(41.881023891, -87.71126894)" -7745611,HS553532,10/08/2010 03:33:00 AM,017XX W 79TH ST,0610,BURGLARY,FORCIBLE ENTRY,TAVERN/LIQUOR STORE,false,false,0611,006,21,71,05,1166250,1852273,2010,10/11/2010 09:17:47 AM,41.750210174,-87.666358554,"(41.750210174, -87.666358554)" -7747676,HS555521,10/08/2010 01:00:00 AM,049XX N SAWYER AVE,0810,THEFT,OVER $500,STREET,false,false,1713,017,39,14,06,1153858,1932693,2010,10/10/2010 11:59:23 AM,41.971146351,-87.70962794,"(41.971146351, -87.70962794)" -7743726,HS550721,10/06/2010 07:50:00 AM,012XX S CENTRAL PARK AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1021,010,24,29,05,1152619,1893738,2010,10/26/2010 07:26:41 PM,41.864275083,-87.715216315,"(41.864275083, -87.715216315)" -7741621,HS549410,10/04/2010 08:00:00 PM,027XX W FLOURNOY ST,0460,BATTERY,SIMPLE,STREET,false,false,1135,011,2,27,08B,1158408,1896965,2010,10/24/2010 09:57:32 AM,41.873013952,-87.693876723,"(41.873013952, -87.693876723)" -7740322,HS548471,10/04/2010 07:30:00 PM,0000X W HURON ST,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,false,false,1832,018,42,8,08B,1175730,1905097,2010,10/05/2010 07:04:07 AM,41.894956902,-87.630035199,"(41.894956902, -87.630035199)" -7737766,HS545801,10/02/2010 08:00:00 PM,064XX W MC LEAN AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,2512,025,36,19,14,1133224,1912742,2010,10/04/2010 09:50:34 AM,41.916785761,-87.785970958,"(41.916785761, -87.785970958)" -7736649,HS544216,10/02/2010 07:35:00 AM,017XX N MAJOR AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,2531,025,29,25,26,1138091,1910761,2010,10/07/2010 01:30:47 PM,41.911263036,-87.768137348,"(41.911263036, -87.768137348)" -7738468,HS544243,10/02/2010 05:30:00 AM,039XX N BROADWAY,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,2324,019,46,6,05,1170128,1926552,2010,10/08/2010 01:54:35 PM,41.953954641,-87.649981722,"(41.953954641, -87.649981722)" -7736403,HS543805,10/01/2010 10:20:00 PM,055XX W IRVING PARK RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,1633,016,38,15,08B,1138680,1926007,2010,10/02/2010 10:39:36 AM,41.953089005,-87.765602643,"(41.953089005, -87.765602643)" -7736131,HS543586,10/01/2010 07:08:00 PM,040XX W LEXINGTON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1132,011,24,26,18,1149673,1896434,2010,10/01/2010 08:20:53 PM,41.87173092,-87.725961067,"(41.87173092, -87.725961067)" -7735036,HS542388,09/30/2010 07:00:00 PM,092XX S COTTAGE GROVE AVE,0620,BURGLARY,UNLAWFUL ENTRY,SMALL RETAIL STORE,false,false,0633,006,9,44,05,1183132,1844091,2010,10/06/2010 05:13:55 PM,41.727382087,-87.604749594,"(41.727382087, -87.604749594)" -7739909,HS547901,09/30/2010 12:15:00 PM,050XX S LAKE SHORE DR W,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,RESIDENCE,false,false,2132,002,4,39,20,1188596,1871952,2010,11/08/2010 01:09:59 PM,41.803706407,-87.583845135,"(41.803706407, -87.583845135)" -7733158,HS540767,09/30/2010 01:36:00 AM,054XX W MADISON ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1522,015,28,25,26,1140309,1899534,2010,09/30/2010 02:15:35 AM,41.880414398,-87.760264522,"(41.880414398, -87.760264522)" -7734477,HS541715,09/29/2010 11:15:00 PM,001XX W LAKE ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0113,001,42,32,03,1175460,1901776,2010,12/18/2010 08:36:19 AM,41.885849966,-87.631126643,"(41.885849966, -87.631126643)" From f6e8d57da33b3010542f7489bbac44bda01fc69d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:32:25 -0700 Subject: [PATCH 055/248] Delete part-00002-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 930 ------------------ 1 file changed, 930 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00002-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00002-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00002-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index 6b346eec..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00002-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,930 +0,0 @@ -7726719,HS534541,09/26/2010 12:30:00 AM,003XX N PINE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1523,015,28,25,07,1139478,1901774,2010,09/29/2010 09:16:34 AM,41.886576431,-87.763261277,"(41.886576431, -87.763261277)" -7725902,HS533637,09/25/2010 04:50:00 PM,004XX E 75TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0323,003,6,69,18,1180426,1855420,2010,09/25/2010 05:35:25 PM,41.758532591,-87.614315237,"(41.758532591, -87.614315237)" -7725179,HS532650,09/25/2010 01:00:00 AM,008XX W GARFIELD BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,0712,007,20,68,14,1171877,1868213,2010,09/25/2010 10:23:11 AM,41.793829891,-87.645271406,"(41.793829891, -87.645271406)" -7724003,HS531307,09/24/2010 10:00:00 AM,0000X E 71ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0322,003,6,69,18,1178054,1857999,2010,09/24/2010 10:47:22 AM,41.765663728,-87.622930311,"(41.765663728, -87.622930311)" -7723768,HS531110,09/23/2010 06:00:00 PM,020XX W ROSCOE ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1913,019,32,5,05,1161928,1922607,2010,09/27/2010 03:48:57 PM,41.94330481,-87.68023632,"(41.94330481, -87.68023632)" -7722705,HS529862,09/23/2010 12:50:00 PM,052XX W MONTANA ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,true,false,2515,025,31,19,15,1141114,1915844,2010,09/24/2010 10:49:18 AM,41.92515614,-87.756906183,"(41.92515614, -87.756906183)" -7729447,HS529754,09/23/2010 12:35:38 PM,0000X W 79TH ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA BUS,true,false,0623,006,6,44,11,1177484,1852588,2010,09/29/2010 05:55:45 AM,41.750828226,-87.625182794,"(41.750828226, -87.625182794)" -7719075,HS526532,09/21/2010 01:30:00 PM,068XX S WABASH AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0322,003,20,69,05,1177867,1859601,2010,10/20/2010 08:32:08 PM,41.770064026,-87.623567268,"(41.770064026, -87.623567268)" -7719103,HS526637,09/21/2010 07:00:00 AM,052XX S KILBOURN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0815,008,23,57,07,1147285,1869677,2010,09/22/2010 08:41:44 AM,41.798352065,-87.735412258,"(41.798352065, -87.735412258)" -7717155,HS524746,09/20/2010 02:45:00 PM,012XX W ERIE ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,1324,012,27,24,08B,1167774,1904530,2010,09/22/2010 08:17:41 AM,41.893576256,-87.659271624,"(41.893576256, -87.659271624)" -7715556,HS523527,09/19/2010 07:20:00 PM,047XX W HARRISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1131,011,24,25,18,1144735,1896886,2010,09/19/2010 08:19:41 PM,41.873065713,-87.744079251,"(41.873065713, -87.744079251)" -7717289,HS523467,09/19/2010 04:56:00 PM,064XX N WESTERN AVE,0810,THEFT,OVER $500,STREET,false,false,2412,024,50,2,06,1159192,1942487,2010,10/29/2010 10:01:55 PM,41.997913268,-87.689743598,"(41.997913268, -87.689743598)" -7716220,HS521071,09/18/2010 03:30:00 AM,026XX W FULLERTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1431,014,1,22,14,1158218,1915809,2010,09/22/2010 09:16:23 AM,41.924727387,-87.694058773,"(41.924727387, -87.694058773)" -7713193,HS520113,09/17/2010 11:45:00 AM,020XX W CHASE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2424,024,49,1,14,1161041,1948412,2010,09/20/2010 06:42:29 AM,42.014133298,-87.682776158,"(42.014133298, -87.682776158)" -7711525,HS518656,09/16/2010 05:15:00 PM,001XX W LOWER WACKER DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0113,001,42,32,14,1175183,1902085,2010,09/25/2010 09:47:15 PM,41.886704095,-87.632134562,"(41.886704095, -87.632134562)" -7711064,HS517957,09/16/2010 10:30:00 AM,080XX S EXCHANGE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0422,004,7,46,14,1197184,1852293,2010,09/17/2010 08:09:23 AM,41.749551112,-87.553003561,"(41.749551112, -87.553003561)" -7736533,HS544005,09/15/2010 08:00:00 PM,070XX S CLYDE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0331,003,5,43,05,1191387,1858761,2010,10/05/2010 08:09:20 PM,41.767442145,-87.574036552,"(41.767442145, -87.574036552)" -7707018,HS514400,09/14/2010 02:00:00 AM,050XX S WASHINGTON PARK CT,0810,THEFT,OVER $500,STREET,false,false,0223,002,3,38,06,1180071,1871413,2010,09/14/2010 10:59:55 AM,41.80242708,-87.615126724,"(41.80242708, -87.615126724)" -7712294,HS511402,09/12/2010 11:00:00 AM,066XX S SEELEY AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,0726,007,15,67,07,1163802,1860519,2010,09/29/2010 08:19:34 AM,41.772890087,-87.675097936,"(41.772890087, -87.675097936)" -7704308,HS510748,09/11/2010 09:30:00 PM,005XX S LARAMIE AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,true,1522,015,29,25,08A,1141767,1897107,2010,09/14/2010 12:19:48 PM,41.873727561,-87.754970872,"(41.873727561, -87.754970872)" -7703621,HS510137,09/11/2010 01:40:53 PM,057XX W MIDWAY PARK,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,false,false,1512,015,29,25,14,1137747,1902607,2010,09/14/2010 10:39:26 AM,41.88889367,-87.769597949,"(41.88889367, -87.769597949)" -7702838,HS509722,09/11/2010 08:02:00 AM,048XX S MICHIGAN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0231,002,3,38,26,1177931,1873073,2010,09/14/2010 11:53:40 AM,41.807031071,-87.622924631,"(41.807031071, -87.622924631)" -7701899,HS508746,09/10/2010 03:30:00 PM,002XX N JEFFERSON ST,0460,BATTERY,SIMPLE,STREET,false,false,1212,012,42,28,08B,1172322,1901910,2010,10/10/2010 11:31:35 AM,41.886287555,-87.642645975,"(41.886287555, -87.642645975)" -7700231,HS507234,09/09/2010 04:00:00 PM,055XX S SPRINGFIELD AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0822,008,23,62,08A,1151267,1867806,2010,09/11/2010 10:10:23 AM,41.793140827,-87.720858193,"(41.793140827, -87.720858193)" -7698892,HS502571,09/07/2010 04:30:00 AM,105XX S EBERHART AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0512,005,9,49,08B,1181478,1835380,2010,09/13/2010 06:07:53 AM,41.703516261,-87.611076066,"(41.703516261, -87.611076066)" -7695823,HS502925,09/05/2010 08:10:00 PM,015XX N CENTRAL AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,2532,025,37,25,06,1138750,1909815,2010,09/08/2010 10:53:53 AM,41.90865516,-87.765739362,"(41.90865516, -87.765739362)" -7693577,HS500654,09/05/2010 06:50:00 PM,084XX S DAMEN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0614,006,18,71,14,1164529,1848772,2010,09/06/2010 07:43:52 AM,41.74063935,-87.672763577,"(41.74063935, -87.672763577)" -7694030,HS498832,09/04/2010 02:02:08 PM,019XX E 79TH ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,0414,004,8,43,04A,1190708,1853021,2010,09/30/2010 12:11:18 PM,41.751707526,-87.576710386,"(41.751707526, -87.576710386)" -7692391,HS499079,09/04/2010 10:00:00 AM,028XX W 19TH ST,0810,THEFT,OVER $500,STREET,false,false,1022,010,12,29,06,1157175,1890618,2010,09/06/2010 10:09:00 AM,41.855622237,-87.698575963,"(41.855622237, -87.698575963)" -7692043,HS498379,09/04/2010 08:40:00 AM,029XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0922,009,11,31,06,1166107,1884938,2010,09/05/2010 11:44:01 AM,41.839849905,-87.665953302,"(41.839849905, -87.665953302)" -7695722,HS502985,09/03/2010 12:00:00 AM,051XX N LOWELL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1712,017,39,14,06,1146412,1933752,2010,09/08/2010 09:56:49 AM,41.974197809,-87.736980802,"(41.974197809, -87.736980802)" -7692100,HS498406,09/01/2010 03:00:00 PM,048XX W ERIE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1532,015,28,25,14,1143844,1903833,2010,09/05/2010 10:51:57 AM,41.892145859,-87.747176368,"(41.892145859, -87.747176368)" -7686516,HS492686,08/31/2010 10:00:00 PM,029XX N SAWYER AVE,3760,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING SERVICE,SIDEWALK,true,false,1412,014,35,21,24,1154243,1919419,2010,09/01/2010 09:27:14 AM,41.934713901,-87.708568072,"(41.934713901, -87.708568072)" -7685505,HS491446,08/30/2010 05:30:00 PM,022XX N MENARD AVE,0810,THEFT,OVER $500,STREET,false,false,2515,025,37,19,06,1137322,1914128,2010,09/01/2010 10:49:26 AM,41.920516346,-87.770881323,"(41.920516346, -87.770881323)" -7683754,HS489812,08/30/2010 12:20:00 PM,013XX N HARDING AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2535,025,30,23,18,1149755,1908923,2010,08/30/2010 01:03:49 PM,41.906000478,-87.725335122,"(41.906000478, -87.725335122)" -7684503,HS490673,08/30/2010 06:15:00 AM,0000X W 94TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0634,006,21,49,07,1177542,1842602,2010,09/25/2010 02:43:20 PM,41.72342409,-87.62527132,"(41.72342409, -87.62527132)" -7683529,HS489383,08/29/2010 09:45:00 PM,004XX W 102ND PL,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,2232,022,9,73,03,1174961,1836901,2010,09/04/2010 04:30:54 PM,41.707837613,-87.634894687,"(41.707837613, -87.634894687)" -7686383,HS488944,08/29/2010 09:00:00 PM,057XX N CAMPBELL AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2011,020,40,2,26,1158664,1938037,2010,09/11/2010 02:11:04 PM,41.985713164,-87.691808557,"(41.985713164, -87.691808557)" -7683525,HS488528,08/29/2010 04:15:00 PM,036XX W WRIGHTWOOD AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2524,025,35,22,05,1151888,1917087,2010,09/08/2010 09:32:01 PM,41.928361468,-87.717284357,"(41.928361468, -87.717284357)" -7681672,HS487468,08/29/2010 12:50:00 AM,038XX W 109TH ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,2211,022,19,74,08B,1152358,1832051,2010,08/29/2010 06:49:12 AM,41.695001554,-87.717795418,"(41.695001554, -87.717795418)" -7681502,HS487169,08/28/2010 07:35:00 PM,015XX W CHICAGO AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,ALLEY,false,false,1324,012,27,24,04B,1166172,1905399,2010,09/05/2010 10:31:31 AM,41.895995239,-87.665130335,"(41.895995239, -87.665130335)" -7680946,HS486178,08/28/2010 04:40:00 AM,020XX W VAN BUREN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,CHA PARKING LOT/GROUNDS,false,false,1211,012,2,28,14,1162744,1898198,2010,08/30/2010 10:04:37 AM,41.876307669,-87.677922641,"(41.876307669, -87.677922641)" -7683897,HS489912,08/27/2010 06:00:00 PM,018XX S WABASH AVE,0320,ROBBERY,STRONGARM - NO WEAPON,RESIDENCE,false,false,0132,001,3,33,03,1177007,1891539,2010,09/30/2010 02:54:51 PM,41.857724146,-87.625755682,"(41.857724146, -87.625755682)" -7680815,HS483701,08/26/2010 10:00:00 PM,001XX S CLINTON ST,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,0111,001,2,28,03,1172795,1899529,2010,09/12/2010 02:38:10 PM,41.87974348,-87.640979563,"(41.87974348, -87.640979563)" -7685128,HS479861,08/24/2010 10:00:00 PM,071XX N HARLEM AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,GROCERY FOOD STORE,false,false,1611,016,41,9,14,1127346,1947084,2010,09/01/2010 09:28:16 AM,42.01112489,-87.806791733,"(42.01112489, -87.806791733)" -7736119,HS543485,08/24/2010 09:00:00 AM,069XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0734,007,17,67,06,1166916,1858768,2010,10/02/2010 12:06:56 PM,41.768019145,-87.663732769,"(41.768019145, -87.663732769)" -7674590,HS479809,08/23/2010 06:00:00 PM,058XX S TRUMBULL AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,APARTMENT,false,true,0822,008,14,63,20,1154347,1865401,2010,08/31/2010 10:15:31 AM,41.786480385,-87.70962801,"(41.786480385, -87.70962801)" -7672594,HS477742,08/23/2010 08:00:00 AM,006XX N ASHLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,1324,012,1,24,14,1165573,1904386,2010,08/24/2010 08:35:28 AM,41.893228273,-87.667359209,"(41.893228273, -87.667359209)" -7670244,HS475423,08/22/2010 10:50:00 AM,082XX S WESTERN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0835,008,18,70,18,1161775,1849634,2010,08/22/2010 02:30:55 PM,41.743062378,-87.682830148,"(41.743062378, -87.682830148)" -7669682,HS474881,08/22/2010 12:15:00 AM,005XX W DIVISION ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1821,018,27,8,18,1172320,1908305,2010,08/22/2010 02:25:04 AM,41.903835855,-87.642464221,"(41.903835855, -87.642464221)" -7682766,HS469510,08/18/2010 07:15:00 PM,004XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,1834,018,42,8,06,1177312,1903554,2010,08/30/2010 10:44:08 AM,41.890687102,-87.624271838,"(41.890687102, -87.624271838)" -7662064,HS466719,08/17/2010 08:11:00 AM,031XX W 42ND PL,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,0912,009,14,58,26,1155946,1876242,2010,08/23/2010 09:52:24 AM,41.8161976,-87.703473925,"(41.8161976, -87.703473925)" -7659407,HS464752,08/16/2010 02:01:00 AM,017XX N LAWNDALE AVE,0810,THEFT,OVER $500,STREET,true,false,2535,025,26,22,06,1151398,1911454,2010,08/16/2010 10:33:19 AM,41.912913665,-87.719233176,"(41.912913665, -87.719233176)" -7659467,HS464734,08/16/2010 01:30:00 AM,082XX S HERMITAGE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0614,006,18,71,14,1166077,1849864,2010,08/18/2010 05:02:27 PM,41.74360321,-87.66706086,"(41.74360321, -87.66706086)" -7659323,HS464701,08/16/2010 12:20:00 AM,131XX S LANGLEY AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,CHA PARKING LOT/GROUNDS,true,false,0533,005,9,54,15,1183283,1818451,2010,08/16/2010 08:17:17 AM,41.657018996,-87.604990629,"(41.657018996, -87.604990629)" -7664073,HS468729,08/14/2010 10:30:00 PM,050XX W SCHOOL ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1634,016,38,15,14,1142035,1921507,2010,09/20/2010 10:38:20 AM,41.940678937,-87.753381198,"(41.940678937, -87.753381198)" -7657722,HS462625,08/14/2010 03:07:00 PM,012XX W 64TH ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0724,007,16,67,05,1169262,1862384,2010,08/29/2010 05:12:45 PM,41.777891459,-87.655029053,"(41.777891459, -87.655029053)" -7657560,HS462223,08/14/2010 09:42:00 AM,044XX N SHERIDAN RD,0890,THEFT,FROM BUILDING,APARTMENT,false,false,2313,019,46,3,06,1168844,1929649,2010,08/16/2010 07:08:56 AM,41.962480916,-87.654611654,"(41.962480916, -87.654611654)" -7655260,HS458866,08/12/2010 01:45:28 PM,080XX S ESCANABA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,0422,004,7,46,14,1196859,1852012,2010,08/18/2010 05:02:57 PM,41.748788109,-87.554203792,"(41.748788109, -87.554203792)" -7654302,HS458427,08/11/2010 05:00:00 PM,009XX N FRANCISCO AVE,0810,THEFT,OVER $500,STREET,false,false,1311,012,26,24,06,1156916,1906299,2010,08/13/2010 09:49:36 AM,41.898657702,-87.6991013,"(41.898657702, -87.6991013)" -7651643,HS456526,08/10/2010 11:00:00 AM,061XX S WOLCOTT AVE,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,0714,007,15,67,06,1164703,1863863,2010,08/11/2010 10:20:48 AM,41.782047492,-87.67170078,"(41.782047492, -87.67170078)" -7647875,HS453086,08/09/2010 04:05:00 AM,035XX W LAWRENCE AVE,0325,ROBBERY,VEHICULAR HIJACKING,PARKING LOT/GARAGE(NON.RESID.),false,false,1712,017,39,14,03,1151928,1931706,2010,08/25/2010 10:25:25 PM,41.968476297,-87.716750916,"(41.968476297, -87.716750916)" -7647525,HS452565,08/08/2010 06:28:00 PM,059XX S TALMAN AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,0824,008,16,66,05,1159694,1864836,2010,08/10/2010 02:41:18 PM,41.784821836,-87.690038503,"(41.784821836, -87.690038503)" -7648923,HS452577,08/08/2010 04:30:00 PM,036XX W 81ST PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0834,008,18,70,05,1153406,1850340,2010,08/29/2010 10:45:42 AM,41.745169277,-87.71347619,"(41.745169277, -87.71347619)" -7641667,HS446099,08/04/2010 08:30:00 PM,115XX S HALSTED ST,2820,OTHER OFFENSE,TELEPHONE THREAT,VEHICLE NON-COMMERCIAL,false,false,0524,005,34,53,26,1173006,1828552,2010,08/09/2010 06:35:44 AM,41.684969963,-87.642299255,"(41.684969963, -87.642299255)" -7641240,HS445506,08/04/2010 03:10:00 PM,041XX W WEST END AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),PARK PROPERTY,true,false,1114,011,28,26,18,1148965,1900696,2010,08/04/2010 05:07:28 PM,41.88344005,-87.728450163,"(41.88344005, -87.728450163)" -7650024,HS444455,08/03/2010 10:31:10 PM,039XX W ROOSEVELT RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1132,011,24,29,18,1150531,1894466,2010,08/17/2010 11:32:10 AM,41.866313798,-87.722862363,"(41.866313798, -87.722862363)" -7640670,HS443391,08/03/2010 11:50:00 AM,036XX W MONTROSE AVE,0460,BATTERY,SIMPLE,STREET,true,false,1723,017,33,14,08B,1151562,1929043,2010,08/05/2010 08:38:01 AM,41.961176067,-87.718166991,"(41.961176067, -87.718166991)" -7650317,HS453536,08/02/2010 09:00:00 AM,009XX W MONTROSE AVE,0820,THEFT,$500 AND UNDER,ATHLETIC CLUB,false,false,2322,019,46,3,06,1169329,1929366,2010,08/11/2010 03:01:58 PM,41.9616938,-87.652836774,"(41.9616938, -87.652836774)" -7640369,HS441351,08/02/2010 06:45:10 AM,111XX S CORLISS AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,GAS STATION,false,false,0531,005,9,50,04A,1184332,1831515,2010,08/16/2010 08:39:27 AM,41.692844047,-87.600745795,"(41.692844047, -87.600745795)" -7637873,HS442273,08/01/2010 06:00:00 PM,080XX S INDIANA AVE,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0623,006,6,44,07,1179024,1851870,2010,08/03/2010 07:13:51 AM,41.748823031,-87.619561356,"(41.748823031, -87.619561356)" -9285624,HW429954,08/01/2010 12:00:00 AM,048XX S JUSTINE ST,1752,OFFENSE INVOLVING CHILDREN,AGG CRIM SEX ABUSE FAM MEMBER,RESIDENCE,false,false,0933,009,20,61,20,1166865,1872523,2010,09/09/2013 08:30:14 PM,41.805765642,-87.66352693,"(41.805765642, -87.66352693)" -7638019,HS442404,07/31/2010 09:00:00 AM,021XX W LE MOYNE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1424,014,32,24,06,1161826,1909850,2010,08/04/2010 10:29:46 AM,41.908300897,-87.68096795,"(41.908300897, -87.68096795)" -7634283,HS438223,07/31/2010 12:30:00 AM,005XX W STRATFORD PL,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2331,019,44,6,26,1172069,1923549,2010,08/06/2010 01:16:47 PM,41.945671619,-87.64293536,"(41.945671619, -87.64293536)" -7632052,HS435926,07/29/2010 04:50:00 PM,017XX W HOWARD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,PARKING LOT/GARAGE(NON.RESID.),true,false,2422,024,49,1,18,1162855,1950303,2010,07/29/2010 06:13:18 PM,42.019284215,-87.676047975,"(42.019284215, -87.676047975)" -7628870,HS433344,07/28/2010 03:09:00 AM,045XX S DREXEL BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2123,002,4,39,08B,1182922,1874802,2010,07/28/2010 11:51:25 AM,41.811660915,-87.604565619,"(41.811660915, -87.604565619)" -7630739,HS433324,07/28/2010 02:50:00 AM,079XX S JUSTINE ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,false,false,0612,006,21,71,04B,1167425,1852037,2010,10/04/2010 06:59:14 PM,41.749537482,-87.662059566,"(41.749537482, -87.662059566)" -7628708,HS433094,07/27/2010 10:00:00 PM,036XX W 82ND ST,0560,ASSAULT,SIMPLE,APARTMENT,true,true,0834,008,18,70,08A,1153483,1850009,2010,07/28/2010 02:29:16 PM,41.744259435,-87.713202787,"(41.744259435, -87.713202787)" -7628739,HS433026,07/27/2010 09:51:00 PM,050XX W MAYPOLE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,1532,015,28,25,08A,1142832,1900955,2010,07/29/2010 11:43:51 AM,41.884267193,-87.75096479,"(41.884267193, -87.75096479)" -7629750,HS433878,07/27/2010 09:00:00 PM,012XX W WEBSTER AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1811,018,32,7,06,1167502,1914717,2010,08/01/2010 09:57:41 PM,41.921535883,-87.659976885,"(41.921535883, -87.659976885)" -7640117,HS444540,07/27/2010 07:46:00 PM,005XX N CLARK ST,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,false,1831,018,42,8,26,1175410,1903616,2010,08/27/2010 11:30:26 AM,41.890900151,-87.631254968,"(41.890900151, -87.631254968)" -7637847,HS439341,07/27/2010 02:00:00 PM,032XX W CULLOM AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1724,017,33,16,05,1154084,1928358,2010,08/31/2010 10:14:11 AM,41.959246325,-87.708913078,"(41.959246325, -87.708913078)" -7625231,HS429695,07/25/2010 11:00:00 PM,001XX E WACKER DR,0810,THEFT,OVER $500,HOTEL/MOTEL,false,false,0124,001,42,32,06,1177757,1902582,2010,07/26/2010 11:48:31 AM,41.888009783,-87.622667166,"(41.888009783, -87.622667166)" -7625450,HS429921,07/25/2010 01:00:00 PM,002XX E 121ST PL,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0532,005,9,53,06,1180006,1824407,2010,08/13/2010 09:55:28 AM,41.673438536,-87.6168004,"(41.673438536, -87.6168004)" -7624282,HS428494,07/25/2010 07:00:00 AM,005XX W MADISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0111,001,42,28,08B,1172495,1900252,2010,07/26/2010 07:36:17 AM,41.881734075,-87.642059728,"(41.881734075, -87.642059728)" -7622829,HS426267,07/23/2010 08:00:00 PM,028XX S KOSTNER AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,1031,010,22,30,26,1147487,1884543,2010,07/26/2010 07:47:10 AM,41.839142667,-87.734291403,"(41.839142667, -87.734291403)" -7622660,HS425998,07/23/2010 05:00:00 PM,053XX S NEVA AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0811,008,23,56,26,1129543,1868428,2010,07/30/2010 12:03:46 PM,41.795244805,-87.80050549,"(41.795244805, -87.80050549)" -7623018,HS425060,07/23/2010 05:30:00 AM,098XX S GENOA AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2223,022,21,73,05,1170450,1839659,2010,07/28/2010 07:32:28 AM,41.715505199,-87.651334132,"(41.715505199, -87.651334132)" -7622570,HS425572,07/22/2010 10:00:00 AM,011XX N LEAMINGTON AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,OTHER,false,false,1531,015,37,25,11,1141781,1907125,2010,08/13/2010 09:34:24 AM,41.901217917,-87.754671436,"(41.901217917, -87.754671436)" -7627713,HS431812,07/21/2010 10:30:00 AM,013XX S OAKLEY AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1224,012,25,28,06,1161208,1893900,2010,02/27/2011 10:48:34 AM,41.864545602,-87.683681748,"(41.864545602, -87.683681748)" -7617160,HS421323,07/20/2010 05:00:00 PM,0000X N PEORIA ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1212,012,27,28,07,1170370,1900404,2010,07/23/2010 09:00:15 AM,41.882197877,-87.649858173,"(41.882197877, -87.649858173)" -7614733,HS419593,07/19/2010 10:20:00 PM,0000X N LATROBE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1522,015,28,25,18,1141345,1899760,2010,07/19/2010 11:52:42 PM,41.881015524,-87.756454804,"(41.881015524, -87.756454804)" -7727207,HS535027,07/19/2010 12:00:00 AM,132XX S VERNON AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,RESIDENCE,false,false,0533,005,9,54,11,1181504,1817086,2010,10/10/2010 12:12:51 PM,41.65331429,-87.611542037,"(41.65331429, -87.611542037)" -7612803,HS417519,07/18/2010 04:15:00 PM,022XX W WARREN BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1332,012,2,28,14,1161456,1900272,2010,07/19/2010 12:26:42 PM,41.882025801,-87.682594004,"(41.882025801, -87.682594004)" -7610455,HS414734,07/16/2010 11:11:00 PM,023XX N MARMORA AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,2515,025,37,19,24,1136639,1914745,2010,07/17/2010 10:25:39 AM,41.92222173,-87.773376038,"(41.92222173, -87.773376038)" -7608583,HS413018,07/16/2010 02:20:00 AM,037XX W 59TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,true,false,0822,008,13,65,14,1152412,1865184,2010,07/16/2010 11:26:05 AM,41.785923204,-87.716728504,"(41.785923204, -87.716728504)" -7608148,HS412302,07/12/2010 09:00:00 PM,007XX N AUSTIN BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1511,015,29,25,26,1136273,1904508,2010,07/18/2010 10:54:24 AM,41.894136706,-87.774965704,"(41.894136706, -87.774965704)" -7604863,HS409619,07/12/2010 05:00:00 PM,076XX S OGLESBY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENTIAL YARD (FRONT/BACK),false,false,0414,004,7,43,07,1193160,1854507,2010,07/15/2010 11:25:06 PM,41.755725707,-87.567676655,"(41.755725707, -87.567676655)" -7602199,HS407057,07/12/2010 11:30:00 AM,047XX S ASHLAND AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0931,009,20,61,07,1166424,1873486,2010,07/13/2010 07:35:34 AM,41.808417643,-87.66511689,"(41.808417643, -87.66511689)" -7600598,HS405607,07/11/2010 03:29:00 PM,001XX E 107TH ST,1661,GAMBLING,GAME/DICE,ALLEY,true,false,0512,005,9,49,19,1179320,1834096,2010,07/11/2010 06:02:42 PM,41.700042182,-87.619017156,"(41.700042182, -87.619017156)" -7607014,HS400320,07/08/2010 10:35:00 AM,025XX S ARCHER AVE,5011,OTHER OFFENSE,LICENSE VIOLATION,OTHER,false,false,0923,009,11,60,26,1171212,1887498,2010,09/15/2010 01:44:27 PM,41.84676439,-87.647145161,"(41.84676439, -87.647145161)" -7594920,HS399515,07/08/2010 12:45:00 AM,056XX S PRINCETON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0711,007,3,68,14,1175291,1867432,2010,07/11/2010 04:31:15 PM,41.791611082,-87.632775887,"(41.791611082, -87.632775887)" -7592697,HS397211,07/06/2010 05:30:00 PM,002XX S DEARBORN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA GARAGE / OTHER PROPERTY,true,false,0123,001,42,32,18,1176007,1899265,2010,07/06/2010 06:50:25 PM,41.878947339,-87.629193623,"(41.878947339, -87.629193623)" -7592545,HS396766,07/06/2010 12:30:00 PM,117XX S HALSTED ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,ALLEY,true,false,0524,005,34,53,24,1173069,1826670,2010,07/09/2010 10:09:31 AM,41.679804066,-87.642123903,"(41.679804066, -87.642123903)" -7592075,HS396515,07/06/2010 11:20:00 AM,012XX S RUBLE ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0131,001,2,28,26,1172029,1894734,2010,07/06/2010 02:00:38 PM,41.866602586,-87.643933595,"(41.866602586, -87.643933595)" -7612040,HS415071,07/05/2010 09:00:00 AM,002XX W 108TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0513,005,34,49,14,1176341,1833356,2010,07/19/2010 07:01:10 AM,41.698078798,-87.629947124,"(41.698078798, -87.629947124)" -7591078,HS394282,07/04/2010 11:40:00 PM,032XX W PIERCE AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,APARTMENT,false,false,1422,014,26,23,05,1154490,1910076,2010,07/28/2010 10:20:33 PM,41.909071001,-87.707910759,"(41.909071001, -87.707910759)" -7589464,HS393863,07/04/2010 06:18:00 PM,072XX S SANGAMON ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0733,007,17,68,08A,1171272,1856660,2010,07/05/2010 01:21:26 PM,41.762140363,-87.647827604,"(41.762140363, -87.647827604)" -7589786,HS393074,07/04/2010 02:00:00 AM,039XX S WENTWORTH AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0925,009,3,37,08B,1175545,1878753,2010,07/07/2010 11:11:44 AM,41.822671294,-87.631505536,"(41.822671294, -87.631505536)" -7590103,HS390871,07/02/2010 04:45:00 PM,037XX W CHICAGO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1112,011,27,23,08B,1151126,1905117,2010,07/26/2010 10:42:30 AM,41.895529663,-87.720398791,"(41.895529663, -87.720398791)" -7584689,HS388244,07/01/2010 09:14:00 AM,021XX N KILDARE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2522,025,30,20,08B,1147408,1913910,2010,07/05/2010 11:22:22 AM,41.919730628,-87.733828542,"(41.919730628, -87.733828542)" -7581011,HS384955,06/29/2010 10:45:00 AM,027XX N CLYBOURN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1931,019,32,7,06,1162877,1918139,2010,06/30/2010 07:06:20 AM,41.931024465,-87.676874021,"(41.931024465, -87.676874021)" -7579364,HS383427,06/27/2010 10:30:00 PM,013XX S AVERS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1011,010,24,29,05,1150959,1893702,2010,07/05/2010 10:16:02 AM,41.864208931,-87.721311119,"(41.864208931, -87.721311119)" -7577382,HS381697,06/26/2010 10:00:00 PM,019XX N KARLOV AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,2534,025,30,20,14,1148696,1912704,2010,06/28/2010 01:42:16 PM,41.916396444,-87.729127409,"(41.916396444, -87.729127409)" -7580847,HS380514,06/26/2010 07:59:23 PM,075XX N RIDGE BLVD,3730,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING JUSTICE,STREET,false,false,2411,024,49,2,24,1160499,1950133,2010,07/01/2010 07:47:50 AM,42.01886705,-87.684722505,"(42.01886705, -87.684722505)" -7660687,HS465960,06/26/2010 05:15:00 PM,031XX W HOMER ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1421,014,35,22,08B,1154997,1912831,2010,09/11/2010 04:19:58 PM,41.916620796,-87.705974237,"(41.916620796, -87.705974237)" -7577124,HS380084,06/26/2010 02:11:23 PM,007XX N LOCKWOOD AVE,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,APARTMENT,false,true,1524,015,28,25,04B,1140937,1904225,2010,07/13/2010 12:01:01 PM,41.893275553,-87.757843019,"(41.893275553, -87.757843019)" -7620766,HS417291,06/26/2010 09:00:00 AM,033XX N KARLOV AVE,0890,THEFT,FROM BUILDING,RESIDENCE,true,false,1731,017,31,16,06,1148433,1921801,2010,07/25/2010 10:48:43 AM,41.941364511,-87.729858435,"(41.941364511, -87.729858435)" -7575754,HS379449,06/26/2010 05:12:00 AM,017XX N MOZART ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE-GARAGE,true,false,1421,014,1,24,15,1157186,1911663,2010,06/27/2010 01:03:18 PM,41.913371489,-87.697963672,"(41.913371489, -87.697963672)" -7575714,HS378813,06/25/2010 07:00:00 PM,049XX S INDIANA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0224,002,3,38,08B,1178389,1872513,2010,07/13/2010 12:42:22 PM,41.805483981,-87.62126186,"(41.805483981, -87.62126186)" -7574438,HS377945,06/25/2010 10:47:00 AM,068XX S LAFLIN ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,0725,007,17,67,24,1167469,1859538,2010,06/26/2010 11:09:26 AM,41.770120293,-87.661683725,"(41.770120293, -87.661683725)" -7574378,HS377662,06/25/2010 07:10:00 AM,050XX N SHERIDAN RD,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,APARTMENT,false,false,2024,020,46,3,26,1168671,1934150,2010,08/12/2010 04:23:23 PM,41.974835557,-87.655116705,"(41.974835557, -87.655116705)" -7572164,HS375995,06/23/2010 01:30:00 PM,043XX S COTTAGE GROVE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0222,002,4,38,14,1182286,1876479,2010,06/24/2010 01:17:14 PM,41.816277508,-87.606846409,"(41.816277508, -87.606846409)" -7568177,HS371046,06/21/2010 11:53:06 AM,074XX S WESTERN AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,OTHER,false,false,0835,008,18,66,04B,1161700,1855394,2010,06/28/2010 06:16:41 PM,41.758870241,-87.682945416,"(41.758870241, -87.682945416)" -7563971,HS368386,06/19/2010 05:37:00 PM,118XX S MICHIGAN AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,true,false,0532,005,9,53,04A,1178933,1826256,2010,06/22/2010 11:05:10 AM,41.678536888,-87.620671676,"(41.678536888, -87.620671676)" -7586029,HS389521,06/19/2010 09:00:00 AM,048XX S PRAIRIE AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0224,002,3,38,06,1178903,1872807,2010,07/04/2010 12:30:06 PM,41.806279041,-87.619367772,"(41.806279041, -87.619367772)" -7563837,HS368255,06/18/2010 07:30:00 PM,063XX N CICERO AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,1621,016,39,12,14,1143225,1941995,2010,06/20/2010 12:28:54 PM,41.996877476,-87.74849345,"(41.996877476, -87.74849345)" -7561094,HS365140,06/17/2010 07:23:00 PM,008XX N MOHAWK ST,1330,CRIMINAL TRESPASS,TO LAND,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,26,1172641,1906146,2010,06/18/2010 07:58:42 AM,41.89790434,-87.64134909,"(41.89790434, -87.64134909)" -7559652,HS363844,06/17/2010 01:15:00 AM,016XX E 67TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0332,003,5,43,04B,1188492,1860849,2010,07/03/2010 02:20:06 PM,41.773241432,-87.584581171,"(41.773241432, -87.584581171)" -7562815,HS364649,06/16/2010 03:45:00 PM,066XX S GREENWOOD AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE PORCH/HALLWAY,false,false,0321,003,5,42,14,1184316,1861395,2010,06/19/2010 05:51:17 AM,41.774838455,-87.599872116,"(41.774838455, -87.599872116)" -7559166,HS362923,06/16/2010 01:15:00 PM,051XX W FULLERTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2521,025,31,19,14,1141814,1915515,2010,06/29/2010 11:30:21 AM,41.924240388,-87.754342187,"(41.924240388, -87.754342187)" -7557055,HS360926,06/15/2010 01:00:00 PM,003XX E 61ST ST,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,SIDEWALK,true,false,0311,003,20,40,26,1179720,1864686,2010,06/16/2010 07:50:44 AM,41.783975612,-87.616619657,"(41.783975612, -87.616619657)" -7555587,HS359899,06/14/2010 08:04:00 PM,066XX S COTTAGE GROVE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,0321,003,20,42,26,1182670,1860827,2010,06/15/2010 08:50:05 AM,41.773318173,-87.605923651,"(41.773318173, -87.605923651)" -7629961,HS433857,06/14/2010 04:30:00 PM,017XX N MONITOR AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,APARTMENT,false,false,2531,025,29,25,11,1137195,1911151,2010,07/30/2010 11:09:57 AM,41.912349397,-87.77141962,"(41.912349397, -87.77141962)" -7555315,HS359370,06/14/2010 03:17:00 PM,073XX S MORGAN ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0733,007,17,68,06,1170869,1856352,2010,06/15/2010 12:00:21 PM,41.761303976,-87.649313625,"(41.761303976, -87.649313625)" -7556305,HS360434,06/14/2010 03:00:00 PM,072XX S YATES BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0334,003,7,43,26,1193501,1857472,2010,06/22/2010 11:07:43 AM,41.763853561,-87.566330113,"(41.763853561, -87.566330113)" -7556722,HS359104,06/14/2010 08:00:00 AM,006XX N ST CLAIR ST,0810,THEFT,OVER $500,STREET,false,false,1834,018,42,8,06,1177753,1905042,2010,06/16/2010 11:17:28 AM,41.894760235,-87.622607026,"(41.894760235, -87.622607026)" -7609373,HS356771,06/12/2010 07:45:00 PM,043XX W GLADYS AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),STREET,true,false,1131,011,28,26,18,1147400,1898039,2010,07/16/2010 01:28:17 PM,41.876179061,-87.734265115,"(41.876179061, -87.734265115)" -7555695,HS359701,06/10/2010 01:51:00 PM,023XX S TROY ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,GROCERY FOOD STORE,false,false,1033,010,24,30,06,1155681,1888479,2010,06/28/2010 08:40:48 AM,41.849782756,-87.704117212,"(41.849782756, -87.704117212)" -7548121,HS351889,06/10/2010 01:49:00 AM,016XX S HAMLIN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1014,010,24,29,18,1151358,1891694,2010,06/10/2010 02:57:00 AM,41.858690929,-87.71989906,"(41.858690929, -87.71989906)" -7546967,HS350244,06/09/2010 07:50:00 AM,041XX W CONGRESS PKWY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1132,011,24,26,08B,1148832,1897408,2010,06/11/2010 11:30:32 AM,41.874419977,-87.729023567,"(41.874419977, -87.729023567)" -7542317,HS346461,06/06/2010 11:56:00 PM,0000X W ONTARIO ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1832,018,42,8,16,1175595,1904429,2010,06/07/2010 12:27:22 AM,41.89312691,-87.630551108,"(41.89312691, -87.630551108)" -7541653,HS345456,06/06/2010 09:45:00 AM,062XX N LOUISE AVE,1570,SEX OFFENSE,PUBLIC INDECENCY,RESIDENTIAL YARD (FRONT/BACK),false,false,1621,016,41,12,17,1138251,1941319,2010,08/16/2010 02:30:33 PM,41.995114244,-87.766807457,"(41.995114244, -87.766807457)" -7972582,HS345251,06/06/2010 05:10:00 AM,016XX W 49TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0931,009,20,61,14,1165869,1872255,2010,03/16/2011 11:13:32 AM,41.805051461,-87.667187499,"(41.805051461, -87.667187499)" -7541285,HS344992,06/05/2010 10:00:00 PM,025XX S PULASKI RD,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,1013,010,22,30,26,1150069,1886967,2010,06/10/2010 10:17:15 AM,41.845744629,-87.724753544,"(41.845744629, -87.724753544)" -7541791,HS345412,06/05/2010 01:00:00 PM,006XX N LOREL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1524,015,37,25,14,1140600,1903811,2010,06/07/2010 09:02:04 AM,41.892145682,-87.759090891,"(41.892145682, -87.759090891)" -7540017,HS343399,06/04/2010 03:30:00 PM,074XX S MAPLEWOOD AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0835,008,18,66,05,1160704,1855249,2010,06/06/2010 01:30:25 PM,41.758492945,-87.686599716,"(41.758492945, -87.686599716)" -7542581,HS345578,06/04/2010 12:20:00 PM,036XX W 70TH ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0833,008,13,65,05,1153315,1857986,2010,06/10/2010 06:43:46 AM,41.766152959,-87.713607818,"(41.766152959, -87.713607818)" -7546376,HS341649,06/03/2010 10:45:00 PM,023XX N LINCOLN PARK WEST,0810,THEFT,OVER $500,SIDEWALK,false,false,1814,018,43,7,06,1173834,1915813,2010,06/23/2010 08:01:45 AM,41.924404562,-87.636678973,"(41.924404562, -87.636678973)" -7539396,HS342549,06/03/2010 10:34:00 PM,068XX S JEFFERY BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0332,003,5,43,08B,1190692,1859698,2010,06/08/2010 11:52:38 AM,41.770030155,-87.576553762,"(41.770030155, -87.576553762)" -7539578,HS341409,06/03/2010 05:00:00 PM,014XX N DAYTON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1822,018,32,8,07,1170372,1909761,2010,06/05/2010 02:33:20 PM,41.907874031,-87.649577011,"(41.907874031, -87.649577011)" -7542067,HS346045,06/03/2010 12:00:00 PM,037XX W 32ND ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1031,010,22,30,07,1152180,1883174,2010,06/07/2010 10:15:16 AM,41.835294849,-87.717106169,"(41.835294849, -87.717106169)" -7535788,HS338939,06/02/2010 12:00:00 AM,025XX W BALMORAL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2011,020,40,4,07,1158628,1935737,2010,07/08/2010 04:54:51 PM,41.979402601,-87.692004303,"(41.979402601, -87.692004303)" -7533273,HS336943,06/01/2010 11:00:00 AM,0000X W 69TH ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,false,false,0731,007,6,69,11,1177312,1859236,2010,06/01/2010 02:59:51 PM,41.769074977,-87.62561266,"(41.769074977, -87.62561266)" -7532330,HS336344,05/31/2010 10:15:00 PM,040XX W POTOMAC AVE,0460,BATTERY,SIMPLE,OTHER,true,false,2534,025,27,23,08B,1148953,1908310,2010,06/01/2010 09:03:15 AM,41.904333905,-87.728297068,"(41.904333905, -87.728297068)" -7531016,HS334708,05/30/2010 02:00:00 PM,013XX W FULLERTON AVE,0890,THEFT,FROM BUILDING,ATHLETIC CLUB,false,false,1933,019,32,7,06,1167103,1916106,2010,06/09/2010 10:19:46 PM,41.925355965,-87.661402916,"(41.925355965, -87.661402916)" -7531017,HS334419,05/30/2010 12:40:00 PM,008XX N MICHIGAN AVE,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,false,false,1833,018,42,8,06,1177376,1906134,2010,05/31/2010 08:34:35 AM,41.897765295,-87.623958464,"(41.897765295, -87.623958464)" -7530652,HS334282,05/30/2010 02:00:00 AM,041XX W LELAND AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1722,017,39,14,07,1147771,1931132,2010,06/23/2010 09:58:39 AM,41.966982274,-87.732050948,"(41.966982274, -87.732050948)" -7530103,HS333627,05/29/2010 10:00:00 PM,060XX S WABASH AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,0311,003,20,40,06,1177715,1864849,2010,06/07/2010 04:12:44 PM,41.784468527,-87.623965748,"(41.784468527, -87.623965748)" -7529895,HS333086,05/29/2010 05:05:00 PM,008XX N LARAMIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1531,015,37,25,08B,1141574,1905185,2010,06/06/2010 06:43:49 PM,41.895898159,-87.755479772,"(41.895898159, -87.755479772)" -7530485,HS332564,05/28/2010 11:00:00 PM,108XX S PARNELL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2233,022,34,49,07,1174608,1832695,2010,05/31/2010 09:03:56 AM,41.696303577,-87.636312042,"(41.696303577, -87.636312042)" -7529092,HS329110,05/27/2010 06:10:00 AM,002XX E 35TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,0211,002,3,35,14,1178249,1881793,2010,05/29/2010 10:45:26 AM,41.830952256,-87.621493362,"(41.830952256, -87.621493362)" -7526426,HS327526,05/26/2010 01:45:00 PM,044XX S EVANS AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0222,002,3,38,08A,1181853,1875803,2010,05/28/2010 09:43:12 AM,41.814432546,-87.608455646,"(41.814432546, -87.608455646)" -7523509,HS326891,05/26/2010 06:25:00 AM,008XX S STATE ST,0890,THEFT,FROM BUILDING,ATHLETIC CLUB,false,false,0132,001,2,32,06,1176526,1896553,2010,06/01/2010 03:42:56 PM,41.871493749,-87.627369876,"(41.871493749, -87.627369876)" -7523042,HS325928,05/25/2010 08:00:00 AM,089XX S HARPER AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0413,004,8,48,05,1187970,1845966,2010,06/01/2010 10:46:49 AM,41.732413545,-87.586967954,"(41.732413545, -87.586967954)" -7521051,HS324564,05/24/2010 07:55:00 PM,033XX N MONTICELLO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1732,017,35,21,08B,1151502,1922150,2010,06/09/2010 05:20:30 PM,41.942262352,-87.718569369,"(41.942262352, -87.718569369)" -7523548,HS325330,05/24/2010 06:00:00 PM,032XX N LINDER AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1633,016,38,15,06,1139169,1920992,2010,05/28/2010 10:04:35 AM,41.939318449,-87.76392749,"(41.939318449, -87.76392749)" -7519607,HS322690,05/23/2010 07:00:00 PM,024XX N KILBOURN AVE,2220,LIQUOR LAW VIOLATION,ILLEGAL POSSESSION BY MINOR,SIDEWALK,true,false,2524,025,31,20,22,1146027,1915660,2010,05/24/2010 07:38:09 AM,41.924559178,-87.738858024,"(41.924559178, -87.738858024)" -7517907,HS321105,05/22/2010 06:00:00 PM,088XX S GREENWOOD AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0412,004,8,47,06,1185127,1846746,2010,05/23/2010 05:31:55 AM,41.73462113,-87.597358535,"(41.73462113, -87.597358535)" -7517657,HS320668,05/21/2010 02:00:00 AM,061XX N SEELEY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,2413,024,40,2,14,1161512,1940577,2010,05/24/2010 07:24:34 AM,41.992623999,-87.681262643,"(41.992623999, -87.681262643)" -7515162,HS316640,05/20/2010 04:00:00 AM,023XX W LOGAN BLVD,0810,THEFT,OVER $500,ATHLETIC CLUB,false,false,1432,014,1,22,06,1160430,1917838,2010,05/21/2010 10:19:25 AM,41.93024956,-87.68587461,"(41.93024956, -87.68587461)" -7514442,HS317294,05/19/2010 10:16:00 PM,065XX S WOLCOTT AVE,4510,OTHER OFFENSE,PROBATION VIOLATION,RESIDENCE,true,false,0726,007,15,67,26,1164772,1861241,2010,05/21/2010 09:12:19 AM,41.774850924,-87.671521789,"(41.774850924, -87.671521789)" -7512776,HS315850,05/19/2010 03:20:00 PM,014XX E 70TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0332,003,5,43,08B,1186787,1858903,2010,05/22/2010 11:07:24 AM,41.767942002,-87.590892781,"(41.767942002, -87.590892781)" -7510988,HS314106,05/18/2010 04:04:00 PM,047XX N SHERIDAN RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2312,019,46,3,18,1168817,1931530,2010,05/18/2010 08:02:48 PM,41.967643028,-87.654656143,"(41.967643028, -87.654656143)" -7539698,HS342974,05/18/2010 03:30:00 PM,087XX S WALLACE ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,2223,022,21,71,06,1173792,1846913,2010,06/05/2010 06:08:09 AM,41.735337881,-87.638879837,"(41.735337881, -87.638879837)" -7510863,HS314255,05/18/2010 02:30:00 PM,019XX S INDIANA AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0133,001,2,33,06,1177914,1891016,2010,05/19/2010 06:49:21 AM,41.85626844,-87.622442383,"(41.85626844, -87.622442383)" -7510240,HS313440,05/18/2010 09:59:00 AM,026XX E 78TH ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,true,false,0421,004,7,43,05,1195485,1853726,2010,05/21/2010 07:13:36 AM,41.753525488,-87.559182013,"(41.753525488, -87.559182013)" -7510658,HS313234,05/17/2010 08:00:00 PM,022XX S LAWNDALE AVE,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PUBLIC, BUILDING",false,false,1013,010,22,30,05,1152095,1888880,2010,05/25/2010 09:08:40 AM,41.850954497,-87.717267878,"(41.850954497, -87.717267878)" -7509060,HS312724,05/17/2010 07:30:00 PM,043XX W NORTH AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,GROCERY FOOD STORE,true,false,2534,025,30,23,04A,1147394,1910245,2010,05/18/2010 10:04:09 AM,41.909673774,-87.733974084,"(41.909673774, -87.733974084)" -7508733,HS312100,05/17/2010 01:40:00 PM,009XX W FULLERTON AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,OTHER COMMERCIAL TRANSPORTATION,false,false,1933,019,43,7,11,1169331,1916173,2010,05/18/2010 06:40:53 AM,41.925491616,-87.653214279,"(41.925491616, -87.653214279)" -7540000,HS343187,05/17/2010 08:00:00 AM,012XX N SPRINGFIELD AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2535,025,27,23,26,1150111,1908120,2010,06/06/2010 10:18:22 AM,41.903790035,-87.724048345,"(41.903790035, -87.724048345)" -7508266,HS311779,05/17/2010 12:01:00 AM,046XX N ASHLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1922,019,47,3,14,1164782,1930832,2010,05/17/2010 11:29:55 AM,41.965814436,-87.669512282,"(41.965814436, -87.669512282)" -7508992,HS310786,05/16/2010 12:00:00 PM,033XX S BELL AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0913,009,12,59,05,1161944,1882290,2010,05/26/2010 01:18:25 PM,41.832671253,-87.681303502,"(41.832671253, -87.681303502)" -7535023,HS310452,05/16/2010 11:25:00 AM,039XX W MADISON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),PARKING LOT/GARAGE(NON.RESID.),true,false,1122,011,28,26,18,1150322,1899686,2010,06/03/2010 04:36:49 PM,41.880642145,-87.723493476,"(41.880642145, -87.723493476)" -7512267,HS315360,05/16/2010 02:00:00 AM,013XX W FLETCHER ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1932,019,32,6,06,1167036,1920997,2010,05/20/2010 07:20:48 AM,41.938778563,-87.661508279,"(41.938778563, -87.661508279)" -7506332,HS309723,05/15/2010 07:30:00 PM,011XX W 59TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0712,007,16,68,06,1169585,1865708,2010,05/17/2010 09:44:58 AM,41.787005914,-87.653748618,"(41.787005914, -87.653748618)" -7505299,HS308531,05/15/2010 12:30:00 AM,019XX W 47TH ST,0810,THEFT,OVER $500,BAR OR TAVERN,false,false,0914,009,20,61,06,1164178,1873546,2010,05/15/2010 10:30:18 AM,41.808629915,-87.673353025,"(41.808629915, -87.673353025)" -7505977,HS307837,05/14/2010 06:00:00 PM,008XX W 115TH ST,4255,KIDNAPPING,UNLAWFUL INTERFERE/VISITATION,DRUG STORE,false,false,0524,005,34,53,26,1172688,1828543,2010,05/19/2010 11:10:36 AM,41.684952259,-87.643463633,"(41.684952259, -87.643463633)" -7504657,HS307637,05/14/2010 04:45:00 PM,028XX W MONROE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),VACANT LOT/LAND,true,false,1124,011,2,27,18,1157359,1899517,2010,05/14/2010 05:55:59 PM,41.880038271,-87.697658717,"(41.880038271, -87.697658717)" -7504613,HS307446,05/14/2010 12:30:00 PM,011XX N WESTERN AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1312,012,1,24,08B,1160235,1907765,2010,05/18/2010 11:53:26 AM,41.902612548,-87.686870207,"(41.902612548, -87.686870207)" -7505778,HS308883,05/14/2010 02:00:00 AM,014XX W THOME AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2433,024,40,77,26,1165408,1941597,2010,05/29/2010 06:01:20 PM,41.995340606,-87.666902662,"(41.995340606, -87.666902662)" -7503276,HS306525,05/13/2010 11:38:00 PM,064XX S KEDZIE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0823,008,15,66,18,1156114,1861977,2010,05/14/2010 01:09:11 AM,41.77704907,-87.70324121,"(41.77704907, -87.70324121)" -7501539,HS304804,05/12/2010 10:36:00 PM,010XX N ASHLAND AVE,141A,WEAPONS VIOLATION,UNLAWFUL USE HANDGUN,STREET,false,false,1323,012,27,24,15,1165575,1907112,2010,05/13/2010 10:23:34 AM,41.900708571,-87.66727414,"(41.900708571, -87.66727414)" -7516976,HS318755,05/12/2010 10:30:00 PM,012XX W 57TH ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0713,007,16,67,04A,1168746,1866933,2010,06/06/2010 01:46:52 PM,41.790385615,-87.656789505,"(41.790385615, -87.656789505)" -7510823,HS314147,05/12/2010 07:30:00 PM,047XX W FULTON ST,0890,THEFT,FROM BUILDING,RESIDENTIAL YARD (FRONT/BACK),false,false,1113,011,28,25,06,1144507,1901326,2010,05/19/2010 11:54:35 AM,41.885253904,-87.744804573,"(41.885253904, -87.744804573)" -7501299,HS304567,05/12/2010 07:28:00 PM,092XX S THROOP ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2222,022,21,73,14,1169238,1843692,2010,05/13/2010 07:52:27 AM,41.726598614,-87.655656781,"(41.726598614, -87.655656781)" -7497510,HS300936,05/10/2010 08:00:00 AM,078XX S BURNHAM AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0421,004,7,43,05,1196117,1853717,2010,05/22/2010 07:41:02 AM,41.753485163,-87.55686631,"(41.753485163, -87.55686631)" -7496758,HS300159,05/10/2010 07:00:00 AM,059XX S HERMITAGE AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,true,true,0714,007,15,67,06,1165741,1865118,2010,05/12/2010 01:40:21 PM,41.785469391,-87.66785958,"(41.785469391, -87.66785958)" -7535571,HS339108,05/07/2010 01:00:00 PM,013XX S KARLOV AVE,0810,THEFT,OVER $500,VACANT LOT/LAND,false,false,1011,010,24,29,06,1149305,1893459,2010,06/03/2010 10:26:17 AM,41.863574306,-87.727389252,"(41.863574306, -87.727389252)" -7491406,HS294446,05/06/2010 04:15:00 PM,018XX W BELLE PLAINE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,1923,019,47,5,18,1163141,1927212,2010,05/06/2010 05:31:59 PM,41.955915719,-87.675648056,"(41.955915719, -87.675648056)" -7496487,HS293257,05/05/2010 05:40:00 PM,013XX W 76TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0612,006,17,71,06,1168610,1854408,2010,05/12/2010 05:25:59 AM,41.756018376,-87.657649003,"(41.756018376, -87.657649003)" -7483406,HS286482,05/02/2010 12:45:00 AM,009XX W ARMITAGE AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1813,018,43,7,06,1169344,1913441,2010,05/03/2010 08:56:04 AM,41.917994583,-87.653246125,"(41.917994583, -87.653246125)" -7482591,HS285188,05/01/2010 01:00:00 AM,006XX W DIVERSEY PKWY,0810,THEFT,OVER $500,STREET,false,false,2333,019,43,7,06,1171612,1918815,2010,05/03/2010 07:26:13 AM,41.932691428,-87.644754883,"(41.932691428, -87.644754883)" -7481765,HS284129,04/30/2010 04:00:00 PM,013XX S LAWNDALE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1011,010,24,29,18,1151970,1893189,2010,04/30/2010 04:40:00 PM,41.862781362,-87.717613248,"(41.862781362, -87.717613248)" -8215139,HS282326,04/29/2010 03:54:00 PM,010XX S RACINE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1231,012,2,28,08A,1168498,1895423,2010,08/16/2011 09:36:40 AM,41.868570338,-87.65687627,"(41.868570338, -87.65687627)" -7479792,HS281783,04/29/2010 12:01:00 AM,033XX W MADISON ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,1123,011,28,27,26,1154239,1899861,2010,05/12/2010 07:42:54 AM,41.881045085,-87.709105839,"(41.881045085, -87.709105839)" -7479752,HS281857,04/28/2010 11:30:00 PM,0000X W GRAND AVE,0330,ROBBERY,AGGRAVATED,CTA PLATFORM,false,false,1831,018,42,8,03,1176234,1903861,2010,05/04/2010 03:22:40 PM,41.891553903,-87.628221468,"(41.891553903, -87.628221468)" -7478426,HS280653,04/28/2010 03:50:00 PM,038XX W ARMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2525,025,26,22,14,1150614,1913056,2010,04/29/2010 08:36:21 AM,41.917325069,-87.72207148,"(41.917325069, -87.72207148)" -7476943,HS279262,04/27/2010 07:08:00 PM,004XX W 57TH PL,2025,NARCOTICS,POSS: HALLUCINOGENS,STREET,true,false,0711,007,20,68,18,1174248,1866768,2010,04/27/2010 08:47:14 PM,41.789812255,-87.63662008,"(41.789812255, -87.63662008)" -7528694,HS331299,04/25/2010 09:00:00 PM,035XX N NEVA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENTIAL YARD (FRONT/BACK),false,false,1632,016,36,17,14,1127821,1922754,2010,05/29/2010 09:52:19 AM,41.944352852,-87.805595496,"(41.944352852, -87.805595496)" -7472392,HS274237,04/24/2010 06:00:00 PM,002XX W 110TH ST,0560,ASSAULT,SIMPLE,RESIDENCE,true,false,0513,005,34,49,08A,1176505,1832031,2010,04/25/2010 06:50:01 AM,41.694439127,-87.629386294,"(41.694439127, -87.629386294)" -7479570,HS281733,04/23/2010 09:00:00 AM,010XX W LAKE ST,1122,DECEPTIVE PRACTICE,COUNTERFEIT CHECK,RESIDENCE,false,false,1212,012,27,28,10,1169560,1901587,2010,06/01/2010 01:35:41 PM,41.885461776,-87.652798027,"(41.885461776, -87.652798027)" -7469161,HS270647,04/22/2010 04:43:00 PM,0000X S CICERO AVE,2026,NARCOTICS,POSS: PCP,ALLEY,true,false,1113,011,28,25,18,1144431,1899557,2010,04/22/2010 06:32:45 PM,41.880400986,-87.745128187,"(41.880400986, -87.745128187)" -7467269,HS269044,04/21/2010 04:35:00 PM,031XX N CLARK ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,2332,019,44,6,06,1170330,1920955,2010,04/22/2010 07:16:31 AM,41.938591838,-87.649403327,"(41.938591838, -87.649403327)" -7469140,HS270602,04/21/2010 02:40:00 PM,029XX W ADDISON ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,ATM (AUTOMATIC TELLER MACHINE),false,false,1733,017,33,21,11,1156130,1923742,2010,05/14/2010 01:09:47 PM,41.94653857,-87.701516201,"(41.94653857, -87.701516201)" -7478404,HS279289,04/21/2010 01:30:00 PM,081XX S COTTAGE GROVE AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0631,006,6,44,08B,1182926,1851399,2010,04/30/2010 05:17:36 PM,41.747440842,-87.605277729,"(41.747440842, -87.605277729)" -7465621,HS267579,04/20/2010 05:30:00 PM,093XX S UNIVERSITY AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0413,004,8,47,08B,1185463,1843479,2010,04/25/2010 06:12:28 AM,41.725648232,-87.596230089,"(41.725648232, -87.596230089)" -7473992,HS275009,04/19/2010 04:00:00 PM,026XX E 79TH ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0422,004,7,46,06,1195258,1853060,2010,04/27/2010 06:59:10 AM,41.751703535,-87.560035804,"(41.751703535, -87.560035804)" -7581783,HS385836,04/19/2010 10:00:00 AM,003XX W 29TH ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2113,009,11,34,06,1174565,1885509,2010,07/11/2010 12:05:17 PM,41.84123224,-87.634899213,"(41.84123224, -87.634899213)" -7464549,HS266680,04/16/2010 01:00:00 PM,012XX W 47TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0933,009,3,61,07,1168729,1873572,2010,04/20/2010 01:38:04 PM,41.808604147,-87.656660204,"(41.808604147, -87.656660204)" -7456855,HS258018,04/14/2010 09:54:00 PM,028XX W POLK ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1135,011,2,27,18,1157283,1896197,2010,04/14/2010 11:06:04 PM,41.870929407,-87.698028014,"(41.870929407, -87.698028014)" -7455912,HS256820,04/14/2010 09:40:00 AM,039XX N LAWNDALE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,1732,017,39,16,18,1150988,1925736,2010,04/14/2010 12:01:28 PM,41.95211271,-87.720364302,"(41.95211271, -87.720364302)" -7455169,HS256509,04/14/2010 02:35:00 AM,050XX W DIVISION ST,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,GAS STATION,true,false,1531,015,37,25,18,1142407,1907478,2010,04/14/2010 03:44:56 AM,41.902174979,-87.752363271,"(41.902174979, -87.752363271)" -7455463,HS256635,04/13/2010 09:30:00 PM,043XX S SPAULDING AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0821,008,14,58,14,1155031,1875789,2010,04/14/2010 11:31:29 AM,41.814972864,-87.706842484,"(41.814972864, -87.706842484)" -7454911,HS256073,04/13/2010 06:00:00 PM,080XX S RACINE AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0612,006,21,71,08B,1169673,1851673,2010,04/17/2010 10:26:14 AM,41.748490194,-87.653832503,"(41.748490194, -87.653832503)" -7453190,HS254753,04/13/2010 12:39:00 AM,077XX S CRANDON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0414,004,7,43,18,1192832,1854293,2010,04/13/2010 01:50:14 AM,41.755146478,-87.568885643,"(41.755146478, -87.568885643)" -7454603,HS255580,04/12/2010 05:45:00 PM,017XX N NATCHEZ AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2513,025,36,25,14,1132540,1911176,2010,04/14/2010 10:30:59 AM,41.912500413,-87.788520559,"(41.912500413, -87.788520559)" -7446860,HS247899,04/08/2010 05:00:00 PM,013XX W 82ND ST,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,0613,006,21,71,18,1168909,1850431,2010,04/08/2010 06:21:57 PM,41.745098497,-87.656667858,"(41.745098497, -87.656667858)" -7444848,HS246512,04/07/2010 08:30:00 AM,055XX S INDIANA AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,true,false,0233,002,20,40,05,1178504,1868233,2010,04/21/2010 08:48:17 PM,41.793736652,-87.620970179,"(41.793736652, -87.620970179)" -7439156,HS241486,04/04/2010 05:30:00 PM,074XX S BLACKSTONE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0324,003,5,43,03,1187457,1855798,2010,04/17/2010 06:32:56 PM,41.759405708,-87.588535505,"(41.759405708, -87.588535505)" -7438865,HS241005,04/04/2010 11:50:00 AM,015XX N LUNA AVE,041A,BATTERY,AGGRAVATED: HANDGUN,VEHICLE NON-COMMERCIAL,false,false,2532,025,37,25,04B,1139019,1909490,2010,05/16/2010 08:35:13 AM,41.907758433,-87.764759084,"(41.907758433, -87.764759084)" -7446616,HS239965,04/03/2010 03:00:00 AM,014XX N SEDGWICK ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1821,018,27,8,04B,1173336,1910187,2010,04/28/2010 03:39:46 PM,41.908977646,-87.638676259,"(41.908977646, -87.638676259)" -7436398,HS238020,04/02/2010 11:37:00 AM,016XX W GREENLEAF AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,2423,024,49,1,26,1164208,1946982,2010,04/07/2010 01:43:15 PM,42.010142714,-87.671163649,"(42.010142714, -87.671163649)" -7436578,HS237923,04/02/2010 10:45:00 AM,014XX W SHAKESPEARE AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1811,018,32,7,06,1166199,1914371,2010,04/05/2010 06:33:42 PM,41.920614415,-87.664774332,"(41.920614415, -87.664774332)" -7438562,HS236397,04/01/2010 01:45:00 PM,016XX W JONQUIL TER,0460,BATTERY,SIMPLE,RESTAURANT,false,false,2422,024,49,1,08B,1163925,1951041,2010,04/09/2010 06:07:23 PM,42.021286684,-87.672089533,"(42.021286684, -87.672089533)" -7949817,HT182132,04/01/2010 12:01:00 AM,023XX W 95TH ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,BANK,false,false,2221,022,19,72,06,1162676,1841631,2010,03/12/2011 11:41:06 AM,41.721082146,-87.679751496,"(41.721082146, -87.679751496)" -7432387,HS234280,03/31/2010 09:54:00 AM,033XX W CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1121,011,27,23,18,1153638,1905087,2010,03/31/2010 10:47:22 AM,41.895397725,-87.71117355,"(41.895397725, -87.71117355)" -7431895,HS234022,03/31/2010 12:18:00 AM,051XX S WINCHESTER AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,TAXICAB,false,false,0915,009,16,61,11,1164177,1870787,2010,04/06/2010 09:39:54 AM,41.801058911,-87.673434388,"(41.801058911, -87.673434388)" -7431482,HS233578,03/30/2010 06:45:00 PM,015XX S CENTRAL PARK AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1014,010,24,29,26,1152594,1891871,2010,04/02/2010 10:35:27 AM,41.859152315,-87.715357423,"(41.859152315, -87.715357423)" -7429702,HS232320,03/29/2010 11:00:00 PM,048XX W BELLE PLAINE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1624,016,45,15,14,1143464,1926782,2010,03/30/2010 09:50:12 AM,41.955127361,-87.747996648,"(41.955127361, -87.747996648)" -7427949,HS230872,03/29/2010 05:02:00 AM,049XX W POTOMAC AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,2533,025,37,25,08B,1143431,1908162,2010,03/29/2010 08:38:55 AM,41.90403286,-87.748584797,"(41.90403286, -87.748584797)" -7427635,HS230488,03/28/2010 07:00:00 PM,053XX S WINCHESTER AVE,0460,BATTERY,SIMPLE,STREET,false,false,0915,009,16,61,08B,1164297,1869375,2010,03/30/2010 08:11:45 AM,41.797181681,-87.673034082,"(41.797181681, -87.673034082)" -7429416,HS231615,03/27/2010 09:00:00 PM,013XX W BIRCHWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2422,024,49,1,08B,1165831,1949896,2010,03/30/2010 03:54:57 PM,42.018104169,-87.665108386,"(42.018104169, -87.665108386)" -7425586,HS227818,03/27/2010 01:08:00 AM,015XX N DAYTON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1822,018,43,8,18,1170366,1910031,2010,03/27/2010 03:26:57 AM,41.908615057,-87.649591146,"(41.908615057, -87.649591146)" -7426290,HS228833,03/26/2010 07:00:00 PM,030XX W 25TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1033,010,12,30,14,1156618,1887209,2010,03/29/2010 10:22:43 AM,41.84627884,-87.700712609,"(41.84627884, -87.700712609)" -7427567,HS230295,03/26/2010 03:00:00 PM,022XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1034,010,25,31,06,1160669,1889318,2010,03/29/2010 11:51:02 AM,41.851983308,-87.685787272,"(41.851983308, -87.685787272)" -7424633,HS226282,03/26/2010 07:45:00 AM,001XX N WABASH AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,0122,001,42,32,26,1176838,1901009,2010,03/29/2010 11:26:01 AM,41.883714223,-87.626089608,"(41.883714223, -87.626089608)" -7425731,HS226499,03/26/2010 05:11:00 AM,014XX E HYDE PARK BLVD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2124,002,4,39,26,1186646,1871510,2010,04/06/2010 09:26:10 AM,41.802539965,-87.591010648,"(41.802539965, -87.591010648)" -7613968,HS327414,03/26/2010 02:00:00 AM,036XX S ASHLAND AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0922,009,11,59,06,1166310,1880305,2010,08/25/2010 08:42:20 AM,41.827132153,-87.665340586,"(41.827132153, -87.665340586)" -7423447,HS225547,03/25/2010 02:55:00 PM,030XX W 60TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0824,008,16,66,14,1156759,1864724,2010,03/26/2010 11:59:02 AM,41.784574246,-87.700802556,"(41.784574246, -87.700802556)" -7421970,HS224476,03/24/2010 11:45:00 PM,049XX N KEDZIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1713,017,33,14,08B,1154194,1932571,2010,03/25/2010 08:42:16 AM,41.970804856,-87.708395699,"(41.970804856, -87.708395699)" -7421272,HS223558,03/24/2010 01:00:00 AM,054XX W SCHUBERT AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2514,025,30,19,05,1139629,1917378,2010,03/25/2010 10:58:10 AM,41.929392863,-87.762325303,"(41.929392863, -87.762325303)" -7419947,HS222603,03/23/2010 09:19:00 PM,007XX N SPRINGFIELD AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,1112,011,27,23,18,1150210,1904877,2010,03/23/2010 10:10:05 PM,41.894888986,-87.723769332,"(41.894888986, -87.723769332)" -7418092,HS221037,03/22/2010 10:00:00 PM,024XX S WHIPPLE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1033,010,12,30,08B,1156379,1887472,2010,03/25/2010 09:17:00 PM,41.84700537,-87.701582629,"(41.84700537, -87.701582629)" -7417520,HS220257,03/22/2010 02:40:00 PM,004XX W 57TH ST,2017,NARCOTICS,MANU/DELIVER:CRACK,VACANT LOT/LAND,true,false,0711,007,3,68,18,1174358,1867176,2010,03/22/2010 03:25:44 PM,41.790929403,-87.636204614,"(41.790929403, -87.636204614)" -7417643,HS220213,03/22/2010 01:45:00 PM,010XX N LARAMIE AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, GROUNDS",false,false,1524,015,37,25,08B,1141464,1906394,2010,03/23/2010 09:31:24 AM,41.89921783,-87.755853896,"(41.89921783, -87.755853896)" -7417864,HS220760,03/19/2010 06:00:00 PM,033XX S MAY ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0924,009,11,60,14,1169163,1882399,2010,03/23/2010 09:44:53 AM,41.832816943,-87.654812723,"(41.832816943, -87.654812723)" -7414371,HS215066,03/18/2010 07:30:00 PM,048XX N BROADWAY,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,2033,020,48,3,05,1167386,1932844,2010,04/01/2010 02:56:07 PM,41.971279672,-87.659879788,"(41.971279672, -87.659879788)" -7411897,HS214108,03/17/2010 05:00:00 PM,016XX S DRAKE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1021,010,24,29,04B,1152929,1891746,2010,03/30/2010 11:06:04 AM,41.858802677,-87.714131046,"(41.858802677, -87.714131046)" -7413752,HS212563,03/17/2010 11:00:00 AM,021XX N MERRIMAC AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2512,025,29,19,05,1134429,1913821,2010,09/08/2010 09:33:15 PM,41.919725477,-87.78151822,"(41.919725477, -87.78151822)" -7419050,HS211322,03/16/2010 09:45:00 PM,004XX N SPRINGFIELD AVE,3730,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING JUSTICE,VEHICLE NON-COMMERCIAL,true,false,1122,011,27,23,24,1150352,1902604,2010,03/24/2010 01:05:07 PM,41.888648867,-87.723307152,"(41.888648867, -87.723307152)" -7407904,HS209979,03/15/2010 04:00:00 PM,028XX W 38TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0913,009,12,58,14,1158046,1879023,2010,03/16/2010 01:57:26 PM,41.823786512,-87.695694919,"(41.823786512, -87.695694919)" -7407391,HS208019,03/14/2010 11:50:00 AM,095XX S CALUMET AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0511,005,6,49,08B,1180304,1841682,2010,03/24/2010 02:20:08 PM,41.720836709,-87.615182509,"(41.720836709, -87.615182509)" -7404613,HS207058,03/13/2010 06:30:00 PM,057XX N EAST CIRCLE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1612,016,41,10,14,1129048,1938078,2010,03/15/2010 09:10:30 AM,41.986382717,-87.800735363,"(41.986382717, -87.800735363)" -7402091,HS203592,03/12/2010 07:00:00 AM,082XX S STATE ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0631,006,6,44,05,1177761,1850513,2010,03/14/2010 06:42:19 PM,41.745127919,-87.624230403,"(41.745127919, -87.624230403)" -7403434,HS203453,03/12/2010 01:25:00 AM,028XX N LINCOLN AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,OTHER COMMERCIAL TRANSPORTATION,true,false,1931,019,32,6,14,1167173,1919285,2010,03/15/2010 06:41:02 AM,41.934077803,-87.661054114,"(41.934077803, -87.661054114)" -7401116,HS202021,03/11/2010 08:30:00 AM,067XX N RAVENSWOOD AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,true,2432,024,49,1,08A,1163175,1944635,2010,03/12/2010 02:30:52 PM,42.003724353,-87.675030812,"(42.003724353, -87.675030812)" -7421014,HS201912,03/11/2010 06:35:00 AM,073XX S HALSTED ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0732,007,17,68,16,1172277,1856209,2010,03/25/2010 12:29:52 PM,41.760880727,-87.644157402,"(41.760880727, -87.644157402)" -7397956,HS200072,03/09/2010 10:00:00 PM,077XX S HONORE ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,false,0611,006,18,71,20,1165326,1853221,2010,03/25/2010 01:04:15 PM,41.752831227,-87.66971772,"(41.752831227, -87.66971772)" -7397971,HS198712,03/09/2010 09:00:00 AM,044XX S PRINCETON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,0935,009,3,37,07,1174991,1875402,2010,03/11/2010 09:12:08 AM,41.813488247,-87.633638023,"(41.813488247, -87.633638023)" -7393809,HS196598,03/08/2010 01:59:00 AM,056XX S JUSTINE ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0713,007,16,67,18,1167014,1867176,2010,03/08/2010 04:01:42 AM,41.791089662,-87.663133354,"(41.791089662, -87.663133354)" -7396590,HS195897,03/07/2010 12:30:00 PM,038XX N SAYRE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1632,016,38,17,08A,1129016,1924692,2010,03/10/2010 03:28:42 AM,41.949650674,-87.801158873,"(41.949650674, -87.801158873)" -7393906,HS196488,03/06/2010 07:30:00 PM,081XX S PEORIA ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0613,006,21,71,05,1171769,1850664,2010,03/09/2010 09:35:43 PM,41.745675686,-87.646181561,"(41.745675686, -87.646181561)" -7394482,HS196831,03/06/2010 06:00:00 PM,114XX S FOREST AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0531,005,9,49,26,1180325,1829248,2010,03/10/2010 11:09:04 AM,41.686715661,-87.615485216,"(41.686715661, -87.615485216)" -7391672,HS193803,03/06/2010 12:05:00 AM,042XX N BROADWAY,1365,CRIMINAL TRESPASS,TO RESIDENCE,APARTMENT,false,false,2322,019,46,3,26,1169149,1928554,2010,03/08/2010 08:01:31 AM,41.959469565,-87.653522235,"(41.959469565, -87.653522235)" -7391824,HS193655,03/05/2010 03:15:00 PM,049XX N NEENAH AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1613,016,41,10,05,1131854,1932301,2010,03/19/2010 02:40:16 PM,41.970481733,-87.790549377,"(41.970481733, -87.790549377)" -7432206,HS190568,03/04/2010 01:30:00 AM,112XX S INDIANA AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,false,true,0531,005,9,49,04A,1179536,1830363,2010,04/09/2010 06:45:41 AM,41.689793387,-87.61833972,"(41.689793387, -87.61833972)" -7384418,HS186534,03/01/2010 03:30:00 PM,010XX N MONITOR AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1511,015,29,25,06,1137202,1906596,2010,03/16/2010 06:04:39 PM,41.8998498,-87.771503505,"(41.8998498, -87.771503505)" -7384351,HS186398,03/01/2010 12:30:00 PM,022XX W CERMAK RD,0460,BATTERY,SIMPLE,STREET,true,false,1034,010,25,31,08B,1161638,1889319,2010,03/02/2010 09:03:44 AM,41.851965946,-87.68223075,"(41.851965946, -87.68223075)" -7384144,HS186174,02/28/2010 06:00:00 PM,016XX N OAKLEY AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1434,014,1,24,06,1160804,1911192,2010,03/01/2010 12:46:39 PM,41.912004714,-87.684684982,"(41.912004714, -87.684684982)" -7383227,HS184962,02/27/2010 07:00:00 PM,062XX N HERMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2433,024,40,77,14,1163598,1941414,2010,03/01/2010 06:34:15 AM,41.994876909,-87.673565914,"(41.994876909, -87.673565914)" -7382052,HS183318,02/27/2010 09:45:00 AM,017XX N SEDGWICK ST,0460,BATTERY,SIMPLE,STREET,false,false,1813,018,43,7,08B,1173280,1911989,2010,03/30/2010 03:22:16 PM,41.913923666,-87.638828374,"(41.913923666, -87.638828374)" -7377970,HS179806,02/24/2010 08:43:00 PM,028XX W LAWRENCE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,VEHICLE NON-COMMERCIAL,true,false,2031,020,40,4,18,1156713,1931800,2010,02/24/2010 10:33:51 PM,41.968638395,-87.699154072,"(41.968638395, -87.699154072)" -7465111,HS180764,02/24/2010 02:30:00 PM,064XX S HOYNE AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0726,007,15,67,06,1163507,1862018,2010,04/21/2010 10:58:37 AM,41.777009736,-87.676137342,"(41.777009736, -87.676137342)" -7375942,HS178045,02/23/2010 06:02:00 PM,013XX S CANAL ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0131,001,2,28,06,1173296,1893975,2010,02/24/2010 09:17:45 AM,41.864491821,-87.639304867,"(41.864491821, -87.639304867)" -7375690,HS177803,02/23/2010 03:30:00 PM,013XX S INDEPENDENCE BLVD,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1011,010,24,29,26,1151506,1893589,2010,02/23/2010 04:37:24 PM,41.863888128,-87.71930605,"(41.863888128, -87.71930605)" -7378264,HS178692,02/23/2010 08:00:00 AM,046XX N ASHLAND AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1922,019,47,3,05,1164782,1930832,2010,02/26/2010 10:02:58 PM,41.965814436,-87.669512282,"(41.965814436, -87.669512282)" -7376068,HS178238,02/20/2010 10:30:00 PM,004XX E 48TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0223,002,3,38,08B,1179904,1872995,2010,03/03/2010 11:38:49 AM,41.806772052,-87.615690735,"(41.806772052, -87.615690735)" -7371672,HS174273,02/20/2010 09:00:00 PM,101XX S AVENUE M,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0432,004,10,52,14,1201451,1838194,2010,02/21/2010 07:09:24 AM,41.710755177,-87.537845387,"(41.710755177, -87.537845387)" -7371390,HS173751,02/20/2010 05:27:00 PM,031XX W LEXINGTON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1134,011,24,27,08B,1155676,1896493,2010,02/24/2010 09:44:46 AM,41.871774148,-87.703919937,"(41.871774148, -87.703919937)" -7394552,HS172420,02/19/2010 06:00:00 PM,001XX N ASHLAND AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,1333,012,27,28,03,1165683,1901222,2010,03/22/2010 02:41:21 PM,41.884543674,-87.667045449,"(41.884543674, -87.667045449)" -7369616,HS171753,02/19/2010 10:17:00 AM,018XX E 71ST ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0333,003,5,43,26,1190032,1858201,2010,02/20/2010 06:10:56 AM,41.765938176,-87.579021126,"(41.765938176, -87.579021126)" -7368399,HS170710,02/18/2010 02:35:00 PM,022XX S SPRINGFIELD AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1013,010,22,30,18,1150781,1888655,2010,02/18/2010 05:13:32 PM,41.850362836,-87.722096452,"(41.850362836, -87.722096452)" -7366801,HS169482,02/17/2010 07:51:00 PM,084XX S PULASKI RD,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,0834,008,18,70,06,1151171,1848065,2010,02/18/2010 09:48:57 AM,41.738970167,-87.721724942,"(41.738970167, -87.721724942)" -7451206,HS168334,02/17/2010 01:46:00 AM,088XX S EAST END AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0412,004,8,48,05,1189143,1846394,2010,04/19/2010 06:52:56 AM,41.733560028,-87.582657134,"(41.733560028, -87.582657134)" -7391772,HS168307,02/17/2010 12:30:00 AM,071XX S YATES BLVD,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,APARTMENT,false,false,0334,003,7,43,03,1193491,1857974,2010,09/28/2010 06:47:37 PM,41.765231332,-87.566350359,"(41.765231332, -87.566350359)" -7366529,HS169109,02/16/2010 06:00:00 PM,110XX S GREEN BAY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0433,004,10,52,26,1200512,1832505,2010,02/21/2010 12:40:29 PM,41.695167814,-87.541475676,"(41.695167814, -87.541475676)" -7363469,HS165336,02/14/2010 09:15:00 PM,010XX N LATROBE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1524,015,37,25,14,1141202,1906667,2010,02/16/2010 08:07:45 AM,41.899971809,-87.75680949,"(41.899971809, -87.75680949)" -7362255,HS164555,02/14/2010 05:50:00 AM,040XX S WESTERN AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,RESTAURANT,false,false,0914,009,12,58,04A,1161006,1877522,2010,01/27/2012 09:38:53 PM,41.819606796,-87.684877229,"(41.819606796, -87.684877229)" -7361698,HS163558,02/13/2010 11:00:00 AM,003XX N CICERO AVE,5011,OTHER OFFENSE,LICENSE VIOLATION,OTHER,false,false,1113,011,28,25,26,1144364,1901512,2010,02/15/2010 08:57:58 AM,41.885767,-87.74532502,"(41.885767, -87.74532502)" -7372229,HS174973,02/12/2010 09:00:00 AM,081XX S SPAULDING AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,OTHER,false,false,0834,008,18,70,06,1155765,1850174,2010,03/30/2010 12:03:29 PM,41.744666789,-87.704836784,"(41.744666789, -87.704836784)" -7360321,HS161754,02/12/2010 08:50:00 AM,024XX N ASHLAND AVE,0810,THEFT,OVER $500,STREET,false,false,1931,019,32,7,06,1165287,1916645,2010,02/12/2010 09:48:41 AM,41.926873868,-87.668060373,"(41.926873868, -87.668060373)" -7359652,HS160830,02/11/2010 02:00:00 PM,0000X S LA SALLE ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0112,001,42,32,06,1175107,1899908,2010,02/16/2010 03:24:35 PM,41.880731984,-87.632478941,"(41.880731984, -87.632478941)" -7360035,HS161046,02/11/2010 02:00:00 PM,0000X E OHIO ST,0870,THEFT,POCKET-PICKING,OTHER,false,false,1834,018,42,8,06,1176733,1904171,2010,03/02/2010 01:34:54 PM,41.892393291,-87.626379514,"(41.892393291, -87.626379514)" -7376618,HS159970,02/10/2010 08:20:00 PM,057XX S CALUMET AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0234,002,20,40,16,1179429,1866772,2010,02/25/2010 02:10:56 PM,41.789706448,-87.617622898,"(41.789706448, -87.617622898)" -7357237,HS158739,02/10/2010 12:35:00 AM,071XX S ST LAWRENCE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0323,003,6,69,08B,1181438,1857530,2010,02/13/2010 03:48:01 AM,41.76429938,-87.610541394,"(41.76429938, -87.610541394)" -7353844,HS155898,02/08/2010 12:05:00 AM,059XX S FRANCISCO AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0824,008,16,66,14,1158031,1864788,2010,02/21/2010 11:04:01 AM,41.784724098,-87.69613711,"(41.784724098, -87.69613711)" -7358677,HS154493,02/06/2010 08:05:00 PM,066XX S MARQUETTE RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,0321,003,20,42,18,1180759,1860912,2010,02/11/2010 10:07:02 AM,41.773595562,-87.61292625,"(41.773595562, -87.61292625)" -7357835,HS159017,02/06/2010 12:00:00 PM,026XX S WABASH AVE,0820,THEFT,$500 AND UNDER,TAXICAB,false,false,2113,001,2,35,06,1177205,1886936,2010,02/11/2010 10:43:24 AM,41.845088714,-87.625168248,"(41.845088714, -87.625168248)" -7352165,HS151831,02/04/2010 11:45:00 PM,011XX W ERIE ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,APARTMENT,true,false,1323,012,27,24,18,1168510,1904469,2010,02/09/2010 06:07:36 AM,41.893392969,-87.656570333,"(41.893392969, -87.656570333)" -7350253,HS151720,02/04/2010 11:04:00 PM,012XX W MARQUETTE RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0724,007,17,67,18,1169195,1860392,2010,02/05/2010 12:27:38 AM,41.772426615,-87.65533225,"(41.772426615, -87.65533225)" -7390624,HS166161,02/04/2010 03:59:00 PM,110XX S MICHIGAN AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,ATM (AUTOMATIC TELLER MACHINE),false,false,0513,005,9,49,06,1178748,1831610,2010,04/08/2010 06:44:05 AM,41.693233246,-87.621186839,"(41.693233246, -87.621186839)" -7347094,HS148822,02/02/2010 11:40:00 PM,003XX E 119TH ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),true,false,0532,005,9,53,26,1180078,1826153,2010,02/05/2010 06:01:00 AM,41.678228176,-87.616483711,"(41.678228176, -87.616483711)" -7399677,HS148770,02/02/2010 09:43:00 PM,004XX W 77TH ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0621,006,17,69,18,1174394,1853903,2010,03/10/2010 10:45:59 PM,41.75450598,-87.636466967,"(41.75450598, -87.636466967)" -7357193,HS147475,02/02/2010 02:45:00 AM,073XX S SOUTH SHORE DR,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,0334,003,7,43,07,1195247,1857378,2010,02/12/2010 09:54:50 AM,41.763552718,-87.55993386,"(41.763552718, -87.55993386)" -7362463,HS145825,01/31/2010 09:57:41 PM,0000X N HOMAN BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1123,011,28,27,18,1153749,1900226,2010,02/14/2010 12:59:54 PM,41.882056448,-87.710895376,"(41.882056448, -87.710895376)" -7343109,HS145826,01/31/2010 09:30:00 PM,003XX E 137TH ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0533,005,9,54,26,1180665,1814313,2010,02/03/2010 01:39:59 PM,41.645723971,-87.614696448,"(41.645723971, -87.614696448)" -7343716,HS146152,01/31/2010 09:30:00 PM,052XX N OLCOTT AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1613,016,41,10,05,1125305,1934102,2010,05/13/2010 10:27:46 AM,41.975535202,-87.814590928,"(41.975535202, -87.814590928)" -7342341,HS144247,01/29/2010 11:30:00 PM,029XX N MILDRED AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,1932,019,44,6,05,1169728,1919551,2010,02/25/2010 01:22:10 PM,41.934752358,-87.651656834,"(41.934752358, -87.651656834)" -7341887,HS144219,01/29/2010 05:00:00 PM,017XX W THOME AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2433,024,40,77,07,1163787,1941719,2010,04/02/2010 12:00:35 PM,41.99570984,-87.672862031,"(41.99570984, -87.672862031)" -7340658,HS142405,01/29/2010 11:30:00 AM,020XX N CICERO AVE,0810,THEFT,OVER $500,STREET,false,false,2522,025,31,19,06,1144101,1913128,2010,01/30/2010 09:16:31 AM,41.917647535,-87.745998777,"(41.917647535, -87.745998777)" -7347748,HS149189,01/29/2010 09:00:00 AM,013XX N PULASKI RD,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,APARTMENT,false,true,2534,025,27,23,11,1149438,1908435,2010,02/06/2010 09:35:25 AM,41.904667517,-87.72651227,"(41.904667517, -87.72651227)" -7340213,HS142068,01/27/2010 09:00:00 PM,019XX N KARLOV AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,2534,025,30,20,14,1148695,1912759,2010,01/30/2010 09:29:34 AM,41.916547389,-87.72912966,"(41.916547389, -87.72912966)" -7337469,HS140164,01/27/2010 08:35:00 PM,031XX W CHICAGO AVE,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1313,012,27,23,26,1154990,1905114,2010,01/28/2010 10:01:05 AM,41.895444805,-87.706207234,"(41.895444805, -87.706207234)" -7352083,HS139704,01/27/2010 04:42:10 PM,004XX S LARAMIE AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,1522,015,29,25,04A,1141762,1897305,2010,02/10/2010 11:33:18 AM,41.874270991,-87.754984332,"(41.874270991, -87.754984332)" -7358920,HS139006,01/27/2010 09:24:36 AM,052XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,PARKING LOT/GARAGE(NON.RESID.),true,false,1522,015,29,25,18,1141148,1899474,2010,03/10/2010 01:57:33 PM,41.880234335,-87.757185235,"(41.880234335, -87.757185235)" -7347880,HS149447,01/26/2010 01:00:00 PM,103XX S ELIZABETH ST,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,"SCHOOL, PUBLIC, BUILDING",false,false,2232,022,21,73,14,1169808,1836140,2010,02/04/2010 07:13:58 AM,41.705862453,-87.653787153,"(41.705862453, -87.653787153)" -7351301,HS137842,01/26/2010 12:00:00 PM,072XX S VERNON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0323,003,6,69,26,1180461,1857072,2010,02/09/2010 03:58:25 PM,41.763065052,-87.614136347,"(41.763065052, -87.614136347)" -7333997,HS137511,01/26/2010 08:30:00 AM,022XX W WARREN BLVD,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1332,012,2,28,05,1161417,1900351,2010,02/18/2010 10:27:38 PM,41.882243396,-87.682735012,"(41.882243396, -87.682735012)" -7360901,HS162511,01/25/2010 09:00:00 AM,005XX N KINGSBURY ST,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,false,false,1831,018,42,8,10,1173074,1903709,2010,03/05/2010 04:35:34 PM,41.891207477,-87.639831086,"(41.891207477, -87.639831086)" -7333223,HS136736,01/24/2010 12:00:00 PM,019XX E 74TH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,0333,003,5,43,11,1190666,1856333,2010,02/17/2010 11:20:00 AM,41.760796951,-87.576757559,"(41.760796951, -87.576757559)" -7330923,HS135062,01/24/2010 11:45:00 AM,022XX W 79TH ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),true,false,0835,008,18,70,06,1162695,1852184,2010,01/25/2010 11:39:09 AM,41.750040829,-87.679388203,"(41.750040829, -87.679388203)" -7331778,HS135016,01/24/2010 11:09:00 AM,040XX W LAKE ST,0880,THEFT,PURSE-SNATCHING,STREET,false,true,1114,011,28,26,06,1149614,1901481,2010,10/31/2014 03:20:56 PM,41.885581599,-87.726046569,"(41.885581599, -87.726046569)" -7330875,HS134845,01/24/2010 07:30:00 AM,011XX E 54TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2131,002,4,41,05,1184965,1869874,2010,03/02/2010 10:00:11 AM,41.798090328,-87.597226898,"(41.798090328, -87.597226898)" -7331528,HS135100,01/23/2010 04:00:00 PM,002XX N OGDEN AVE,0810,THEFT,OVER $500,WAREHOUSE,false,false,1333,012,27,28,06,1166838,1901577,2010,01/25/2010 09:13:58 AM,41.885493135,-87.662793963,"(41.885493135, -87.662793963)" -7330119,HS132766,01/22/2010 08:00:00 PM,022XX S WESTERN AVE,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1034,010,25,31,08B,1160669,1889301,2010,02/18/2010 12:06:44 PM,41.851936659,-87.685787742,"(41.851936659, -87.685787742)" -7328897,HS132376,01/22/2010 03:06:00 PM,038XX W CERMAK RD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1013,010,22,30,26,1151217,1889069,2010,02/04/2010 03:24:59 PM,41.851490376,-87.720485398,"(41.851490376, -87.720485398)" -7329004,HS132588,01/22/2010 01:15:00 PM,064XX S KEATING AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0813,008,13,64,05,1145785,1861315,2010,01/24/2010 07:24:52 AM,41.775433869,-87.74112435,"(41.775433869, -87.74112435)" -7321425,HS126462,01/18/2010 06:50:00 PM,003XX W OAK ST,2027,NARCOTICS,POSS: CRACK,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,18,1173426,1907052,2010,01/18/2010 10:26:24 PM,41.900373043,-87.638438935,"(41.900373043, -87.638438935)" -7321140,HS126282,01/18/2010 03:30:00 PM,015XX E 72ND PL,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0324,003,5,43,08A,1187637,1857181,2010,01/22/2010 09:34:25 AM,41.763196506,-87.587831893,"(41.763196506, -87.587831893)" -7320468,HS125376,01/18/2010 12:10:00 AM,061XX S KIMBARK AVE,1477,WEAPONS VIOLATION,RECKLESS FIREARM DISCHARGE,STREET,true,false,0314,003,20,42,15,1185661,1864341,2010,01/18/2010 10:46:12 AM,41.782890948,-87.594848866,"(41.782890948, -87.594848866)" -7320557,HS124798,01/17/2010 03:37:23 PM,017XX W HOWARD ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,2422,024,49,1,06,1163413,1950307,2010,01/20/2010 09:55:54 AM,42.019283414,-87.673994494,"(42.019283414, -87.673994494)" -7327362,HS122443,01/15/2010 09:30:00 PM,027XX W SCHUBERT AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1411,014,35,22,06,1157868,1917874,2010,01/22/2010 09:03:59 AM,41.93040105,-87.695288367,"(41.93040105, -87.695288367)" -7318457,HS120439,01/14/2010 06:00:00 PM,014XX S KOLIN AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1011,010,24,29,08B,1147574,1892840,2010,01/19/2010 10:23:44 AM,41.861909044,-87.73375957,"(41.861909044, -87.73375957)" -7316030,HS120172,01/14/2010 01:30:00 PM,060XX S PAULINA ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0714,007,15,67,05,1166001,1864753,2010,01/17/2010 09:50:00 AM,41.784462259,-87.666916671,"(41.784462259, -87.666916671)" -7316103,HS119858,01/14/2010 12:50:00 PM,013XX N HOYNE AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,false,false,1424,014,32,24,03,1162124,1908670,2010,01/18/2010 08:51:51 AM,41.905056665,-87.679906268,"(41.905056665, -87.679906268)" -7316444,HS120474,01/12/2010 05:00:00 PM,082XX S KEDZIE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0835,008,18,70,06,1156527,1849529,2010,02/02/2010 01:29:03 PM,41.742881497,-87.702062025,"(41.742881497, -87.702062025)" -7311502,HS115043,01/11/2010 12:30:00 PM,025XX W ADDISON ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1912,019,47,5,08B,1158533,1923865,2010,02/06/2010 01:50:23 PM,41.946827143,-87.692680115,"(41.946827143, -87.692680115)" -7311214,HS115011,01/11/2010 08:00:00 AM,007XX E 51ST ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,true,false,0223,002,4,38,05,1181851,1871389,2010,06/22/2011 10:51:02 AM,41.802320223,-87.608599517,"(41.802320223, -87.608599517)" -7309015,HS113681,01/10/2010 02:10:00 PM,045XX N PULASKI RD,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,1723,017,39,14,26,1148942,1930126,2010,10/31/2014 03:20:56 PM,41.964199107,-87.727771443,"(41.964199107, -87.727771443)" -7311182,HS113208,01/10/2010 03:46:46 AM,004XX W DIVERSEY PKWY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,2333,019,43,7,08B,1172528,1918847,2010,01/14/2010 07:56:20 AM,41.932759,-87.641387757,"(41.932759, -87.641387757)" -7308572,HS113232,01/10/2010 03:00:00 AM,008XX W JACKSON BLVD,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1213,012,27,28,06,1171061,1898899,2010,01/11/2010 09:50:22 AM,41.878052925,-87.647365009,"(41.878052925, -87.647365009)" -7309469,HS113088,01/09/2010 10:30:00 PM,091XX S LA SALLE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE-GARAGE,false,true,0634,006,21,49,08B,1176854,1844075,2010,01/22/2010 09:32:33 AM,41.727481697,-87.627747174,"(41.727481697, -87.627747174)" -7308143,HS112539,01/09/2010 04:00:00 PM,051XX S PRAIRIE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0232,002,3,40,18,1178874,1870944,2010,01/09/2010 05:04:57 PM,41.801167465,-87.619530878,"(41.801167465, -87.619530878)" -7307188,HS111171,01/08/2010 04:40:00 PM,002XX S CANAL ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0111,001,2,28,26,1173137,1899230,2010,10/31/2014 03:20:56 PM,41.878915426,-87.63973267,"(41.878915426, -87.63973267)" -7305722,HS109286,01/06/2010 10:00:00 PM,058XX S WABASH AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0233,002,20,40,05,1177751,1866366,2010,01/09/2010 07:18:38 AM,41.788630511,-87.623787859,"(41.788630511, -87.623787859)" -7302491,HS105940,01/05/2010 12:45:00 PM,007XX N TRUMBULL AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1121,011,27,23,26,1153205,1904739,2010,01/16/2010 02:43:54 PM,41.894451384,-87.712773107,"(41.894451384, -87.712773107)" -7301051,HS104252,01/04/2010 11:30:00 AM,066XX N CLARK ST,0460,BATTERY,SIMPLE,OTHER,false,false,2432,024,49,1,08B,1163848,1944483,2010,01/05/2010 07:01:20 AM,42.003293036,-87.672559179,"(42.003293036, -87.672559179)" -7298812,HS102601,01/02/2010 10:50:00 PM,047XX S COTTAGE GROVE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0223,002,4,38,18,1182346,1873893,2010,01/03/2010 01:03:22 AM,41.809179933,-87.606706526,"(41.809179933, -87.606706526)" -7298518,HS102219,01/02/2010 05:25:00 PM,012XX N LARRABEE ST,1330,CRIMINAL TRESPASS,TO LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1822,018,27,8,26,1172064,1908588,2010,01/04/2010 09:59:02 AM,41.904618077,-87.643396202,"(41.904618077, -87.643396202)" -7297748,HS101239,01/01/2010 08:10:00 PM,066XX S HALSTED ST,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,GAS STATION,false,false,0723,007,6,68,10,1172162,1860466,2010,01/03/2010 11:42:06 AM,41.772564979,-87.644453924,"(41.772564979, -87.644453924)" -7297647,HS101187,01/01/2010 06:00:00 PM,035XX W 78TH PL,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0835,008,18,70,26,1154205,1852361,2010,01/05/2010 07:08:37 AM,41.750699407,-87.710494888,"(41.750699407, -87.710494888)" -7293190,HR710205,12/29/2009 02:00:00 PM,020XX W HOWARD ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2424,024,49,1,06,1161082,1950315,2009,12/30/2009 07:22:06 AM,42.019354319,-87.682572059,"(42.019354319, -87.682572059)" -7290788,HR706967,12/26/2009 10:00:00 PM,019XX W THOMAS ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1322,012,1,24,03,1163024,1907378,2009,01/08/2010 03:35:45 PM,41.901492461,-87.676636623,"(41.901492461, -87.676636623)" -7289677,HR706823,12/26/2009 07:41:00 PM,001XX E 51ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0232,002,3,40,18,1178310,1871209,2009,12/26/2009 08:46:11 PM,41.801907483,-87.621591201,"(41.801907483, -87.621591201)" -7297129,HR706696,12/26/2009 05:00:00 PM,043XX W CORTEZ ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1111,011,37,23,08B,1147080,1906678,2009,01/06/2010 09:38:54 AM,41.89989157,-87.735218964,"(41.89989157, -87.735218964)" -7291011,HR708309,12/24/2009 07:30:00 PM,012XX N LARRABEE ST,0498,BATTERY,AGGRAVATED DOMESTIC BATTERY: HANDS/FIST/FEET SERIOUS INJURY,CHA HALLWAY/STAIRWELL/ELEVATOR,false,true,1822,018,27,8,04B,1172064,1908588,2009,12/30/2009 01:19:12 PM,41.904618077,-87.643396202,"(41.904618077, -87.643396202)" -7304298,HS107712,12/24/2009 09:00:00 AM,019XX W VAN BUREN ST,0820,THEFT,$500 AND UNDER,"SCHOOL, PRIVATE, BUILDING",false,false,1211,012,2,28,06,1163527,1898211,2009,01/07/2010 10:04:22 AM,41.876326899,-87.675047366,"(41.876326899, -87.675047366)" -7287904,HR704272,12/23/2009 06:00:00 PM,025XX W LEXINGTON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,1135,011,2,28,07,1159349,1896653,2009,02/25/2010 01:13:00 PM,41.872138505,-87.690430439,"(41.872138505, -87.690430439)" -7279564,HR693646,12/17/2009 12:47:09 PM,065XX S RICHMOND ST,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,"SCHOOL, PUBLIC, BUILDING",false,false,0831,008,15,66,26,1157805,1860868,2009,01/13/2010 02:46:30 PM,41.773971644,-87.697072069,"(41.773971644, -87.697072069)" -7278379,HR693267,12/16/2009 09:00:00 PM,007XX E 76TH ST,0810,THEFT,OVER $500,STREET,false,false,0624,006,6,69,06,1182804,1854751,2009,12/18/2009 07:14:08 AM,41.756641915,-87.60562088,"(41.756641915, -87.60562088)" -7276805,HR691909,12/16/2009 09:30:00 AM,063XX S TALMAN AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,0825,008,15,66,06,1159841,1862405,2009,12/17/2009 12:18:19 PM,41.778147814,-87.689566265,"(41.778147814, -87.689566265)" -7276345,HR691563,12/16/2009 01:00:00 AM,041XX S WALLACE ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0935,009,11,61,18,1173025,1877358,2009,12/16/2009 07:52:05 AM,41.818899398,-87.640791567,"(41.818899398, -87.640791567)" -7276714,HR691684,12/16/2009 12:00:00 AM,046XX S LAVERGNE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0814,008,23,56,14,1143770,1873237,2009,12/16/2009 12:07:09 PM,41.808187642,-87.74821378,"(41.808187642, -87.74821378)" -7276086,HR691334,12/15/2009 07:10:00 PM,035XX W 65TH ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0823,008,15,66,08B,1153960,1861325,2009,12/19/2009 12:59:14 PM,41.775302919,-87.7111551,"(41.775302919, -87.7111551)" -7275158,HR690323,12/14/2009 08:00:00 PM,008XX W GARFIELD BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0934,009,20,61,07,1171801,1868423,2009,12/15/2009 11:45:32 AM,41.794407822,-87.645543932,"(41.794407822, -87.645543932)" -7274203,HR689545,12/14/2009 11:30:00 AM,013XX N MAYFIELD AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,2531,025,29,25,03,1136744,1908114,2009,12/17/2009 04:29:54 PM,41.904023598,-87.773149364,"(41.904023598, -87.773149364)" -7273615,HR688761,12/14/2009 10:15:00 AM,096XX S MICHIGAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,0511,005,6,49,18,1178815,1840807,2009,12/14/2009 12:34:38 PM,41.718469551,-87.620662877,"(41.718469551, -87.620662877)" -7272925,HR688266,12/14/2009 12:05:00 AM,010XX N WASHTENAW AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1311,012,1,24,18,1158239,1907110,2009,12/14/2009 12:56:38 AM,41.900856214,-87.694219793,"(41.900856214, -87.694219793)" -7275122,HR688365,12/13/2009 10:30:00 PM,001XX N LEAVITT ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,1332,012,2,28,08B,1161677,1901147,2009,12/30/2009 12:51:48 PM,41.884422276,-87.681758099,"(41.884422276, -87.681758099)" -7272880,HR688147,12/13/2009 09:35:00 PM,046XX N BROADWAY,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE PORCH/HALLWAY,false,false,2312,019,46,3,04A,1167920,1931080,2009,12/28/2009 02:10:44 PM,41.966427663,-87.657967351,"(41.966427663, -87.657967351)" -7276737,HR686159,12/12/2009 01:26:00 PM,064XX W IRVING PARK RD,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1632,016,38,17,06,1132450,1925932,2009,12/22/2009 10:49:47 AM,41.952994163,-87.788506711,"(41.952994163, -87.788506711)" -7270852,HR685236,12/11/2009 10:00:00 PM,012XX W 109TH PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2234,022,34,75,05,1169804,1832202,2009,01/14/2010 07:21:59 AM,41.695056044,-87.653915563,"(41.695056044, -87.653915563)" -7270488,HR684673,12/11/2009 03:30:00 PM,061XX S KARLOV AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0813,008,13,65,26,1150133,1863459,2009,12/14/2009 11:40:00 AM,41.781234078,-87.725129264,"(41.781234078, -87.725129264)" -7269798,HR683891,12/11/2009 07:10:00 AM,091XX S JEFFERY AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",PARKING LOT/GARAGE(NON.RESID.),false,false,0413,004,8,48,07,1191148,1844668,2009,01/22/2010 11:55:40 PM,41.728775495,-87.575367619,"(41.728775495, -87.575367619)" -7269177,HR683412,12/10/2009 09:00:00 AM,008XX W SUPERIOR ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1323,012,27,24,14,1170326,1905298,2009,12/11/2009 09:11:35 AM,41.895628298,-87.649876604,"(41.895628298, -87.649876604)" -7279960,HR695225,12/09/2009 09:00:00 AM,021XX N LINCOLN PARK WEST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1814,018,43,7,06,1173868,1914703,2009,12/21/2009 02:47:51 PM,41.921357917,-87.636587183,"(41.921357917, -87.636587183)" -7347642,HR679717,12/08/2009 01:15:00 PM,010XX N KEDVALE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1111,011,37,23,18,1148563,1906746,2009,02/06/2010 10:10:35 AM,41.900049668,-87.729770076,"(41.900049668, -87.729770076)" -7266045,HR680349,12/08/2009 12:00:00 PM,032XX W ROOSEVELT RD,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1134,011,24,29,06,1154754,1894563,2009,12/28/2009 01:34:38 PM,41.866496523,-87.707356659,"(41.866496523, -87.707356659)" -7258829,HR672843,12/03/2009 11:30:00 AM,052XX N BERNARD ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,1712,017,39,13,26,1152479,1934770,2009,12/04/2009 10:51:53 AM,41.976873201,-87.71464354,"(41.976873201, -87.71464354)" -7253044,HR667594,11/30/2009 03:40:00 PM,031XX N OSCEOLA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,true,2511,025,36,17,14,1125904,1920301,2009,12/02/2009 10:48:38 AM,41.937653689,-87.812696477,"(41.937653689, -87.812696477)" -7282751,HR697208,11/30/2009 02:00:00 PM,069XX S LAFAYETTE AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,0731,007,6,69,06,1176984,1859255,2009,12/24/2009 06:08:03 PM,41.769134515,-87.626814372,"(41.769134515, -87.626814372)" -7253306,HR667494,11/30/2009 02:00:00 PM,095XX S VINCENNES AVE,0460,BATTERY,SIMPLE,STREET,false,false,2213,022,21,73,08B,1170553,1841685,2009,12/02/2009 11:41:01 AM,41.721062604,-87.65089808,"(41.721062604, -87.65089808)" -7250105,HR665438,11/29/2009 01:39:00 AM,063XX S AUSTIN AVE,2022,NARCOTICS,POSS: COCAINE,PARKING LOT/GARAGE(NON.RESID.),true,false,0812,008,13,64,18,1137456,1862112,2009,11/29/2009 03:10:42 AM,41.777774319,-87.771639045,"(41.777774319, -87.771639045)" -7248468,HR662974,11/27/2009 11:00:00 AM,033XX S WESTERN BLVD,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0913,009,12,59,04B,1160921,1882724,2009,12/22/2009 09:24:39 AM,41.833883444,-87.685045045,"(41.833883444, -87.685045045)" -7248383,HR661591,11/26/2009 12:20:00 AM,053XX W FERDINAND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1523,015,37,25,08B,1140880,1902676,2009,11/30/2009 11:45:48 AM,41.889025957,-87.758090501,"(41.889025957, -87.758090501)" -7246805,HR660868,11/25/2009 04:20:00 PM,007XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,1833,018,42,8,06,1177332,1905641,2009,10/31/2014 03:20:56 PM,41.896413478,-87.624135037,"(41.896413478, -87.624135037)" -7245073,HR659418,11/24/2009 07:25:00 PM,048XX W MONROE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1533,015,28,25,18,1143984,1899179,2009,11/24/2009 07:57:14 PM,41.879372103,-87.746779031,"(41.879372103, -87.746779031)" -7244983,HR659140,11/24/2009 04:50:00 PM,007XX E 65TH ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0321,003,20,42,03,1182285,1862036,2009,09/09/2011 06:12:43 AM,41.776644711,-87.60729754,"(41.776644711, -87.60729754)" -7246093,HR660208,11/24/2009 04:00:00 AM,016XX N DRAKE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1422,014,26,23,07,1152604,1910820,2009,01/21/2010 10:59:38 AM,41.911150131,-87.714819388,"(41.911150131, -87.714819388)" -7244176,HR656967,11/23/2009 11:50:00 AM,116XX S MORGAN ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,0524,005,34,53,04A,1171706,1827675,2009,02/08/2010 12:03:09 PM,41.682591849,-87.647083787,"(41.682591849, -87.647083787)" -7242812,HR657319,11/23/2009 08:00:00 AM,001XX N MENARD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1512,015,29,25,07,1137655,1900323,2009,06/30/2010 11:40:57 AM,41.882627735,-87.769990877,"(41.882627735, -87.769990877)" -7236938,HR651848,11/19/2009 11:35:00 PM,015XX W 95TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2221,022,21,73,18,1167545,1841760,2009,11/20/2009 01:08:55 AM,41.72133332,-87.661913626,"(41.72133332, -87.661913626)" -7235911,HR650603,11/19/2009 11:20:00 AM,001XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA GARAGE / OTHER PROPERTY,true,false,0113,001,42,32,11,1175354,1901695,2009,11/20/2009 08:17:25 AM,41.885630077,-87.631518326,"(41.885630077, -87.631518326)" -7246326,HR660344,11/18/2009 06:30:00 AM,020XX W JARVIS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2424,024,49,1,08B,1161586,1948817,2009,11/30/2009 02:49:55 PM,42.015233244,-87.680759426,"(42.015233244, -87.680759426)" -7233030,HR648350,11/17/2009 11:00:00 PM,070XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,0322,003,6,69,26,1177555,1857928,2009,11/18/2009 05:47:10 AM,41.765480191,-87.624761441,"(41.765480191, -87.624761441)" -7234541,HR647610,11/17/2009 05:30:00 PM,065XX W DIVERSEY AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,2511,025,36,19,08A,1132340,1917935,2009,11/20/2009 11:05:19 AM,41.931051417,-87.789097731,"(41.931051417, -87.789097731)" -7232691,HR647899,11/17/2009 05:30:00 PM,013XX N PAULINA ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1433,014,1,24,06,1164854,1909126,2009,11/18/2009 09:35:28 AM,41.906250459,-87.669865196,"(41.906250459, -87.669865196)" -7234444,HR649318,11/16/2009 10:00:00 PM,015XX N FAIRFIELD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1423,014,26,24,06,1157759,1910309,2009,11/19/2009 08:33:45 AM,41.909644337,-87.695895555,"(41.909644337, -87.695895555)" -7252597,HR667486,11/15/2009 06:30:00 PM,061XX N BROADWAY,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,2433,024,48,77,03,1167222,1941117,2009,12/08/2009 02:10:04 PM,41.993984543,-87.660243774,"(41.993984543, -87.660243774)" -7227574,HR642987,11/14/2009 01:48:00 PM,078XX S STATE ST,0331,ROBBERY,ATTEMPT: AGGRAVATED,SIDEWALK,true,false,0623,006,6,69,03,1177695,1852672,2009,11/15/2009 11:32:22 AM,41.751053963,-87.624407057,"(41.751053963, -87.624407057)" -7228436,HR642327,11/14/2009 03:17:54 AM,063XX N GREENVIEW AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,2433,024,40,77,08B,1165109,1942513,2009,11/17/2009 04:46:33 PM,41.997860512,-87.667976348,"(41.997860512, -87.667976348)" -7234329,HR642030,11/13/2009 10:20:00 PM,058XX W AUGUSTA BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1511,015,29,25,18,1137475,1906118,2009,12/02/2009 09:44:19 AM,41.898533198,-87.770512275,"(41.898533198, -87.770512275)" -7235945,HR641994,11/13/2009 10:00:00 PM,010XX N KEDVALE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,false,false,1111,011,37,23,14,1148477,1906945,2009,11/20/2009 09:34:04 AM,41.900597404,-87.730080819,"(41.900597404, -87.730080819)" -7224548,HR639798,11/12/2009 03:45:00 PM,003XX W 112TH ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,RESIDENTIAL YARD (FRONT/BACK),true,true,0522,005,34,49,04A,1175920,1830692,2009,11/24/2009 01:17:09 AM,41.690777811,-87.631568073,"(41.690777811, -87.631568073)" -7222959,HR638785,11/12/2009 01:55:00 AM,027XX W DIVISION ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1423,014,26,24,18,1158002,1907908,2009,11/12/2009 03:15:57 AM,41.903050835,-87.695068504,"(41.903050835, -87.695068504)" -7222224,HR637680,11/11/2009 11:10:00 AM,082XX S MARYLAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0631,006,8,44,18,1183372,1850743,2009,11/11/2009 01:01:26 PM,41.74563034,-87.603663856,"(41.74563034, -87.603663856)" -7219131,HR634785,11/09/2009 04:00:00 PM,012XX N ASHLAND AVE,0870,THEFT,POCKET-PICKING,CTA BUS,false,false,1424,014,1,24,06,1165466,1908095,2009,11/10/2009 08:56:38 AM,41.903408313,-87.667646484,"(41.903408313, -87.667646484)" -7225274,HR633615,11/09/2009 01:50:00 AM,058XX N MAGNOLIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2013,020,48,77,08B,1166932,1939230,2009,11/17/2009 07:33:57 AM,41.988812821,-87.661364976,"(41.988812821, -87.661364976)" -19164,HR633105,11/08/2009 09:30:00 PM,007XX E 43RD ST,0110,HOMICIDE,FIRST DEGREE MURDER,AUTO,true,false,0222,002,4,38,01A,1181752,1876617,2009,10/31/2014 03:20:56 PM,41.816668562,-87.608800946,"(41.816668562, -87.608800946)" -7219186,HR633349,11/08/2009 06:30:00 PM,034XX W MONROE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1123,011,28,27,14,1153664,1899365,2009,11/27/2009 10:04:57 PM,41.879695466,-87.711230415,"(41.879695466, -87.711230415)" -7214857,HR629626,11/06/2009 02:00:00 PM,068XX S EMERALD AVE,2027,NARCOTICS,POSS: CRACK,ABANDONED BUILDING,true,false,0723,007,6,68,18,1172557,1859405,2009,11/06/2009 03:04:04 PM,41.769644778,-87.643037185,"(41.769644778, -87.643037185)" -7220507,HR635975,11/05/2009 04:00:00 PM,014XX N CLARK ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1821,018,42,8,14,1175236,1909710,2009,11/11/2009 06:38:41 AM,41.9076263,-87.631710946,"(41.9076263, -87.631710946)" -7213198,HR627951,11/05/2009 03:20:00 PM,0000X W CTA 69TH ST LN,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CTA PLATFORM,true,false,0731,007,6,69,26,1177341,1859091,2009,10/31/2014 03:20:56 PM,41.768676426,-87.625510735,"(41.768676426, -87.625510735)" -7218871,HR627019,11/05/2009 01:30:00 AM,113XX S LANGLEY AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0531,005,9,50,26,1182975,1829890,2009,11/14/2009 11:37:56 AM,41.688416391,-87.605764228,"(41.688416391, -87.605764228)" -7212332,HR627274,11/05/2009 12:00:00 AM,024XX N MONITOR AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,2515,025,30,19,14,1136931,1915933,2009,11/06/2009 10:15:30 AM,41.925476499,-87.772274566,"(41.925476499, -87.772274566)" -7324274,HR626577,11/04/2009 06:00:00 PM,014XX N CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2533,025,37,25,16,1144078,1908944,2009,01/25/2010 10:28:37 AM,41.906166627,-87.746188513,"(41.906166627, -87.746188513)" -7211642,HR626177,11/03/2009 10:00:00 PM,006XX N LONG AVE,0620,BURGLARY,UNLAWFUL ENTRY,ABANDONED BUILDING,false,false,1524,015,37,25,05,1140165,1903818,2009,11/13/2009 04:22:27 PM,41.892172869,-87.760688311,"(41.892172869, -87.760688311)" -7209092,HR623719,11/03/2009 10:48:00 AM,077XX S DR MARTIN LUTHER KING JR DR,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0624,006,6,69,18,1180284,1853851,2009,11/03/2009 01:43:46 PM,41.75423034,-87.614883672,"(41.75423034, -87.614883672)" -7205926,HR620751,11/01/2009 05:20:00 PM,026XX N ELSTON AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1432,014,1,22,06,1161014,1917576,2009,11/02/2009 09:22:44 AM,41.929518494,-87.683735847,"(41.929518494, -87.683735847)" -7205988,HR620794,11/01/2009 03:00:00 PM,071XX S TALMAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0831,008,18,66,14,1159902,1857180,2009,11/05/2009 07:58:25 AM,41.763808405,-87.689486033,"(41.763808405, -87.689486033)" -7205283,HR619296,10/31/2009 08:45:00 PM,054XX N CLARK ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,2013,020,48,77,06,1165115,1935982,2009,11/03/2009 08:29:55 AM,41.979939136,-87.668140883,"(41.979939136, -87.668140883)" -7285542,HR701248,10/31/2009 09:00:00 AM,006XX E BOWEN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0213,002,4,38,26,1181407,1877664,2009,12/26/2009 10:35:33 AM,41.819549586,-87.610034146,"(41.819549586, -87.610034146)" -7200148,HR613568,10/28/2009 07:50:00 PM,046XX W NORTH AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,true,false,2533,025,37,25,06,1144852,1910260,2009,10/29/2009 09:31:15 AM,41.909763298,-87.743312036,"(41.909763298, -87.743312036)" -7210962,HR625878,10/28/2009 10:00:00 AM,016XX S RACINE AVE,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,1233,012,25,31,06,1168675,1892082,2009,11/05/2009 10:25:17 AM,41.859398532,-87.656323192,"(41.859398532, -87.656323192)" -7259886,HR611788,10/27/2009 09:37:00 PM,034XX W FULTON BLVD,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1123,011,28,27,18,1153451,1901745,2009,01/25/2010 10:53:02 AM,41.886230665,-87.711949248,"(41.886230665, -87.711949248)" -7197519,HR610684,10/27/2009 11:00:00 AM,010XX W GRAND AVE,0810,THEFT,OVER $500,STREET,false,false,1323,012,27,24,06,1169120,1903602,2009,10/28/2009 09:22:37 AM,41.891000638,-87.654355231,"(41.891000638, -87.654355231)" -7196546,HR609899,10/26/2009 09:02:00 PM,007XX S CICERO AVE,1544,SEX OFFENSE,SEXUAL EXPLOITATION OF A CHILD,CTA TRAIN,false,false,1533,015,24,25,17,1144467,1896304,2009,12/01/2009 07:43:23 PM,41.871473677,-87.745077862,"(41.871473677, -87.745077862)" -7196382,HR609824,10/26/2009 08:00:00 PM,007XX N LONG AVE,2027,NARCOTICS,POSS: CRACK,GAS STATION,true,false,1524,015,37,25,18,1140134,1904700,2009,10/26/2009 08:41:55 PM,41.894593752,-87.760780546,"(41.894593752, -87.760780546)" -7196339,HR609763,10/26/2009 07:30:00 PM,059XX W MADISON ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1513,015,29,25,26,1136963,1899445,2009,10/26/2009 07:56:27 PM,41.880230823,-87.772553027,"(41.880230823, -87.772553027)" -7193989,HR606615,10/25/2009 01:30:00 AM,051XX S CARPENTER ST,0460,BATTERY,SIMPLE,APARTMENT,false,false,0934,009,16,61,08B,1170141,1870871,2009,11/02/2009 08:06:15 AM,41.801161689,-87.651559891,"(41.801161689, -87.651559891)" -7194113,HR606808,10/25/2009 01:00:00 AM,002XX W ONTARIO ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1831,018,42,8,06,1174358,1904476,2009,10/26/2009 12:30:39 PM,41.893283594,-87.635092697,"(41.893283594, -87.635092697)" -7201895,HR615093,10/24/2009 11:00:00 PM,061XX S KIMBARK AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0314,003,20,42,06,1185651,1864726,2009,10/30/2009 05:05:00 AM,41.783947656,-87.594873406,"(41.783947656, -87.594873406)" -7193953,HR604913,10/23/2009 10:30:00 PM,079XX S HERMITAGE AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,false,false,0611,006,21,71,03,1166094,1852224,2009,11/04/2009 12:06:58 AM,41.750079028,-87.6669316,"(41.750079028, -87.6669316)" -7283601,HR699833,10/23/2009 10:54:00 AM,102XX S WESTERN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2213,022,19,72,26,1162236,1836592,2009,12/24/2009 10:02:11 AM,41.707263441,-87.681502861,"(41.707263441, -87.681502861)" -7191569,HR601876,10/22/2009 01:00:00 PM,071XX S EAST END AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0324,003,5,43,14,1188812,1857852,2009,10/28/2009 09:07:04 AM,41.765009763,-87.583503925,"(41.765009763, -87.583503925)" -7201159,HR601630,10/22/2009 11:12:05 AM,073XX S WESTERN AVE,0460,BATTERY,SIMPLE,OTHER,false,false,0835,008,18,66,08B,1161609,1855755,2009,10/31/2009 09:17:27 AM,41.759862766,-87.68326893,"(41.759862766, -87.68326893)" -7190045,HR601391,10/22/2009 08:35:00 AM,003XX W OAK ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,18,1173426,1907052,2009,10/22/2009 12:16:42 PM,41.900373043,-87.638438935,"(41.900373043, -87.638438935)" -7189089,HR600955,10/21/2009 09:50:00 PM,003XX E NORTH WATER ST,1505,PROSTITUTION,CALL OPERATION,HOTEL/MOTEL,true,false,1834,018,42,8,16,1178389,1903114,2009,10/21/2009 10:34:36 PM,41.889455231,-87.620330047,"(41.889455231, -87.620330047)" -7187528,HR599244,10/20/2009 10:00:00 PM,075XX S PAULINA ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,0611,006,17,71,14,1166365,1854485,2009,10/23/2009 07:02:52 AM,41.756277765,-87.665874257,"(41.756277765, -87.665874257)" -7187593,HR597985,10/20/2009 11:30:00 AM,069XX N CLARK ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2424,024,49,1,06,1163469,1946226,2009,11/10/2009 03:57:39 PM,42.008083886,-87.673904109,"(42.008083886, -87.673904109)" -7186149,HR597603,10/20/2009 09:45:00 AM,051XX W BELMONT AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,PARKING LOT/GARAGE(NON.RESID.),false,false,1634,016,30,15,04A,1141278,1920822,2009,10/21/2009 09:15:19 AM,41.93881325,-87.75618043,"(41.93881325, -87.75618043)" -7185743,HR597510,10/19/2009 08:30:00 PM,019XX W ELLEN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1424,014,1,24,14,1163500,1908877,2009,10/21/2009 09:12:16 AM,41.905595815,-87.674845963,"(41.905595815, -87.674845963)" -7185273,HR595501,10/19/2009 12:53:00 AM,015XX S WABASH AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),true,false,0132,001,3,33,06,1176976,1892782,2009,10/20/2009 07:39:01 AM,41.861135721,-87.625831873,"(41.861135721, -87.625831873)" -7192134,HR603739,10/16/2009 09:00:00 AM,031XX S BENSON ST,0810,THEFT,OVER $500,STREET,false,false,0924,009,11,60,06,1167464,1884185,2009,10/25/2009 01:09:33 PM,41.837754559,-87.660995333,"(41.837754559, -87.660995333)" -7178726,HR588961,10/15/2009 11:50:00 AM,067XX S WOOD ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0725,007,15,67,06,1165549,1859990,2009,10/15/2009 06:32:34 PM,41.771401571,-87.668708855,"(41.771401571, -87.668708855)" -7178871,HR588427,10/14/2009 07:30:00 PM,033XX W 61ST PL,0810,THEFT,OVER $500,STREET,false,false,0823,008,15,66,06,1155014,1863683,2009,10/15/2009 06:28:12 PM,41.781752636,-87.707228288,"(41.781752636, -87.707228288)" -7175880,HR586575,10/14/2009 12:00:00 AM,046XX W DIVERSEY AVE,502R,OTHER OFFENSE,VEHICLE TITLE/REG OFFENSE,PARKING LOT/GARAGE(NON.RESID.),true,false,2521,025,31,19,26,1145125,1918176,2009,10/31/2014 03:20:56 PM,41.931480437,-87.74210865,"(41.931480437, -87.74210865)" -7174357,HR585006,10/13/2009 08:00:00 AM,0000X S SPAULDING AVE,1565,SEX OFFENSE,INDECENT SOLICITATION/CHILD,STREET,false,false,1124,011,28,27,17,1154451,1899551,2009,11/22/2009 08:30:10 AM,41.880190179,-87.708335674,"(41.880190179, -87.708335674)" -7175650,HR584651,10/12/2009 09:40:00 PM,096XX S YALE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0511,005,21,49,05,1176277,1840919,2009,11/12/2009 10:55:54 PM,41.71883417,-87.629955264,"(41.71883417, -87.629955264)" -7173650,HR584046,10/12/2009 02:46:00 PM,053XX S PULASKI RD,0850,THEFT,ATTEMPT THEFT,PARKING LOT/GARAGE(NON.RESID.),false,false,0815,008,23,62,06,1150568,1868904,2009,10/31/2014 03:20:56 PM,41.796167541,-87.723392818,"(41.796167541, -87.723392818)" -7550800,HR583027,10/11/2009 08:58:56 PM,025XX S HARDING AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,1013,010,22,30,26,1150496,1886573,2009,06/25/2010 11:15:30 AM,41.844655129,-87.723196751,"(41.844655129, -87.723196751)" -7171202,HR581414,10/10/2009 05:45:00 PM,017XX E 69TH ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,0332,,5,43,26,,,2009,10/11/2009 07:10:33 AM,,, -7171086,HR581273,10/10/2009 04:00:00 PM,065XX S LOWE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0723,,20,68,14,,,2009,10/11/2009 12:36:18 PM,,, -7168252,HR577957,10/08/2009 03:00:00 PM,076XX S CICERO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0833,008,13,65,14,1145766,1853738,2009,10/09/2009 10:31:20 AM,41.75464162,-87.741385158,"(41.75464162, -87.741385158)" -7168132,HR577486,10/08/2009 09:00:00 AM,024XX S MILLARD AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,ALLEY,false,false,1013,010,22,30,14,1152380,1887690,2009,10/09/2009 07:42:10 AM,41.847683377,-87.716253245,"(41.847683377, -87.716253245)" -7305375,HR576128,10/07/2009 04:30:00 PM,041XX W WILCOX ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1115,011,28,26,18,1148667,1898970,2009,01/26/2010 09:18:04 AM,41.878709471,-87.729589037,"(41.878709471, -87.729589037)" -7165480,HR574742,10/06/2009 08:00:00 AM,064XX S FRANCISCO AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0823,008,15,66,05,1158197,1861671,2009,10/11/2009 08:29:57 AM,41.776167226,-87.695613235,"(41.776167226, -87.695613235)" -7161498,HR571224,10/04/2009 07:30:00 PM,040XX E 134TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0433,004,10,55,08B,1204506,1816685,2009,10/07/2009 06:39:20 AM,41.651654577,-87.527394495,"(41.651654577, -87.527394495)" -7161300,HR571038,10/04/2009 05:10:00 PM,017XX N KIMBALL AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1422,014,26,22,03,1153379,1911733,2009,11/02/2009 10:40:24 AM,41.913640113,-87.711947986,"(41.913640113, -87.711947986)" -7163817,HR571761,10/04/2009 05:00:00 PM,072XX S EVANS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0323,003,6,69,07,1182442,1856970,2009,10/22/2009 09:43:35 AM,41.762739474,-87.606878855,"(41.762739474, -87.606878855)" -7163421,HR570438,10/04/2009 09:25:00 AM,120XX S UNION AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,true,0523,005,34,53,08B,1173779,1825068,2009,10/11/2009 07:37:20 AM,41.67539226,-87.639572205,"(41.67539226, -87.639572205)" -7160570,HR570007,10/03/2009 11:44:00 PM,009XX N LAWNDALE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1112,011,27,23,06,1151577,1906239,2009,10/06/2009 10:47:49 AM,41.898599689,-87.718712841,"(41.898599689, -87.718712841)" -7160297,HR569533,10/03/2009 05:20:00 PM,061XX S EBERHART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0313,003,20,42,08B,1180673,1864520,2009,10/04/2009 04:43:07 AM,41.783498241,-87.613130734,"(41.783498241, -87.613130734)" -7241496,HR609079,10/02/2009 07:00:00 PM,078XX S EMERALD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0621,006,17,71,26,1172700,1852863,2009,11/25/2009 08:11:04 AM,41.751689573,-87.642705533,"(41.751689573, -87.642705533)" -7159296,HR564621,09/30/2009 07:00:00 PM,085XX S ABERDEEN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,0613,006,21,71,08B,1170430,1848375,2009,10/08/2009 08:03:33 AM,41.739423594,-87.651154397,"(41.739423594, -87.651154397)" -7155683,HR564236,09/29/2009 08:00:00 PM,068XX S CALUMET AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0322,003,20,69,14,1179704,1859531,2009,10/01/2009 05:58:02 AM,41.769830142,-87.61683579,"(41.769830142, -87.61683579)" -7153949,HR562886,09/29/2009 06:45:00 PM,058XX S PEORIA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,0712,007,16,68,14,1171350,1865939,2009,09/30/2009 11:25:45 AM,41.787601339,-87.647270418,"(41.787601339, -87.647270418)" -7168263,HR562792,09/29/2009 03:00:00 PM,011XX E 46TH ST,0810,THEFT,OVER $500,STREET,false,false,2123,002,4,39,06,1184588,1874697,2009,10/12/2009 12:07:22 PM,41.811333856,-87.598458182,"(41.811333856, -87.598458182)" -7153087,HR561869,09/29/2009 07:30:00 AM,079XX S RACINE AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0612,006,21,71,08B,1169654,1852337,2009,10/02/2009 12:38:59 PM,41.750312711,-87.653882912,"(41.750312711, -87.653882912)" -7151828,HR560700,09/28/2009 01:00:00 PM,006XX S INDEPENDENCE BLVD,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,1133,011,24,26,06,1151161,1896816,2009,09/29/2009 10:07:40 AM,41.872750148,-87.720487967,"(41.872750148, -87.720487967)" -7150036,HR559757,09/26/2009 10:30:00 PM,026XX W EVERGREEN AVE,0810,THEFT,OVER $500,STREET,false,false,1423,014,26,24,06,1158498,1908836,2009,09/28/2009 09:47:27 AM,41.905587203,-87.693221159,"(41.905587203, -87.693221159)" -7149017,HR557904,09/26/2009 05:54:08 PM,008XX W LAKESIDE PL,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,2312,019,46,3,14,1169850,1931718,2009,09/29/2009 08:48:17 AM,41.968136389,-87.65085242,"(41.968136389, -87.65085242)" -7149066,HR557476,09/26/2009 12:30:00 PM,042XX N PAULINA ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1922,019,47,6,06,1164421,1928367,2009,09/28/2009 09:32:50 AM,41.959058038,-87.67090967,"(41.959058038, -87.67090967)" -7146921,HR555371,09/24/2009 05:30:00 PM,009XX N HOMAN AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,1121,011,27,23,05,1153573,1906159,2009,01/07/2010 08:31:30 PM,41.898340689,-87.711383739,"(41.898340689, -87.711383739)" -7145292,HR553881,09/24/2009 12:00:00 PM,064XX S COTTAGE GROVE AVE,0890,THEFT,FROM BUILDING,GROCERY FOOD STORE,false,false,0312,003,20,42,06,1182637,1862170,2009,09/25/2009 06:20:25 AM,41.777004258,-87.606002983,"(41.777004258, -87.606002983)" -7139831,HR549240,09/21/2009 03:30:00 PM,003XX E HURON ST,0890,THEFT,FROM BUILDING,OTHER,false,false,1834,018,42,8,06,1178708,1905187,2009,09/22/2009 12:17:53 PM,41.895136359,-87.61909519,"(41.895136359, -87.61909519)" -7139255,HR548582,09/20/2009 01:57:00 PM,054XX N SHERIDAN RD,0820,THEFT,$500 AND UNDER,OTHER,false,false,2023,020,48,77,06,1168611,1936471,2009,09/22/2009 09:39:15 AM,41.981205746,-87.655269782,"(41.981205746, -87.655269782)" -7146043,HR546124,09/19/2009 10:30:00 PM,084XX S MACKINAW AVE,4510,OTHER OFFENSE,PROBATION VIOLATION,RESIDENCE,true,false,0424,004,10,46,26,1199975,1849722,2009,09/26/2009 04:51:06 AM,41.742426198,-87.542862985,"(41.742426198, -87.542862985)" -7136645,HR545633,09/19/2009 04:45:00 PM,064XX S LONG AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,0813,008,13,64,08B,1141554,1861393,2009,09/26/2009 10:28:18 AM,41.775726821,-87.756633079,"(41.775726821, -87.756633079)" -7137630,HR546977,09/19/2009 02:56:00 PM,023XX W 22ND PL,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,ATM (AUTOMATIC TELLER MACHINE),false,false,1034,010,25,31,11,1161062,1888972,2009,10/11/2009 10:39:39 AM,41.851025707,-87.684354452,"(41.851025707, -87.684354452)" -7135559,HR544416,09/18/2009 09:45:00 PM,046XX N MILWAUKEE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1623,016,45,15,03,1140804,1930049,2009,09/24/2009 06:28:56 PM,41.964141739,-87.757694751,"(41.964141739, -87.757694751)" -7133776,HR542121,09/17/2009 05:30:00 PM,120XX S EMERALD AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,STREET,false,false,0523,005,34,53,03,1173378,1825210,2009,10/09/2009 08:08:27 AM,41.675790781,-87.641035766,"(41.675790781, -87.641035766)" -7133203,HR542102,09/16/2009 09:10:00 PM,019XX W 103RD ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,2213,022,19,72,06,1165288,1836401,2009,09/18/2009 07:43:33 AM,41.706675367,-87.670331753,"(41.706675367, -87.670331753)" -7133849,HR537957,09/15/2009 11:25:00 AM,003XX N LAKE SHORE DR SB,0320,ROBBERY,STRONGARM - NO WEAPON,PARK PROPERTY,false,false,0124,001,42,32,03,1180048,1901941,2009,09/27/2009 01:52:40 PM,41.886198476,-87.61427369,"(41.886198476, -87.61427369)" -7128697,HR537805,09/15/2009 10:45:00 AM,074XX N WOLCOTT AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2424,024,49,1,06,1162464,1949572,2009,09/16/2009 07:37:18 AM,42.017286567,-87.677507416,"(42.017286567, -87.677507416)" -7129118,HR538192,09/13/2009 10:39:00 PM,035XX W 85TH ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,true,0834,008,18,70,26,1154439,1848041,2009,09/17/2009 09:00:36 AM,41.73883995,-87.709752111,"(41.73883995, -87.709752111)" -7127832,HR535776,09/13/2009 10:00:00 PM,009XX W BELMONT AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESTAURANT,false,false,1924,019,44,6,05,1169516,1921478,2009,09/27/2009 01:46:40 PM,41.940044754,-87.65237968,"(41.940044754, -87.65237968)" -7129569,HR538404,09/12/2009 08:00:00 PM,050XX N NORTHWEST HWY,0820,THEFT,$500 AND UNDER,OTHER RAILROAD PROP / TRAIN DEPOT,false,false,1623,016,45,11,06,1139381,1932848,2009,09/16/2009 10:40:28 AM,41.971848553,-87.762858251,"(41.971848553, -87.762858251)" -7124329,HR533650,09/12/2009 05:15:00 PM,002XX W 103RD ST,2022,NARCOTICS,POSS: COCAINE,PARKING LOT/GARAGE(NON.RESID.),true,false,0512,005,34,49,18,1176656,1836605,2009,09/12/2009 08:03:15 PM,41.706987453,-87.628696428,"(41.706987453, -87.628696428)" -7123261,HR531878,09/11/2009 05:00:00 PM,112XX S AVENUE N,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,RESIDENCE,false,true,0433,004,10,52,26,1201271,1830817,2009,09/16/2009 05:50:09 PM,41.690516606,-87.538753814,"(41.690516606, -87.538753814)" -7122494,HR531114,09/11/2009 12:20:00 PM,026XX N HARDING AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,true,true,2524,025,30,22,08B,1149637,1917495,2009,09/12/2009 10:41:55 AM,41.929525138,-87.725545424,"(41.929525138, -87.725545424)" -7123873,HR532901,09/11/2009 12:00:00 PM,014XX N DAYTON ST,0810,THEFT,OVER $500,STREET,false,false,1822,018,32,8,06,1170372,1909761,2009,09/14/2009 08:10:41 AM,41.907874031,-87.649577011,"(41.907874031, -87.649577011)" -7121797,HR530227,09/10/2009 08:30:00 PM,049XX N MILWAUKEE AVE,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,OTHER,false,false,1623,016,45,11,26,1139458,1932237,2009,12/14/2009 09:34:14 AM,41.97017051,-87.762590075,"(41.97017051, -87.762590075)" -7120885,HR529971,09/10/2009 10:00:00 AM,110XX S AVENUE F,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,0433,004,10,52,14,1203474,1832389,2009,09/11/2009 07:51:12 AM,41.694774263,-87.530635093,"(41.694774263, -87.530635093)" -7126214,HR526933,09/08/2009 11:43:00 PM,079XX S ESSEX AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,VEHICLE NON-COMMERCIAL,true,false,0422,004,7,46,15,1194201,1852503,2009,09/15/2009 05:10:28 AM,41.750201087,-87.56392739,"(41.750201087, -87.56392739)" -7117072,HR526080,09/08/2009 03:00:00 PM,066XX S GREENWOOD AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0321,003,5,42,03,1184329,1860863,2009,09/16/2009 08:12:40 PM,41.773378294,-87.599841094,"(41.773378294, -87.599841094)" -7117404,HR526834,09/08/2009 09:50:00 AM,008XX W BELDEN AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1812,018,43,7,05,1170081,1915452,2009,09/20/2009 02:33:19 PM,41.9234968,-87.650479533,"(41.9234968, -87.650479533)" -7115816,HR525217,09/07/2009 09:00:00 PM,028XX W GRACE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1733,017,33,16,06,1156574,1925163,2009,09/09/2009 10:39:39 AM,41.950428894,-87.699845583,"(41.950428894, -87.699845583)" -7115286,HR524685,09/07/2009 07:05:00 PM,018XX W 21ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ABANDONED BUILDING,true,false,1223,012,25,31,18,1164276,1890141,2009,09/07/2009 07:45:49 PM,41.854166296,-87.672525371,"(41.854166296, -87.672525371)" -7115090,HR524223,09/07/2009 12:55:00 PM,002XX W 87TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0634,006,21,44,06,1176402,1847173,2009,09/08/2009 06:14:43 AM,41.735993165,-87.629310087,"(41.735993165, -87.629310087)" -7114987,HR524146,09/07/2009 12:15:00 PM,057XX W NORTH AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2531,025,29,25,16,1137798,1910015,2009,09/07/2009 01:08:44 PM,41.909221217,-87.769231773,"(41.909221217, -87.769231773)" -7115524,HR524903,09/06/2009 09:00:00 PM,065XX S BISHOP ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0725,007,17,67,06,1167746,1861500,2009,09/11/2009 08:22:26 AM,41.775498331,-87.660612102,"(41.775498331, -87.660612102)" -7125103,HR534474,09/06/2009 03:00:00 PM,027XX N HAMLIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2524,025,35,22,14,1150536,1918155,2009,09/14/2009 10:21:34 AM,41.9313187,-87.722224545,"(41.9313187, -87.722224545)" -7120732,HR529621,09/06/2009 01:37:00 PM,095XX S OAKLEY AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,2213,022,19,72,26,1162766,1841014,2009,09/14/2009 11:45:28 AM,41.719387121,-87.679439008,"(41.719387121, -87.679439008)" -7184093,HR518720,09/03/2009 09:40:00 PM,071XX S ROCKWELL ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0831,008,18,66,18,1160234,1857245,2009,11/04/2009 09:42:22 AM,41.763979949,-87.688267384,"(41.763979949, -87.688267384)" -7119717,HR518764,09/03/2009 12:00:00 AM,088XX S COMMERCIAL AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0423,004,10,46,16,1197632,1847130,2009,09/12/2009 08:35:09 AM,41.735372288,-87.551533824,"(41.735372288, -87.551533824)" -7116271,HR516854,09/02/2009 08:30:00 PM,100XX W OHARE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,AIRPORT/AIRCRAFT,true,false,1651,016,41,76,26,1100635,1934208,2009,09/10/2009 01:11:02 PM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -7104551,HR513788,09/01/2009 02:00:00 AM,046XX W ADAMS ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1113,011,28,25,26,1145217,1898675,2009,09/01/2009 02:40:39 AM,41.877965854,-87.742264346,"(41.877965854, -87.742264346)" -7104091,HR512775,08/31/2009 02:20:00 PM,017XX W TOUHY AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),false,false,2423,024,49,1,26,1163628,1947934,2009,09/03/2009 12:08:15 PM,42.012767312,-87.673270659,"(42.012767312, -87.673270659)" -7111892,HR520178,08/29/2009 05:00:00 PM,003XX W NORMAL PKWY,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0722,007,6,68,05,1175115,1860133,2009,09/06/2009 12:42:24 PM,41.771585772,-87.633639023,"(41.771585772, -87.633639023)" -7100861,HR509503,08/29/2009 11:55:00 AM,005XX N PINE AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,true,false,1523,015,37,25,26,1139401,1902948,2009,08/30/2009 08:19:46 AM,41.889799438,-87.763515416,"(41.889799438, -87.763515416)" -7098184,HR506360,08/27/2009 03:10:00 PM,053XX W FULLERTON AVE,0560,ASSAULT,SIMPLE,SIDEWALK,true,true,2515,025,37,19,08A,1140449,1915402,2009,08/28/2009 08:44:53 AM,41.923955485,-87.759360607,"(41.923955485, -87.759360607)" -7164846,HR574301,08/27/2009 03:00:00 PM,086XX W FOSTER AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,1614,016,41,76,26,1117493,1933366,2009,10/08/2009 11:41:03 AM,41.973641746,-87.843334694,"(41.973641746, -87.843334694)" -7149458,HR505280,08/26/2009 10:00:00 PM,102XX S LA SALLE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0511,005,9,49,18,1177039,1836942,2009,09/27/2009 03:11:08 PM,41.70790362,-87.627283774,"(41.70790362, -87.627283774)" -7096060,HR504592,08/26/2009 02:30:00 PM,083XX S EXCHANGE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0424,004,10,46,18,1197321,1850481,2009,08/26/2009 03:42:47 PM,41.744575439,-87.552561797,"(41.744575439, -87.552561797)" -7095666,HR504350,08/25/2009 06:00:00 PM,047XX W WASHINGTON BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1113,011,28,25,14,1144621,1900117,2009,08/26/2009 01:45:54 PM,41.881934118,-87.744416407,"(41.881934118, -87.744416407)" -7094118,HR502715,08/25/2009 03:00:00 PM,100XX S UNION AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,2232,022,34,73,03,1173363,1838490,2009,10/03/2009 08:40:57 AM,41.71223348,-87.640699803,"(41.71223348, -87.640699803)" -7093240,HR502046,08/25/2009 08:00:00 AM,012XX S LAWNDALE AVE,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,1011,010,24,29,26,1151866,1894048,2009,08/25/2009 12:30:06 PM,41.865140603,-87.717972421,"(41.865140603, -87.717972421)" -7093669,HR502298,08/24/2009 10:00:00 PM,026XX W 15TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1023,010,28,29,06,1158683,1892657,2009,08/25/2009 12:30:33 PM,41.861186742,-87.692985048,"(41.861186742, -87.692985048)" -7092171,HR499278,08/23/2009 01:50:00 PM,015XX N LONG AVE,0460,BATTERY,SIMPLE,STREET,false,false,2532,025,37,25,08B,1140098,1910043,2009,08/27/2009 11:27:52 PM,41.909256234,-87.760781797,"(41.909256234, -87.760781797)" -7088471,HR496485,08/21/2009 07:30:00 AM,080XX S ESSEX AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,0422,004,7,46,06,1194204,1852336,2009,08/23/2009 09:53:00 AM,41.749742752,-87.56392187,"(41.749742752, -87.56392187)" -7087058,HR494700,08/20/2009 05:56:00 PM,013XX S CANAL ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0131,001,2,28,06,1173296,1893975,2009,08/25/2009 08:22:28 AM,41.864491821,-87.639304867,"(41.864491821, -87.639304867)" -7086373,HR494502,08/19/2009 09:36:00 PM,069XX S KIMBARK AVE,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,RESIDENCE,false,false,0321,003,5,69,26,1185886,1859457,2009,08/21/2009 04:47:42 PM,41.769483523,-87.594177863,"(41.769483523, -87.594177863)" -7096064,HR492730,08/19/2009 03:00:00 PM,027XX W LOGAN BLVD,0810,THEFT,OVER $500,STREET,false,false,1431,014,35,22,06,1157683,1917132,2009,08/27/2009 09:53:44 AM,41.928368724,-87.695988469,"(41.928368724, -87.695988469)" -7084042,HR492083,08/19/2009 10:45:00 AM,057XX S ASHLAND AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0715,007,15,67,18,1166607,1866849,2009,08/19/2009 01:02:11 PM,41.790201031,-87.66463506,"(41.790201031, -87.66463506)" -7082157,HR490401,08/18/2009 01:35:00 PM,047XX W NORTH AVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,2533,025,37,25,26,1144231,1910168,2009,08/19/2009 11:14:59 AM,41.90952254,-87.745595672,"(41.90952254, -87.745595672)" -7080633,HR489273,08/17/2009 08:05:00 PM,104XX S GREEN ST,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,2233,022,34,73,08A,1172455,1835554,2009,08/18/2009 05:03:25 AM,41.704196653,-87.644111217,"(41.704196653, -87.644111217)" -7079280,HR487541,08/16/2009 08:10:00 PM,024XX W 46TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0914,009,12,58,18,1160865,1874148,2009,08/16/2009 09:57:46 PM,41.81035105,-87.685487789,"(41.81035105, -87.685487789)" -7078973,HR486788,08/16/2009 12:00:00 PM,074XX S WABASH AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0323,003,6,69,08B,1177968,1855660,2009,08/17/2009 06:07:29 AM,41.759247201,-87.623316291,"(41.759247201, -87.623316291)" -7127290,HR536788,08/16/2009 09:00:00 AM,016XX N CENTRAL AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE PORCH/HALLWAY,false,false,2532,025,37,25,06,1138840,1910438,2009,09/22/2009 04:18:40 PM,41.91036311,-87.765393586,"(41.91036311, -87.765393586)" -7179548,HR483776,08/14/2009 04:30:00 PM,099XX S PRINCETON AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0511,005,9,49,05,1176080,1839026,2009,10/21/2009 07:45:09 AM,41.713643932,-87.630733386,"(41.713643932, -87.630733386)" -7067128,HR474919,08/09/2009 02:30:00 PM,008XX E 59TH ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,2133,002,5,41,06,1183059,1866116,2009,08/10/2009 11:48:46 AM,41.787822632,-87.604333316,"(41.787822632, -87.604333316)" -7068509,HR475894,08/09/2009 09:30:00 AM,076XX S CICERO AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,SMALL RETAIL STORE,false,false,0833,008,13,65,26,1145766,1853738,2009,08/25/2009 07:28:26 PM,41.75464162,-87.741385158,"(41.75464162, -87.741385158)" -7066332,HR473747,08/08/2009 10:40:00 PM,057XX W AUGUSTA BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1511,015,29,25,14,1138138,1906136,2009,08/10/2009 09:07:12 AM,41.898570631,-87.768076643,"(41.898570631, -87.768076643)" -7065321,HR470275,08/07/2009 10:15:00 AM,079XX S WOOD ST,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,0611,006,21,71,26,1165767,1852105,2009,08/09/2009 07:44:45 AM,41.749759419,-87.668133247,"(41.749759419, -87.668133247)" -7069534,HR469816,08/06/2009 11:20:00 PM,072XX S HALSTED ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,0732,007,17,68,04B,1172266,1856616,2009,09/14/2009 07:11:46 PM,41.761997827,-87.644185767,"(41.761997827, -87.644185767)" -7062844,HR469570,08/06/2009 09:15:00 PM,008XX N HUDSON AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1823,018,27,8,18,1172994,1905886,2009,08/06/2009 10:01:27 PM,41.897183065,-87.640060284,"(41.897183065, -87.640060284)" -7062494,HR469007,08/06/2009 04:05:00 PM,050XX W JACKSON BLVD,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,1533,015,28,25,18,1143050,1898165,2009,08/06/2009 04:41:09 PM,41.876607026,-87.750233867,"(41.876607026, -87.750233867)" -7061517,HR468330,08/06/2009 08:19:00 AM,041XX N MC VICKER AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,1624,016,38,15,06,1135308,1927230,2009,08/12/2009 08:32:46 AM,41.956505668,-87.777969416,"(41.956505668, -87.777969416)" -7061123,HR467935,08/05/2009 10:00:00 PM,038XX W MAYPOLE AVE,1661,GAMBLING,GAME/DICE,SIDEWALK,true,false,1122,,28,26,19,,,2009,08/05/2009 11:30:39 PM,,, -7060900,HR467371,08/05/2009 04:30:00 PM,035XX S RHODES AVE,0560,ASSAULT,SIMPLE,POLICE FACILITY/VEH PARKING LOT,false,false,0212,002,4,35,08A,1180131,1881331,2009,08/06/2009 10:29:05 AM,41.829641493,-87.614602448,"(41.829641493, -87.614602448)" -7066519,HR468511,08/04/2009 08:30:00 AM,032XX N LAKE SHORE DR,0460,BATTERY,SIMPLE,CTA BUS,true,false,2332,019,44,6,08B,1173048,1921825,2009,10/30/2009 11:23:12 AM,41.94091921,-87.63938824,"(41.94091921, -87.63938824)" -7080357,HR488499,08/04/2009 12:01:00 AM,039XX W 26TH ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,MEDICAL/DENTAL OFFICE,false,false,1013,010,22,30,06,1150403,1886470,2009,09/28/2009 09:35:00 AM,41.844374296,-87.723540734,"(41.844374296, -87.723540734)" -7058453,HR462677,08/03/2009 12:25:00 AM,033XX N DAMEN AVE,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1924,019,32,5,06,1162461,1922279,2009,08/05/2009 07:18:35 AM,41.942393599,-87.67828649,"(41.942393599, -87.67828649)" -7054739,HR459584,08/01/2009 02:25:00 AM,001XX W ONTARIO ST,0460,BATTERY,SIMPLE,STREET,false,false,1832,018,42,8,08B,1174816,1904408,2009,08/19/2009 07:58:56 PM,41.893086758,-87.633412684,"(41.893086758, -87.633412684)" -7053408,HR459285,07/31/2009 09:50:00 PM,007XX N LOREL AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,1524,015,37,25,18,1140495,1904543,2009,07/31/2009 11:29:53 PM,41.894156307,-87.759458536,"(41.894156307, -87.759458536)" -7053176,HR458890,07/31/2009 06:05:00 PM,011XX S WESTERN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1135,011,28,28,08B,1160518,1894700,2009,08/01/2009 10:31:45 AM,41.86675518,-87.686192595,"(41.86675518, -87.686192595)" -7052963,HR458404,07/30/2009 02:15:00 PM,015XX N LAWNDALE AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,2535,025,26,23,05,1151373,1910159,2009,08/27/2009 11:31:05 PM,41.909360556,-87.719359076,"(41.909360556, -87.719359076)" -7050493,HR456184,07/30/2009 12:00:00 AM,069XX S DR MARTIN LUTHER KING JR DR,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0322,,6,69,07,,,2009,07/31/2009 08:51:57 AM,,, -7047238,HR454225,07/29/2009 02:00:00 AM,119XX S MICHIGAN AVE,0610,BURGLARY,FORCIBLE ENTRY,TAVERN/LIQUOR STORE,false,false,0532,005,9,53,05,1178956,1825469,2009,09/23/2009 08:44:16 AM,41.67637672,-87.620611316,"(41.67637672, -87.620611316)" -7047347,HR453717,07/28/2009 07:15:00 PM,049XX S WOLCOTT AVE,0460,BATTERY,SIMPLE,STREET,false,false,0915,009,16,61,08B,1164472,1872179,2009,07/30/2009 10:49:49 AM,41.804872506,-87.672313257,"(41.804872506, -87.672313257)" -7053211,HR459052,07/28/2009 05:00:00 PM,005XX E 67TH ST,4255,KIDNAPPING,UNLAWFUL INTERFERE/VISITATION,RESIDENCE,false,true,0321,003,20,42,26,1181231,1860755,2009,08/10/2009 05:24:44 PM,41.773153876,-87.61120085,"(41.773153876, -87.61120085)" -7046878,HR453698,07/27/2009 06:00:00 AM,005XX N KINGSBURY ST,0810,THEFT,OVER $500,SIDEWALK,false,false,1831,018,42,8,06,1173185,1903533,2009,07/30/2009 02:02:11 PM,41.89072206,-87.639428667,"(41.89072206, -87.639428667)" -7043151,HR450623,07/27/2009 03:25:00 AM,008XX W JACKSON BLVD,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,VEHICLE NON-COMMERCIAL,true,false,1213,012,27,28,15,1170957,1898816,2009,07/28/2009 09:08:05 AM,41.877827447,-87.647749304,"(41.877827447, -87.647749304)" -7047220,HR450435,07/26/2009 11:40:00 PM,010XX W MAXWELL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1232,012,2,28,08B,1169540,1894053,2009,08/27/2009 10:52:27 AM,41.864788355,-87.653090734,"(41.864788355, -87.653090734)" -7044638,HR451358,07/26/2009 05:00:00 AM,032XX S UNION AVE,0810,THEFT,OVER $500,RESIDENCE-GARAGE,false,false,0924,009,11,60,06,1172201,1883426,2009,08/04/2009 10:53:23 AM,41.835568733,-87.643635589,"(41.835568733, -87.643635589)" -7042318,HR448838,07/26/2009 12:05:00 AM,060XX S INDIANA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0311,003,20,40,08B,1178593,1865006,2009,08/05/2009 02:22:03 PM,41.784879428,-87.620741902,"(41.784879428, -87.620741902)" -7040451,HR447402,07/25/2009 02:54:00 AM,031XX W DIVERSEY AVE,0610,BURGLARY,FORCIBLE ENTRY,BARBERSHOP,false,false,1411,014,35,22,05,1155193,1918411,2009,08/06/2009 07:14:59 PM,41.931928823,-87.70510394,"(41.931928823, -87.70510394)" -7071029,HR446547,07/24/2009 04:50:00 PM,008XX W 53RD ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0934,009,3,61,08A,1171491,1869704,2009,08/12/2009 01:40:02 PM,41.797929826,-87.646643165,"(41.797929826, -87.646643165)" -7039040,HR445379,07/24/2009 01:14:13 AM,049XX W 43RD ST,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,CHA APARTMENT,false,false,0814,008,23,56,04B,1144131,1875470,2009,07/25/2009 04:47:53 PM,41.814308588,-87.746833803,"(41.814308588, -87.746833803)" -7038333,HR445150,07/23/2009 07:00:00 PM,104XX S MICHIGAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0512,005,9,49,14,1178929,1835882,2009,07/24/2009 06:30:50 AM,41.704952102,-87.620394694,"(41.704952102, -87.620394694)" -7038070,HR444657,07/23/2009 03:30:00 PM,042XX S WENTWORTH AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0935,009,3,37,03,1175598,1876717,2009,08/02/2009 09:12:49 AM,41.817083142,-87.631372123,"(41.817083142, -87.631372123)" -7037754,HR444308,07/23/2009 11:30:00 AM,012XX W 59TH ST,0460,BATTERY,SIMPLE,APARTMENT,true,false,0713,007,16,67,08B,1169143,1865617,2009,08/12/2009 01:58:13 PM,41.786765775,-87.655371861,"(41.786765775, -87.655371861)" -7042261,HR445922,07/23/2009 11:15:00 AM,069XX S MERRILL AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,0331,003,5,43,06,1191779,1859499,2009,11/08/2009 06:02:22 PM,41.769457769,-87.572575803,"(41.769457769, -87.572575803)" -7031821,HR439177,07/20/2009 04:25:00 PM,012XX N LOCKWOOD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2532,025,37,25,18,1140835,1907856,2009,07/20/2009 05:22:16 PM,41.903241324,-87.758128225,"(41.903241324, -87.758128225)" -7054108,HR436380,07/18/2009 09:50:00 PM,006XX N HOMAN AVE,2027,NARCOTICS,POSS: CRACK,SMALL RETAIL STORE,true,false,1121,011,27,23,18,1153548,1904372,2009,08/01/2009 01:01:32 PM,41.893437486,-87.711523132,"(41.893437486, -87.711523132)" -7030252,HR436020,07/18/2009 04:00:00 PM,081XX S SANGAMON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0613,006,21,71,14,1171346,1851055,2009,07/20/2009 06:35:57 AM,41.746757901,-87.647720096,"(41.746757901, -87.647720096)" -7049243,HR437394,07/18/2009 02:00:00 PM,044XX N KENNETH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1722,017,45,16,07,1145709,1928991,2009,07/31/2009 10:41:23 AM,41.961146662,-87.739687265,"(41.961146662, -87.739687265)" -7028418,HR435367,07/18/2009 01:30:00 AM,014XX W OHIO ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1324,012,27,24,14,1166286,1904153,2009,07/20/2009 10:34:58 AM,41.892573688,-87.664747299,"(41.892573688, -87.664747299)" -7035387,HR442246,07/17/2009 10:00:00 AM,017XX W CHICAGO AVE,0810,THEFT,OVER $500,CONSTRUCTION SITE,false,false,1324,012,1,24,06,1164887,1905362,2009,07/23/2009 10:49:41 AM,41.895921074,-87.669850909,"(41.895921074, -87.669850909)" -7025580,HR429952,07/15/2009 10:50:00 AM,0000X N MICHIGAN AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0122,001,42,32,06,1177265,1900589,2009,07/17/2009 09:59:13 AM,41.882552053,-87.624534384,"(41.882552053, -87.624534384)" -7021658,HR429268,07/14/2009 09:10:00 PM,021XX W 99TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2213,022,19,72,14,1163811,1838927,2009,07/15/2009 08:03:15 AM,41.713638209,-87.675669862,"(41.713638209, -87.675669862)" -7021720,HR429295,07/14/2009 08:42:00 PM,012XX E 52ND ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,2124,002,4,41,24,1185384,1870952,2009,07/15/2009 09:28:38 AM,41.801038586,-87.595656445,"(41.801038586, -87.595656445)" -7020696,HR428154,07/14/2009 11:10:00 AM,055XX S HALSTED ST,0560,ASSAULT,SIMPLE,STREET,false,false,0712,007,20,68,08A,1171871,1868181,2009,07/14/2009 01:13:08 PM,41.793742211,-87.645294347,"(41.793742211, -87.645294347)" -7019548,HR427605,07/13/2009 11:25:00 PM,040XX W LAKE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CTA PLATFORM,true,false,1114,011,28,26,26,1149614,1901481,2009,07/14/2009 08:56:21 AM,41.885581599,-87.726046569,"(41.885581599, -87.726046569)" -7019726,HR427627,07/13/2009 11:00:00 AM,040XX W JACKSON BLVD,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,1132,011,28,26,08A,1149319,1898335,2009,07/16/2009 04:11:24 PM,41.876954348,-87.727211468,"(41.876954348, -87.727211468)" -7016052,HR423313,07/11/2009 11:55:00 AM,064XX S CALUMET AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),true,false,0312,003,20,69,26,1179601,1862390,2009,07/12/2009 06:36:10 AM,41.777677883,-87.617126065,"(41.777677883, -87.617126065)" -7016219,HR423767,07/11/2009 11:00:00 AM,020XX N CLARK ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1814,018,43,7,06,1174033,1913685,2009,07/13/2009 07:01:11 AM,41.918560801,-87.636011353,"(41.918560801, -87.636011353)" -7015370,HR422684,07/10/2009 11:27:00 PM,010XX E 79TH ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0624,006,8,69,15,1184624,1852878,2009,07/11/2009 06:09:42 AM,41.751459775,-87.599009582,"(41.751459775, -87.599009582)" -7028884,HR422264,07/10/2009 07:35:00 PM,117XX S YALE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0522,005,34,53,08A,1176680,1827030,2009,07/20/2009 08:33:30 AM,41.680711705,-87.628895299,"(41.680711705, -87.628895299)" -7013209,HR420344,07/09/2009 07:20:00 PM,001XX S PARKSIDE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,1513,015,29,25,26,1138591,1898962,2009,07/11/2009 08:57:08 AM,41.878876061,-87.76658681,"(41.878876061, -87.76658681)" -7013556,HR419653,07/09/2009 12:00:00 PM,014XX W TAYLOR ST,0860,THEFT,RETAIL THEFT,OTHER,false,false,1213,012,25,28,06,1166827,1895722,2009,07/14/2009 02:47:03 PM,41.869426789,-87.663002281,"(41.869426789, -87.663002281)" -7007527,HR414753,07/06/2009 05:30:00 PM,061XX W 54TH ST,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,0811,008,23,56,08A,1136134,1868101,2009,07/20/2009 07:02:15 AM,41.794232812,-87.776343397,"(41.794232812, -87.776343397)" -7005529,HR413027,07/05/2009 08:25:00 PM,092XX S BLACKSTONE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENTIAL YARD (FRONT/BACK),true,false,0413,004,8,48,26,1187763,1844211,2009,07/06/2009 07:40:54 AM,41.727602565,-87.587781963,"(41.727602565, -87.587781963)" -7005087,HR412117,07/05/2009 10:05:00 AM,039XX W VAN BUREN ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,true,false,1132,011,24,26,04B,1150246,1897695,2009,07/08/2009 08:05:37 AM,41.875180102,-87.723824462,"(41.875180102, -87.723824462)" -7006114,HR411611,07/05/2009 12:03:12 AM,076XX N SHERIDAN RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,DRIVEWAY - RESIDENTIAL,false,false,2422,024,49,1,08B,1165527,1950339,2009,07/07/2009 02:06:30 PM,42.019326273,-87.666214339,"(42.019326273, -87.666214339)" -7004221,HR410774,07/03/2009 07:00:00 PM,081XX S ELIZABETH ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0613,006,21,71,06,1169370,1850672,2009,07/05/2009 07:20:41 AM,41.745749874,-87.654971719,"(41.745749874, -87.654971719)" -7002368,HR408605,07/03/2009 02:03:00 AM,015XX S KEELER AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1012,010,24,29,18,1148592,1892257,2009,07/03/2009 03:24:12 AM,41.860289651,-87.730037659,"(41.860289651, -87.730037659)" -7002159,HR408151,07/02/2009 06:30:00 PM,063XX S ASHLAND AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0725,007,16,67,08B,1166712,1862870,2009,07/13/2009 09:38:31 AM,41.77927992,-87.664363567,"(41.77927992, -87.664363567)" -6998760,HR403866,06/30/2009 01:00:00 PM,016XX W EDGEWATER AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,2012,020,40,77,05,1164362,1938116,2009,07/14/2009 02:55:36 PM,41.985810914,-87.670849415,"(41.985810914, -87.670849415)" -6997088,HR403288,06/29/2009 07:00:00 PM,105XX S LAWNDALE AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,2211,022,19,74,06,1153494,1834646,2009,06/30/2009 09:50:33 AM,41.702100379,-87.713567747,"(41.702100379, -87.713567747)" -6995439,HR401104,06/29/2009 03:51:42 AM,072XX N CLARK ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2424,024,49,1,14,1163206,1947956,2009,07/01/2009 10:32:12 AM,42.012836599,-87.674822784,"(42.012836599, -87.674822784)" -6994494,HR400743,06/28/2009 08:20:00 PM,039XX S LAKE SHORE DR SB,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,2122,002,4,36,08B,1183987,1879902,2009,07/20/2009 01:15:23 PM,41.825630825,-87.600499757,"(41.825630825, -87.600499757)" -7005735,HR404035,06/28/2009 03:00:00 PM,087XX S COMMERCIAL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,0423,004,10,46,14,1197618,1847684,2009,07/06/2009 07:54:02 AM,41.736892857,-87.551566677,"(41.736892857, -87.551566677)" -6993727,HR399606,06/28/2009 03:45:00 AM,015XX N MILWAUKEE AVE,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1424,014,1,24,06,1162776,1910563,2009,06/29/2009 08:20:50 AM,41.910237541,-87.677458103,"(41.910237541, -87.677458103)" -6994064,HR400051,06/28/2009 12:00:00 AM,112XX S AVENUE M,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0433,004,10,52,05,1201518,1831020,2009,08/03/2009 03:05:20 PM,41.691067401,-87.537842693,"(41.691067401, -87.537842693)" -6992518,HR395338,06/25/2009 09:30:00 PM,006XX E 75TH ST,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,SIDEWALK,false,true,0624,006,6,69,04B,1182160,1855395,2009,08/03/2009 03:11:37 PM,41.758424042,-87.607961096,"(41.758424042, -87.607961096)" -6990050,HR395354,06/25/2009 09:00:00 PM,027XX N RUTHERFORD AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,2512,025,36,18,26,1130911,1917491,2009,06/28/2009 01:26:33 PM,41.929857798,-87.794359384,"(41.929857798, -87.794359384)" -6992266,HR395871,06/25/2009 08:30:00 PM,013XX W 109TH PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2234,022,34,75,05,1169031,1832102,2009,06/29/2009 07:20:16 AM,41.694798325,-87.656748637,"(41.694798325, -87.656748637)" -7257479,HR663616,06/25/2009 07:00:00 PM,032XX S WALLACE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0924,009,11,60,06,1172792,1883112,2009,12/18/2009 08:53:26 AM,41.834694047,-87.641476311,"(41.834694047, -87.641476311)" -6990752,HR394825,06/25/2009 04:15:00 PM,022XX N LONG AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE,false,false,2515,025,37,19,14,1140057,1914351,2009,06/28/2009 01:27:15 PM,41.921078619,-87.760826773,"(41.921078619, -87.760826773)" -6988148,HR393250,06/24/2009 07:00:00 PM,059XX S DAMEN AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0714,007,15,67,08A,1164083,1865260,2009,06/25/2009 11:49:53 AM,41.785894111,-87.673934592,"(41.785894111, -87.673934592)" -6987873,HR390834,06/23/2009 10:15:00 AM,063XX S MORGAN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0723,007,16,68,14,1170775,1862706,2009,06/25/2009 01:29:12 PM,41.778742182,-87.649472976,"(41.778742182, -87.649472976)" -7088981,HR389693,06/22/2009 08:30:00 PM,080XX S EVANS AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0631,006,6,44,05,1182581,1851854,2009,08/14/2010 10:37:20 AM,41.748697414,-87.606527813,"(41.748697414, -87.606527813)" -6982545,HR387896,06/22/2009 12:35:00 AM,044XX S DREXEL BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,2123,002,4,39,14,1182896,1875848,2009,06/23/2009 01:44:07 PM,41.814531823,-87.604628451,"(41.814531823, -87.604628451)" -6982853,HR388160,06/22/2009 12:00:00 AM,049XX S DR MARTIN LUTHER KING JR DR,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,0223,002,4,38,06,1179738,1872205,2009,06/23/2009 10:44:50 AM,41.804608026,-87.616323735,"(41.804608026, -87.616323735)" -6983008,HR386869,06/21/2009 11:30:00 AM,021XX N KEYSTONE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2525,025,30,20,14,1149067,1914101,2009,06/24/2009 12:02:47 PM,41.920222763,-87.727728114,"(41.920222763, -87.727728114)" -7719458,HR386495,06/21/2009 04:32:00 AM,001XX N LECLAIRE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1532,,28,25,08B,,,2009,09/28/2010 12:32:08 PM,,, -6981745,HR386759,06/20/2009 11:00:00 PM,027XX S RIDGEWAY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1031,010,22,30,07,1151856,1885454,2009,06/22/2009 10:17:19 AM,41.841557831,-87.718235125,"(41.841557831, -87.718235125)" -7006275,HR386679,06/20/2009 06:00:00 PM,032XX S PRAIRIE AVE,0810,THEFT,OVER $500,STREET,false,false,2112,002,3,35,06,1178510,1883365,2009,07/27/2009 01:34:01 PM,41.835260004,-87.620487884,"(41.835260004, -87.620487884)" -7012140,HR385472,06/20/2009 03:45:00 PM,061XX S DR MARTIN LUTHER KING JR DR,0554,ASSAULT,AGG PO HANDS NO/MIN INJURY,STREET,true,false,0313,003,20,42,08A,1180009,1864589,2009,07/11/2009 06:49:18 AM,41.78370282,-87.615563053,"(41.78370282, -87.615563053)" -6980153,HR384704,06/19/2009 02:00:00 PM,076XX S PARNELL AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0621,006,17,69,06,1173902,1854172,2009,06/20/2009 06:11:48 AM,41.755255071,-87.638262025,"(41.755255071, -87.638262025)" -6978176,HR382577,06/18/2009 08:35:00 PM,006XX S WABASH AVE,1330,CRIMINAL TRESPASS,TO LAND,BAR OR TAVERN,false,false,0132,001,2,32,26,1176860,1897273,2009,06/19/2009 08:59:24 AM,41.873461928,-87.626121868,"(41.873461928, -87.626121868)" -6976297,HR381019,06/17/2009 11:54:00 PM,016XX N TRIPP AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2534,025,30,23,18,1147844,1910509,2009,06/18/2009 01:46:00 AM,41.910389576,-87.732314164,"(41.910389576, -87.732314164)" -6989112,HR380955,06/17/2009 08:30:00 PM,066XX S MOZART ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0831,008,15,66,14,1158482,1860461,2009,06/26/2009 11:34:56 AM,41.772841006,-87.694601383,"(41.772841006, -87.694601383)" -6978879,HR378990,06/16/2009 08:01:40 PM,015XX S SPAULDING AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1022,010,24,29,14,1154653,1892324,2009,06/23/2009 11:22:45 AM,41.860354482,-87.707787333,"(41.860354482, -87.707787333)" -7019418,HR414230,06/16/2009 08:00:00 AM,086XX S LOOMIS BLVD,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,0613,006,21,71,11,1168539,1847660,2009,07/14/2009 11:45:05 AM,41.737502457,-87.658103265,"(41.737502457, -87.658103265)" -6974911,HR377705,06/16/2009 06:43:00 AM,037XX W CULLOM AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,true,1723,017,39,16,26,1150452,1928352,2009,06/24/2009 11:31:33 AM,41.959301708,-87.722266088,"(41.959301708, -87.722266088)" -6974515,HR377765,06/16/2009 03:00:00 AM,063XX W DEVON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1611,016,45,10,14,1133065,1942070,2009,06/19/2009 11:16:08 AM,41.997267614,-87.785866758,"(41.997267614, -87.785866758)" -6973985,HR378600,06/16/2009 02:00:00 AM,063XX N WINTHROP AVE,0560,ASSAULT,SIMPLE,OTHER,false,false,2433,024,48,77,08A,1167666,1942230,2009,06/19/2009 08:45:57 PM,41.997029049,-87.658578303,"(41.997029049, -87.658578303)" -6974004,HR377126,06/15/2009 06:33:00 PM,052XX W JACKSON BLVD,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1522,015,29,25,26,1141700,1898133,2009,06/17/2009 10:17:16 AM,41.876544275,-87.755191494,"(41.876544275, -87.755191494)" -7891492,HT121090,06/15/2009 04:00:00 PM,088XX S HERMITAGE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2221,,21,71,26,,,2009,01/19/2011 10:31:13 AM,,, -6972485,HR375587,06/14/2009 08:50:00 PM,069XX W HIGGINS AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),true,false,1613,016,41,10,06,1128707,1935806,2009,06/18/2009 10:17:56 AM,41.980153938,-87.802041416,"(41.980153938, -87.802041416)" -6980865,HR379010,06/13/2009 03:30:00 AM,053XX S SAWYER AVE,0810,THEFT,OVER $500,STREET,false,false,0822,008,14,63,06,1155665,1868846,2009,06/21/2009 02:55:01 PM,41.79590762,-87.704703137,"(41.79590762, -87.704703137)" -6968046,HR372785,06/13/2009 12:30:00 AM,072XX S HARVARD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0731,007,17,69,08B,1175251,1856903,2009,06/19/2009 10:32:38 AM,41.762719245,-87.633236868,"(41.762719245, -87.633236868)" -7120026,HR529010,06/12/2009 09:00:00 AM,007XX N ADA ST,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",false,false,1324,012,27,24,06,1167232,1905220,2009,09/11/2009 07:34:55 AM,41.895481331,-87.661242342,"(41.895481331, -87.661242342)" -6964586,HR369239,06/11/2009 04:00:00 AM,019XX S TROY ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,true,1022,010,24,29,26,1155627,1890250,2009,06/19/2009 01:33:24 PM,41.854643666,-87.704267784,"(41.854643666, -87.704267784)" -6976501,HR367926,06/10/2009 01:15:00 PM,045XX S CHRISTIANA AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,true,false,0821,008,14,58,26,1154840,1874215,2009,06/19/2009 10:39:22 AM,41.810657416,-87.707585148,"(41.810657416, -87.707585148)" -7068607,HR476106,06/10/2009 12:00:00 AM,004XX W WELLINGTON AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,COMMERCIAL / BUSINESS OFFICE,false,false,2333,019,44,6,11,1172583,1920194,2009,09/20/2009 02:37:05 PM,41.936454003,-87.641145673,"(41.936454003, -87.641145673)" -6961286,HR365809,06/09/2009 12:01:00 AM,001XX N LATROBE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,true,1523,015,28,25,08B,1141388,1900811,2009,06/11/2009 11:47:00 AM,41.883898807,-87.756270958,"(41.883898807, -87.756270958)" -6959692,HR365145,06/08/2009 09:00:00 PM,027XX W 62ND ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0825,008,15,66,06,1159385,1863390,2009,06/23/2009 11:48:54 AM,41.780860148,-87.691211026,"(41.780860148, -87.691211026)" -6965760,HR366346,06/08/2009 03:30:00 PM,040XX N ROCKWELL ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,FACTORY/MANUFACTURING BUILDING,false,true,1912,019,47,5,26,1158309,1927001,2009,06/24/2009 04:08:25 PM,41.955437108,-87.693417409,"(41.955437108, -87.693417409)" -6961112,HR363345,06/07/2009 10:03:00 PM,064XX S LOREL AVE,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,0813,008,13,64,18,1141887,1861315,2009,06/09/2009 02:39:06 PM,41.775506641,-87.755414232,"(41.775506641, -87.755414232)" -6957164,HR362586,06/06/2009 11:30:00 PM,023XX N ELSTON AVE,0810,THEFT,OVER $500,STREET,false,false,1432,014,32,22,06,1163098,1915573,2009,06/08/2009 09:25:47 AM,41.923978555,-87.676134165,"(41.923978555, -87.676134165)" -7602964,HR360741,06/06/2009 05:00:00 AM,081XX S YATES BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0414,004,7,46,14,1193563,1851297,2009,07/15/2010 08:19:11 AM,41.746907356,-87.566304658,"(41.746907356, -87.566304658)" -6956672,HR360623,06/06/2009 02:31:51 AM,017XX W GREENLEAF AVE,1460,WEAPONS VIOLATION,POSS FIREARM/AMMO:NO FOID CARD,BAR OR TAVERN,true,false,2424,024,49,1,15,1163159,1947031,2009,06/12/2009 02:09:51 PM,42.010299371,-87.675021894,"(42.010299371, -87.675021894)" -6957118,HR360912,06/05/2009 03:45:00 PM,009XX E 104TH ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0512,005,9,50,05,1184211,1836150,2009,06/26/2009 12:15:52 AM,41.705565903,-87.601044511,"(41.705565903, -87.601044511)" -7069873,HR475932,06/05/2009 10:00:00 AM,052XX N CENTRAL AVE,1120,DECEPTIVE PRACTICE,FORGERY,BANK,false,false,1622,016,45,11,10,1137803,1934268,2009,08/14/2009 10:31:20 PM,41.975773845,-87.768626458,"(41.975773845, -87.768626458)" -6959545,HR364890,06/04/2009 01:01:00 PM,006XX N FAIRBANKS CT,0843,THEFT,ATTEMPT FINANCIAL IDENTITY THEFT,BANK,false,false,1834,018,42,8,06,1178428,1904746,2009,06/09/2009 10:45:46 AM,41.893932627,-87.620137008,"(41.893932627, -87.620137008)" -6980764,HR357765,06/03/2009 03:00:00 PM,012XX N CLARK ST,0330,ROBBERY,AGGRAVATED,STREET,false,false,1821,018,42,8,03,1175274,1908508,2009,06/29/2009 09:45:16 PM,41.904327102,-87.631607477,"(41.904327102, -87.631607477)" -6949579,HR355146,06/02/2009 11:30:00 PM,016XX E 86TH PL,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0412,004,8,45,15,1188772,1847992,2009,06/07/2009 07:15:38 AM,41.73795397,-87.583965299,"(41.73795397, -87.583965299)" -6947653,HR353548,06/01/2009 08:00:00 PM,077XX S TROY ST,0810,THEFT,OVER $500,STREET,false,false,0835,008,18,70,06,1156686,1852893,2009,06/02/2009 01:36:08 PM,41.752109656,-87.701388914,"(41.752109656, -87.701388914)" -7241446,HR655568,06/01/2009 07:00:00 AM,063XX N FRANCISCO AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2413,024,50,2,06,1155891,1942093,2009,12/08/2009 01:52:32 PM,41.996899555,-87.701897533,"(41.996899555, -87.701897533)" -6973677,HR351670,06/01/2009 03:45:00 AM,055XX S ASHLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0715,007,15,67,14,1166578,1867940,2009,06/16/2009 02:24:36 PM,41.793195486,-87.664710283,"(41.793195486, -87.664710283)" -7649487,HS454063,06/01/2009 12:01:00 AM,014XX W 72ND ST,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,RESIDENCE,true,false,0734,007,17,67,17,1167867,1856958,2009,08/11/2010 04:17:03 PM,41.763031898,-87.660298822,"(41.763031898, -87.660298822)" -6948654,HR353710,05/31/2009 09:30:00 PM,053XX S LOWE AVE,0560,ASSAULT,SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,false,0934,009,3,61,08A,1172832,1869440,2009,06/03/2009 11:05:29 AM,41.797175881,-87.641733297,"(41.797175881, -87.641733297)" -6945599,HR350995,05/31/2009 05:07:56 PM,036XX N WESTERN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,true,false,1912,019,47,5,14,1159692,1923994,2009,06/02/2009 08:11:25 AM,41.947157276,-87.688416397,"(41.947157276, -87.688416397)" -6960945,HR348163,05/29/2009 08:09:00 PM,008XX W 75TH ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0621,006,17,71,16,1171782,1855007,2009,06/16/2009 10:01:56 AM,41.757593156,-87.646006799,"(41.757593156, -87.646006799)" -6943068,HR348271,05/29/2009 07:00:00 PM,030XX W 25TH ST,0460,BATTERY,SIMPLE,STREET,false,false,1033,010,12,30,08B,1156457,1887285,2009,06/01/2009 01:05:31 PM,41.846490646,-87.701301419,"(41.846490646, -87.701301419)" -6942681,HR347706,05/29/2009 04:55:00 PM,021XX S WABASH AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0134,001,2,33,18,1177127,1889933,2009,05/29/2009 05:48:26 PM,41.853314459,-87.625363821,"(41.853314459, -87.625363821)" -6943014,HR348086,05/29/2009 03:30:00 PM,036XX W 26TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1032,010,22,30,08B,1152378,1886439,2009,06/28/2009 12:58:22 PM,41.844250519,-87.716293572,"(41.844250519, -87.716293572)" -6943842,HR348934,05/29/2009 10:00:00 AM,014XX W GARFIELD BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,STREET,false,false,0933,009,16,61,26,1167458,1868309,2009,05/31/2009 02:41:00 PM,41.794189239,-87.661472835,"(41.794189239, -87.661472835)" -6943295,HR346852,05/29/2009 09:15:00 AM,001XX S HALSTED ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1213,012,27,28,06,1171109,1899644,2009,06/01/2009 09:27:34 AM,41.880096203,-87.647166896,"(41.880096203, -87.647166896)" -6942847,HR347569,05/29/2009 04:30:00 AM,061XX W NEWPORT AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,1633,016,38,17,26,1134673,1922336,2009,06/03/2009 04:38:38 PM,41.94308729,-87.780419953,"(41.94308729, -87.780419953)" -6946878,HR346278,05/28/2009 06:00:00 PM,079XX S MARSHFIELD AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,0611,006,21,71,06,1166690,1851761,2009,10/31/2014 03:20:56 PM,41.748795803,-87.664760772,"(41.748795803, -87.664760772)" -6938604,HR344145,05/27/2009 06:50:00 PM,061XX S GREENWOOD AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0314,003,20,42,06,1184430,1864459,2009,05/31/2009 06:22:59 AM,41.783243673,-87.599358344,"(41.783243673, -87.599358344)" -6937110,HR342681,05/26/2009 10:47:00 PM,078XX S SAGINAW AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0421,004,7,43,08B,1195319,1853568,2009,05/27/2009 04:44:34 AM,41.753096021,-87.559795536,"(41.753096021, -87.559795536)" -6949898,HR341578,05/26/2009 12:30:00 PM,042XX S WELLS ST,0810,THEFT,OVER $500,STREET,false,false,0935,009,3,37,06,1175369,1876546,2009,06/03/2009 12:46:18 PM,41.816619033,-87.632217268,"(41.816619033, -87.632217268)" -6934641,HR340335,05/25/2009 04:25:00 PM,066XX S EVANS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0321,003,20,42,08B,1182324,1860963,2009,05/28/2009 08:37:38 AM,41.773699393,-87.607187783,"(41.773699393, -87.607187783)" -6933670,HR339456,05/25/2009 12:50:00 AM,054XX S KARLOV AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0815,008,23,62,14,1149929,1867878,2009,05/25/2009 11:29:36 AM,41.793364459,-87.725762696,"(41.793364459, -87.725762696)" -6941509,HR338396,05/24/2009 10:50:00 AM,040XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1114,011,28,26,11,1149614,1901481,2009,06/01/2009 09:44:04 AM,41.885581599,-87.726046569,"(41.885581599, -87.726046569)" -6948031,HR353649,05/23/2009 12:01:00 AM,068XX S MICHIGAN AVE,1122,DECEPTIVE PRACTICE,COUNTERFEIT CHECK,RESIDENCE,false,false,0322,003,20,69,10,1178302,1859708,2009,07/05/2009 11:42:51 AM,41.770347784,-87.621969508,"(41.770347784, -87.621969508)" -6931880,HR336728,05/22/2009 11:00:00 PM,059XX S LAWNDALE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0822,008,13,65,06,1152679,1865199,2009,05/23/2009 12:33:50 PM,41.785959107,-87.715749146,"(41.785959107, -87.715749146)" -6931988,HR334207,05/21/2009 09:15:00 PM,036XX W BELMONT AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,2523,025,35,21,26,1151775,1921000,2009,05/23/2009 01:11:46 PM,41.939101286,-87.717596326,"(41.939101286, -87.717596326)" -6930102,HR334796,05/21/2009 08:00:00 PM,009XX W ARMITAGE AVE,0890,THEFT,FROM BUILDING,TAVERN/LIQUOR STORE,false,false,1812,018,43,7,06,1169424,1913524,2009,05/22/2009 11:35:32 AM,41.918220598,-87.652949783,"(41.918220598, -87.652949783)" -6933322,HR338781,05/21/2009 06:00:00 PM,017XX W HOWARD ST,0880,THEFT,PURSE-SNATCHING,STREET,false,false,2422,024,49,1,06,1163523,1950306,2009,05/25/2009 08:09:05 AM,42.019278344,-87.673589736,"(42.019278344, -87.673589736)" -6931718,HR332379,05/20/2009 10:35:00 PM,022XX S SPRINGFIELD AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1013,010,22,30,18,1150783,1888547,2009,05/23/2009 08:51:24 AM,41.850066432,-87.722091933,"(41.850066432, -87.722091933)" -6927265,HR332355,05/20/2009 10:10:00 PM,065XX S WINCHESTER AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0726,007,15,67,05,1164527,1861089,2009,06/15/2009 08:34:52 AM,41.774438986,-87.672424208,"(41.774438986, -87.672424208)" -6932228,HR332208,05/20/2009 08:40:00 PM,016XX W HOWARD ST,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,false,false,2422,024,49,1,03,1164152,1950385,2009,05/26/2009 09:01:40 PM,42.019481794,-87.67127285,"(42.019481794, -87.67127285)" -6928144,HR331317,05/20/2009 12:50:00 PM,0000X W LAKE ST,2890,PUBLIC PEACE VIOLATION,OTHER VIOLATION,OTHER,false,false,0122,001,42,32,26,1176250,1901786,2009,05/22/2009 07:01:41 AM,41.885859631,-87.628225327,"(41.885859631, -87.628225327)" -6922902,HR328242,05/18/2009 06:27:00 PM,035XX S RHODES AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,false,0212,002,4,35,26,1180121,1881754,2009,05/20/2009 07:07:11 AM,41.830802465,-87.614626154,"(41.830802465, -87.614626154)" -6920859,HR326581,05/17/2009 08:56:00 PM,006XX N ORLEANS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1831,018,42,8,14,1173841,1904979,2009,05/18/2009 07:26:00 AM,41.894675384,-87.636976438,"(41.894675384, -87.636976438)" -6920869,HR326550,05/17/2009 08:05:00 PM,002XX E 35TH ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0211,002,2,35,18,1178558,1881799,2009,05/17/2009 09:27:55 PM,41.830961689,-87.620359451,"(41.830961689, -87.620359451)" -6953816,HR325531,05/17/2009 04:45:00 AM,016XX W NORTH AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESTAURANT,false,false,1433,014,1,24,04B,1165401,1910685,2009,06/30/2009 06:34:27 PM,41.910516831,-87.66781143,"(41.910516831, -87.66781143)" -6919612,HR324785,05/16/2009 06:30:00 PM,024XX W COLUMBUS AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,0835,008,18,66,04B,1161400,1855271,2009,05/23/2009 03:24:18 PM,41.75853893,-87.684048307,"(41.75853893, -87.684048307)" -7033755,HR429358,05/16/2009 05:00:00 PM,099XX S EMERALD AVE,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,RESIDENCE,false,true,2232,022,34,73,17,1173023,1838851,2009,07/28/2009 10:53:34 AM,41.713231615,-87.641934363,"(41.713231615, -87.641934363)" -6919037,HR323762,05/16/2009 04:02:00 AM,003XX N STATE ST,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,1831,018,42,8,04B,1176248,1902885,2009,05/26/2009 10:23:56 PM,41.888875392,-87.628199509,"(41.888875392, -87.628199509)" -6918608,HR323066,05/15/2009 06:10:00 PM,056XX S ARTESIAN AVE,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,0824,008,16,63,03,1160945,1867398,2009,05/25/2009 02:40:29 PM,41.791826532,-87.685380992,"(41.791826532, -87.685380992)" -6918420,HR322930,05/15/2009 08:00:00 AM,004XX N CAMPBELL AVE,0810,THEFT,OVER $500,STREET,false,false,1313,012,27,24,06,1159612,1903156,2009,10/21/2010 02:59:09 PM,41.889977924,-87.689285681,"(41.889977924, -87.689285681)" -6920825,HR326173,05/15/2009 02:00:00 AM,006XX W CORNELIA AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2331,019,46,6,03,1171416,1923536,2009,06/06/2009 03:34:40 PM,41.945650355,-87.645335918,"(41.945650355, -87.645335918)" -6916704,HR320757,05/14/2009 03:00:00 PM,069XX S DORCHESTER AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0332,003,5,43,05,1186781,1859058,2009,04/20/2010 02:40:46 PM,41.768367478,-87.59090987,"(41.768367478, -87.59090987)" -6918805,HR320613,05/14/2009 02:20:00 PM,041XX N SHERIDAN RD,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,2322,019,46,3,26,1168809,1927966,2009,10/31/2014 03:20:56 PM,41.957863467,-87.654789333,"(41.957863467, -87.654789333)" -6916448,HR319775,05/14/2009 12:20:00 AM,039XX N AVONDALE AVE,0460,BATTERY,SIMPLE,OTHER RAILROAD PROP / TRAIN DEPOT,true,false,1732,017,38,16,08B,1147816,1926257,2009,05/18/2009 08:54:30 AM,41.953604038,-87.732011274,"(41.953604038, -87.732011274)" -6915670,HR319473,05/13/2009 07:51:53 PM,118XX S VINCENNES AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2212,022,34,75,18,1164981,1825910,2009,05/14/2009 07:45:42 AM,41.677892734,-87.67175105,"(41.677892734, -87.67175105)" -6915145,HR319175,05/13/2009 04:00:00 PM,040XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1114,011,28,26,11,1149614,1901481,2009,05/14/2009 10:14:26 AM,41.885581599,-87.726046569,"(41.885581599, -87.726046569)" -6928552,HR317187,05/12/2009 03:44:00 PM,068XX S ROCKWELL ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,SIDEWALK,true,false,0832,,15,66,18,,,2009,03/06/2012 09:08:19 AM,,, -6913020,HR316764,05/12/2009 01:45:00 PM,076XX S ESSEX AVE,0890,THEFT,FROM BUILDING,ABANDONED BUILDING,true,false,0421,004,7,43,06,1194149,1854769,2009,05/13/2009 06:54:59 AM,41.756420445,-87.564043691,"(41.756420445, -87.564043691)" -6912628,HR316612,05/12/2009 12:18:00 PM,048XX W GLADYS AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1533,015,24,25,26,1144158,1897943,2009,05/12/2009 01:22:02 PM,41.875977103,-87.746171171,"(41.875977103, -87.746171171)" -6930452,HR333223,05/12/2009 12:00:00 PM,005XX W 62ND ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0711,007,20,68,26,1173821,1863855,2009,05/28/2009 11:57:42 AM,41.781828152,-87.638272102,"(41.781828152, -87.638272102)" -6923849,HR328988,05/12/2009 09:00:00 AM,018XX N LAWNDALE AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,ALLEY,false,false,2535,025,26,22,14,1151377,1912144,2009,05/20/2009 10:24:47 AM,41.914807501,-87.719292177,"(41.914807501, -87.719292177)" -6905453,HR313328,05/10/2009 09:00:00 AM,032XX W MONROE ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1124,011,28,,06,1154528,1899388,2009,05/11/2009 01:10:44 PM,41.879741351,-87.708057298,"(41.879741351, -87.708057298)" -6942380,HR312535,05/09/2009 09:59:20 PM,039XX W OHIO ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1122,011,27,23,18,1150205,1903681,2009,06/03/2009 11:03:15 AM,41.891607135,-87.723818899,"(41.891607135, -87.723818899)" -6914570,HR312038,05/09/2009 03:32:53 PM,055XX W THOMAS ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,1524,015,37,25,26,1139238,1906826,2009,07/20/2009 07:29:04 AM,41.900444115,-87.764019531,"(41.900444115, -87.764019531)" -6907001,HR311499,05/09/2009 10:10:00 AM,017XX W PETERSON AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,2012,020,40,77,26,1163633,1939883,2009,05/20/2009 03:44:36 PM,41.99067506,-87.673480562,"(41.99067506, -87.673480562)" -6903806,HR310676,05/08/2009 07:55:00 PM,103XX S WALLACE ST,0460,BATTERY,SIMPLE,RESIDENCE,true,false,2232,022,34,49,08B,1174099,1835970,2009,05/20/2009 06:12:08 AM,41.705301955,-87.638078881,"(41.705301955, -87.638078881)" -6937177,HR307225,05/07/2009 12:15:00 AM,025XX N MILWAUKEE AVE,0810,THEFT,OVER $500,APARTMENT,false,false,1414,014,35,22,06,1155520,1916651,2009,06/09/2009 06:56:20 PM,41.927092667,-87.703949735,"(41.927092667, -87.703949735)" -6901017,HR304555,05/05/2009 03:24:24 PM,009XX N DRAKE AVE,0560,ASSAULT,SIMPLE,STREET,false,true,1121,011,27,23,08A,1152570,1906369,2009,05/11/2009 01:18:16 PM,41.898936843,-87.715062147,"(41.898936843, -87.715062147)" -6900475,HR304310,05/05/2009 12:51:12 PM,049XX W QUINCY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,1533,015,28,25,08B,1143539,1898588,2009,05/10/2009 06:25:07 PM,41.87775866,-87.748427808,"(41.87775866, -87.748427808)" -6896343,HR303545,05/04/2009 09:30:00 PM,114XX S MICHIGAN AVE,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,true,false,0531,005,9,49,03,1178801,1829332,2009,05/05/2009 05:37:04 AM,41.686980882,-87.621061757,"(41.686980882, -87.621061757)" -6916384,HR296975,05/01/2009 09:30:00 AM,033XX W FILLMORE ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,POLICE FACILITY/VEH PARKING LOT,true,false,1134,,24,29,26,,,2009,07/14/2011 02:00:24 PM,,, -6890673,HR296786,05/01/2009 04:00:00 AM,026XX W CATALPA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2011,020,40,4,08B,1157822,1936389,2009,05/07/2009 04:03:50 PM,41.981208241,-87.694950569,"(41.981208241, -87.694950569)" -6923008,HR328128,04/30/2009 06:00:00 PM,062XX N ST LOUIS AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1711,017,50,13,05,1151873,1941218,2009,05/22/2009 01:04:51 PM,41.994578862,-87.71670136,"(41.994578862, -87.71670136)" -6915374,HR316917,04/30/2009 09:00:00 AM,001XX S MICHIGAN AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,BANK,false,false,0123,001,42,32,06,1177283,1899916,2009,05/18/2009 12:47:08 PM,41.880704896,-87.6244887,"(41.880704896, -87.6244887)" -6889026,HR295058,04/30/2009 07:45:00 AM,050XX W ALTGELD ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2521,025,31,19,07,1142275,1916204,2009,05/20/2009 10:57:51 AM,41.926122521,-87.752631116,"(41.926122521, -87.752631116)" -6888423,HR294383,04/29/2009 05:00:00 PM,099XX S HALSTED ST,2820,OTHER OFFENSE,TELEPHONE THREAT,STREET,false,true,2232,022,34,73,26,1172691,1839138,2009,05/13/2009 03:46:42 PM,41.714026494,-87.643141834,"(41.714026494, -87.643141834)" -6882653,HR289436,04/27/2009 12:30:00 AM,035XX W POLK ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1133,011,24,27,08B,1152700,1896176,2009,05/09/2009 02:45:43 PM,41.870963627,-87.714854483,"(41.870963627, -87.714854483)" -6880794,HR286686,04/25/2009 10:25:00 AM,073XX S ARTESIAN AVE,031B,ROBBERY,ARMED: OTHER FIREARM,RESIDENCE,false,false,0835,008,18,66,03,1161352,1855966,2009,05/12/2009 02:13:59 PM,41.760447106,-87.684205005,"(41.760447106, -87.684205005)" -6880268,HR284719,04/24/2009 10:05:00 AM,021XX S ARCHER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,MEDICAL/DENTAL OFFICE,false,false,2111,009,25,34,26,1174800,1889958,2009,05/23/2009 10:21:21 AM,41.85343539,-87.633903884,"(41.85343539, -87.633903884)" -6890507,HR284126,04/23/2009 09:10:00 PM,035XX S RHODES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0212,002,4,35,14,1180131,1881331,2009,05/01/2009 10:36:05 AM,41.829641493,-87.614602448,"(41.829641493, -87.614602448)" -6883567,HR283619,04/23/2009 05:00:00 PM,057XX S CICERO AVE,0890,THEFT,FROM BUILDING,AIRPORT/AIRCRAFT,true,false,0813,008,23,56,06,1145609,1866345,2009,05/02/2009 08:17:17 PM,41.789240349,-87.741642671,"(41.789240349, -87.741642671)" -6875822,HR281614,04/22/2009 02:59:00 PM,004XX W 58TH ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,0711,007,20,68,18,1174454,1866532,2009,04/22/2009 04:31:26 PM,41.789160063,-87.635871762,"(41.789160063, -87.635871762)" -6887410,HR281488,04/22/2009 01:00:00 PM,082XX S INGLESIDE AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,0631,006,8,44,26,1184040,1850483,2009,05/12/2009 09:59:06 PM,41.744901303,-87.601224312,"(41.744901303, -87.601224312)" -6989783,HR283093,04/22/2009 09:00:00 AM,007XX E 63RD ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0312,003,20,42,06,1182401,1863364,2009,06/26/2009 06:05:44 AM,41.780286179,-87.606831164,"(41.780286179, -87.606831164)" -6873978,HR280649,04/21/2009 09:45:00 PM,030XX W 53RD ST,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,STREET,true,false,0911,009,14,63,10,1157222,1869386,2009,04/25/2009 11:48:07 AM,41.797358067,-87.698978874,"(41.797358067, -87.698978874)" -6873891,HR280481,04/21/2009 09:10:00 PM,061XX S COTTAGE GROVE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0313,003,20,42,18,1182575,1864672,2009,04/21/2009 09:40:42 PM,41.783871415,-87.606152705,"(41.783871415, -87.606152705)" -6872173,HR277740,04/20/2009 12:00:00 PM,001XX N KOSTNER AVE,0320,ROBBERY,STRONGARM - NO WEAPON,APARTMENT,false,true,1114,011,28,26,03,1147080,1900271,2009,05/19/2009 09:31:01 PM,41.882310052,-87.73538296,"(41.882310052, -87.73538296)" -6869764,HR275368,04/18/2009 12:00:00 PM,083XX S SANGAMON ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0613,006,21,71,06,1171380,1849417,2009,04/20/2009 06:20:34 AM,41.742262266,-87.647643338,"(41.742262266, -87.647643338)" -6870207,HR273992,04/17/2009 09:00:00 PM,114XX S HARVARD AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0522,005,34,49,08B,1176039,1829136,2009,04/25/2009 10:40:58 AM,41.686505251,-87.63117884,"(41.686505251, -87.63117884)" -6867348,HR272857,04/17/2009 09:30:00 AM,005XX S CENTRAL AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,1513,015,29,25,06,1139098,1897087,2009,04/19/2009 08:47:03 AM,41.87372161,-87.76477078,"(41.87372161, -87.76477078)" -6867907,HR272442,04/17/2009 08:10:00 AM,018XX E 71ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,0324,003,5,43,08B,1189920,1858199,2009,04/20/2009 04:35:00 AM,41.765935383,-87.579431702,"(41.765935383, -87.579431702)" -6864488,HR269683,04/15/2009 05:00:00 PM,080XX S GREEN ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0621,006,21,71,04B,1171988,1851737,2009,04/20/2009 07:56:20 PM,41.748615337,-87.645347669,"(41.748615337, -87.645347669)" -6863691,HR269218,04/15/2009 12:05:00 PM,016XX N MONITOR AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2531,025,29,25,26,1137139,1910399,2009,04/20/2009 10:08:06 AM,41.910286827,-87.771643444,"(41.910286827, -87.771643444)" -6861273,HR267330,04/14/2009 12:07:00 PM,045XX N WOLCOTT AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,1922,019,47,4,06,1162960,1930248,2009,04/15/2009 01:49:20 PM,41.964250454,-87.676227865,"(41.964250454, -87.676227865)" -6865961,HR271503,04/13/2009 11:00:00 PM,005XX E 89TH PL,0560,ASSAULT,SIMPLE,APARTMENT,false,true,0633,006,6,44,08A,1181539,1845719,2009,05/21/2009 02:23:31 PM,41.731886365,-87.610534859,"(41.731886365, -87.610534859)" -6861557,HR266601,04/10/2009 06:00:00 PM,001XX E ONTARIO ST,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,HOTEL/MOTEL,false,true,1834,018,42,8,04B,1177661,1904570,2009,04/26/2009 01:48:23 PM,41.893467135,-87.622959264,"(41.893467135, -87.622959264)" -6854300,HR260570,04/10/2009 12:00:00 AM,109XX S AVENUE G,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0432,004,10,52,14,1203146,1833193,2009,04/13/2009 07:50:59 AM,41.696988889,-87.531808573,"(41.696988889, -87.531808573)" -6853099,HR259187,04/08/2009 09:00:00 AM,050XX S ST LAWRENCE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,false,false,0223,002,4,38,26,1181071,1871629,2009,04/21/2009 04:56:02 PM,41.802996815,-87.611452682,"(41.802996815, -87.611452682)" -6860919,HR257087,04/08/2009 01:00:14 AM,049XX W LAKE ST,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,true,false,1532,015,28,25,26,1143485,1901844,2009,04/16/2009 10:14:54 AM,41.88669453,-87.74854462,"(41.88669453, -87.74854462)" -6852857,HR255862,04/07/2009 10:30:00 AM,011XX S HAMILTON AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,JAIL / LOCK-UP FACILITY,true,false,1224,012,2,28,26,1162078,1895078,2009,04/12/2009 08:55:35 AM,41.867760034,-87.680455099,"(41.867760034, -87.680455099)" -6877687,HR260174,04/06/2009 03:00:00 PM,080XX S JUSTINE ST,1151,DECEPTIVE PRACTICE,ILLEGAL POSSESSION CASH CARD,APARTMENT,false,false,0612,006,21,71,11,1167362,1851427,2009,04/28/2009 12:39:13 PM,41.747864905,-87.662307857,"(41.747864905, -87.662307857)" -6847421,HR254473,04/06/2009 02:00:00 PM,007XX E 95TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0633,006,9,49,14,1182863,1842179,2009,04/13/2009 05:47:34 AM,41.722141576,-87.605794166,"(41.722141576, -87.605794166)" -6850011,HR254802,04/06/2009 03:00:00 AM,031XX N BROADWAY,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,true,false,2332,019,44,6,08A,1171728,1921463,2009,04/10/2009 10:12:16 AM,41.939955089,-87.644250381,"(41.939955089, -87.644250381)" -6848241,HR251490,04/04/2009 01:41:43 PM,120XX S YALE AVE,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,RESIDENCE,true,false,0523,005,9,53,26,1176815,1825190,2009,09/12/2009 09:55:54 AM,41.675659431,-87.628456234,"(41.675659431, -87.628456234)" -6846826,HR251161,04/04/2009 09:30:17 AM,053XX S INDIANA AVE,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,0232,002,3,40,03,1178468,1869582,2009,04/16/2009 03:48:40 PM,41.797439253,-87.621061201,"(41.797439253, -87.621061201)" -7556851,HR250927,04/04/2009 03:38:00 AM,117XX S WENTWORTH AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0522,,34,53,14,,,2009,06/16/2010 06:22:45 AM,,, -6844561,HR251251,04/04/2009 02:30:00 AM,086XX S RHODES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0632,006,6,44,08B,1181261,1848011,2009,04/05/2009 06:42:26 AM,41.738182283,-87.611482854,"(41.738182283, -87.611482854)" -6846373,HR250807,04/04/2009 01:21:47 AM,069XX S OAKLEY AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,0832,008,17,66,26,1162308,1858445,2009,04/07/2009 11:45:59 AM,41.767229988,-87.680632274,"(41.767229988, -87.680632274)" -6844819,HR251960,04/03/2009 11:00:00 AM,009XX E 79TH ST,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,0624,006,8,69,06,1183776,1852860,2009,04/05/2009 06:02:47 AM,41.7514302,-87.60211762,"(41.7514302, -87.60211762)" -6843105,HR249320,04/03/2009 10:30:00 AM,075XX S LAFAYETTE AVE,0560,ASSAULT,SIMPLE,ALLEY,false,false,0623,006,6,69,08A,1177104,1855009,2009,04/06/2009 07:26:45 AM,41.757480307,-87.626502402,"(41.757480307, -87.626502402)" -6849782,HR256535,04/02/2009 01:00:00 PM,077XX S TROY ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0835,008,18,70,06,1156762,1853036,2009,05/06/2009 11:16:23 AM,41.752500539,-87.701106554,"(41.752500539, -87.701106554)" -6839911,HR247128,04/01/2009 10:30:00 PM,029XX W 63RD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0823,008,15,66,08B,1157702,1862760,2009,04/17/2009 12:50:14 PM,41.779165659,-87.697398361,"(41.779165659, -87.697398361)" -6837547,HR245109,03/31/2009 05:09:00 PM,057XX S INDIANA AVE,0820,THEFT,$500 AND UNDER,ALLEY,true,false,0233,002,20,40,06,1178537,1867018,2009,04/01/2009 12:06:32 PM,41.790401826,-87.620886093,"(41.790401826, -87.620886093)" -6837545,HR245160,03/31/2009 03:45:00 PM,032XX S RIDGEWAY AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,1031,010,22,30,26,1151846,1882899,2009,04/01/2009 08:26:54 AM,41.834546782,-87.718338954,"(41.834546782, -87.718338954)" -6835248,HR243382,03/30/2009 07:30:00 AM,074XX S EXCHANGE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,GOVERNMENT BUILDING/PROPERTY,false,true,0334,003,7,43,26,1194914,1856037,2009,04/02/2009 07:06:50 AM,41.759881126,-87.561198467,"(41.759881126, -87.561198467)" -6834458,HR242285,03/30/2009 06:00:00 AM,014XX N FAIRFIELD AVE,0330,ROBBERY,AGGRAVATED,OTHER,false,false,1423,014,26,24,03,1157859,1909464,2009,04/07/2009 10:59:20 AM,41.907323548,-87.695551278,"(41.907323548, -87.695551278)" -6833403,HR242008,03/29/2009 08:50:00 PM,032XX S MAY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0924,009,11,60,26,1169219,1883235,2009,04/19/2009 08:01:06 AM,41.835109793,-87.654583013,"(41.835109793, -87.654583013)" -6833150,HR241479,03/29/2009 12:30:00 PM,006XX N CENTRAL PARK AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,true,1122,011,27,23,08A,1152224,1904210,2009,04/01/2009 08:21:03 AM,41.893019169,-87.716390022,"(41.893019169, -87.716390022)" -6832237,HR240302,03/28/2009 04:00:00 AM,042XX W BERTEAU AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1722,017,38,16,14,1147609,1927622,2009,03/29/2009 08:30:48 AM,41.957353688,-87.732737066,"(41.957353688, -87.732737066)" -6831036,HR238385,03/27/2009 09:30:00 AM,030XX N HAUSSEN CT,0820,THEFT,$500 AND UNDER,STREET,false,false,2523,025,30,21,06,1150125,1919903,2009,03/28/2009 08:55:25 AM,41.936123388,-87.723689228,"(41.936123388, -87.723689228)" -6831875,HR238360,03/27/2009 03:45:00 AM,045XX S CHRISTIANA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0821,008,14,58,14,1154761,1874178,2009,04/01/2009 09:51:36 AM,41.810557461,-87.707875902,"(41.810557461, -87.707875902)" -6830910,HR238347,03/26/2009 10:00:00 PM,013XX S KEDVALE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1011,010,24,29,14,1148893,1893339,2009,03/30/2009 09:42:39 AM,41.863252981,-87.728904792,"(41.863252981, -87.728904792)" -6826571,HR234615,03/25/2009 01:50:00 PM,012XX N LARRABEE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1822,018,27,8,18,1172064,1908588,2009,03/25/2009 03:20:27 PM,41.904618077,-87.643396202,"(41.904618077, -87.643396202)" -6860566,HR238341,03/25/2009 12:45:00 PM,002XX W WACKER DR,0820,THEFT,$500 AND UNDER,STREET,false,false,0113,001,42,32,06,1174481,1902081,2009,04/16/2009 07:46:09 AM,41.886708831,-87.634712582,"(41.886708831, -87.634712582)" -6822385,HR231143,03/23/2009 01:15:00 AM,010XX N RIDGEWAY AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,true,1112,011,27,23,08A,1151152,1906639,2009,03/26/2009 10:07:27 AM,41.899705673,-87.720263353,"(41.899705673, -87.720263353)" -6819291,HR228680,03/22/2009 12:45:00 AM,041XX W CERMAK RD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1012,010,24,29,08B,1148863,1889089,2009,03/24/2009 04:02:18 PM,41.851591035,-87.729124709,"(41.851591035, -87.729124709)" -6818797,HR227417,03/21/2009 09:38:00 AM,072XX S COLES AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,true,false,0334,003,7,43,15,1194252,1857863,2009,03/23/2009 09:16:51 AM,41.764908085,-87.56356476,"(41.764908085, -87.56356476)" -6816034,HR222807,03/18/2009 02:10:00 PM,035XX W 81ST PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0834,008,18,70,05,1154264,1850364,2009,03/30/2009 04:07:04 PM,41.745218134,-87.710331667,"(41.745218134, -87.710331667)" -6825623,HR222313,03/18/2009 12:13:04 PM,001XX N PINE AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,1523,015,29,25,04A,1139429,1900818,2009,03/28/2009 12:54:00 PM,41.883953938,-87.763464534,"(41.883953938, -87.763464534)" -6811061,HR221520,03/17/2009 11:45:00 PM,068XX S PEORIA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,0723,007,17,68,18,1171523,1859612,2009,03/18/2009 12:29:15 AM,41.770235522,-87.646821304,"(41.770235522, -87.646821304)" -6808721,HR219705,03/17/2009 01:10:00 AM,020XX W TOUHY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2424,024,49,1,08B,1161619,1947871,2009,10/31/2014 03:20:56 PM,42.012636708,-87.680664539,"(42.012636708, -87.680664539)" -6809917,HR210518,03/11/2009 06:50:47 PM,006XX S ST LOUIS AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,1133,011,24,27,04B,1153099,1897104,2009,03/22/2009 10:05:13 PM,41.873502261,-87.713364995,"(41.873502261, -87.713364995)" -6799560,HR208043,03/10/2009 11:55:00 AM,100XX W OHARE ST,0890,THEFT,FROM BUILDING,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,06,1100635,1934208,2009,03/16/2009 01:15:15 PM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6793473,HR204895,03/08/2009 02:20:00 PM,019XX E 73RD PL,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,0333,003,5,43,06,1190517,1856581,2009,04/24/2009 04:20:28 PM,41.761481078,-87.577295653,"(41.761481078, -87.577295653)" -6807495,HR204475,03/08/2009 05:15:00 AM,007XX W 79TH ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,0621,,17,71,08B,,,2009,03/23/2009 09:21:23 AM,,, -6802940,HR202610,03/06/2009 08:40:00 PM,053XX W DIVISION ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,2532,025,37,25,03,1140769,1907523,2009,04/04/2009 06:37:40 PM,41.902328747,-87.758378858,"(41.902328747, -87.758378858)" -6791617,HR201186,03/06/2009 09:15:00 AM,019XX N HAMLIN AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,2535,025,26,22,08B,1150696,1912604,2009,03/10/2009 11:53:29 AM,41.916083135,-87.72178205,"(41.916083135, -87.72178205)" -6789864,HR200784,03/06/2009 01:00:00 AM,014XX E 67TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,0332,003,5,43,08B,1187040,1860565,2009,03/11/2009 05:50:29 AM,41.772496678,-87.589912776,"(41.772496678, -87.589912776)" -6787140,HR200841,03/05/2009 10:00:00 PM,036XX W SUNNYSIDE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1723,017,33,14,06,1151544,1929706,2009,03/07/2009 09:33:25 AM,41.962995739,-87.718215671,"(41.962995739, -87.718215671)" -6792867,HR199209,03/04/2009 08:28:53 PM,002XX N HOMAN AVE,2220,LIQUOR LAW VIOLATION,ILLEGAL POSSESSION BY MINOR,STREET,true,false,1123,011,28,27,22,1153634,1901391,2009,03/22/2009 01:12:51 PM,41.885255615,-87.711286649,"(41.885255615, -87.711286649)" -6784664,HR198697,03/04/2009 11:40:00 AM,023XX N KEELER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2525,025,31,20,14,1148037,1915172,2009,03/05/2009 09:03:23 AM,41.923181585,-87.731484936,"(41.923181585, -87.731484936)" -6783695,HR198094,03/03/2009 06:00:00 PM,033XX N MEADE AVE,0810,THEFT,OVER $500,STREET,false,false,1633,016,36,17,06,1135102,1921336,2009,03/07/2009 09:33:04 AM,41.940335578,-87.778866913,"(41.940335578, -87.778866913)" -6779714,HR192584,02/28/2009 12:45:00 PM,121XX S EMERALD AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0523,005,34,53,08A,1173548,1824546,2009,03/05/2009 05:37:16 AM,41.673964907,-87.640433073,"(41.673964907, -87.640433073)" -6766970,HR184367,02/23/2009 01:00:00 PM,044XX S LOWE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0935,009,11,61,26,1172738,1875656,2009,02/27/2009 09:39:45 AM,41.814235289,-87.641894624,"(41.814235289, -87.641894624)" -6767839,HR183551,02/22/2009 07:30:00 PM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0634,006,21,44,06,1176799,1847235,2009,02/25/2009 08:41:19 AM,41.73615438,-87.627853768,"(41.73615438, -87.627853768)" -6791296,HR182299,02/21/2009 08:30:00 PM,029XX W IRVING PARK RD,0560,ASSAULT,SIMPLE,COMMERCIAL / BUSINESS OFFICE,true,false,1733,017,33,16,08A,1155800,1926401,2009,03/10/2009 01:10:27 PM,41.953841709,-87.702657263,"(41.953841709, -87.702657263)" -6764147,HR180671,02/20/2009 06:20:00 PM,081XX S RACINE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0613,006,21,71,06,1169784,1850555,2009,02/23/2009 07:00:53 AM,41.745419843,-87.65345813,"(41.745419843, -87.65345813)" -6763204,HR180260,02/20/2009 03:00:00 PM,044XX S WOODLAWN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2123,002,4,39,07,1184959,1875702,2009,02/24/2009 10:22:35 AM,41.814082934,-87.597065814,"(41.814082934, -87.597065814)" -6761650,HR179524,02/20/2009 12:00:00 AM,043XX W 63RD ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0813,008,13,65,26,1148715,1862517,2009,02/23/2009 10:33:42 AM,41.778676483,-87.730352249,"(41.778676483, -87.730352249)" -6760832,HR177989,02/18/2009 09:30:00 PM,054XX N MASON AVE,0810,THEFT,OVER $500,STREET,false,false,1622,016,45,11,06,1135510,1936051,2009,02/21/2009 08:55:05 AM,41.980707725,-87.77701623,"(41.980707725, -87.77701623)" -6759723,HR176230,02/18/2009 09:30:00 AM,035XX N OAK PARK AVE,1170,DECEPTIVE PRACTICE,IMPERSONATION,OTHER,true,false,1632,016,36,17,11,1130476,1923078,2009,02/23/2009 01:00:42 PM,41.945196674,-87.795829198,"(41.945196674, -87.795829198)" -6757667,HR174368,02/17/2009 12:15:00 PM,059XX S RICHMOND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0824,008,16,66,08B,1157779,1864780,2009,02/19/2009 11:09:36 AM,41.784707266,-87.697061271,"(41.784707266, -87.697061271)" -6764221,HR173495,02/16/2009 06:26:00 PM,008XX E 79TH ST,2091,NARCOTICS,FORFEIT PROPERTY,STREET,true,false,0624,006,6,69,26,1183006,1852842,2009,02/21/2009 11:27:56 AM,41.751398729,-87.604939826,"(41.751398729, -87.604939826)" -6758030,HR172414,02/16/2009 03:54:23 AM,006XX E 100TH PL,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0511,005,9,49,26,1182324,1838426,2009,02/22/2009 06:12:14 AM,41.711855363,-87.607884253,"(41.711855363, -87.607884253)" -6754221,HR171936,02/15/2009 05:45:00 PM,079XX S ASHLAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0611,006,21,71,08B,1167009,1852265,2009,02/20/2009 07:00:37 AM,41.750172042,-87.66357746,"(41.750172042, -87.66357746)" -6751778,HR168912,02/13/2009 06:05:00 PM,063XX S PULASKI RD,0320,ROBBERY,STRONGARM - NO WEAPON,PARKING LOT/GARAGE(NON.RESID.),false,false,0823,008,13,65,03,1150827,1862447,2009,06/24/2009 08:01:59 AM,41.778443492,-87.722611228,"(41.778443492, -87.722611228)" -6752565,HR170127,02/13/2009 05:30:00 PM,072XX S RIDGEWAY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0833,008,13,65,14,1152592,1856008,2009,02/15/2009 11:45:11 AM,41.76073927,-87.716309908,"(41.76073927, -87.716309908)" -6749708,HR166687,02/12/2009 11:00:00 AM,012XX N CALIFORNIA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1423,014,26,24,07,1157544,1908008,2009,02/20/2009 10:49:04 AM,41.903334582,-87.696748107,"(41.903334582, -87.696748107)" -6750199,HR167510,02/12/2009 12:01:00 AM,123XX S LOWE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0523,005,34,53,06,1174178,1822941,2009,02/16/2009 08:50:40 AM,41.6695466,-87.638174594,"(41.6695466, -87.638174594)" -6758424,HR160005,02/08/2009 10:00:00 AM,036XX W GRAND AVE,0620,BURGLARY,UNLAWFUL ENTRY,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,2535,025,27,23,05,1151480,1907878,2009,02/21/2009 11:33:07 AM,41.903099172,-87.719026012,"(41.903099172, -87.719026012)" -6751015,HR168139,02/07/2009 01:00:00 PM,011XX W WILSON AVE,0460,BATTERY,SIMPLE,COLLEGE/UNIVERSITY GROUNDS,false,false,2311,019,46,3,08B,1167577,1930654,2009,02/16/2009 07:08:53 AM,41.965266117,-87.659240822,"(41.965266117, -87.659240822)" -6745066,HR159485,02/07/2009 03:00:00 AM,013XX W 14TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,1231,012,2,28,08B,1167605,1893558,2009,02/13/2009 09:28:23 AM,41.863471887,-87.66020834,"(41.863471887, -87.66020834)" -6740534,HR157585,02/06/2009 03:00:00 PM,091XX S COTTAGE GROVE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0633,006,8,44,07,1183201,1844512,2009,02/07/2009 08:09:14 AM,41.728535757,-87.604483781,"(41.728535757, -87.604483781)" -6741158,HR157020,02/06/2009 02:30:00 PM,044XX S DR MARTIN LUTHER KING JR DR,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,"SCHOOL, PUBLIC, GROUNDS",false,false,0222,002,3,38,07,1179638,1875733,2009,02/16/2009 08:43:04 AM,41.814291445,-87.616582575,"(41.814291445, -87.616582575)" -6744521,HR162302,02/06/2009 12:00:00 PM,074XX S RHODES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0323,003,6,69,14,1181159,1855580,2009,02/10/2009 09:41:22 AM,41.758954805,-87.611623954,"(41.758954805, -87.611623954)" -6765667,HR183410,02/05/2009 05:00:00 PM,062XX S STEWART AVE,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,0711,,20,68,06,,,2009,02/23/2009 12:16:20 PM,,, -6742944,HR155205,02/05/2009 03:12:03 PM,007XX N LOREL AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,1524,015,37,25,08B,1140502,1904362,2009,02/09/2009 12:37:01 PM,41.893659493,-87.759437273,"(41.893659493, -87.759437273)" -6737824,HR154855,02/04/2009 11:00:00 PM,008XX N SACRAMENTO BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,1311,012,26,23,06,1156105,1905668,2009,03/07/2009 07:53:05 AM,41.896942594,-87.702097121,"(41.896942594, -87.702097121)" -6736905,HR154475,02/04/2009 07:00:00 PM,055XX W HENDERSON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1633,016,38,15,07,1138614,1921758,2009,02/15/2009 03:13:48 PM,41.941430529,-87.765948665,"(41.941430529, -87.765948665)" -6747393,HR161303,02/04/2009 01:30:00 PM,024XX S LEAVITT ST,1375,CRIMINAL DAMAGE,INSTITUTIONAL VANDALISM,"SCHOOL, PUBLIC, BUILDING",false,false,1034,010,25,31,14,1162043,1887909,2009,02/12/2009 08:48:19 AM,41.848088325,-87.680783616,"(41.848088325, -87.680783616)" -6736084,HR153419,02/04/2009 12:30:00 PM,076XX S EGGLESTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,false,0621,,17,69,26,,,2009,02/06/2009 06:18:23 AM,,, -6735717,HR153298,02/04/2009 11:20:00 AM,115XX S HARVARD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0522,005,34,53,18,1176058,1828602,2009,02/04/2009 12:06:10 PM,41.685039448,-87.631125219,"(41.685039448, -87.631125219)" -6739139,HR151193,02/02/2009 11:15:00 PM,080XX S ADA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0612,006,21,71,18,1168680,1851646,2009,02/09/2009 09:43:02 AM,41.748437564,-87.657471982,"(41.748437564, -87.657471982)" -6730997,HR148840,02/01/2009 10:15:00 AM,013XX W SCHOOL ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,1924,019,44,6,11,1166705,1922062,2009,02/08/2009 03:03:16 PM,41.941708087,-87.662694158,"(41.941708087, -87.662694158)" -6730699,HR147449,01/31/2009 12:50:00 PM,065XX S STEWART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0722,007,20,68,08B,1174786,1861707,2009,02/21/2009 10:05:51 AM,41.775912344,-87.634798158,"(41.775912344, -87.634798158)" -6731609,HR149260,01/31/2009 04:00:00 AM,094XX S ADA ST,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,2222,022,21,73,03,1168946,1842126,2009,02/19/2009 06:22:43 AM,41.722307581,-87.656771493,"(41.722307581, -87.656771493)" -6728315,HR144773,01/29/2009 02:00:00 PM,062XX S BISHOP ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0713,007,16,67,05,1167690,1863508,2009,02/03/2009 08:34:24 AM,41.781009737,-87.660759819,"(41.781009737, -87.660759819)" -6725895,HR143076,01/28/2009 05:30:00 PM,039XX W 68TH ST,0880,THEFT,PURSE-SNATCHING,RESIDENCE-GARAGE,false,false,0833,008,13,65,06,1151106,1859174,2009,01/31/2009 12:20:24 PM,41.769456414,-87.721673725,"(41.769456414, -87.721673725)" -6731130,HR142915,01/28/2009 04:00:00 PM,028XX W WILCOX ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1124,011,2,27,18,1157478,1899188,2009,02/01/2009 01:47:25 PM,41.879133044,-87.697230716,"(41.879133044, -87.697230716)" -6723453,HR140531,01/27/2009 08:35:00 AM,029XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,STREET,true,false,2113,001,2,35,08B,1177618,1885722,2009,01/29/2009 12:43:38 PM,41.841748055,-87.623689419,"(41.841748055, -87.623689419)" -6721918,HR139885,01/26/2009 06:45:00 PM,038XX W ROOSEVELT RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1011,010,24,29,18,1151045,1894398,2009,01/26/2009 07:38:15 PM,41.866117153,-87.720977189,"(41.866117153, -87.720977189)" -6726468,HR140085,01/26/2009 06:35:00 PM,108XX S EBERHART AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,0513,005,9,49,14,1181538,1833295,2009,01/30/2009 07:17:37 AM,41.697793362,-87.610920402,"(41.697793362, -87.610920402)" -6725333,HR138041,01/25/2009 01:30:00 PM,0000X W 95TH ST,141C,WEAPONS VIOLATION,UNLAWFUL USE OTHER DANG WEAPON,CTA PLATFORM,true,false,0634,006,21,49,15,1177743,1841988,2009,02/01/2009 06:58:29 AM,41.721734655,-87.624553594,"(41.721734655, -87.624553594)" -6721275,HR137304,01/24/2009 11:00:00 PM,051XX S ROCKWELL ST,0325,ROBBERY,VEHICULAR HIJACKING,STREET,false,false,0911,009,14,63,03,1159862,1870692,2009,02/04/2009 09:37:55 AM,41.800888034,-87.689261685,"(41.800888034, -87.689261685)" -6721638,HR137229,01/24/2009 08:59:00 PM,041XX S ASHLAND AVE,0560,ASSAULT,SIMPLE,RESTAURANT,true,false,0914,009,12,61,08A,1166337,1876935,2009,01/27/2009 01:28:35 PM,41.817883938,-87.665337653,"(41.817883938, -87.665337653)" -6719967,HR136688,01/24/2009 02:15:33 PM,002XX N LOREL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1523,015,28,25,08B,1140708,1901184,2009,02/07/2009 02:04:13 PM,41.884934886,-87.758758849,"(41.884934886, -87.758758849)" -6718020,HR132748,01/22/2009 07:09:00 AM,046XX S WASHTENAW AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0912,009,12,58,16,1159118,1873459,2009,01/23/2009 11:14:13 AM,41.808496306,-87.691914473,"(41.808496306, -87.691914473)" -6716231,HR131073,01/21/2009 08:20:00 AM,038XX W POLK ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1133,011,24,26,08B,1150640,1896045,2009,01/24/2009 02:03:31 PM,41.870644628,-87.722420958,"(41.870644628, -87.722420958)" -6735540,HR129853,01/20/2009 12:27:41 PM,048XX S ASHLAND AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0931,009,20,61,06,1166456,1872384,2009,03/04/2009 08:29:14 AM,41.805392947,-87.665030951,"(41.805392947, -87.665030951)" -6714020,HR130611,01/20/2009 12:00:00 PM,057XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0233,002,20,68,06,1175997,1866543,2009,01/26/2009 09:14:20 AM,41.78915576,-87.630213795,"(41.78915576, -87.630213795)" -6712066,HR127921,01/18/2009 10:00:00 PM,019XX N CLYBOURN AVE,0610,BURGLARY,FORCIBLE ENTRY,GROCERY FOOD STORE,false,false,1811,018,32,7,05,1168492,1912598,2009,02/04/2009 04:50:11 PM,41.915699841,-87.656400847,"(41.915699841, -87.656400847)" -6712254,HR126733,01/18/2009 05:16:59 AM,017XX W ALBION AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,2432,024,40,1,08B,1163464,1943927,2009,01/21/2009 08:41:25 AM,42.001775481,-87.673987647,"(42.001775481, -87.673987647)" -6710777,HR126082,01/17/2009 06:00:00 PM,046XX W NORTH AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,2533,025,37,25,06,1144852,1910260,2009,01/19/2009 07:39:31 AM,41.909763298,-87.743312036,"(41.909763298, -87.743312036)" -6708095,HR123388,01/16/2009 12:00:00 AM,016XX W OGDEN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1211,012,2,28,07,1165710,1899874,2009,01/21/2009 12:52:00 PM,41.880844081,-87.666984737,"(41.880844081, -87.666984737)" -6708068,HR122908,01/15/2009 06:00:00 PM,044XX W MADISON ST,0810,THEFT,OVER $500,STREET,false,false,1113,011,28,26,06,1146991,1899690,2009,02/04/2009 09:30:49 AM,41.880717422,-87.735724628,"(41.880717422, -87.735724628)" -6707940,HR122497,01/15/2009 02:18:00 PM,004XX W 57TH ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,false,false,0711,007,20,68,26,1174342,1867096,2009,01/16/2009 04:11:01 PM,41.790710231,-87.63626566,"(41.790710231, -87.63626566)" -6706492,HR121768,01/15/2009 12:39:00 AM,003XX E 111TH ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0531,,9,49,15,,,2009,01/16/2009 06:51:14 AM,,, -6704740,HR117958,01/12/2009 02:32:00 PM,046XX S LAMON AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0814,008,23,56,08B,1144437,1873254,2009,01/15/2009 11:04:38 AM,41.808221805,-87.74576692,"(41.808221805, -87.74576692)" -6701331,HR116180,01/11/2009 12:01:00 AM,005XX E 49TH ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0223,002,3,38,06,1180497,1872681,2009,01/11/2009 12:32:46 PM,41.805896802,-87.613525471,"(41.805896802, -87.613525471)" -6700681,HR115400,01/10/2009 04:20:00 PM,054XX S LOOMIS BLVD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,true,0933,009,16,61,26,1167878,1868820,2009,02/05/2009 12:28:59 PM,41.795582465,-87.659918035,"(41.795582465, -87.659918035)" -6699914,HR114647,01/10/2009 05:15:00 AM,064XX S COTTAGE GROVE AVE,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,SIDEWALK,false,false,0312,003,20,42,03,1182712,1862392,2009,01/22/2009 05:04:56 PM,41.777611705,-87.605721152,"(41.777611705, -87.605721152)" -6697739,HR112384,01/08/2009 06:42:00 PM,101XX S MICHIGAN AVE,031A,ROBBERY,ARMED: HANDGUN,APARTMENT,false,false,0511,005,9,49,03,1179086,1837403,2009,03/03/2009 07:29:58 AM,41.709122364,-87.619773631,"(41.709122364, -87.619773631)" -6697602,HR112128,01/08/2009 03:39:00 PM,025XX W AUGUSTA BLVD,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,APARTMENT,true,false,1312,012,1,24,18,1159173,1906604,2009,01/08/2009 06:26:03 PM,41.899448563,-87.690803059,"(41.899448563, -87.690803059)" -6695919,HR111090,01/07/2009 11:00:00 PM,006XX N CHRISTIANA AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,1121,011,27,23,26,1153893,1903940,2009,01/18/2009 10:39:54 AM,41.892245168,-87.710267584,"(41.892245168, -87.710267584)" -6694683,HR108280,01/06/2009 10:10:00 AM,038XX W OGDEN AVE,0810,THEFT,OVER $500,OTHER,true,false,1014,010,24,29,06,1151213,1889540,2009,01/08/2009 09:06:45 AM,41.852782936,-87.720487741,"(41.852782936, -87.720487741)" -6690906,HR106240,01/05/2009 02:00:00 AM,016XX N SPRINGFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2535,025,30,23,14,1150166,1910749,2009,01/06/2009 11:43:14 AM,41.911003195,-87.723777691,"(41.911003195, -87.723777691)" -6693140,HR105793,01/04/2009 06:13:25 PM,004XX E 71ST ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0322,003,6,69,18,1180177,1858075,2009,01/06/2009 09:59:56 AM,41.765823901,-87.615146556,"(41.765823901, -87.615146556)" -6690620,HR105985,01/04/2009 03:00:00 PM,072XX S JEFFERY BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0333,003,5,43,07,1190750,1857588,2009,02/14/2009 07:23:00 AM,41.764238746,-87.576409226,"(41.764238746, -87.576409226)" -6705867,HR103516,01/03/2009 03:34:00 AM,056XX S FAIRFIELD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,0824,008,16,63,14,1159052,1866810,2009,03/16/2009 07:56:21 AM,41.790251921,-87.692338403,"(41.790251921, -87.692338403)" -6992429,HR100653,01/01/2009 09:59:00 AM,058XX N RIDGE AVE,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2013,020,48,77,08B,1164952,1939187,2009,06/30/2009 11:49:00 AM,41.988737226,-87.668648861,"(41.988737226, -87.668648861)" -6685249,HR100018,12/31/2008 11:40:00 PM,021XX N MILWAUKEE AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,1431,014,1,22,26,1158676,1914100,2008,01/01/2009 10:31:22 AM,41.920028383,-87.692422811,"(41.920028383, -87.692422811)" -6685397,HP759820,12/31/2008 03:40:00 PM,100XX S PULASKI RD,0620,BURGLARY,UNLAWFUL ENTRY,OTHER,false,false,2211,022,19,74,05,1151458,1837934,2008,01/26/2009 06:45:39 AM,41.711163247,-87.720937475,"(41.711163247, -87.720937475)" -6684447,HP757966,12/30/2008 03:35:00 PM,055XX S PULASKI RD,0560,ASSAULT,SIMPLE,DRIVEWAY - RESIDENTIAL,false,false,0813,008,13,62,08A,1150605,1867610,2008,01/05/2009 08:00:35 AM,41.79261589,-87.723290808,"(41.79261589, -87.723290808)" -6686216,HP756013,12/29/2008 02:11:07 PM,036XX S CALIFORNIA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0913,009,12,58,18,1158255,1880375,2008,01/09/2009 12:12:25 PM,41.827492305,-87.694891308,"(41.827492305, -87.694891308)" -6678658,HP754977,12/28/2008 08:36:00 PM,071XX S ADA ST,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,SIDEWALK,true,false,0734,007,17,67,18,1168626,1857648,2008,12/28/2008 10:54:46 PM,41.764909018,-87.65749708,"(41.764909018, -87.65749708)" -6679833,HP754613,12/28/2008 03:00:00 PM,015XX N WALLER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2531,025,29,25,07,1138091,1909778,2008,04/02/2009 10:48:13 AM,41.908565569,-87.768161143,"(41.908565569, -87.768161143)" -6682763,HP754555,12/28/2008 02:55:00 PM,039XX W POLK ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1132,011,24,26,08B,1150260,1896116,2008,01/04/2009 10:28:50 PM,41.870846873,-87.723814227,"(41.870846873, -87.723814227)" -6678927,HP753480,12/27/2008 07:55:00 PM,073XX S CALUMET AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0323,003,6,69,14,1179707,1856456,2008,12/30/2008 08:06:43 AM,41.761391948,-87.616918674,"(41.761391948, -87.616918674)" -6677524,HP752228,12/27/2008 12:35:00 AM,002XX N LARAMIE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),VEHICLE NON-COMMERCIAL,true,false,1523,015,28,25,18,1141624,1901296,2008,12/27/2008 02:22:57 AM,41.885225349,-87.755392337,"(41.885225349, -87.755392337)" -6677440,HP752133,12/26/2008 10:25:00 PM,052XX S SPRINGFIELD AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,true,false,0822,008,23,62,04A,1151225,1869321,2008,12/29/2008 10:18:45 AM,41.797299034,-87.720972631,"(41.797299034, -87.720972631)" -6678420,HP750104,12/24/2008 01:00:00 PM,087XX S STATE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,VEHICLE NON-COMMERCIAL,false,false,0634,006,21,44,26,1177768,1847213,2008,01/01/2009 07:47:00 AM,41.736072158,-87.624304378,"(41.736072158, -87.624304378)" -6679793,HP747587,12/23/2008 02:50:00 PM,026XX W 23RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1034,010,28,30,18,1159306,1888676,2008,01/07/2009 12:12:51 PM,41.850249688,-87.69080749,"(41.850249688, -87.69080749)" -6691641,HP747507,12/21/2008 10:30:00 PM,021XX N DAMEN AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESTAURANT,false,false,1432,014,32,22,05,1162640,1914160,2008,01/10/2009 04:55:33 PM,41.92011081,-87.677856723,"(41.92011081, -87.677856723)" -6672755,HP744876,12/21/2008 03:55:00 PM,112XX S BISHOP ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,2234,022,34,75,04A,1168515,1830452,2008,01/04/2009 11:42:49 AM,41.690281559,-87.658685185,"(41.690281559, -87.658685185)" -6669105,HP742677,12/20/2008 02:15:00 AM,018XX N ROCKWELL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1434,014,1,22,08B,1158789,1912007,2008,12/20/2008 07:02:47 AM,41.914282715,-87.69206513,"(41.914282715, -87.69206513)" -6669370,HP741360,12/18/2008 02:55:00 PM,044XX S EVANS AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0222,002,3,38,08B,1181860,1875528,2008,01/09/2009 08:14:57 AM,41.813677763,-87.608438479,"(41.813677763, -87.608438479)" -6664034,HP737744,12/17/2008 12:00:00 AM,039XX W IRVING PARK RD,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1723,017,39,16,06,1149195,1926326,2008,12/17/2008 08:16:57 AM,41.953766716,-87.726940097,"(41.953766716, -87.726940097)" -6663088,HP735722,12/15/2008 05:00:00 PM,062XX S ASHLAND AVE,0460,BATTERY,SIMPLE,RESTAURANT,false,false,0714,007,16,67,08B,1166707,1863058,2008,12/18/2008 02:02:15 PM,41.779795922,-87.664376536,"(41.779795922, -87.664376536)" -6920809,HR325982,12/15/2008 12:00:00 PM,014XX S MICHIGAN AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0132,,2,33,06,,,2008,05/21/2009 07:11:05 PM,,, -6662294,HP735950,12/15/2008 08:00:00 AM,020XX N HOYNE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1432,014,32,22,14,1162063,1913708,2008,12/18/2008 10:53:21 AM,41.918882574,-87.679989372,"(41.918882574, -87.679989372)" -6860779,HR261467,12/12/2008 08:24:00 PM,020XX N OAKLEY AVE,1240,DECEPTIVE PRACTICE,UNLAWFUL USE OF A COMPUTER,RESIDENCE,false,false,1432,014,32,22,11,1160662,1913621,2008,06/01/2009 09:15:29 PM,41.918673013,-87.685139207,"(41.918673013, -87.685139207)" -6663261,HP730863,12/12/2008 07:30:00 PM,064XX W FULLERTON AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,2512,025,36,19,06,1133118,1915290,2008,12/17/2008 08:38:00 AM,41.923779638,-87.786300692,"(41.923779638, -87.786300692)" -6656630,HP727764,12/11/2008 08:40:00 AM,005XX N CENTRAL AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,true,false,1523,015,37,25,26,1138986,1902826,2008,12/13/2008 10:58:23 AM,41.889472207,-87.765042468,"(41.889472207, -87.765042468)" -6653475,HP726004,12/10/2008 08:00:00 AM,066XX N LAKEWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2432,024,40,1,14,1166400,1944217,2008,12/10/2008 10:23:49 AM,42.002508698,-87.663178176,"(42.002508698, -87.663178176)" -6654758,HP725485,12/09/2008 10:25:14 PM,001XX E PERSHING RD,031A,ROBBERY,ARMED: HANDGUN,TAVERN/LIQUOR STORE,false,false,0211,002,3,35,03,1178113,1879214,2008,01/17/2009 07:07:42 PM,41.823878367,-87.62207069,"(41.823878367, -87.62207069)" -6655894,HP726236,12/09/2008 04:10:00 PM,014XX E 61ST PL,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,"SCHOOL, PUBLIC, GROUNDS",false,false,0314,003,20,42,14,1186763,1864534,2008,12/15/2008 06:20:16 AM,41.783394513,-87.590802538,"(41.783394513, -87.590802538)" -6652044,HP724432,12/09/2008 12:00:00 AM,067XX S JEFFERY BLVD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,0332,003,5,43,26,1190664,1860694,2008,12/11/2008 05:51:52 AM,41.772763933,-87.576624274,"(41.772763933, -87.576624274)" -6685222,HP723627,12/08/2008 02:30:00 PM,019XX N HUMBOLDT BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1421,014,35,22,05,1156098,1912909,2008,01/06/2009 06:28:50 PM,41.916812663,-87.701927067,"(41.916812663, -87.701927067)" -6662060,HP719901,12/06/2008 03:45:00 PM,049XX S PRAIRIE AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0224,002,3,38,16,1178835,1872362,2008,12/19/2008 01:16:27 PM,41.805059472,-87.619630723,"(41.805059472, -87.619630723)" -6647482,HP719499,12/05/2008 02:30:00 PM,101XX S GREEN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2232,022,34,73,05,1172477,1837636,2008,12/08/2008 07:34:33 AM,41.70990949,-87.643969625,"(41.70990949, -87.643969625)" -6638653,HP711966,12/01/2008 07:15:00 PM,050XX W 47TH ST,0810,THEFT,OVER $500,STREET,false,false,0814,008,23,56,06,1143404,1873038,2008,12/02/2008 11:37:20 AM,41.807648385,-87.749561159,"(41.807648385, -87.749561159)" -6639018,HP711653,12/01/2008 12:45:00 PM,102XX S WOOD ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2213,022,19,72,05,1166122,1836572,2008,12/05/2008 07:48:31 AM,41.707126958,-87.667272813,"(41.707126958, -87.667272813)" -6646302,HP718151,12/01/2008 05:00:00 AM,054XX W ARMSTRONG AVE,0460,BATTERY,SIMPLE,CTA GARAGE / OTHER PROPERTY,false,false,1621,016,45,11,08B,1138965,1937391,2008,12/06/2008 01:20:49 PM,41.984322515,-87.76427699,"(41.984322515, -87.76427699)" -6728721,HR145749,12/01/2008 12:00:00 AM,003XX N WABASH AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,COMMERCIAL / BUSINESS OFFICE,false,true,0122,001,42,32,26,1176617,1902438,2008,02/03/2009 03:19:39 PM,41.887640471,-87.62685793,"(41.887640471, -87.62685793)" -6636767,HP710112,11/30/2008 10:00:00 PM,048XX N SHERIDAN RD,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,2024,020,46,3,26,1168713,1932579,2008,12/01/2008 10:52:19 AM,41.970523776,-87.655008001,"(41.970523776, -87.655008001)" -6636808,HP709772,11/30/2008 05:35:00 PM,002XX W GARFIELD BLVD,031A,ROBBERY,ARMED: HANDGUN,GAS STATION,false,false,0934,009,3,37,03,1175416,1868536,2008,12/17/2008 03:05:57 PM,41.794637775,-87.632284526,"(41.794637775, -87.632284526)" -6648895,HP721236,11/29/2008 02:00:00 PM,050XX N MONTCLARE AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,1613,016,41,10,06,1127941,1932857,2008,01/08/2009 11:49:17 AM,41.972074582,-87.804925436,"(41.972074582, -87.804925436)" -6633994,HP706551,11/28/2008 09:45:00 AM,031XX W OHIO ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1313,012,27,23,06,1155168,1903865,2008,12/01/2008 11:03:41 AM,41.892013859,-87.705587042,"(41.892013859, -87.705587042)" -6633095,HP705214,11/27/2008 03:00:00 PM,053XX S RACINE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0934,009,16,61,08B,1169270,1869394,2008,02/04/2009 11:54:27 AM,41.797127549,-87.65479691,"(41.797127549, -87.65479691)" -6630349,HP701493,11/25/2008 01:15:00 PM,095XX S LA SALLE ST,0460,BATTERY,SIMPLE,STREET,false,false,0511,005,21,49,08B,1176914,1841892,2008,12/01/2008 11:47:27 AM,41.721489907,-87.627592945,"(41.721489907, -87.627592945)" -6627754,HP700408,11/24/2008 07:50:00 PM,005XX W WINNECONNA PKWY,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0621,006,17,69,18,1174053,1852885,2008,11/24/2008 08:51:38 PM,41.751720034,-87.637746785,"(41.751720034, -87.637746785)" -6628038,HP699542,11/24/2008 11:56:20 AM,057XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,HOSPITAL BUILDING/GROUNDS,false,false,1513,015,29,25,08B,1138207,1894141,2008,11/27/2008 12:11:52 PM,41.865653532,-87.768113372,"(41.865653532, -87.768113372)" -6627087,HP698897,11/24/2008 12:14:00 AM,071XX S JEFFERY BLVD,0560,ASSAULT,SIMPLE,SIDEWALK,false,true,0333,003,5,43,08A,1190737,1858150,2008,12/01/2008 11:41:39 AM,41.765781234,-87.576438747,"(41.765781234, -87.576438747)" -6625131,HP696588,11/22/2008 01:43:50 PM,007XX N CENTRAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1524,015,37,25,08B,1138931,1904380,2008,11/26/2008 01:33:27 PM,41.893737577,-87.765206667,"(41.893737577, -87.765206667)" -6624440,HP696314,11/22/2008 09:50:00 AM,045XX N CLARK ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1922,019,47,3,06,1165539,1930383,2008,11/24/2008 09:03:09 AM,41.964566235,-87.666741798,"(41.964566235, -87.666741798)" -6623258,HP694898,11/21/2008 12:00:00 PM,040XX S OAKENWALD AVE,0810,THEFT,OVER $500,ALLEY,false,false,2123,002,4,36,06,1184100,1878322,2008,11/22/2008 09:56:06 AM,41.821292552,-87.60013466,"(41.821292552, -87.60013466)" -6629641,HP694345,11/21/2008 08:00:00 AM,017XX N CLYBOURN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1813,018,43,7,06,1169955,1911324,2008,11/27/2008 07:45:11 AM,41.912172102,-87.651063168,"(41.912172102, -87.651063168)" -6623928,HP690432,11/18/2008 11:36:54 PM,056XX S ASHLAND AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0715,007,15,67,18,1166591,1867439,2008,11/22/2008 08:03:00 AM,41.791820404,-87.664676902,"(41.791820404, -87.664676902)" -6612646,HP685205,11/15/2008 05:20:00 PM,079XX S SOUTH SHORE DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,true,0422,004,7,46,08B,1198478,1853116,2008,11/19/2008 09:13:01 AM,41.75177718,-87.548234406,"(41.75177718, -87.548234406)" -6613097,HP686172,11/15/2008 08:00:00 AM,009XX W WEBSTER AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1812,018,43,7,14,1169690,1914857,2008,11/17/2008 10:09:39 AM,41.921872624,-87.651933574,"(41.921872624, -87.651933574)" -6618756,HP691117,11/14/2008 10:00:00 PM,006XX N MONTICELLO AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1122,011,27,23,26,1151896,1904050,2008,11/23/2008 10:00:04 AM,41.892586578,-87.717598866,"(41.892586578, -87.717598866)" -6610665,HP683428,11/14/2008 02:30:00 PM,023XX W BLOOMINGDALE AVE,0810,THEFT,OVER $500,STREET,false,false,1434,014,1,22,06,1160311,1911958,2008,11/18/2008 09:30:54 AM,41.914116892,-87.686474898,"(41.914116892, -87.686474898)" -6609805,HP682076,11/13/2008 11:50:00 PM,024XX S WHIPPLE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,1033,010,12,30,08B,1156376,1887563,2008,11/18/2008 11:10:38 AM,41.847255145,-87.701591182,"(41.847255145, -87.701591182)" -6609759,HP682292,11/13/2008 11:30:00 PM,056XX S MELVINA AVE,0810,THEFT,OVER $500,STREET,false,false,0811,008,23,56,06,1135962,1866711,2008,11/23/2008 12:16:58 PM,41.790421461,-87.777007112,"(41.790421461, -87.777007112)" -6621069,HP681949,11/13/2008 09:28:00 PM,048XX W WABANSIA AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,ALLEY,true,false,2533,,37,25,18,,,2008,08/23/2010 12:10:32 PM,,, -6611470,HP678755,11/12/2008 07:40:06 AM,007XX E 111TH ST,2022,NARCOTICS,POSS: COCAINE,JAIL / LOCK-UP FACILITY,false,false,0531,,9,50,18,,,2008,11/08/1999 03:39:40 PM,,, -6604802,HP677855,11/11/2008 01:15:00 PM,0000X W RANDOLPH ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0122,001,42,32,06,1175960,1901321,2008,11/12/2008 08:49:21 AM,41.884590179,-87.629304266,"(41.884590179, -87.629304266)" -6624905,HP687723,11/11/2008 09:00:00 AM,096XX S LA SALLE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,OTHER,false,false,0511,,21,49,06,,,2008,12/03/2008 08:06:38 AM,,, -6602453,HP674673,11/09/2008 05:00:00 PM,059XX N KNOX AVE,0810,THEFT,OVER $500,DRIVEWAY - RESIDENTIAL,false,true,1711,017,39,12,06,1144319,1939382,2008,11/13/2008 12:10:03 PM,41.989686657,-87.744535119,"(41.989686657, -87.744535119)" -6609526,HP674616,11/09/2008 03:55:00 PM,021XX E 71ST ST,1330,CRIMINAL TRESPASS,TO LAND,SMALL RETAIL STORE,true,false,0333,003,5,43,26,1191967,1858243,2008,11/16/2008 08:03:15 AM,41.766006643,-87.571927449,"(41.766006643, -87.571927449)" -6712285,HR128230,11/08/2008 12:00:00 PM,016XX W PIERCE AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1433,014,1,24,06,1165146,1910481,2008,01/31/2009 01:06:28 PM,41.909962467,-87.668754008,"(41.909962467, -87.668754008)" -6640410,HP672495,11/08/2008 10:06:00 AM,038XX W AUGUSTA BLVD,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),VEHICLE NON-COMMERCIAL,true,false,1112,,27,23,18,,,2008,06/08/2010 11:59:10 AM,,, -6604356,HP672189,11/08/2008 03:26:05 AM,028XX E 77TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,false,false,0421,004,7,43,04B,1196731,1854848,2008,11/22/2008 12:52:58 PM,41.75657348,-87.554578757,"(41.75657348, -87.554578757)" -6599583,HP671302,11/07/2008 03:45:00 PM,080XX S CLYDE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0414,004,8,46,05,1191550,1852127,2008,12/15/2008 09:12:51 AM,41.749233952,-87.573653828,"(41.749233952, -87.573653828)" -6600239,HP672426,11/06/2008 08:30:00 PM,016XX W 101ST ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2213,022,19,72,14,1167080,1837611,2008,11/09/2008 07:09:44 AM,41.709957753,-87.663735023,"(41.709957753, -87.663735023)" -6600036,HP668836,11/06/2008 11:40:00 AM,009XX N DRAKE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1121,011,27,23,26,1152587,1905838,2008,11/09/2008 07:27:47 AM,41.897479391,-87.715013763,"(41.897479391, -87.715013763)" -6597621,HP667089,11/05/2008 12:55:00 PM,031XX S ARCHER AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,OTHER,false,false,0922,009,11,59,11,1165838,1883820,2008,11/13/2008 08:34:59 AM,41.836787733,-87.666972243,"(41.836787733, -87.666972243)" -6594106,HP666701,11/04/2008 02:35:00 PM,019XX W 23RD ST,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",false,false,1034,010,25,31,06,1164022,1888805,2008,12/05/2008 09:58:43 AM,41.850505543,-87.673495331,"(41.850505543, -87.673495331)" -6592576,HP664815,11/03/2008 06:30:00 PM,115XX S EGGLESTON AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0522,005,34,53,26,1175409,1828238,2008,11/11/2008 06:19:45 AM,41.684055068,-87.633511858,"(41.684055068, -87.633511858)" -6594326,HP660477,11/01/2008 04:45:00 PM,123XX S PRINCETON AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0523,005,34,53,08B,1176469,1823206,2008,11/10/2008 07:50:55 AM,41.670222782,-87.629781953,"(41.670222782, -87.629781953)" -6869736,HR276562,11/01/2008 03:00:00 PM,101XX S CALUMET AVE,1195,DECEPTIVE PRACTICE,FINAN EXPLOIT-ELDERLY/DISABLED,RESIDENCE,false,false,0511,005,9,49,11,1180411,1837736,2008,06/09/2009 01:30:25 PM,41.710005928,-87.614911195,"(41.710005928, -87.614911195)" -6584355,HP656536,10/30/2008 06:00:00 PM,016XX W 95TH ST,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,2221,022,21,73,06,1167014,1841746,2008,10/31/2008 10:02:08 AM,41.72130625,-87.663858979,"(41.72130625, -87.663858979)" -6585399,HP656512,10/30/2008 05:30:00 PM,115XX S UNION AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0524,005,34,53,14,1173569,1828313,2008,11/01/2008 10:09:58 AM,41.684301698,-87.640245301,"(41.684301698, -87.640245301)" -6585182,HP656300,10/30/2008 04:30:00 PM,070XX S EBERHART AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0322,003,6,69,05,1180757,1858319,2008,11/29/2008 03:48:42 PM,41.766480153,-87.61301319,"(41.766480153, -87.61301319)" -6596147,HP657548,10/30/2008 03:10:00 PM,018XX W 77TH ST,0460,BATTERY,SIMPLE,STREET,false,false,0611,006,17,71,08B,1165652,1853664,2008,11/13/2008 07:02:48 AM,41.754039975,-87.668510513,"(41.754039975, -87.668510513)" -6585877,HP656005,10/30/2008 01:30:00 PM,002XX W MONROE ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0112,001,2,32,06,1174504,1899912,2008,11/04/2008 11:41:17 AM,41.880756452,-87.634692965,"(41.880756452, -87.634692965)" -6592864,HP662904,10/30/2008 12:30:00 PM,029XX W POLK ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1135,011,28,27,08B,1156782,1896186,2008,11/29/2008 09:22:02 AM,41.870909382,-87.699867667,"(41.870909382, -87.699867667)" -6581987,HP652684,10/28/2008 04:05:00 PM,051XX W POTOMAC AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,RESIDENCE PORCH/HALLWAY,true,false,2533,025,37,25,26,1141934,1908129,2008,10/29/2008 02:22:45 PM,41.903970175,-87.754084545,"(41.903970175, -87.754084545)" -6611003,HP682851,10/27/2008 10:00:00 AM,0000X S MORGAN ST,0890,THEFT,FROM BUILDING,CONSTRUCTION SITE,false,false,1212,012,2,28,06,1169747,1899958,2008,12/13/2008 06:07:26 PM,41.880987614,-87.652158814,"(41.880987614, -87.652158814)" -6577155,HP648810,10/26/2008 12:15:00 PM,064XX S RICHARDS DR,0810,THEFT,OVER $500,STREET,false,false,0331,003,5,42,06,1189824,1862778,2008,11/21/2008 04:05:11 PM,41.778502832,-87.579636486,"(41.778502832, -87.579636486)" From 0175574864fea5ea75d6aa165018fda9be430a22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:32:37 -0700 Subject: [PATCH 056/248] Delete part-00003-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 953 ------------------ 1 file changed, 953 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00003-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00003-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00003-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index 17aaf10b..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00003-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,953 +0,0 @@ -6575372,HP647405,10/25/2008 03:05:00 PM,065XX W DIVERSEY AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,2512,025,36,19,06,1132342,1917855,2008,10/27/2008 07:41:19 AM,41.930831853,-87.789092247,"(41.930831853, -87.789092247)" -6577639,HP646072,10/24/2008 07:02:55 PM,011XX N LAWNDALE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1112,011,27,23,18,1151459,1907420,2008,10/31/2008 12:33:49 PM,41.901842788,-87.719115195,"(41.901842788, -87.719115195)" -6581023,HP644120,10/23/2008 07:05:00 PM,046XX N ST LOUIS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1723,017,33,14,14,1152171,1930764,2008,12/03/2008 07:46:30 PM,41.965886586,-87.715882373,"(41.965886586, -87.715882373)" -6573192,HP643972,10/23/2008 06:22:49 PM,009XX N HOMAN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1121,011,27,23,18,1153564,1906421,2008,10/31/2008 12:35:30 PM,41.899059821,-87.71140982,"(41.899059821, -87.71140982)" -6575004,HP647317,10/23/2008 05:00:00 PM,001XX W 110TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0513,005,34,49,08B,1177258,1831637,2008,10/28/2008 05:55:45 PM,41.693341013,-87.626641201,"(41.693341013, -87.626641201)" -6575433,HP643808,10/23/2008 04:45:00 PM,052XX W BLOOMINGDALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2532,025,37,25,08B,1141308,1911510,2008,10/31/2008 02:08:00 PM,41.913259596,-87.756300482,"(41.913259596, -87.756300482)" -6570277,HP642742,10/23/2008 01:07:18 AM,049XX W MONROE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1533,015,28,25,18,1143744,1899253,2008,10/26/2008 11:38:26 AM,41.879579666,-87.747658429,"(41.879579666, -87.747658429)" -6571206,HP643357,10/22/2008 05:30:00 PM,058XX N ROCKWELL ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2011,020,40,2,06,1157988,1938544,2008,10/24/2008 07:41:49 AM,41.987118261,-87.694280938,"(41.987118261, -87.694280938)" -6569513,HP642562,10/22/2008 07:30:00 AM,023XX W BELLE PLAINE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1912,019,47,5,26,1159899,1927126,2008,12/11/2008 12:50:17 PM,41.955747386,-87.687568778,"(41.955747386, -87.687568778)" -6568089,HP640873,10/21/2008 10:30:00 PM,036XX N LAKE SHORE DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2323,019,46,6,08B,1171850,1924677,2008,10/24/2008 06:53:00 AM,41.948771728,-87.64370696,"(41.948771728, -87.64370696)" -6567694,HP640791,10/21/2008 10:10:00 PM,036XX W ARMITAGE AVE,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,2535,025,26,22,26,1151653,1913001,2008,10/22/2008 08:16:49 AM,41.917153759,-87.718255602,"(41.917153759, -87.718255602)" -6580994,HP637970,10/20/2008 01:22:00 PM,110XX S MICHIGAN AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0513,005,9,49,06,1178748,1831610,2008,10/30/2008 08:20:43 AM,41.693233246,-87.621186839,"(41.693233246, -87.621186839)" -6562518,HP636007,10/18/2008 08:45:00 PM,007XX W GRAND AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1323,012,27,24,06,1171117,1903727,2008,10/22/2008 10:43:41 AM,41.891300049,-87.647017617,"(41.891300049, -87.647017617)" -6563441,HP635271,10/18/2008 06:45:43 PM,006XX N SPAULDING AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1121,011,27,23,26,1154212,1904405,2008,10/31/2008 12:38:19 PM,41.89351481,-87.709083601,"(41.89351481, -87.709083601)" -6569355,HP633189,10/17/2008 09:00:00 AM,008XX N MASSASOIT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,1511,015,29,25,14,1137908,1905230,2008,10/24/2008 11:21:20 AM,41.89608861,-87.768943324,"(41.89608861, -87.768943324)" -6581523,HP632069,10/17/2008 06:05:00 AM,030XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1331,012,2,27,16,1155826,1899898,2008,11/03/2008 11:50:24 AM,41.881114793,-87.703277455,"(41.881114793, -87.703277455)" -6559228,HP631981,10/17/2008 01:45:00 AM,001XX W 103RD ST,1330,CRIMINAL TRESPASS,TO LAND,TAVERN/LIQUOR STORE,true,false,0511,005,9,49,26,1176914,1836691,2008,10/18/2008 06:41:17 AM,41.707217652,-87.627749059,"(41.707217652, -87.627749059)" -6556668,HP629642,10/15/2008 08:42:00 PM,018XX E 71ST ST,1320,CRIMINAL DAMAGE,TO VEHICLE,CTA BUS,false,false,0324,003,5,43,14,1189753,1858195,2008,10/17/2008 08:32:01 AM,41.765928421,-87.580043932,"(41.765928421, -87.580043932)" -6907793,HR314911,10/15/2008 01:00:00 PM,015XX W HOLLYWOOD AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2012,020,40,77,26,1164724,1937827,2008,06/10/2009 10:27:05 PM,41.985010198,-87.66952624,"(41.985010198, -87.66952624)" -6557234,HP627032,10/14/2008 04:00:00 PM,006XX W 95TH ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2223,022,21,73,06,1173765,1841835,2008,10/17/2008 10:54:01 AM,41.721403752,-87.639128792,"(41.721403752, -87.639128792)" -6553414,HP626854,10/14/2008 01:45:00 PM,033XX N LOCKWOOD AVE,1330,CRIMINAL TRESPASS,TO LAND,"SCHOOL, PRIVATE, GROUNDS",true,false,1634,016,38,15,26,1140400,1921793,2008,10/15/2008 09:10:24 AM,41.941493945,-87.759383448,"(41.941493945, -87.759383448)" -6555052,HP625875,10/13/2008 10:40:00 PM,009XX N CENTRAL PARK AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1112,011,27,23,18,1152158,1906360,2008,10/15/2008 12:10:09 PM,41.898920283,-87.716575654,"(41.898920283, -87.716575654)" -6557669,HP625851,10/13/2008 10:30:00 PM,079XX S ASHLAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0611,006,21,71,18,1167009,1852265,2008,10/31/2008 01:06:59 PM,41.750172042,-87.66357746,"(41.750172042, -87.66357746)" -6552731,HP624778,10/13/2008 12:12:00 PM,064XX S CARPENTER ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0724,007,16,68,08A,1170464,1861944,2008,10/15/2008 12:20:30 PM,41.776657944,-87.650635301,"(41.776657944, -87.650635301)" -6550929,HP623613,10/12/2008 06:08:00 PM,015XX W 59TH ST,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0713,007,15,67,06,1166893,1865636,2008,10/16/2008 09:07:19 AM,41.786866302,-87.663621021,"(41.786866302, -87.663621021)" -6556806,HP622841,10/11/2008 11:00:00 PM,015XX E 71ST PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0324,003,5,43,14,1187517,1857844,2008,10/17/2008 10:30:09 AM,41.76501869,-87.58825066,"(41.76501869, -87.58825066)" -6549239,HP620806,10/11/2008 06:51:22 AM,066XX S SEELEY AVE,1020,ARSON,BY FIRE,SIDEWALK,false,false,0726,007,15,67,09,1163874,1860777,2008,02/27/2009 11:43:43 AM,41.773596561,-87.67482676,"(41.773596561, -87.67482676)" -6555935,HP621609,10/10/2008 11:45:00 PM,035XX N CLARK ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,2331,019,44,6,06,1168545,1923866,2008,10/22/2008 12:01:01 PM,41.946618639,-87.655879029,"(41.946618639, -87.655879029)" -6557159,HP620346,10/10/2008 11:00:00 PM,042XX W 56TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0813,008,13,62,18,1149286,1867178,2008,10/17/2008 12:05:35 PM,41.791455997,-87.72813862,"(41.791455997, -87.72813862)" -6547087,HP617934,10/09/2008 05:50:00 PM,0000X E 71ST ST,0560,ASSAULT,SIMPLE,DEPARTMENT STORE,false,false,0323,003,6,69,08A,1178077,1857919,2008,10/13/2008 09:46:26 AM,41.765443678,-87.622848431,"(41.765443678, -87.622848431)" -6546487,HP617442,10/09/2008 01:01:37 PM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176328,1900431,2008,10/15/2008 07:56:21 AM,41.882139677,-87.627979796,"(41.882139677, -87.627979796)" -6559579,HP615180,10/08/2008 09:45:00 AM,039XX W THOMAS ST,2017,NARCOTICS,MANU/DELIVER:CRACK,VEHICLE NON-COMMERCIAL,true,false,1112,011,27,23,18,1149553,1907004,2008,10/21/2008 09:54:32 AM,41.900738476,-87.726127044,"(41.900738476, -87.726127044)" -6767798,HP613661,10/07/2008 12:00:00 PM,055XX N WINTHROP AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,2023,020,48,77,26,1167904,1937091,2008,02/26/2009 08:19:57 AM,41.98292237,-87.657851909,"(41.98292237, -87.657851909)" -6547384,HP618050,10/07/2008 11:00:00 AM,049XX S KOSTNER AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENTIAL YARD (FRONT/BACK),false,false,0815,008,23,57,05,1147821,1871503,2008,12/01/2008 08:23:16 AM,41.803352641,-87.733399876,"(41.803352641, -87.733399876)" -6566064,HP633509,10/06/2008 09:00:00 AM,031XX N RICHMOND ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1411,014,33,21,07,1156205,1920696,2008,11/13/2008 11:30:40 AM,41.938178619,-87.701323073,"(41.938178619, -87.701323073)" -6553151,HP613397,10/05/2008 10:30:00 PM,071XX S RICHMOND ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,0831,008,18,66,26,1157901,1857121,2008,10/15/2008 07:58:48 AM,41.763687367,-87.696821801,"(41.763687367, -87.696821801)" -6540432,HP610897,10/05/2008 09:05:00 PM,060XX S CHAMPLAIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0313,003,20,42,08B,1181562,1865119,2008,10/23/2008 09:21:38 AM,41.785121473,-87.609852906,"(41.785121473, -87.609852906)" -6545210,HP609100,10/04/2008 05:30:00 AM,081XX S EVANS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0631,006,6,44,08B,1182599,1851279,2008,10/13/2008 09:44:43 AM,41.747119135,-87.606479654,"(41.747119135, -87.606479654)" -6539379,HP606845,10/03/2008 01:00:00 PM,100XX W OHARE ST,0810,THEFT,OVER $500,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,06,1100635,1934208,2008,10/09/2008 11:41:08 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6548073,HP619012,10/03/2008 10:30:00 AM,077XX S WINCHESTER AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0611,006,18,71,06,1164738,1853427,2008,10/12/2008 07:33:00 AM,41.753408946,-87.671866707,"(41.753408946, -87.671866707)" -6536668,HP610256,10/03/2008 01:00:00 AM,007XX W ALDINE AVE,0810,THEFT,OVER $500,STREET,false,false,2332,019,44,6,06,1170854,1922097,2008,10/06/2008 11:04:11 AM,41.941714043,-87.647443936,"(41.941714043, -87.647443936)" -6528369,HP602555,09/30/2008 10:30:00 PM,021XX W CHICAGO AVE,0810,THEFT,OVER $500,STREET,false,false,1312,012,32,24,06,1161879,1905351,2008,10/03/2008 12:57:24 PM,41.895954188,-87.680898948,"(41.895954188, -87.680898948)" -6531670,HP601401,09/30/2008 12:40:00 PM,007XX N PULASKI RD,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1111,011,28,23,08B,1149548,1904720,2008,10/03/2008 11:07:30 AM,41.894471042,-87.726204778,"(41.894471042, -87.726204778)" -6526364,HP600349,09/29/2008 06:31:00 PM,039XX W MADISON ST,0460,BATTERY,SIMPLE,DEPARTMENT STORE,true,false,1122,011,28,26,08B,1149793,1899754,2008,10/01/2008 12:21:48 PM,41.880839044,-87.725434164,"(41.880839044, -87.725434164)" -6525642,HP599340,09/29/2008 08:45:00 AM,052XX S MARSHFIELD AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,STREET,false,false,0932,009,16,61,08B,1166188,1870050,2008,10/20/2008 10:20:21 AM,41.798993893,-87.66608032,"(41.798993893, -87.66608032)" -6525247,HP598111,09/28/2008 02:40:00 PM,067XX S MAY ST,0810,THEFT,OVER $500,STREET,false,false,0724,007,17,68,06,1169779,1859844,2008,09/30/2008 12:20:02 PM,41.770910181,-87.65320736,"(41.770910181, -87.65320736)" -6526452,HP598072,09/28/2008 01:55:00 PM,0000X N WESTERN AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,1332,012,2,28,04A,1160452,1899984,2008,10/03/2008 12:01:43 PM,41.881256335,-87.686288658,"(41.881256335, -87.686288658)" -6528127,HP598096,09/28/2008 01:49:00 PM,049XX S KEDZIE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0821,008,14,63,06,1155841,1871546,2008,10/20/2008 01:26:12 PM,41.80331326,-87.703985238,"(41.80331326, -87.703985238)" -6536838,HP610239,09/28/2008 12:00:00 PM,0000X W ELM ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1824,018,42,8,06,1175967,1908131,2008,10/06/2008 10:11:44 AM,41.903277012,-87.629073298,"(41.903277012, -87.629073298)" -6539567,HP597567,09/28/2008 06:00:00 AM,047XX W CHICAGO AVE,2250,LIQUOR LAW VIOLATION,LIQUOR LICENSE VIOLATION,OTHER,true,false,1111,011,28,25,22,1144494,1904846,2008,10/07/2008 11:48:21 AM,41.894913437,-87.744763648,"(41.894913437, -87.744763648)" -6523903,HP596365,09/27/2008 01:45:00 PM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0634,006,21,44,06,1176799,1847235,2008,09/30/2008 06:11:44 AM,41.73615438,-87.627853768,"(41.73615438, -87.627853768)" -6522778,HP596247,09/27/2008 12:45:00 PM,053XX N OAK PARK AVE,502R,OTHER OFFENSE,VEHICLE TITLE/REG OFFENSE,ALLEY,false,false,1613,016,41,10,26,1130229,1934994,2008,10/20/2008 09:11:18 AM,41.977899689,-87.796462673,"(41.977899689, -87.796462673)" -6523767,HP595901,09/27/2008 09:20:00 AM,008XX W 88TH ST,0810,THEFT,OVER $500,STREET,false,false,2223,,21,71,06,,,2008,09/29/2008 06:13:48 AM,,, -6521924,HP595165,09/26/2008 11:30:00 AM,034XX W 51ST ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0822,008,14,63,05,1154340,1870558,2008,09/29/2008 01:48:43 PM,41.800632077,-87.70951647,"(41.800632077, -87.70951647)" -6528339,HP601993,09/26/2008 11:00:00 AM,049XX S BLACKSTONE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2124,002,4,39,07,1186723,1872346,2008,10/01/2008 08:05:33 AM,41.804832184,-87.590701769,"(41.804832184, -87.590701769)" -6517912,HP591247,09/24/2008 08:05:00 PM,001XX N KILDARE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1114,011,28,26,08B,1147662,1900464,2008,10/03/2008 11:56:00 AM,41.882828519,-87.733240875,"(41.882828519, -87.733240875)" -6517989,HP589842,09/24/2008 05:23:00 AM,061XX S MICHIGAN AVE,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PUBLIC, BUILDING",false,false,0311,003,20,40,05,1178245,1864514,2008,10/01/2008 10:47:24 PM,41.783537238,-87.622032731,"(41.783537238, -87.622032731)" -6514844,HP589276,09/23/2008 08:20:00 PM,010XX E 95TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0413,004,8,47,14,1184923,1842237,2008,09/24/2008 09:07:17 AM,41.722252713,-87.598246962,"(41.722252713, -87.598246962)" -6517611,HP588048,09/23/2008 10:03:29 AM,044XX S MICHIGAN AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,OTHER,false,false,0221,002,3,38,04B,1177865,1875401,2008,09/26/2008 01:32:41 PM,41.813420805,-87.623096133,"(41.813420805, -87.623096133)" -6520246,HP587630,09/22/2008 11:30:00 PM,065XX S MINERVA AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0321,003,20,42,06,1184963,1862074,2008,09/27/2008 07:17:42 AM,41.776686524,-87.597479042,"(41.776686524, -87.597479042)" -6513205,HP587908,09/22/2008 10:00:00 PM,070XX S ROCKWELL ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0832,008,18,66,05,1160292,1858039,2008,09/26/2008 08:54:03 AM,41.766157608,-87.688032966,"(41.766157608, -87.688032966)" -6510285,HP585700,09/22/2008 12:00:00 AM,007XX N PARKSIDE AVE,0810,THEFT,OVER $500,STREET,false,false,1511,015,29,25,06,1138497,1904575,2008,09/23/2008 09:51:04 AM,41.894280556,-87.766795898,"(41.894280556, -87.766795898)" -6513473,HP585474,09/21/2008 10:35:00 PM,063XX S CENTRAL AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,true,0813,008,13,64,06,1140220,1861647,2008,10/20/2008 08:53:35 AM,41.776448287,-87.761517297,"(41.776448287, -87.761517297)" -6512834,HP583583,09/20/2008 09:20:00 PM,047XX W HARRISON ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,1131,011,24,25,15,1144547,1896955,2008,09/25/2008 12:04:58 PM,41.873258598,-87.74476776,"(41.873258598, -87.74476776)" -6516044,HP583506,09/20/2008 08:25:00 PM,057XX S BISHOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0713,007,16,67,18,1167599,1866876,2008,09/29/2008 11:06:03 AM,41.790253892,-87.660996889,"(41.790253892, -87.660996889)" -6513663,HP582905,09/20/2008 02:15:00 PM,013XX W 78TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0612,006,17,71,14,1168874,1853086,2008,09/25/2008 07:11:00 AM,41.752384936,-87.656719603,"(41.752384936, -87.656719603)" -6519980,HP581044,09/19/2008 10:00:00 PM,115XX S MAY ST,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,RESIDENCE,false,false,0524,005,34,53,02,1170684,1828465,2008,10/13/2008 08:11:04 PM,41.684782017,-87.650802016,"(41.684782017, -87.650802016)" -6516941,HP590155,09/19/2008 09:00:00 PM,089XX S CHAPPEL AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,0413,004,8,48,11,1191356,1846298,2008,10/07/2008 08:11:37 AM,41.733243343,-87.574553043,"(41.733243343, -87.574553043)" -6504842,HP579511,09/18/2008 07:00:00 PM,062XX S ROCKWELL ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0825,008,15,66,05,1160150,1863238,2008,10/06/2008 08:39:50 AM,41.780427329,-87.688410549,"(41.780427329, -87.688410549)" -6502940,HP578190,09/17/2008 08:00:00 PM,023XX W JARVIS AVE,0810,THEFT,OVER $500,STREET,false,false,2411,024,49,2,06,1159051,1948914,2008,09/18/2008 07:28:28 AM,42.015552067,-87.690084649,"(42.015552067, -87.690084649)" -6500323,HP575269,09/15/2008 04:30:00 PM,074XX N ARTESIAN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2411,024,50,2,06,1158735,1949658,2008,09/18/2008 01:11:19 PM,42.017600134,-87.691226887,"(42.017600134, -87.691226887)" -6494594,HP570731,09/13/2008 10:00:00 PM,036XX N CLARK ST,0870,THEFT,POCKET-PICKING,SIDEWALK,false,false,1923,019,44,6,06,1168310,1924097,2008,09/16/2008 02:36:50 PM,41.947257606,-87.65673611,"(41.947257606, -87.65673611)" -6497963,HP574011,09/13/2008 12:00:00 AM,007XX N LATROBE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1524,015,28,25,26,1141178,1904572,2008,09/19/2008 10:40:07 AM,41.894223323,-87.756949341,"(41.894223323, -87.756949341)" -6493239,HP568800,09/12/2008 10:20:00 PM,073XX S CALIFORNIA AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0835,008,18,66,03,1158939,1855825,2008,09/16/2008 02:55:57 PM,41.760109807,-87.693052634,"(41.760109807, -87.693052634)" -6494075,HP568214,09/12/2008 05:30:00 PM,011XX E 54TH PL,0337,ROBBERY,ATTEMPT: ARMED-OTHER DANG WEAP,ALLEY,true,false,2131,002,4,41,03,1184542,1869336,2008,09/15/2008 11:06:05 AM,41.796623943,-87.598794952,"(41.796623943, -87.598794952)" -6496845,HP568218,09/12/2008 04:00:00 PM,006XX W WASHINGTON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0111,001,27,28,08B,1171775,1900726,2008,09/18/2008 03:13:49 PM,41.883050646,-87.644689562,"(41.883050646, -87.644689562)" -6495168,HP567769,09/12/2008 02:03:13 PM,058XX W MELROSE ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1633,016,38,15,08B,1137046,1920975,2008,10/16/2008 01:11:45 PM,41.93931023,-87.771730635,"(41.93931023, -87.771730635)" -6496591,HP568757,09/12/2008 11:00:00 AM,012XX N NOBLE ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1433,014,32,24,05,1166864,1908508,2008,09/21/2008 04:30:20 PM,41.904511728,-87.662499485,"(41.904511728, -87.662499485)" -6497004,HP567413,09/12/2008 10:30:00 AM,085XX S COTTAGE GROVE AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0632,006,6,44,06,1183016,1848397,2008,09/16/2008 07:20:14 AM,41.739200936,-87.605041045,"(41.739200936, -87.605041045)" -6519033,HP565828,09/11/2008 03:12:00 PM,048XX W ADAMS ST,2017,NARCOTICS,MANU/DELIVER:CRACK,VEHICLE NON-COMMERCIAL,true,false,1533,,28,25,18,,,2008,06/18/2010 04:43:24 PM,,, -6549469,HP621240,09/11/2008 03:00:00 PM,071XX S NORMAL BLVD,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0732,007,6,68,05,1174233,1857684,2008,10/27/2008 08:52:50 PM,41.764885076,-87.636944812,"(41.764885076, -87.636944812)" -6489511,HP565204,09/11/2008 09:00:00 AM,013XX N PAULINA ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1433,014,1,24,06,1164854,1909126,2008,09/12/2008 12:17:20 PM,41.906250459,-87.669865196,"(41.906250459, -87.669865196)" -6496371,HP563537,09/10/2008 11:30:44 AM,067XX S LAFLIN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,true,false,0725,007,17,67,05,1167463,1859744,2008,10/19/2008 09:31:01 AM,41.770685712,-87.661699822,"(41.770685712, -87.661699822)" -6487114,HP563447,09/10/2008 10:45:00 AM,004XX N CAMPBELL AVE,0810,THEFT,OVER $500,STREET,false,false,1313,012,26,24,06,1159694,1903083,2008,09/11/2008 11:11:24 AM,41.889775916,-87.688986553,"(41.889775916, -87.688986553)" -6498728,HP563314,09/10/2008 07:00:00 AM,053XX N OLCOTT AVE,0810,THEFT,OVER $500,STREET,false,false,1613,016,41,10,06,1125387,1934909,2008,09/18/2008 11:32:44 AM,41.977748333,-87.814271395,"(41.977748333, -87.814271395)" -6486566,HP561788,09/09/2008 01:30:00 PM,063XX S HALSTED PKWY,0460,BATTERY,SIMPLE,STREET,false,false,0723,007,20,68,08B,1172680,1863029,2008,09/17/2008 09:39:15 AM,41.779586747,-87.642479609,"(41.779586747, -87.642479609)" -6489550,HP561790,09/09/2008 01:20:00 PM,094XX S STATE ST,0560,ASSAULT,SIMPLE,SMALL RETAIL STORE,true,false,0634,006,6,49,08A,1177989,1842459,2008,09/12/2008 05:58:21 AM,41.723021579,-87.623638321,"(41.723021579, -87.623638321)" -6487595,HP561603,09/09/2008 12:00:00 PM,004XX N HAMLIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,1122,011,27,23,08B,1150934,1902819,2008,09/13/2008 10:25:26 AM,41.889227476,-87.721164183,"(41.889227476, -87.721164183)" -6481901,HP559265,09/08/2008 01:35:00 AM,001XX W ILLINOIS ST,4310,OTHER OFFENSE,POSSESSION OF BURGLARY TOOLS,PARKING LOT/GARAGE(NON.RESID.),false,false,1831,018,42,8,26,1174863,1903533,2008,09/09/2008 07:05:24 AM,41.890684658,-87.633266291,"(41.890684658, -87.633266291)" -6481348,HP558792,09/07/2008 06:00:00 PM,002XX N PARKSIDE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,1512,015,29,25,14,1138597,1901016,2008,09/11/2008 10:12:08 AM,41.884512396,-87.766514967,"(41.884512396, -87.766514967)" -6482023,HP558456,09/07/2008 03:44:16 PM,056XX S DR MARTIN LUTHER KING JR DR,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,APARTMENT,false,true,0234,002,20,40,04B,1179847,1867688,2008,09/19/2008 12:33:47 PM,41.792210478,-87.616062209,"(41.792210478, -87.616062209)" -6480370,HP555300,09/05/2008 08:07:00 PM,013XX W 51ST ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0933,009,16,61,03,1168492,1870910,2008,09/09/2008 05:44:14 PM,41.801304442,-87.657606228,"(41.801304442, -87.657606228)" -6478673,HP555185,09/05/2008 06:15:00 PM,024XX W 103RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,VEHICLE NON-COMMERCIAL,true,false,2211,022,19,72,18,1161762,1836305,2008,09/06/2008 06:31:21 AM,41.706485697,-87.683246597,"(41.706485697, -87.683246597)" -6479280,HP554201,09/05/2008 09:30:00 AM,034XX W WILSON AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,1723,017,33,14,08B,1152451,1930390,2008,09/08/2008 12:57:05 PM,41.964854764,-87.714862788,"(41.964854764, -87.714862788)" -6478528,HP555489,09/04/2008 06:00:00 PM,032XX W DIVERSEY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1412,014,35,22,14,1154324,1918399,2008,09/06/2008 09:01:50 AM,41.931913322,-87.708297723,"(41.931913322, -87.708297723)" -6476043,HP553350,09/03/2008 11:00:00 PM,109XX S GREEN BAY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0432,004,10,52,07,1200503,1832784,2008,09/05/2008 05:11:22 PM,41.695933642,-87.541499236,"(41.695933642, -87.541499236)" -6474939,HP551637,09/03/2008 06:30:00 PM,044XX S MARSHFIELD AVE,2025,NARCOTICS,POSS: HALLUCINOGENS,PARK PROPERTY,true,false,0914,009,12,61,18,1166042,1875192,2008,09/05/2008 01:44:56 PM,41.813107242,-87.666469425,"(41.813107242, -87.666469425)" -6484506,HP549953,09/02/2008 09:28:12 PM,058XX S WESTERN AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0824,008,16,63,18,1161338,1865609,2008,09/12/2008 10:14:48 AM,41.786909141,-87.683989469,"(41.786909141, -87.683989469)" -6471139,HP549344,09/02/2008 04:25:55 PM,058XX W WASHINGTON BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1512,015,29,25,05,1137394,1900191,2008,09/06/2008 06:39:34 PM,41.882270207,-87.770952468,"(41.882270207, -87.770952468)" -6468546,HP547552,08/31/2008 09:00:00 PM,018XX N WILMOT AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1434,014,32,22,06,1161051,1912503,2008,09/02/2008 08:51:27 AM,41.915597064,-87.683741098,"(41.915597064, -87.683741098)" -6468393,HP546864,08/31/2008 03:30:00 PM,001XX W 75TH ST,0810,THEFT,OVER $500,STREET,false,false,0731,007,6,69,06,1176438,1855293,2008,09/02/2008 12:14:30 PM,41.758274626,-87.628934664,"(41.758274626, -87.628934664)" -6590955,HP554289,08/29/2008 05:30:00 PM,029XX N PARKSIDE AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2514,025,31,19,06,1138226,1919296,2008,11/05/2008 08:29:19 AM,41.934681583,-87.767434475,"(41.934681583, -87.767434475)" -6515313,HP541796,08/29/2008 02:15:00 PM,044XX W WASHINGTON BLVD,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),VEHICLE NON-COMMERCIAL,true,false,1113,,28,26,18,,,2008,06/18/2010 04:41:41 PM,,, -6468121,HP541320,08/29/2008 09:20:00 AM,030XX W FLOURNOY ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,true,false,1134,011,28,27,05,1156331,1896919,2008,10/26/2008 10:37:31 AM,41.87292993,-87.701503645,"(41.87292993, -87.701503645)" -6465943,HP540025,08/28/2008 02:45:00 PM,023XX N CICERO AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,SIDEWALK,false,false,2522,025,31,19,08A,1144049,1915287,2008,12/19/2008 01:47:28 PM,41.923573028,-87.746135514,"(41.923573028, -87.746135514)" -6467019,HP540140,08/28/2008 11:00:00 AM,011XX W 17TH ST,2820,OTHER OFFENSE,TELEPHONE THREAT,STREET,false,true,1233,012,25,31,26,1169176,1891939,2008,09/10/2008 06:21:24 PM,41.858995273,-87.654488334,"(41.858995273, -87.654488334)" -6477557,HP538410,08/27/2008 06:10:00 PM,051XX S ASHLAND AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0932,009,16,61,16,1166498,1870832,2008,09/15/2008 02:21:23 PM,41.801133184,-87.664921177,"(41.801133184, -87.664921177)" -6459468,HP537307,08/27/2008 08:15:00 AM,023XX S DEARBORN ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,0134,001,2,33,26,1176323,1888852,2008,09/02/2008 10:04:51 AM,41.85036627,-87.628347321,"(41.85036627, -87.628347321)" -6459188,HP538191,08/26/2008 10:00:00 PM,031XX N WESTERN AVE,0810,THEFT,OVER $500,RESIDENCE PORCH/HALLWAY,false,false,1913,019,1,5,06,1159750,1920667,2008,08/28/2008 03:04:37 PM,41.938026586,-87.68829523,"(41.938026586, -87.68829523)" -6456985,HP536817,08/26/2008 08:40:00 PM,045XX N NARRAGANSETT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1622,016,38,15,14,1132910,1929398,2008,08/29/2008 09:46:20 AM,41.962497188,-87.786734419,"(41.962497188, -87.786734419)" -6457050,HP536734,08/26/2008 07:55:00 PM,038XX S CALUMET AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0211,002,3,35,18,1179121,1879320,2008,08/26/2008 11:14:19 PM,41.824146281,-87.618369486,"(41.824146281, -87.618369486)" -6454685,HP534213,08/25/2008 02:49:37 PM,055XX W ADAMS ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1522,015,29,25,04A,1139322,1898818,2008,08/26/2008 11:56:55 AM,41.878467628,-87.763906184,"(41.878467628, -87.763906184)" -6458065,HP533366,08/25/2008 12:10:00 AM,087XX S HERMITAGE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,2221,022,21,71,08B,1166239,1846839,2008,09/18/2008 03:15:15 PM,41.735298722,-87.666553155,"(41.735298722, -87.666553155)" -6462810,HP532627,08/24/2008 05:45:00 PM,076XX S MARYLAND AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0624,006,6,69,08B,1183268,1854443,2008,08/31/2008 10:09:42 AM,41.755785948,-87.603929994,"(41.755785948, -87.603929994)" -6451296,HP531376,08/23/2008 11:35:00 PM,007XX E BOWEN AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0213,002,4,38,06,1181905,1877599,2008,09/06/2008 11:21:57 AM,41.819359703,-87.608209313,"(41.819359703, -87.608209313)" -6452747,HP531968,08/23/2008 07:30:00 PM,017XX N LATROBE AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,true,2532,025,37,25,06,1141162,1911181,2008,08/27/2008 09:25:36 AM,41.912359478,-87.756844986,"(41.912359478, -87.756844986)" -6457868,HP529727,08/23/2008 02:19:27 AM,054XX S ARTESIAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0911,009,14,63,14,1160762,1868578,2008,08/29/2008 09:25:10 AM,41.79506839,-87.686019443,"(41.79506839, -87.686019443)" -6456339,HP529289,08/22/2008 09:26:07 PM,022XX S WHIPPLE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1033,010,24,30,18,1156341,1888756,2008,08/26/2008 02:06:03 PM,41.850529579,-87.701687428,"(41.850529579, -87.701687428)" -6449211,HP528772,08/22/2008 09:00:00 AM,081XX S SPAULDING AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0834,008,18,70,14,1155759,1850431,2008,08/24/2008 03:03:05 PM,41.74537216,-87.704851891,"(41.74537216, -87.704851891)" -6444593,HP525562,08/21/2008 12:34:34 AM,029XX S ARCHER AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,0923,009,11,60,04A,1168310,1885676,2008,09/01/2008 08:31:18 PM,41.841827789,-87.657847958,"(41.841827789, -87.657847958)" -6453657,HP533674,08/20/2008 12:00:00 PM,067XX S COTTAGE GROVE AVE,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,0321,003,20,42,06,1182674,1860695,2008,08/26/2008 08:00:10 AM,41.772955859,-87.605913081,"(41.772955859, -87.605913081)" -6443700,HP524183,08/20/2008 11:45:00 AM,037XX W GEORGE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2523,025,30,21,18,1150677,1919057,2008,08/20/2008 01:16:48 PM,41.933791105,-87.721682744,"(41.933791105, -87.721682744)" -6442156,HP523598,08/20/2008 02:00:00 AM,023XX W DICKENS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,1432,014,32,22,08B,1160500,1913823,2008,08/22/2008 08:18:57 AM,41.919230673,-87.685728806,"(41.919230673, -87.685728806)" -6452457,HP523275,08/19/2008 09:10:00 PM,015XX W 63RD ST,031A,ROBBERY,ARMED: HANDGUN,ALLEY,false,false,0725,007,16,67,03,1166918,1862905,2008,08/28/2008 07:38:37 PM,41.779371564,-87.663607349,"(41.779371564, -87.663607349)" -6442053,HP523401,08/19/2008 06:30:00 PM,068XX S TALMAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0831,008,15,66,14,1159846,1859276,2008,09/02/2008 10:57:39 AM,41.769561287,-87.689633794,"(41.769561287, -87.689633794)" -6475931,HP554039,08/19/2008 07:30:00 AM,008XX E 82ND ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,0631,006,8,44,26,1183566,1850853,2008,09/09/2008 11:43:03 AM,41.745927675,-87.602949591,"(41.745927675, -87.602949591)" -6443536,HP522611,08/18/2008 11:00:00 PM,033XX W WARREN BLVD,0330,ROBBERY,AGGRAVATED,VEHICLE NON-COMMERCIAL,false,false,1123,011,28,27,03,1154270,1900191,2008,09/21/2008 06:07:54 PM,41.88195002,-87.708983193,"(41.88195002, -87.708983193)" -6439571,HP521473,08/18/2008 10:00:00 PM,026XX N ORCHARD ST,0810,THEFT,OVER $500,STREET,false,false,1933,019,43,7,06,1171106,1917840,2008,08/21/2008 12:35:40 PM,41.930027122,-87.646643063,"(41.930027122, -87.646643063)" -6443342,HP521000,08/18/2008 06:32:00 PM,069XX S PAXTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0331,003,5,43,18,1192045,1859101,2008,08/20/2008 11:19:18 AM,41.768359166,-87.571613707,"(41.768359166, -87.571613707)" -6439309,HP520675,08/18/2008 04:30:00 PM,012XX N PARKSIDE AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2531,025,29,25,18,1138407,1907771,2008,08/18/2008 05:45:28 PM,41.903052402,-87.767048967,"(41.903052402, -87.767048967)" -6441969,HP520153,08/18/2008 12:05:00 PM,088XX S THROOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2222,022,21,71,18,1169176,1845854,2008,08/19/2008 08:00:43 PM,41.732532796,-87.655821557,"(41.732532796, -87.655821557)" -6440108,HP519837,08/18/2008 08:30:00 AM,079XX S CLYDE AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,0414,004,8,46,05,1191622,1852517,2008,09/14/2008 07:00:16 AM,41.750302401,-87.573377374,"(41.750302401, -87.573377374)" -6436756,HP517933,08/17/2008 02:55:00 AM,003XX N CENTRAL PARK AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1123,011,28,27,08B,1152291,1901795,2008,08/20/2008 10:27:12 AM,41.886390841,-87.716207743,"(41.886390841, -87.716207743)" -6437659,HP518319,08/16/2008 11:00:00 PM,010XX N HERMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1322,012,1,24,14,1164481,1907588,2008,08/19/2008 11:45:36 AM,41.902037986,-87.671278966,"(41.902037986, -87.671278966)" -6444155,HP517493,08/16/2008 07:00:00 PM,006XX N LOREL AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1524,015,37,25,06,1140530,1903517,2008,08/22/2008 09:20:11 AM,41.891340196,-87.759355197,"(41.891340196, -87.759355197)" -6447623,HP517181,08/16/2008 06:15:00 PM,008XX N STATE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1832,018,42,8,11,1176183,1905757,2008,08/26/2008 10:07:07 AM,41.896757773,-87.628351553,"(41.896757773, -87.628351553)" -6437067,HP516910,08/16/2008 03:00:00 PM,064XX W FULLERTON AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,2512,025,36,19,06,1133118,1915290,2008,08/19/2008 01:03:22 PM,41.923779638,-87.786300692,"(41.923779638, -87.786300692)" -6447111,HP520557,08/16/2008 02:00:00 PM,070XX S MARSHFIELD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0735,007,17,67,06,1166516,1858113,2008,08/24/2008 02:47:14 PM,41.766230274,-87.665217606,"(41.766230274, -87.665217606)" -6440410,HP515604,08/15/2008 07:30:00 PM,026XX N MOBILE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,2512,025,29,19,08B,1133999,1916967,2008,09/12/2008 08:53:32 PM,41.928366054,-87.783023953,"(41.928366054, -87.783023953)" -6435950,HP515410,08/15/2008 07:15:00 PM,020XX W DIVERSEY PKWY,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,CHA APARTMENT,false,false,1913,019,1,7,14,1162222,1918548,2008,08/19/2008 08:34:04 AM,41.932160522,-87.679269547,"(41.932160522, -87.679269547)" -6438009,HP514560,08/15/2008 11:59:04 AM,071XX S YALE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0731,007,6,69,18,1175907,1857293,2008,08/18/2008 11:49:06 AM,41.763774773,-87.63082086,"(41.763774773, -87.63082086)" -6433202,HP514090,08/15/2008 04:21:56 AM,064XX S EVANS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0312,003,20,42,08B,1182372,1862254,2008,08/19/2008 08:11:18 AM,41.777240908,-87.606971855,"(41.777240908, -87.606971855)" -6432360,HP514585,08/15/2008 12:00:00 AM,036XX S SANGAMON ST,0810,THEFT,OVER $500,CONSTRUCTION SITE,false,false,0922,,11,60,06,,,2008,08/15/2008 12:30:38 PM,,, -6433605,HP513637,08/14/2008 08:05:00 PM,044XX S CICERO AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0814,008,23,56,26,1145057,1874967,2008,08/17/2008 02:03:36 PM,41.812910886,-87.743449749,"(41.812910886, -87.743449749)" -6438082,HP512834,08/14/2008 01:00:00 PM,100XX W OHARE ST,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",AIRPORT/AIRCRAFT,true,false,1651,016,41,76,11,1100635,1934208,2008,09/01/2008 10:07:39 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6433344,HP511888,08/13/2008 10:26:00 PM,060XX S LOOMIS BLVD,0610,BURGLARY,FORCIBLE ENTRY,GROCERY FOOD STORE,false,false,0713,007,16,67,05,1167985,1864896,2008,08/21/2008 03:22:48 PM,41.784812242,-87.659638419,"(41.784812242, -87.659638419)" -6437645,HP511467,08/13/2008 06:50:09 PM,041XX W MADISON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1115,011,28,26,18,1148602,1899725,2008,08/18/2008 12:58:06 PM,41.880782531,-87.729808212,"(41.880782531, -87.729808212)" -6429396,HP511349,08/13/2008 03:00:00 PM,059XX W WABANSIA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2531,025,29,25,07,1136452,1910728,2008,10/19/2008 08:30:45 AM,41.91120196,-87.774159377,"(41.91120196, -87.774159377)" -6474645,HP509916,08/12/2008 10:25:00 PM,003XX N LOREL AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1523,015,28,25,18,1140695,1901543,2008,09/10/2008 02:54:36 PM,41.885920265,-87.758797762,"(41.885920265, -87.758797762)" -6439184,HP520578,08/12/2008 07:00:00 PM,007XX W FULLERTON AVE,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,false,false,1812,018,43,7,06,1171133,1916146,2008,08/25/2008 10:33:39 AM,41.925378115,-87.646593703,"(41.925378115, -87.646593703)" -6430096,HP508596,08/12/2008 10:10:57 AM,051XX S MICHIGAN AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0232,002,3,40,08A,1177999,1870570,2008,08/18/2008 10:25:17 PM,41.800161069,-87.622751126,"(41.800161069, -87.622751126)" -6425255,HP508497,08/11/2008 05:00:00 PM,089XX S COMMERCIAL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0423,004,10,46,14,1197650,1846464,2008,08/13/2008 07:26:17 AM,41.733544282,-87.551490045,"(41.733544282, -87.551490045)" -6425408,HP506910,08/11/2008 12:33:31 PM,021XX S STATE ST,0560,ASSAULT,SIMPLE,RESTAURANT,false,false,0134,001,3,33,08A,1176691,1890105,2008,08/22/2008 04:03:12 PM,41.853796292,-87.626958881,"(41.853796292, -87.626958881)" -6438657,HP520092,08/10/2008 08:00:00 PM,020XX W FULTON ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,WAREHOUSE,false,false,1332,012,27,28,26,1162955,1902051,2008,08/28/2008 11:06:01 AM,41.886876203,-87.677039735,"(41.886876203, -87.677039735)" -6422786,HP506193,08/10/2008 05:00:00 PM,078XX S KILPATRICK AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0834,008,13,70,05,1146478,1852138,2008,08/13/2008 09:11:33 AM,41.750237461,-87.738816365,"(41.750237461, -87.738816365)" -6488341,HP564760,08/10/2008 01:00:00 PM,078XX S WOODLAWN AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,RESIDENCE,false,false,0411,004,8,45,26,1185614,1853221,2008,09/24/2008 07:09:30 AM,41.752377758,-87.595370973,"(41.752377758, -87.595370973)" -6421988,HP505368,08/10/2008 03:00:00 AM,061XX N KEDVALE AVE,0810,THEFT,OVER $500,STREET,false,false,1711,017,39,12,06,1147536,1940656,2008,08/14/2008 08:52:39 AM,41.993121289,-87.732669453,"(41.993121289, -87.732669453)" -6441217,HP501660,08/08/2008 01:00:00 PM,080XX S UNION AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),VEHICLE NON-COMMERCIAL,true,false,0621,,21,71,18,,,2008,04/22/2010 02:13:39 PM,,, -6417188,HP500676,08/07/2008 11:15:00 PM,024XX W MADISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1125,011,2,28,08B,1160092,1899902,2008,08/08/2008 01:20:41 PM,41.88103876,-87.687612825,"(41.88103876, -87.687612825)" -6422706,HP500032,08/07/2008 06:18:10 PM,055XX S RACINE AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0712,007,16,68,08A,1169309,1867860,2008,08/18/2008 08:08:21 PM,41.792917234,-87.654698301,"(41.792917234, -87.654698301)" -6417657,HP500314,08/07/2008 06:30:00 AM,030XX N LOWELL AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2523,025,31,20,05,1146825,1920133,2008,08/16/2008 09:42:56 AM,41.936818284,-87.735811258,"(41.936818284, -87.735811258)" -6415067,HP498719,08/07/2008 01:35:00 AM,060XX W ADDISON ST,0860,THEFT,RETAIL THEFT,GAS STATION,false,false,1633,016,38,17,06,1135665,1923359,2008,08/08/2008 10:56:55 AM,41.945876893,-87.776749385,"(41.945876893, -87.776749385)" -6416567,HP499548,08/06/2008 12:00:00 AM,055XX S LA SALLE ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,OTHER,false,true,0233,002,3,68,26,1176284,1867882,2008,09/03/2008 09:17:57 AM,41.792823665,-87.629121251,"(41.792823665, -87.629121251)" -6412772,HP495295,08/05/2008 11:55:00 AM,002XX W GARFIELD BLVD,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,PARKING LOT/GARAGE(NON.RESID.),false,true,0934,002,3,37,04B,1175886,1868551,2008,08/08/2008 08:25:17 AM,41.794668405,-87.630560606,"(41.794668405, -87.630560606)" -6418702,HP493790,08/04/2008 03:21:01 PM,032XX W DOUGLAS BLVD,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1022,010,24,29,26,1154884,1893310,2008,08/08/2008 01:56:25 PM,41.863055553,-87.706912978,"(41.863055553, -87.706912978)" -6409049,HP493564,08/02/2008 10:00:00 PM,008XX N LAWNDALE AVE,0810,THEFT,OVER $500,STREET,false,false,1112,011,27,23,06,1151517,1905609,2008,08/05/2008 01:38:48 PM,41.896872086,-87.71894979,"(41.896872086, -87.71894979)" -6406057,HP490160,08/02/2008 04:05:00 PM,014XX W MORSE AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,2431,024,49,1,18,1165158,1946123,2008,08/02/2008 05:12:09 PM,42.007765385,-87.667692851,"(42.007765385, -87.667692851)" -6405504,HP489484,08/02/2008 07:00:00 AM,045XX S ALBANY AVE,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,OTHER,false,false,0912,009,14,58,26,1156420,1874464,2008,09/04/2008 10:34:32 AM,41.811308989,-87.701783111,"(41.811308989, -87.701783111)" -6406435,HP489371,08/02/2008 03:59:00 AM,006XX W FULTON ST,0610,BURGLARY,FORCIBLE ENTRY,CONVENIENCE STORE,true,false,1212,012,42,28,05,1171937,1902135,2008,01/13/2010 06:58:11 PM,41.886913464,-87.644053137,"(41.886913464, -87.644053137)" -6405736,HP489541,08/02/2008 12:00:00 AM,047XX S ASHLAND AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0931,009,20,61,06,1166424,1873486,2008,08/02/2008 02:13:29 PM,41.808417643,-87.66511689,"(41.808417643, -87.66511689)" -6430476,HP487338,07/31/2008 10:00:00 PM,046XX W 59TH ST,0620,BURGLARY,UNLAWFUL ENTRY,GROCERY FOOD STORE,false,false,0813,008,23,62,05,1146459,1865053,2008,09/02/2008 10:00:50 AM,41.785678796,-87.738558722,"(41.785678796, -87.738558722)" -6404162,HP485933,07/31/2008 01:05:00 PM,013XX E 79TH ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0411,004,8,45,06,1186630,1852923,2008,08/02/2008 07:48:34 AM,41.751536043,-87.591657232,"(41.751536043, -87.591657232)" -6439350,HP521004,07/31/2008 10:00:00 AM,011XX S CANAL ST,0560,ASSAULT,SIMPLE,MEDICAL/DENTAL OFFICE,false,false,0131,001,2,28,08A,1173340,1895546,2008,09/11/2008 02:51:22 PM,41.86880178,-87.639096707,"(41.86880178, -87.639096707)" -6400467,HP484968,07/30/2008 11:45:00 PM,075XX N CLARK ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2422,024,49,1,18,1162893,1950122,2008,07/31/2008 01:18:12 AM,42.018786747,-87.675913256,"(42.018786747, -87.675913256)" -6398107,HP483143,07/29/2008 10:00:00 PM,012XX N MILWAUKEE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1433,014,1,24,14,1165309,1908532,2008,08/01/2008 11:28:39 AM,41.904610813,-87.668210732,"(41.904610813, -87.668210732)" -6481026,HP482696,07/29/2008 08:05:00 PM,076XX S WOOD ST,1661,GAMBLING,GAME/DICE,RESIDENCE PORCH/HALLWAY,true,false,0611,006,17,71,19,1165711,1854169,2008,09/07/2008 05:01:12 PM,41.755424515,-87.668279991,"(41.755424515, -87.668279991)" -6398188,HP482526,07/29/2008 07:43:16 PM,023XX S HAMLIN AVE,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,1013,010,22,30,03,1151368,1888199,2008,09/12/2008 10:54:07 AM,41.849100031,-87.719953995,"(41.849100031, -87.719953995)" -6395035,HP480203,07/28/2008 07:00:00 AM,023XX N STOCKTON DR,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1814,018,43,7,07,1174057,1916222,2008,07/29/2008 09:21:32 AM,41.9255219,-87.635847361,"(41.9255219, -87.635847361)" -6396712,HP477214,07/27/2008 03:48:30 AM,042XX W JACKSON BLVD,0460,BATTERY,SIMPLE,STREET,false,false,1115,011,28,26,08B,1148369,1898393,2008,08/08/2008 09:59:58 AM,41.877131864,-87.73069812,"(41.877131864, -87.73069812)" -6391176,HP475973,07/26/2008 09:00:00 AM,051XX W WINONA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1623,016,45,11,14,1140979,1933717,2008,07/27/2008 11:00:02 AM,41.974203811,-87.756960591,"(41.974203811, -87.756960591)" -6402809,HP474280,07/23/2008 04:00:00 PM,089XX S YATES BLVD,0842,THEFT,AGG: FINANCIAL ID THEFT,RESIDENCE,false,false,0413,004,7,48,06,1193691,1845865,2008,08/08/2008 06:07:56 PM,41.731998345,-87.566013112,"(41.731998345, -87.566013112)" -6385864,HP469064,07/23/2008 02:25:06 AM,016XX W HOWARD ST,0460,BATTERY,SIMPLE,CTA PLATFORM,true,false,2422,024,49,1,08B,1163711,1950306,2008,07/25/2008 08:50:07 AM,42.019274366,-87.672897921,"(42.019274366, -87.672897921)" -6389060,HP468772,07/22/2008 10:33:21 PM,078XX S COLFAX AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0421,004,7,43,18,1194844,1853319,2008,08/02/2008 02:12:59 PM,41.752424452,-87.561544376,"(41.752424452, -87.561544376)" -6389668,HP473581,07/22/2008 04:00:00 PM,006XX E 50TH ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,0223,002,4,38,06,1181605,1872050,2008,08/10/2008 11:58:54 AM,41.80413975,-87.609481277,"(41.80413975, -87.609481277)" -6379603,HP467119,07/21/2008 10:00:00 PM,030XX N CHRISTIANA AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1412,014,35,21,06,1153485,1920007,2008,07/26/2008 08:57:40 AM,41.936342542,-87.711338068,"(41.936342542, -87.711338068)" -6390863,HP475833,07/20/2008 08:00:00 PM,010XX W HOLLYWOOD AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2022,020,48,77,06,1168317,1938078,2008,07/28/2008 10:45:10 AM,41.985621774,-87.656304299,"(41.985621774, -87.656304299)" -6377185,HP464482,07/20/2008 07:30:00 PM,023XX S STATE ST,0820,THEFT,$500 AND UNDER,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,0134,001,3,33,06,1176644,1888767,2008,07/22/2008 08:05:08 AM,41.850125786,-87.627171772,"(41.850125786, -87.627171772)" -6382928,HP463945,07/20/2008 12:30:00 PM,086XX S WABASH AVE,143B,WEAPONS VIOLATION,UNLAWFUL POSS OTHER FIREARM,RESIDENCE,true,false,0632,006,6,44,15,1178253,1847929,2008,07/24/2008 09:16:14 AM,41.738025971,-87.622505857,"(41.738025971, -87.622505857)" -6379788,HP463640,07/20/2008 09:45:00 AM,023XX S STATE ST,2027,NARCOTICS,POSS: CRACK,CHA PARKING LOT/GROUNDS,true,false,0134,001,3,33,18,1176649,1888583,2008,08/20/2008 05:40:34 AM,41.849620764,-87.627158975,"(41.849620764, -87.627158975)" -6375914,HP460943,07/18/2008 09:25:00 PM,032XX S LAKE SHORE DR NB,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,2122,002,4,35,08B,1181998,1883638,2008,07/22/2008 12:56:37 PM,41.835928991,-87.607681036,"(41.835928991, -87.607681036)" -6372355,HP459261,07/18/2008 01:55:00 AM,038XX S WOOD ST,1020,ARSON,BY FIRE,RESIDENCE-GARAGE,false,false,0922,009,11,59,09,1164939,1879407,2008,08/17/2008 02:43:50 AM,41.824697087,-87.670395991,"(41.824697087, -87.670395991)" -6398522,HP458241,07/17/2008 03:00:00 PM,015XX S KENNETH AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),VEHICLE NON-COMMERCIAL,true,false,1012,010,24,29,18,1147006,1892270,2008,07/30/2008 10:23:06 AM,41.860355759,-87.735859189,"(41.860355759, -87.735859189)" -6370000,HP457077,07/16/2008 09:00:00 PM,073XX N HOYNE AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,2424,024,49,1,26,1161013,1948868,2008,07/18/2008 09:20:21 AM,42.015385157,-87.682866436,"(42.015385157, -87.682866436)" -6372403,HP456934,07/16/2008 08:59:45 PM,008XX N PARKSIDE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,SIDEWALK,false,false,1511,015,29,25,14,1138571,1905229,2008,07/19/2008 10:07:31 AM,41.896073872,-87.766508246,"(41.896073872, -87.766508246)" -6373620,HP455088,07/15/2008 10:25:00 PM,059XX S WENTWORTH AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0233,007,20,68,03,1175935,1865807,2008,08/16/2008 04:13:42 PM,41.787137491,-87.630463188,"(41.787137491, -87.630463188)" -6365375,HP452822,07/14/2008 08:00:00 PM,014XX W 117TH ST,0460,BATTERY,SIMPLE,ALLEY,false,false,0524,005,34,53,08B,1169069,1827124,2008,07/17/2008 10:47:20 PM,41.681137046,-87.656752653,"(41.681137046, -87.656752653)" -6361663,HP449259,07/13/2008 12:01:00 AM,111XX S MICHIGAN AVE,031A,ROBBERY,ARMED: HANDGUN,RESTAURANT,false,false,0531,005,9,49,03,1178828,1831329,2008,07/16/2008 09:32:03 AM,41.692460326,-87.620902453,"(41.692460326, -87.620902453)" -6365337,HP450942,07/12/2008 10:00:00 PM,032XX W 61ST PL,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0823,008,15,66,08B,1155861,1863626,2008,07/18/2008 12:06:37 PM,41.781579254,-87.704124478,"(41.781579254, -87.704124478)" -6423427,HP498684,07/12/2008 12:01:00 AM,012XX S KEELER AVE,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,APARTMENT,false,false,1011,010,24,29,02,1148621,1893983,2008,09/25/2008 10:32:03 AM,41.865025446,-87.729886673,"(41.865025446, -87.729886673)" -6361806,HP447827,07/11/2008 01:35:00 AM,001XX W 109TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0513,005,34,49,14,1177397,1832637,2008,07/14/2008 08:47:12 AM,41.696082028,-87.626102233,"(41.696082028, -87.626102233)" -6363209,HP445121,07/10/2008 10:13:55 PM,067XX S BISHOP ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0725,007,17,67,14,1167789,1859954,2008,07/15/2008 02:56:30 PM,41.771254987,-87.660498808,"(41.771254987, -87.660498808)" -6369675,HP445095,07/10/2008 09:30:00 PM,049XX W HUBBARD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1532,015,28,25,18,1143113,1902514,2008,07/21/2008 09:37:55 AM,41.888540039,-87.749893988,"(41.888540039, -87.749893988)" -6377436,HP444430,07/10/2008 10:00:00 AM,011XX W GRANVILLE AVE,0460,BATTERY,SIMPLE,CTA TRAIN,false,false,2433,024,48,77,08B,1167492,1941290,2008,07/21/2008 09:58:39 AM,41.994453431,-87.659245596,"(41.994453431, -87.659245596)" -6459166,HP442935,07/09/2008 08:45:00 PM,077XX S BISHOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0612,006,17,71,18,1167938,1853543,2008,08/27/2008 07:47:16 PM,41.753659155,-87.660136542,"(41.753659155, -87.660136542)" -6355717,HP442577,07/09/2008 05:43:00 PM,054XX S HALSTED ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0934,009,20,61,18,1171864,1868438,2008,07/10/2008 01:23:42 PM,41.794447601,-87.645312473,"(41.794447601, -87.645312473)" -6372999,HP439977,07/08/2008 12:20:00 PM,055XX W ADAMS ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,1522,015,29,25,18,1139647,1898745,2008,07/23/2008 10:27:49 AM,41.878261384,-87.762714617,"(41.878261384, -87.762714617)" -6349922,HP438915,07/07/2008 01:00:00 PM,038XX S GILES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0211,002,3,35,14,1178932,1879554,2008,07/09/2008 11:11:38 AM,41.824792709,-87.619055721,"(41.824792709, -87.619055721)" -6346351,HP434098,07/05/2008 09:58:16 AM,095XX S JEFFERY AVE,0620,BURGLARY,UNLAWFUL ENTRY,SMALL RETAIL STORE,false,false,0431,004,7,51,05,1191218,1842095,2008,08/31/2008 04:10:26 PM,41.721713235,-87.575194208,"(41.721713235, -87.575194208)" -6345811,HP434080,07/05/2008 04:40:00 AM,005XX W ARLINGTON PL,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,1933,019,43,7,11,1172443,1916656,2008,07/11/2008 02:15:48 PM,41.926748687,-87.641765065,"(41.926748687, -87.641765065)" -6389156,HP436781,07/04/2008 08:00:00 PM,120XX S AVENUE O,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0433,004,10,55,07,1200929,1825906,2008,07/28/2008 11:58:11 AM,41.677048999,-87.54017139,"(41.677048999, -87.54017139)" -6346458,HP432796,07/04/2008 01:58:13 PM,022XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,0134,001,3,33,08B,1176624,1889501,2008,07/09/2008 10:41:15 AM,41.852140386,-87.627223023,"(41.852140386, -87.627223023)" -6343490,HP432118,07/04/2008 12:30:00 AM,002XX N LOCKWOOD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1523,015,28,25,07,1140960,1901207,2008,07/16/2008 01:49:28 PM,41.884993367,-87.757832886,"(41.884993367, -87.757832886)" -6344452,HP432392,07/03/2008 09:00:00 AM,100XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,RESIDENCE-GARAGE,false,false,0511,005,9,49,06,1176679,1838169,2008,07/05/2008 07:01:54 AM,41.711278772,-87.628565327,"(41.711278772, -87.628565327)" -6344482,HP428312,07/02/2008 01:40:00 AM,025XX W VAN BUREN ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,false,false,1125,011,2,28,15,1159763,1898126,2008,07/07/2008 10:43:36 AM,41.876172038,-87.688869862,"(41.876172038, -87.688869862)" -6338477,HP425984,06/30/2008 10:00:00 PM,074XX S HALSTED ST,0460,BATTERY,SIMPLE,STREET,false,false,0733,007,17,68,08B,1172216,1855472,2008,07/02/2008 11:00:21 AM,41.758859648,-87.644402602,"(41.758859648, -87.644402602)" -6336777,HP425962,06/29/2008 07:30:00 PM,075XX S WINCHESTER AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,0611,006,18,71,06,1164711,1854380,2008,07/01/2008 07:56:33 AM,41.756024684,-87.671938804,"(41.756024684, -87.671938804)" -6334746,HP423400,06/29/2008 03:05:00 PM,105XX S HOMAN AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,2211,022,19,74,08A,1155505,1834418,2008,07/02/2008 06:24:14 AM,41.701434755,-87.706210038,"(41.701434755, -87.706210038)" -6364628,HP420512,06/28/2008 12:25:00 AM,038XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1122,011,28,26,16,1150998,1899783,2008,07/22/2008 02:33:59 PM,41.880895116,-87.721008704,"(41.880895116, -87.721008704)" -6396627,HP420412,06/27/2008 11:21:36 PM,059XX S WHIPPLE ST,2022,NARCOTICS,POSS: COCAINE,APARTMENT,true,false,0824,008,16,66,18,1157099,1865292,2008,07/29/2008 12:04:43 PM,41.786126048,-87.699540616,"(41.786126048, -87.699540616)" -6332601,HP419842,06/27/2008 06:20:17 PM,005XX W ENGLEWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,0711,007,20,68,08B,1173815,1863435,2008,12/19/2010 09:50:33 AM,41.780675758,-87.638306546,"(41.780675758, -87.638306546)" -6341546,HP419573,06/27/2008 03:58:00 PM,055XX S TRIPP AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0813,008,13,62,06,1149016,1867520,2008,07/04/2008 12:19:16 PM,41.79239971,-87.729119856,"(41.79239971, -87.729119856)" -6396050,HP419337,06/27/2008 02:07:51 PM,031XX W 63RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0823,008,15,66,18,1156659,1862652,2008,07/29/2008 12:00:25 PM,41.778890394,-87.701225045,"(41.778890394, -87.701225045)" -6333922,HP418364,06/26/2008 11:15:00 PM,054XX N EAST RIVER RD,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,false,true,1614,016,41,76,26,1116672,1934828,2008,07/12/2008 08:06:15 PM,41.977666497,-87.846323236,"(41.977666497, -87.846323236)" -6333473,HP416848,06/26/2008 08:30:00 AM,019XX W BELLE PLAINE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1923,019,47,5,26,1162802,1927203,2008,07/01/2008 11:24:03 AM,41.955898155,-87.67689455,"(41.955898155, -87.67689455)" -6325668,HP414841,06/24/2008 08:00:00 PM,108XX S HOYNE AVE,0810,THEFT,OVER $500,STREET,false,false,2212,022,19,75,06,1164323,1832709,2008,06/26/2008 07:24:11 AM,41.696564228,-87.673969083,"(41.696564228, -87.673969083)" -6326867,HP412355,06/23/2008 08:59:27 PM,004XX W 76TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,0621,006,17,69,08B,1174464,1854570,2008,06/27/2008 05:48:06 AM,41.756334753,-87.636190632,"(41.756334753, -87.636190632)" -6336493,HP425696,06/23/2008 05:00:00 PM,019XX W ARMITAGE AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1434,014,32,22,06,1163096,1913275,2008,07/01/2008 09:38:20 AM,41.917672735,-87.676206217,"(41.917672735, -87.676206217)" -6328635,HP408964,06/22/2008 12:29:45 AM,0000X W CHICAGO AVE,0560,ASSAULT,SIMPLE,TAVERN/LIQUOR STORE,false,false,1832,018,42,8,08A,1176140,1905765,2008,07/01/2008 08:30:38 AM,41.896780695,-87.628509241,"(41.896780695, -87.628509241)" -6319624,HP409355,06/21/2008 09:00:00 PM,013XX W 72ND PL,0810,THEFT,OVER $500,STREET,false,false,0734,007,17,67,06,1168434,1856642,2008,06/23/2008 10:02:51 AM,41.76215256,-87.658229754,"(41.76215256, -87.658229754)" -6317746,HP406652,06/20/2008 07:00:00 PM,021XX N NARRAGANSETT AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2512,025,36,19,07,1133352,1913861,2008,10/08/2008 10:28:52 AM,41.919854191,-87.785474416,"(41.919854191, -87.785474416)" -6318125,HP406055,06/20/2008 01:15:00 PM,007XX N TROY ST,4388,OTHER OFFENSE,VIO BAIL BOND: DOM VIOLENCE,RESIDENCE PORCH/HALLWAY,true,true,1313,012,27,23,26,1155200,1904779,2008,07/08/2008 12:17:56 PM,41.894521319,-87.705444955,"(41.894521319, -87.705444955)" -6318930,HP405312,06/20/2008 02:04:48 AM,083XX S MACKINAW AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0424,004,10,46,08B,1199885,1850118,2008,06/23/2008 06:10:42 AM,41.743515118,-87.543179415,"(41.743515118, -87.543179415)" -6315270,HP404249,06/19/2008 12:00:00 PM,004XX W 44TH PL,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0935,009,11,61,06,1173952,1875388,2008,07/14/2008 04:15:27 PM,41.813472981,-87.637449531,"(41.813472981, -87.637449531)" -6315744,HP404528,06/19/2008 10:00:00 AM,006XX W OAKDALE AVE,0810,THEFT,OVER $500,STREET,false,false,2333,019,44,6,06,1171147,1919892,2008,06/20/2008 10:15:37 AM,41.935656997,-87.646431986,"(41.935656997, -87.646431986)" -6313871,HP402725,06/18/2008 05:15:00 PM,097XX S GREENWOOD AVE,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0511,005,8,50,08A,1185296,1840679,2008,06/22/2008 07:53:41 AM,41.717968633,-87.596929546,"(41.717968633, -87.596929546)" -6314497,HP403644,06/18/2008 04:30:00 PM,012XX W ADAMS ST,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,GOVERNMENT BUILDING/PROPERTY,false,false,1213,012,27,28,14,1168061,1899194,2008,06/20/2008 12:40:58 PM,41.878927695,-87.65837172,"(41.878927695, -87.65837172)" -6309726,HP399689,06/17/2008 02:12:00 AM,031XX N PINE GROVE AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,2332,019,44,6,11,1172392,1921313,2008,06/18/2008 09:50:43 AM,41.939528811,-87.641814441,"(41.939528811, -87.641814441)" -6318273,HP400600,06/16/2008 08:01:00 PM,001XX N STATE ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,DEPARTMENT STORE,false,false,0122,001,42,32,11,1176390,1900949,2008,07/14/2008 03:03:08 PM,41.883559699,-87.627736496,"(41.883559699, -87.627736496)" -6311634,HP398166,06/16/2008 10:37:00 AM,064XX S OAKLEY AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,false,false,0825,008,15,66,24,1162215,1862077,2008,06/20/2008 03:28:21 PM,41.777198638,-87.680872163,"(41.777198638, -87.680872163)" -6309924,HP397781,06/16/2008 03:45:00 AM,121XX S PARNELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0523,005,34,53,14,1174864,1824506,2008,06/18/2008 08:12:59 AM,41.673826,-87.635617558,"(41.673826, -87.635617558)" -6306693,HP397040,06/15/2008 05:00:00 PM,030XX N FRANCISCO AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1411,014,33,21,08B,1156479,1919977,2008,06/17/2008 01:26:19 PM,41.936200085,-87.700335573,"(41.936200085, -87.700335573)" -6308006,HP396985,06/15/2008 04:31:37 PM,067XX S LAFAYETTE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,0722,007,6,69,08B,1176963,1859966,2008,06/26/2008 11:39:50 AM,41.77108605,-87.62686994,"(41.77108605, -87.62686994)" -6312470,HP396646,06/15/2008 11:00:40 AM,005XX W 119TH ST,2091,NARCOTICS,FORFEIT PROPERTY,STREET,true,false,0524,005,34,53,26,1174744,1826021,2008,07/31/2008 12:28:32 PM,41.677986068,-87.636011894,"(41.677986068, -87.636011894)" -6306502,HP396389,06/15/2008 09:30:00 AM,034XX N GREENVIEW AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1924,019,44,6,26,1165662,1922839,2008,07/31/2008 11:37:43 AM,41.943862541,-87.666505385,"(41.943862541, -87.666505385)" -6335684,HP424622,06/13/2008 06:00:00 AM,035XX S HAMILTON AVE,1582,OFFENSE INVOLVING CHILDREN,CHILD PORNOGRAPHY,RESIDENCE,false,false,0913,009,11,59,17,1162566,1881011,2008,07/04/2008 04:06:52 PM,41.829148558,-87.679057023,"(41.829148558, -87.679057023)" -6304659,HP391667,06/12/2008 08:24:00 PM,060XX W BYRON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE-GARAGE,false,true,1633,016,38,17,08B,1135561,1925259,2008,06/18/2008 10:46:16 AM,41.951092542,-87.777086336,"(41.951092542, -87.777086336)" -6303395,HP389998,06/12/2008 12:55:00 AM,057XX W BLOOMINGDALE AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2531,025,29,25,08B,1138223,1911224,2008,06/16/2008 01:43:37 PM,41.912531174,-87.767641198,"(41.912531174, -87.767641198)" -6300534,HP389435,06/11/2008 06:35:00 PM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176398,1900682,2008,06/13/2008 08:29:28 AM,41.882826856,-87.627715181,"(41.882826856, -87.627715181)" -6297760,HP385627,06/09/2008 06:30:00 PM,028XX W 85TH ST,0560,ASSAULT,SIMPLE,STREET,false,true,0835,008,18,70,08A,1158927,1848234,2008,06/15/2008 09:12:30 AM,41.739279158,-87.693303566,"(41.739279158, -87.693303566)" -6293373,HP383611,06/08/2008 10:15:00 PM,0000X W MONROE ST,0890,THEFT,FROM BUILDING,TAVERN/LIQUOR STORE,false,false,0123,001,42,32,06,1176056,1899873,2008,06/10/2008 03:19:44 PM,41.880614623,-87.628995384,"(41.880614623, -87.628995384)" -6292423,HP382302,06/08/2008 06:00:00 AM,028XX N PINE GROVE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2333,019,44,6,14,1172489,1919193,2008,06/09/2008 11:42:05 AM,41.933709302,-87.641520817,"(41.933709302, -87.641520817)" -6316879,HP379151,06/06/2008 02:40:00 PM,039XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1122,011,28,26,16,1150320,1899766,2008,06/23/2008 01:24:18 PM,41.880861713,-87.723498732,"(41.880861713, -87.723498732)" -6303156,HP379123,06/06/2008 02:30:00 PM,006XX N MICHIGAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,BANK,false,true,1834,018,42,8,08B,1177367,1904310,2008,06/17/2008 04:07:28 PM,41.892760356,-87.624046903,"(41.892760356, -87.624046903)" -6289704,HP378094,06/06/2008 01:20:00 AM,053XX W BELMONT AVE,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,2514,025,30,19,08B,1140408,1920722,2008,06/14/2008 12:43:51 PM,41.938554868,-87.7593804,"(41.938554868, -87.7593804)" -6290227,HP378450,06/05/2008 11:30:00 AM,030XX S PRINCETON AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,2113,009,11,34,06,1174740,1884794,2008,06/11/2008 10:37:38 AM,41.839266316,-87.634278385,"(41.839266316, -87.634278385)" -6287153,HP375018,06/04/2008 03:15:00 PM,033XX N AUSTIN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1633,016,36,17,03,1135763,1921351,2008,06/24/2008 01:50:24 PM,41.940364982,-87.776437117,"(41.940364982, -87.776437117)" -6298294,HP386443,06/04/2008 07:30:00 AM,046XX N LAWLER AVE,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,RESIDENCE,false,true,1623,016,45,15,26,1141827,1930424,2008,06/15/2008 10:53:40 AM,41.965151849,-87.75392411,"(41.965151849, -87.75392411)" -6294378,HP372160,06/03/2008 03:45:00 AM,024XX S SACRAMENTO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1033,010,12,30,18,1156716,1887317,2008,06/09/2008 10:34:05 AM,41.846573223,-87.700350031,"(41.846573223, -87.700350031)" -6274249,HP361687,05/28/2008 06:40:00 PM,029XX W MADISON ST,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,1331,012,2,27,06,1156996,1899922,2008,05/30/2008 11:55:15 AM,41.881157001,-87.698980621,"(41.881157001, -87.698980621)" -6276547,HP362665,05/28/2008 02:30:00 PM,124XX S NORMAL AVE,0460,BATTERY,SIMPLE,STREET,true,false,0523,005,34,53,08B,1175262,1822430,2008,05/31/2008 06:25:36 AM,41.668120269,-87.634222483,"(41.668120269, -87.634222483)" -6345665,HP434308,05/28/2008 12:00:00 AM,016XX N MOODY AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2513,025,29,25,26,1135201,1910447,2008,07/08/2008 11:23:42 AM,41.910453149,-87.778761884,"(41.910453149, -87.778761884)" -6275676,HP359271,05/27/2008 02:00:00 PM,004XX W WASHINGTON ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0111,001,42,28,06,1173485,1900749,2008,05/30/2008 08:53:07 AM,41.883075934,-87.638409728,"(41.883075934, -87.638409728)" -6274102,HP359328,05/27/2008 01:00:00 PM,018XX N KEDVALE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2534,025,30,20,14,1148383,1912078,2008,06/10/2008 06:29:29 PM,41.914684685,-87.730293541,"(41.914684685, -87.730293541)" -6275257,HP356730,05/26/2008 02:05:00 AM,105XX S CALUMET AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0512,005,9,49,26,1180398,1835350,2008,06/17/2008 07:44:12 AM,41.703458724,-87.615031688,"(41.703458724, -87.615031688)" -6269540,HP357099,05/26/2008 12:00:00 AM,020XX N MILWAUKEE AVE,0810,THEFT,OVER $500,STREET,false,false,1431,014,1,22,06,1159459,1913368,2008,06/02/2008 07:06:17 AM,41.918003628,-87.689566121,"(41.918003628, -87.689566121)" -6268820,HP354854,05/24/2008 09:35:00 PM,015XX W 21ST ST,0460,BATTERY,SIMPLE,STREET,false,false,1222,012,25,31,08B,1166260,1890124,2008,06/23/2008 10:13:11 AM,41.854077517,-87.665243812,"(41.854077517, -87.665243812)" -6269559,HP355688,05/24/2008 09:00:00 PM,026XX W GUNNISON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2031,020,40,4,14,1157640,1932136,2008,05/27/2008 09:15:31 AM,41.969541517,-87.695736326,"(41.969541517, -87.695736326)" -6268147,HP354720,05/24/2008 07:54:29 PM,071XX S HARVARD AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0731,007,6,69,06,1175238,1857420,2008,05/28/2008 12:33:01 PM,41.764138243,-87.633269093,"(41.764138243, -87.633269093)" -6292905,HP354332,05/24/2008 03:55:51 PM,083XX S HERMITAGE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0614,006,18,71,18,1166085,1849585,2008,06/08/2008 11:43:25 AM,41.742837424,-87.667039462,"(41.742837424, -87.667039462)" -6266582,HP351840,05/23/2008 08:50:00 AM,111XX S DR MARTIN LUTHER KING JR DR,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,STREET,true,false,0531,005,9,49,08B,1180931,1831161,2008,07/25/2008 02:29:25 PM,41.691951322,-87.613208221,"(41.691951322, -87.613208221)" -6266039,HP351935,05/23/2008 12:01:00 AM,014XX W 114TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2234,022,34,75,14,1169004,1828860,2008,05/25/2008 06:38:27 AM,41.685902323,-87.656940696,"(41.685902323, -87.656940696)" -6341246,HP350890,05/22/2008 04:30:00 PM,019XX N LOWELL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2534,,31,20,05,,,2008,07/04/2008 11:48:08 AM,,, -6266425,HP349111,05/21/2008 06:53:00 PM,063XX S CALIFORNIA AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,false,false,0823,008,15,66,03,1158760,1862535,2008,06/24/2008 08:04:44 AM,41.778526691,-87.693525737,"(41.778526691, -87.693525737)" -6259230,HP346495,05/20/2008 08:30:00 AM,053XX S LOOMIS BLVD,0810,THEFT,OVER $500,STREET,false,false,0933,009,16,61,06,1167859,1869539,2008,05/21/2008 09:12:12 AM,41.797555892,-87.659967055,"(41.797555892, -87.659967055)" -6255908,HP344002,05/18/2008 10:15:00 PM,012XX W BARRY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1932,019,32,6,14,1167539,1920679,2008,05/21/2008 10:38:35 AM,41.937895124,-87.659668823,"(41.937895124, -87.659668823)" -6254999,HP342365,05/18/2008 08:38:23 AM,006XX N LEAMINGTON AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1532,015,28,25,05,1141956,1903672,2008,05/26/2008 10:06:24 AM,41.891739239,-87.754114263,"(41.891739239, -87.754114263)" -6253998,HP341044,05/17/2008 01:10:00 PM,001XX W LAKE ST,0870,THEFT,POCKET-PICKING,CTA TRAIN,false,false,0113,001,42,32,06,1175354,1901695,2008,05/20/2008 02:15:36 PM,41.885630077,-87.631518326,"(41.885630077, -87.631518326)" -6256350,HP344206,05/17/2008 10:00:00 AM,040XX W MADISON ST,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,1115,011,28,26,06,1149571,1899668,2008,05/20/2008 09:34:13 AM,41.880607362,-87.726251572,"(41.880607362, -87.726251572)" -6276530,HP353847,05/16/2008 12:00:00 PM,019XX W ADDISON ST,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,1923,019,47,5,06,1162916,1923880,2008,06/12/2008 07:11:47 AM,41.946777276,-87.676569074,"(41.946777276, -87.676569074)" -6254093,HP338742,05/16/2008 10:00:00 AM,096XX S MICHIGAN AVE,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,"SCHOOL, PUBLIC, BUILDING",true,false,0511,005,6,49,26,1178815,1840807,2008,05/19/2008 04:49:31 AM,41.718469551,-87.620662877,"(41.718469551, -87.620662877)" -6253531,HP338596,05/16/2008 09:00:00 AM,072XX S MICHIGAN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0323,003,6,69,05,1178372,1857130,2008,05/24/2008 03:50:32 PM,41.763271884,-87.621791093,"(41.763271884, -87.621791093)" -6256819,HP338124,05/15/2008 11:00:00 PM,062XX S MARSHFIELD AVE,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,STREET,false,false,0714,007,15,67,03,1166365,1863527,2008,06/02/2008 04:31:11 PM,41.781090212,-87.665617005,"(41.781090212, -87.665617005)" -6250156,HP337169,05/15/2008 03:05:00 PM,029XX N MELVINA AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,true,false,2511,025,29,19,03,1134527,1918687,2008,06/20/2008 09:48:39 AM,41.933076614,-87.781042991,"(41.933076614, -87.781042991)" -6271230,HP358720,05/15/2008 08:00:00 AM,099XX S NORMAL AVE,1755,OFFENSE INVOLVING CHILDREN,CHILD ABANDONMENT,RESIDENCE,false,true,2232,022,9,73,26,1174755,1839066,2008,05/30/2008 12:35:41 PM,41.713783265,-87.635584819,"(41.713783265, -87.635584819)" -6251791,HP336361,05/14/2008 04:00:00 PM,047XX S WOLCOTT AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0931,009,20,61,08A,1164527,1873136,2008,05/22/2008 07:33:02 AM,41.807497466,-87.672084537,"(41.807497466, -87.672084537)" -6246706,HP332696,05/13/2008 08:42:12 AM,069XX S DAMEN AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0735,007,17,67,07,1164268,1858443,2008,05/14/2008 10:10:02 AM,41.76718346,-87.673448083,"(41.76718346, -87.673448083)" -6245516,HP331515,05/12/2008 01:45:00 PM,003XX S CENTRAL PARK BLVD,0810,THEFT,OVER $500,STREET,false,false,1133,011,28,27,06,1152395,1898393,2008,05/15/2008 10:04:07 AM,41.877053341,-87.715915706,"(41.877053341, -87.715915706)" -6245443,HP331815,05/12/2008 10:40:00 AM,039XX W 79TH ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0834,008,18,70,08B,1151306,1851847,2008,06/29/2008 03:43:05 PM,41.749346,-87.72113174,"(41.749346, -87.72113174)" -6241325,HP329342,05/11/2008 03:00:00 AM,118XX S STEWART AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0522,005,34,53,06,1175718,1826289,2008,05/12/2008 06:54:23 AM,41.678699816,-87.632438751,"(41.678699816, -87.632438751)" -6241297,HP328423,05/10/2008 04:16:00 PM,059XX S ELIZABETH ST,0610,BURGLARY,FORCIBLE ENTRY,ABANDONED BUILDING,false,false,0713,007,16,67,05,1169047,1865295,2008,05/15/2008 07:51:42 AM,41.785884245,-87.655733152,"(41.785884245, -87.655733152)" -6237622,HP324032,05/08/2008 10:30:00 AM,059XX N NORTHWEST HWY,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,DRIVEWAY - RESIDENTIAL,false,false,1611,016,41,10,26,1130909,1939238,2008,05/11/2008 06:53:13 PM,41.989533904,-87.793863624,"(41.989533904, -87.793863624)" -6244566,HP323145,05/07/2008 08:50:00 PM,033XX W ARMITAGE AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1413,014,35,22,16,1153660,1913128,2008,05/14/2008 11:12:41 AM,41.917462523,-87.710878446,"(41.917462523, -87.710878446)" -6237480,HP322574,05/07/2008 03:25:00 PM,038XX W CHICAGO AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,SMALL RETAIL STORE,true,false,1112,011,27,23,26,1150612,1905026,2008,05/09/2008 12:22:34 PM,41.89529001,-87.722288986,"(41.89529001, -87.722288986)" -6233442,HP320495,05/06/2008 03:36:14 PM,025XX W 63RD ST,0460,BATTERY,SIMPLE,STREET,false,false,0825,008,15,66,08B,1160239,1862749,2008,05/09/2008 11:49:23 AM,41.779083612,-87.68809771,"(41.779083612, -87.68809771)" -6230277,HP318487,05/05/2008 03:00:00 PM,005XX S ASHLAND AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,1211,012,2,28,06,1165788,1897659,2008,05/06/2008 07:36:25 AM,41.87476428,-87.666761495,"(41.87476428, -87.666761495)" -6232814,HP321041,05/05/2008 12:00:00 PM,105XX S AVENUE O,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,0432,004,10,52,14,1200896,1835774,2008,05/07/2008 05:52:33 AM,41.704128544,-87.53995951,"(41.704128544, -87.53995951)" -6238994,HP318596,05/05/2008 12:00:00 AM,031XX W HARRISON ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,OTHER,false,false,1134,011,24,27,11,1155268,1897149,2008,05/20/2008 01:00:12 PM,41.87358248,-87.705400257,"(41.87358248, -87.705400257)" -6229960,HP316713,05/04/2008 02:59:55 PM,009XX N ST LOUIS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1121,011,27,23,14,1152915,1905954,2008,05/31/2008 04:07:47 PM,41.897791213,-87.713805975,"(41.897791213, -87.713805975)" -6230917,HP316013,05/04/2008 02:00:00 AM,059XX W 63RD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0812,008,13,64,14,1137700,1862110,2008,05/07/2008 11:26:03 AM,41.777764453,-87.770744565,"(41.777764453, -87.770744565)" -6228044,HP315813,05/03/2008 11:20:31 PM,064XX S LOWE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0723,007,16,68,08B,1173185,1862165,2008,05/11/2008 11:12:23 AM,41.777204684,-87.640653738,"(41.777204684, -87.640653738)" -6231900,HP314855,05/03/2008 12:40:00 PM,046XX S LECLAIRE AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,0814,008,23,56,06,1143185,1873186,2008,05/08/2008 02:22:23 PM,41.808058599,-87.750360722,"(41.808058599, -87.750360722)" -6229667,HP314350,05/03/2008 03:45:00 AM,022XX E 68TH ST,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,SIDEWALK,true,false,0331,003,5,43,08B,1192111,1860352,2008,06/05/2008 04:12:42 AM,41.7717904,-87.571331163,"(41.7717904, -87.571331163)" -6225982,HP313571,05/02/2008 03:00:00 AM,007XX E 76TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0624,006,6,69,07,1182802,1854831,2008,05/03/2008 08:05:01 AM,41.75686149,-87.605625729,"(41.75686149, -87.605625729)" -6227178,HP311976,05/01/2008 09:30:00 PM,079XX S SOUTH SHORE DR,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,OTHER,false,true,0422,004,7,46,17,1198478,1853116,2008,05/30/2008 12:33:29 PM,41.75177718,-87.548234406,"(41.75177718, -87.548234406)" -6224661,HP310655,05/01/2008 09:52:58 AM,053XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0234,002,3,40,08B,1179800,1869388,2008,05/03/2008 01:49:10 PM,41.79687651,-87.616182547,"(41.79687651, -87.616182547)" -6222199,HP308088,04/29/2008 06:50:00 PM,0000X E JACKSON BLVD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0123,001,2,32,06,1176462,1898963,2008,05/02/2008 08:27:00 AM,41.878108377,-87.627532085,"(41.878108377, -87.627532085)" -6234443,HP304004,04/27/2008 03:37:32 PM,036XX W 63RD ST,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,0823,008,13,65,18,1153286,1862637,2008,05/08/2008 11:21:37 AM,41.778916604,-87.713591268,"(41.778916604, -87.713591268)" -6220381,HP303767,04/27/2008 12:55:00 PM,045XX N KENNETH AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1722,017,45,16,08B,1145675,1930096,2008,05/03/2008 12:12:46 PM,41.964179515,-87.739784127,"(41.964179515, -87.739784127)" -6221258,HP302387,04/26/2008 01:50:00 PM,062XX S HAMLIN AVE,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,STREET,false,false,0823,008,13,65,26,1152159,1862739,2008,05/05/2008 01:41:23 PM,41.779218722,-87.717720316,"(41.779218722, -87.717720316)" -6216101,HP302079,04/26/2008 01:25:00 PM,049XX N DRAKE AVE,0460,BATTERY,SIMPLE,STREET,false,false,1712,017,39,14,08B,1151865,1932596,2008,04/30/2008 10:29:00 AM,41.970919757,-87.716959022,"(41.970919757, -87.716959022)" -6214550,HP301774,04/26/2008 09:45:00 AM,041XX S CAMPBELL AVE,0560,ASSAULT,SIMPLE,GROCERY FOOD STORE,false,false,0914,009,12,58,08A,1160428,1876804,2008,05/06/2008 12:32:51 PM,41.817648468,-87.687017391,"(41.817648468, -87.687017391)" -6213539,HP299876,04/25/2008 01:10:00 PM,042XX W AUGUSTA BLVD,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1111,011,37,23,18,1147689,1906282,2008,04/26/2008 11:00:13 AM,41.898793231,-87.732992255,"(41.898793231, -87.732992255)" -6220605,HP302841,04/24/2008 09:45:00 PM,090XX S ELIZABETH ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,false,false,2222,022,21,73,04A,1169622,1844711,2008,05/04/2008 07:44:09 PM,41.729386594,-87.654220699,"(41.729386594, -87.654220699)" -6210931,HP295897,04/23/2008 08:07:00 AM,042XX W WASHINGTON BLVD,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,true,false,1115,011,28,26,26,1147890,1900110,2008,04/28/2008 09:39:36 AM,41.881852725,-87.732412745,"(41.881852725, -87.732412745)" -6206271,HP295689,04/23/2008 04:10:00 AM,014XX N SEDGWICK ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,1821,018,27,8,08B,1173336,1910187,2008,04/25/2008 06:51:23 AM,41.908977646,-87.638676259,"(41.908977646, -87.638676259)" -6200401,HP289541,04/19/2008 08:00:00 PM,106XX S HALSTED ST,0860,THEFT,RETAIL THEFT,GAS STATION,false,false,2233,022,34,49,06,1172915,1834001,2008,04/21/2008 07:58:03 AM,41.699924871,-87.642472396,"(41.699924871, -87.642472396)" -6203792,HP291728,04/19/2008 02:00:00 PM,019XX W IRVING PARK RD,1310,CRIMINAL DAMAGE,TO PROPERTY,BANK,false,false,1923,019,47,5,14,1162475,1926608,2008,04/23/2008 07:22:36 AM,41.954272312,-87.678113399,"(41.954272312, -87.678113399)" -6200213,HP287322,04/18/2008 05:20:00 PM,109XX S CHURCH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,true,2212,022,19,75,14,1167363,1832273,2008,04/22/2008 10:12:42 AM,41.695303369,-87.662850823,"(41.695303369, -87.662850823)" -6204455,HP286817,04/18/2008 12:15:00 PM,101XX S PRAIRIE AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,0511,005,9,49,08B,1179743,1837863,2008,04/23/2008 06:28:49 AM,41.7103697,-87.617353634,"(41.7103697, -87.617353634)" -6201232,HP285321,04/17/2008 02:00:00 PM,037XX W DICKENS AVE,0560,ASSAULT,SIMPLE,OTHER,false,false,2525,025,26,22,08A,1150898,1913730,2008,04/28/2008 03:27:31 PM,41.919169026,-87.721010371,"(41.919169026, -87.721010371)" -6192593,HP281344,04/15/2008 04:20:00 PM,027XX E 89TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,POLICE FACILITY/VEH PARKING LOT,false,false,0423,004,7,46,14,1195945,1846527,2008,04/17/2008 08:38:33 AM,41.733759491,-87.557734098,"(41.733759491, -87.557734098)" -6191833,HP281462,04/14/2008 11:00:00 PM,081XX S CALUMET AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0631,006,6,44,07,1179924,1851214,2008,04/19/2008 06:00:49 PM,41.747002357,-87.616283482,"(41.747002357, -87.616283482)" -6191235,HP279024,04/14/2008 02:16:39 PM,042XX S MICHIGAN AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0214,002,3,38,26,1177822,1876946,2008,04/16/2008 11:12:52 AM,41.817661392,-87.623207025,"(41.817661392, -87.623207025)" -6190165,HP278941,04/14/2008 01:20:00 PM,020XX E 91ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,0413,004,8,48,18,1191604,1845080,2008,04/16/2008 12:16:25 PM,41.729895032,-87.573683896,"(41.729895032, -87.573683896)" -6188015,HP277790,04/13/2008 05:45:00 PM,038XX W 59TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0822,008,13,62,14,1151944,1865251,2008,04/22/2008 12:01:23 PM,41.786116259,-87.718442682,"(41.786116259, -87.718442682)" -6187591,HP276885,04/13/2008 03:30:00 AM,047XX S WASHTENAW AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0911,009,14,58,18,1159121,1873329,2008,04/13/2008 11:51:21 AM,41.808139508,-87.691907028,"(41.808139508, -87.691907028)" -6187521,HP273965,04/11/2008 01:30:00 PM,117XX S PERRY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0522,005,34,53,14,1177728,1827089,2008,04/14/2008 08:53:28 AM,41.680850033,-87.62505734,"(41.680850033, -87.62505734)" -6182074,HP270607,04/09/2008 12:00:00 PM,047XX W SCHUBERT AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2521,025,31,19,05,1144324,1917420,2008,04/14/2008 09:39:42 PM,41.929421019,-87.745071281,"(41.929421019, -87.745071281)" -6175567,HP265799,04/07/2008 02:42:00 AM,009XX W NEWPORT AVE,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,false,false,2331,019,44,6,26,1169428,1923133,2008,04/08/2008 08:33:34 AM,41.944588061,-87.652654805,"(41.944588061, -87.652654805)" -6176186,HP265318,04/06/2008 07:45:00 PM,055XX N HARLEM AVE,0460,BATTERY,SIMPLE,RESTAURANT,false,false,1613,016,41,10,08B,1127411,1936253,2008,04/24/2008 11:06:04 PM,41.981402511,-87.806797616,"(41.981402511, -87.806797616)" -6175423,HP265014,04/06/2008 07:00:00 AM,034XX W 116TH PL,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2211,022,19,74,05,1155481,1827087,2008,06/24/2008 07:42:15 AM,41.681317565,-87.706493262,"(41.681317565, -87.706493262)" -6175737,HP264039,04/06/2008 12:45:00 AM,039XX N OCONTO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1631,016,38,17,08B,1126985,1925604,2008,04/10/2008 09:43:48 AM,41.952187671,-87.808604205,"(41.952187671, -87.808604205)" -6187610,HP277192,04/06/2008 12:00:00 AM,021XX W CORTLAND ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1434,014,32,22,06,1161623,1912670,2008,05/16/2008 03:33:53 PM,41.916043416,-87.681634957,"(41.916043416, -87.681634957)" -6173089,HP261066,04/04/2008 11:37:11 AM,023XX W 21ST PL,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,1223,012,25,31,06,1161300,1889646,2008,04/08/2008 10:11:27 AM,41.852870293,-87.683462218,"(41.852870293, -87.683462218)" -6181197,HP260428,04/04/2008 07:20:00 AM,027XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1331,012,2,27,16,1157810,1899940,2008,04/10/2008 02:10:22 PM,41.881189845,-87.695991162,"(41.881189845, -87.695991162)" -6172807,HP260234,04/02/2008 11:00:00 PM,063XX S MOZART ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0823,008,15,66,14,1158437,1862179,2008,04/06/2008 11:10:47 AM,41.777556364,-87.694719576,"(41.777556364, -87.694719576)" -6171926,HP258149,04/02/2008 08:25:00 PM,041XX W LAKE ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1114,011,28,26,08A,1148520,1901557,2008,04/19/2008 06:06:42 PM,41.885811326,-87.730062024,"(41.885811326, -87.730062024)" -6172564,HP257996,04/02/2008 02:45:00 PM,070XX S CLYDE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,0331,003,5,43,08B,1191470,1858641,2008,04/05/2008 05:46:06 AM,41.767110845,-87.573736211,"(41.767110845, -87.573736211)" -6166853,HP255552,04/01/2008 02:00:00 PM,018XX W 103RD ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,2212,022,19,72,06,1165897,1836338,2008,04/03/2008 08:33:31 AM,41.706489596,-87.668103385,"(41.706489596, -87.668103385)" -6166260,HP255550,04/01/2008 12:00:00 AM,049XX N ST LOUIS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1712,017,39,14,14,1152123,1932457,2008,04/02/2008 08:28:16 AM,41.970533235,-87.716014009,"(41.970533235, -87.716014009)" -6165207,HP254680,03/31/2008 11:35:00 PM,033XX W LAWRENCE AVE,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,1713,017,39,14,18,1152881,1931725,2008,04/01/2008 09:39:17 AM,41.96850956,-87.713246255,"(41.96850956, -87.713246255)" -6165343,HP255021,03/31/2008 05:00:00 PM,017XX N FRANCISCO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1421,014,35,24,14,1156822,1911409,2008,04/05/2008 08:12:37 AM,41.912681884,-87.699307833,"(41.912681884, -87.699307833)" -6173843,HP261122,03/30/2008 02:30:00 PM,006XX W ROSCOE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2331,019,44,6,06,1171157,1922770,2008,04/07/2008 10:28:52 AM,41.943554123,-87.646310469,"(41.943554123, -87.646310469)" -6163565,HP250889,03/29/2008 06:55:00 PM,026XX W CERMAK RD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,1034,010,28,30,14,1158828,1889249,2008,04/01/2008 11:36:42 AM,41.851831862,-87.692546144,"(41.851831862, -87.692546144)" -6165902,HP252641,03/29/2008 02:30:00 PM,053XX S MARYLAND AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2131,002,5,41,06,1182776,1869711,2008,04/17/2008 10:19:38 AM,41.797694201,-87.605259317,"(41.797694201, -87.605259317)" -6161279,HP250617,03/28/2008 11:15:00 PM,018XX S CANALPORT AVE,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,false,false,1233,012,25,31,05,1172677,1891230,2008,04/22/2008 03:39:04 PM,41.856973045,-87.641658371,"(41.856973045, -87.641658371)" -6234135,HP318978,03/28/2008 11:00:00 PM,023XX N KIMBALL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1413,014,26,22,14,1153273,1915524,2008,05/12/2008 09:13:13 AM,41.924045049,-87.712236543,"(41.924045049, -87.712236543)" -6162136,HP249101,03/28/2008 06:25:00 PM,036XX S HERMITAGE AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SIDEWALK,false,false,0922,009,11,59,14,1165314,1880761,2008,03/31/2008 11:49:10 AM,41.828404659,-87.668981815,"(41.828404659, -87.668981815)" -6158572,HP247175,03/27/2008 05:16:55 PM,002XX W 43RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,true,0935,009,3,37,18,1175615,1876514,2008,03/28/2008 11:18:38 AM,41.816525711,-87.631315846,"(41.816525711, -87.631315846)" -6158702,HP247925,03/27/2008 04:00:00 PM,039XX N CLARK ST,0870,THEFT,POCKET-PICKING,CTA BUS,false,false,2324,019,44,6,06,1166862,1926635,2008,03/31/2008 03:36:59 PM,41.95425323,-87.66198547,"(41.95425323, -87.66198547)" -6154681,HP244948,03/25/2008 06:00:00 PM,0000X E GRAND AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1834,018,42,8,06,1176699,1903953,2008,04/05/2008 02:46:31 PM,41.891795857,-87.626510975,"(41.891795857, -87.626510975)" -6150658,HP241603,03/25/2008 12:00:00 AM,001XX N MAYFIELD AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,APARTMENT,false,false,1512,015,29,25,06,1137091,1900665,2008,04/03/2008 06:37:02 PM,41.883576369,-87.77205372,"(41.883576369, -87.77205372)" -6152030,HP240169,03/23/2008 04:59:00 PM,030XX S LAWNDALE AVE,0460,BATTERY,SIMPLE,STREET,true,false,1031,010,22,30,08B,1152139,1884400,2008,03/27/2008 09:28:07 AM,41.838659956,-87.717224345,"(41.838659956, -87.717224345)" -6162097,HP244814,03/22/2008 07:35:00 PM,031XX W ROOSEVELT RD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1022,010,24,29,14,1155411,1894498,2008,04/30/2008 08:05:35 AM,41.866304985,-87.70494648,"(41.866304985, -87.70494648)" -6149995,HP238747,03/22/2008 02:00:00 PM,092XX S LAFLIN ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,2222,022,21,73,07,1167997,1843439,2008,03/27/2008 07:44:57 PM,41.725931064,-87.660209947,"(41.725931064, -87.660209947)" -6149264,HP235897,03/20/2008 01:00:00 PM,100XX W OHARE ST,0810,THEFT,OVER $500,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,06,1100635,1934208,2008,03/26/2008 10:44:11 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6140745,HP232040,03/18/2008 12:45:00 PM,035XX W CONGRESS PKWY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1133,011,28,27,08B,1152803,1897503,2008,03/21/2008 09:25:45 AM,41.874603022,-87.714441204,"(41.874603022, -87.714441204)" -6145113,HP228437,03/16/2008 01:10:00 PM,075XX S NORMAL AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,0621,006,17,69,26,1174122,1854872,2008,03/22/2008 07:11:01 AM,41.757171076,-87.637435036,"(41.757171076, -87.637435036)" -6134602,HP227016,03/15/2008 04:00:00 PM,028XX S SPRINGFIELD AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1031,010,22,30,07,1150871,1885033,2008,03/17/2008 08:30:25 AM,41.840421854,-87.721860782,"(41.840421854, -87.721860782)" -6134585,HP226614,03/15/2008 10:46:35 AM,061XX S EBERHART AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,false,false,0313,003,20,42,18,1180594,1864462,2008,11/11/1999 05:36:42 PM,41.783340899,-87.613422153,"(41.783340899, -87.613422153)" -6130233,HP219933,03/11/2008 04:47:00 PM,063XX S WESTERN AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,SMALL RETAIL STORE,false,false,0825,008,15,66,11,1161416,1862739,2008,03/17/2008 10:39:55 AM,41.779031855,-87.68378297,"(41.779031855, -87.68378297)" -6131453,HP219488,03/11/2008 04:03:23 PM,007XX N CENTRAL AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,1524,015,37,25,18,1138920,1904680,2008,03/14/2008 12:57:13 PM,41.894561014,-87.765239771,"(41.894561014, -87.765239771)" -6126974,HP220000,03/11/2008 04:00:00 PM,052XX S MOODY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0811,008,23,56,14,1136220,1869161,2008,03/13/2008 02:09:00 PM,41.79714011,-87.776002831,"(41.79714011, -87.776002831)" -6131439,HP219061,03/11/2008 08:00:00 AM,103XX S ELIZABETH ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,2232,022,21,73,06,1169808,1836140,2008,03/15/2008 07:40:49 AM,41.705862453,-87.653787153,"(41.705862453, -87.653787153)" -6122028,HP216249,03/09/2008 03:30:00 PM,065XX S HERMITAGE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0725,007,15,67,08A,1165839,1861121,2008,03/12/2008 08:48:21 AM,41.774499029,-87.66761372,"(41.774499029, -87.66761372)" -6238424,HP324145,03/08/2008 11:00:00 AM,012XX N CLARK ST,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,false,false,1821,018,42,8,06,1175274,1908508,2008,05/12/2008 09:14:19 AM,41.904327102,-87.631607477,"(41.904327102, -87.631607477)" -6125147,HP213947,03/08/2008 06:50:00 AM,100XX W OHARE ST,0810,THEFT,OVER $500,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,06,1100635,1934208,2008,04/11/2008 11:28:08 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6152685,HP243742,03/07/2008 07:30:00 AM,091XX S GREENWOOD AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0413,004,8,47,06,1185105,1844523,2008,03/27/2008 07:50:12 AM,41.72852149,-87.597508756,"(41.72852149, -87.597508756)" -6118412,HP212130,03/07/2008 12:00:00 AM,024XX S CALIFORNIA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1033,010,12,30,14,1158052,1887427,2008,03/10/2008 11:18:15 AM,41.846847949,-87.695443949,"(41.846847949, -87.695443949)" -6119122,HP208737,03/05/2008 07:00:00 AM,069XX W MEDILL AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,2512,025,36,18,08A,1129793,1914709,2008,03/19/2008 01:53:22 PM,41.922242857,-87.798531583,"(41.922242857, -87.798531583)" -6158692,HP246351,03/04/2008 12:30:00 PM,035XX S GILES AVE,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",false,false,0211,002,2,35,06,1178880,1881656,2008,04/06/2008 04:34:45 PM,41.830561946,-87.619182387,"(41.830561946, -87.619182387)" -6109568,HP204863,03/02/2008 09:00:00 PM,012XX W 110TH PL,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,true,true,2234,022,34,75,26,1169842,1831540,2008,03/09/2008 01:54:57 PM,41.693238586,-87.653795555,"(41.693238586, -87.653795555)" -6109137,HP203592,03/02/2008 01:27:00 AM,027XX W 83RD ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0835,008,18,70,08B,1159208,1849428,2008,03/04/2008 01:08:13 PM,41.742549946,-87.692241433,"(41.742549946, -87.692241433)" -6109105,HP203127,03/01/2008 04:45:00 PM,079XX S HALSTED ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0621,006,17,71,07,1172301,1852337,2008,03/03/2008 10:53:09 AM,41.750254941,-87.644183117,"(41.750254941, -87.644183117)" -7626207,HS430577,03/01/2008 09:00:00 AM,016XX E 50TH ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2132,002,4,39,06,1188327,1872154,2008,09/13/2010 02:05:24 PM,41.804267141,-87.584825224,"(41.804267141, -87.584825224)" -6111471,HP201195,02/29/2008 04:50:25 PM,041XX S CALIFORNIA AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0912,009,12,58,04B,1158413,1877314,2008,03/25/2008 08:34:11 PM,41.819089324,-87.694395141,"(41.819089324, -87.694395141)" -6105776,HP198570,02/28/2008 08:08:53 AM,002XX W JACKSON BLVD,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0112,001,2,32,08A,1174547,1898907,2008,03/03/2008 08:40:16 AM,41.877997709,-87.63456512,"(41.877997709, -87.63456512)" -6101855,HP195863,02/26/2008 03:37:55 PM,057XX S MAY ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,0712,007,16,68,18,1169595,1866600,2008,02/27/2008 01:54:12 PM,41.789453449,-87.653686099,"(41.789453449, -87.653686099)" -6103190,HP198655,02/24/2008 10:45:00 PM,052XX W POTOMAC AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2532,025,37,25,26,1140990,1908108,2008,03/07/2008 10:44:02 AM,41.903929988,-87.757552657,"(41.903929988, -87.757552657)" -6097933,HP191097,02/23/2008 06:50:00 PM,027XX S KEELER AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,true,false,1031,010,22,30,04B,1148864,1885617,2008,02/27/2008 10:27:52 AM,41.8420634,-87.729210681,"(41.8420634, -87.729210681)" -6094751,HP190118,02/22/2008 07:00:00 PM,003XX S KOSTNER AVE,0610,BURGLARY,FORCIBLE ENTRY,GROCERY FOOD STORE,false,false,1131,011,24,26,05,1147066,1898222,2008,04/26/2008 09:54:25 PM,41.876687625,-87.73548678,"(41.876687625, -87.73548678)" -6089215,HP187178,02/21/2008 03:00:00 PM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0122,001,42,32,06,1176321,1900593,2008,02/22/2008 08:31:27 AM,41.882584372,-87.628000611,"(41.882584372, -87.628000611)" -6090627,HP186730,02/21/2008 11:30:00 AM,028XX S SACRAMENTO AVE,0810,THEFT,OVER $500,STREET,false,false,1033,010,12,30,06,1156865,1884997,2008,02/25/2008 12:17:42 PM,41.84020386,-87.699866005,"(41.84020386, -87.699866005)" -6086993,HP185410,02/20/2008 03:45:00 PM,001XX N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176390,1900949,2008,02/22/2008 07:41:34 AM,41.883559699,-87.627736496,"(41.883559699, -87.627736496)" -6087823,HP185275,02/20/2008 12:30:00 PM,028XX S KOMENSKY AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1031,010,22,30,08B,1149878,1884877,2008,02/22/2008 10:54:00 AM,41.840013111,-87.725508787,"(41.840013111, -87.725508787)" -6085784,HP183567,02/19/2008 02:19:00 PM,124XX S STEWART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0523,005,34,53,08B,1175833,1822623,2008,02/27/2008 07:18:26 AM,41.668637162,-87.632127005,"(41.668637162, -87.632127005)" -6084181,HP182916,02/19/2008 04:30:00 AM,053XX W DEMING PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2515,025,31,19,14,1140108,1916482,2008,02/20/2008 08:17:12 AM,41.926925377,-87.760587087,"(41.926925377, -87.760587087)" -6085633,HP182093,02/18/2008 03:00:00 PM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176328,1900431,2008,02/21/2008 06:49:58 AM,41.882139677,-87.627979796,"(41.882139677, -87.627979796)" -6095803,HP184988,02/18/2008 12:01:00 AM,018XX N WOLCOTT AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,STREET,false,false,1434,014,32,22,11,1163434,1912383,2008,03/14/2008 10:00:48 AM,41.915217913,-87.674989553,"(41.915217913, -87.674989553)" -6079478,HP179864,02/16/2008 11:30:00 PM,070XX W GRAND AVE,041A,BATTERY,AGGRAVATED: HANDGUN,CTA GARAGE / OTHER PROPERTY,false,false,2512,025,36,18,04B,1128939,1915219,2008,02/17/2008 06:20:06 AM,41.923656934,-87.80165788,"(41.923656934, -87.80165788)" -6080497,HP179366,02/16/2008 06:41:33 PM,0000X N LATROBE AVE,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,STREET,true,false,1522,015,28,25,26,1141336,1900023,2008,02/19/2008 09:30:16 AM,41.881737395,-87.75648136,"(41.881737395, -87.75648136)" -6079643,HP178304,02/16/2008 08:43:08 AM,053XX W MONROE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1522,015,29,25,14,1140792,1899103,2008,02/17/2008 10:47:17 AM,41.879222815,-87.75850157,"(41.879222815, -87.75850157)" -6082523,HP182300,02/15/2008 05:00:00 PM,022XX N MENARD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2515,025,37,19,07,1137321,1914162,2008,04/04/2008 10:21:58 AM,41.920609664,-87.770884178,"(41.920609664, -87.770884178)" -6075250,HP174724,02/14/2008 12:00:00 AM,015XX E 53RD ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SMALL RETAIL STORE,false,false,2132,002,4,41,14,1187270,1870464,2008,02/27/2008 09:16:11 AM,41.799654855,-87.588755435,"(41.799654855, -87.588755435)" -6072564,HP171926,02/12/2008 03:08:32 PM,050XX W CHICAGO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1531,015,28,25,18,1142395,1904805,2008,02/13/2008 11:43:04 AM,41.894840181,-87.752473824,"(41.894840181, -87.752473824)" -6073190,HP171331,02/11/2008 07:00:00 PM,099XX S PERRY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0511,005,9,49,07,1177317,1838976,2008,02/14/2008 11:44:29 AM,41.713478936,-87.626204563,"(41.713478936, -87.626204563)" -6070921,HP170580,02/11/2008 05:09:50 PM,064XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,false,true,0312,003,20,42,08B,1181959,1862478,2008,02/13/2008 07:08:07 AM,41.777865148,-87.608478971,"(41.777865148, -87.608478971)" -6071483,HP170097,02/11/2008 10:00:00 AM,001XX E CULLERTON ST,0810,THEFT,OVER $500,STREET,false,false,0134,001,2,33,06,1177548,1890690,2008,02/15/2008 11:57:56 AM,41.855382182,-87.623795664,"(41.855382182, -87.623795664)" -6071696,HP171576,02/10/2008 10:00:00 AM,014XX N CICERO AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,2533,025,37,25,06,1144158,1908946,2008,02/25/2008 10:15:20 PM,41.906170612,-87.745894589,"(41.906170612, -87.745894589)" -6133017,HP221408,02/09/2008 12:00:00 PM,055XX N CHRISTIANA AVE,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,RESIDENCE,false,false,1712,017,40,13,26,1153088,1936804,2008,05/14/2008 12:13:46 PM,41.98244252,-87.712349743,"(41.98244252, -87.712349743)" -6068240,HP166755,02/09/2008 02:00:00 AM,007XX W 71ST ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0732,007,6,68,14,1172837,1857762,2008,02/15/2008 11:52:30 AM,41.765130018,-87.642059235,"(41.765130018, -87.642059235)" -6067026,HP166240,02/08/2008 07:10:00 PM,110XX S TROY ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2211,022,19,74,18,1157291,1830902,2008,02/09/2008 08:08:27 AM,41.691750324,-87.699764923,"(41.691750324, -87.699764923)" -6063043,HP163044,02/07/2008 01:58:18 AM,001XX N PINE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1523,015,28,25,18,1139520,1900458,2008,02/07/2008 11:54:36 AM,41.882964393,-87.763139151,"(41.882964393, -87.763139151)" -6061079,HP161221,02/05/2008 10:00:00 PM,062XX S COTTAGE GROVE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0313,003,20,42,26,1182594,1863879,2008,02/07/2008 07:34:10 AM,41.78169491,-87.606107635,"(41.78169491, -87.606107635)" -6059508,HP159862,02/04/2008 08:00:00 PM,046XX N WOLCOTT AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1922,019,47,4,06,1162942,1930857,2008,02/06/2008 07:29:59 AM,41.965921956,-87.676276875,"(41.965921956, -87.676276875)" -6057994,HP159485,02/04/2008 05:45:00 PM,034XX N ASHLAND AVE,0810,THEFT,OVER $500,RESIDENCE-GARAGE,false,false,1924,019,32,6,06,1164999,1922985,2008,02/05/2008 08:37:17 AM,41.944277299,-87.668938099,"(41.944277299, -87.668938099)" -6083324,HP158356,02/04/2008 08:30:00 AM,100XX W OHARE ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,26,1100635,1934208,2008,02/20/2008 01:25:46 PM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6057968,HP159329,02/04/2008 12:00:00 AM,050XX W GLADYS AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1533,015,28,25,26,1142526,1897904,2008,02/12/2008 10:32:58 AM,41.875900562,-87.752164342,"(41.875900562, -87.752164342)" -6057745,HP158561,02/03/2008 10:00:00 PM,001XX N CENTRAL PARK DR,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,false,false,1122,011,28,27,14,1152437,1900703,2008,02/07/2008 12:31:41 PM,41.883391397,-87.715700454,"(41.883391397, -87.715700454)" -6421999,HP497567,02/02/2008 12:01:00 AM,091XX S EGGLESTON AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2223,022,21,73,06,1174850,1844385,2008,09/01/2008 07:29:30 PM,41.728377222,-87.635078895,"(41.728377222, -87.635078895)" -6054807,HP156076,02/01/2008 05:00:00 PM,015XX N WESTERN AVE,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,false,false,1424,014,1,24,05,1160164,1910360,2008,02/10/2008 08:37:26 PM,41.9097349,-87.687059188,"(41.9097349, -87.687059188)" -6053730,HP154724,01/31/2008 08:00:00 PM,013XX N KEELER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2534,025,37,23,07,1148092,1908689,2008,02/14/2008 12:03:08 PM,41.905390541,-87.731450014,"(41.905390541, -87.731450014)" -6054059,HP153786,01/31/2008 12:00:00 PM,050XX N MARINE DR,0810,THEFT,OVER $500,STREET,false,false,2024,020,48,3,06,1169662,1933934,2008,02/04/2008 08:57:22 AM,41.974221261,-87.651478828,"(41.974221261, -87.651478828)" -6051653,HP152452,01/30/2008 10:00:00 PM,017XX N NAGLE AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,2513,025,36,25,06,1132985,1911186,2008,02/02/2008 08:26:22 AM,41.912520086,-87.786885481,"(41.912520086, -87.786885481)" -6048557,HP148252,01/28/2008 09:00:00 PM,0000X W HURON ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,1832,018,42,8,06,1175515,1905092,2008,02/01/2008 10:11:23 AM,41.894948015,-87.630824978,"(41.894948015, -87.630824978)" -6050617,HP148946,01/28/2008 05:45:00 PM,024XX W ROSEMONT AVE,0810,THEFT,OVER $500,STREET,false,false,2413,024,50,2,06,1159141,1941796,2008,02/01/2008 12:55:52 PM,41.99601819,-87.689950309,"(41.99601819, -87.689950309)" -6048493,HP148365,01/28/2008 10:00:00 AM,097XX S UNION AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,2223,022,21,73,26,1173392,1840475,2008,02/01/2008 11:40:34 AM,41.717679965,-87.640535103,"(41.717679965, -87.640535103)" -6051700,HP148211,01/28/2008 12:00:00 AM,001XX N AUSTIN BLVD,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1512,015,29,25,08A,1136391,1900669,2008,02/05/2008 10:05:28 AM,41.88359988,-87.774624123,"(41.88359988, -87.774624123)" -6048193,HP149443,01/27/2008 02:30:00 PM,042XX S ASHLAND AVE,0460,BATTERY,SIMPLE,OTHER,false,false,0914,009,12,61,08B,1166338,1876850,2008,01/31/2008 05:29:24 AM,41.817650668,-87.665336409,"(41.817650668, -87.665336409)" -6043685,HP145781,01/27/2008 01:00:00 PM,001XX N KEDZIE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1331,012,27,27,18,1155069,1900663,2008,01/28/2008 07:44:48 AM,41.883229246,-87.706036593,"(41.883229246, -87.706036593)" -6041889,HP144012,01/26/2008 10:30:00 AM,023XX W JACKSON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1211,012,2,28,08B,1160845,1898601,2008,01/28/2008 11:50:44 AM,41.877453118,-87.684883951,"(41.877453118, -87.684883951)" -6041743,HP144909,01/25/2008 08:30:00 PM,008XX W OAKDALE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1932,019,44,6,06,1170061,1919841,2008,01/29/2008 08:21:54 AM,41.935540858,-87.650424573,"(41.935540858, -87.650424573)" -6041975,HP142917,01/25/2008 05:25:00 PM,060XX S RACINE AVE,0325,ROBBERY,VEHICULAR HIJACKING,STREET,false,false,0713,007,16,67,03,1169323,1864401,2008,01/31/2008 07:23:24 PM,41.78342503,-87.654747073,"(41.78342503, -87.654747073)" -6037595,HP139727,01/23/2008 11:12:46 PM,041XX W HENDERSON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1731,017,30,16,08B,1148091,1921979,2008,01/28/2008 01:32:58 PM,41.941859558,-87.731110835,"(41.941859558, -87.731110835)" -6038698,HP140590,01/23/2008 06:15:00 PM,114XX S EMERALD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2233,022,34,49,06,1173404,1828998,2008,01/25/2008 08:26:26 AM,41.686185088,-87.640829159,"(41.686185088, -87.640829159)" -6031192,HP134970,01/20/2008 11:30:00 AM,001XX W CHESTNUT ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,1832,018,42,8,06,1175341,1906231,2008,01/21/2008 11:30:46 AM,41.898077397,-87.631429803,"(41.898077397, -87.631429803)" -6029341,HP132725,01/19/2008 02:56:23 PM,070XX S INDIANA AVE,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,APARTMENT,false,true,0322,003,6,69,26,1178859,1858127,2008,05/14/2008 11:38:53 PM,41.765996691,-87.619975852,"(41.765996691, -87.619975852)" -6023197,HP125328,01/15/2008 01:40:00 PM,065XX S PEORIA ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0723,007,17,68,08A,1171397,1861251,2008,01/24/2008 09:10:11 AM,41.774735894,-87.647235239,"(41.774735894, -87.647235239)" -6024241,HP124314,01/14/2008 09:00:00 PM,071XX S MORGAN ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0733,007,17,68,08B,1170847,1857148,2008,01/21/2008 05:30:58 PM,41.76348878,-87.64937106,"(41.76348878, -87.64937106)" -6016460,HP122115,01/13/2008 02:00:00 PM,009XX W BELMONT AVE,0460,BATTERY,SIMPLE,CTA TRAIN,false,false,1932,019,44,6,08B,1169257,1921390,2008,01/14/2008 08:27:21 AM,41.939808919,-87.653334147,"(41.939808919, -87.653334147)" -6017735,HP121062,01/12/2008 09:50:00 PM,037XX W CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1112,011,27,23,18,1151189,1905039,2008,01/14/2008 11:05:41 AM,41.895314388,-87.720169452,"(41.895314388, -87.720169452)" -6021252,HP120662,01/12/2008 05:10:00 PM,023XX W LOGAN BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1432,014,1,22,14,1159964,1917231,2008,01/16/2008 08:40:40 AM,41.928593555,-87.687603847,"(41.928593555, -87.687603847)" -6018122,HP123090,01/11/2008 04:40:00 PM,009XX N DAMEN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1322,012,32,24,05,1162935,1906411,2008,01/20/2008 04:18:26 PM,41.898840809,-87.676990704,"(41.898840809, -87.676990704)" -6016258,HP118210,01/11/2008 11:10:00 AM,079XX S DAMEN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,0611,006,18,71,14,1164442,1852234,2008,01/15/2008 08:39:17 AM,41.750141421,-87.672984996,"(41.750141421, -87.672984996)" -6011898,HP116012,01/10/2008 08:22:47 AM,007XX W RANDOLPH ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,1212,012,27,28,11,1171239,1901177,2008,02/09/2008 09:36:32 AM,41.884300006,-87.646644515,"(41.884300006, -87.646644515)" -6005018,HP110823,01/07/2008 10:55:00 AM,080XX S UNION AVE,0460,BATTERY,SIMPLE,APARTMENT,false,false,0621,006,21,71,08B,1173078,1851346,2008,01/10/2008 07:21:10 AM,41.747518397,-87.641365051,"(41.747518397, -87.641365051)" -6002597,HP110714,01/06/2008 08:30:00 PM,054XX S CORNELL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2132,002,5,41,07,1188146,1869223,2008,01/08/2008 10:20:35 AM,41.796228596,-87.585582548,"(41.796228596, -87.585582548)" -6002697,HP108963,01/06/2008 03:30:00 AM,071XX W HIGGINS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1613,016,41,10,14,1127720,1936004,2008,01/09/2008 11:59:29 AM,41.980714012,-87.805666824,"(41.980714012, -87.805666824)" -6005671,HP106401,01/04/2008 05:50:00 PM,008XX W 63RD ST,1120,DECEPTIVE PRACTICE,FORGERY,BANK,true,false,0723,007,20,68,10,1171877,1863038,2008,01/13/2008 01:48:35 PM,41.779629109,-87.645423234,"(41.779629109, -87.645423234)" -6002515,HP103250,01/02/2008 09:15:00 PM,077XX S COLES AVE,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,SIDEWALK,true,false,0421,004,7,43,18,1196659,1854676,2008,01/11/2008 09:10:55 AM,41.756103288,-87.554848321,"(41.756103288, -87.554848321)" -5992611,HP100707,01/01/2008 09:30:00 AM,089XX S LOWE AVE,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,RESIDENCE,false,true,2223,022,21,71,02,1173502,1845434,2008,04/05/2009 03:04:15 PM,41.731285722,-87.639985929,"(41.731285722, -87.639985929)" -6014743,HN787147,12/31/2007 10:54:00 PM,032XX W HARRISON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,1134,011,24,27,14,1154733,1897137,2007,01/23/2008 02:56:07 PM,41.873560274,-87.707364844,"(41.873560274, -87.707364844)" -5992539,HN786587,12/31/2007 03:57:55 PM,029XX W FILLMORE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1135,011,28,29,08B,1157079,1895278,2007,01/13/2008 01:05:28 AM,41.868411718,-87.698801913,"(41.868411718, -87.698801913)" -5989290,HN785485,12/30/2007 08:15:00 PM,056XX W NORTH AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2531,025,29,25,05,1138351,1910028,2007,01/07/2008 01:04:14 AM,41.909246893,-87.767199953,"(41.909246893, -87.767199953)" -5988344,HN783684,12/29/2007 06:00:00 AM,002XX N FRANCISCO AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1331,012,2,27,05,1156981,1901265,2007,11/27/2008 01:04:05 AM,41.884842626,-87.698999249,"(41.884842626, -87.698999249)" -5987525,HN782816,12/29/2007 03:29:38 AM,024XX W LUNT AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2411,024,50,2,08B,1158820,1946432,2007,01/02/2008 01:04:12 AM,42.008746146,-87.691003182,"(42.008746146, -87.691003182)" -5987141,HN782557,12/28/2007 09:46:11 PM,014XX S ST LOUIS AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,1021,010,24,29,04B,1153227,1892951,2007,01/03/2008 01:04:43 AM,41.862103432,-87.713005224,"(41.862103432, -87.713005224)" -6191382,HN781364,12/28/2007 09:54:47 AM,034XX W ROOSEVELT RD,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1133,011,24,29,04B,1153819,1894541,2007,04/18/2008 01:05:57 AM,41.866454811,-87.710789743,"(41.866454811, -87.710789743)" -5991409,HN779844,12/27/2007 11:15:00 AM,066XX N SEELEY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2412,024,50,2,26,1161386,1944080,2007,01/11/2008 01:05:21 AM,42.002238974,-87.681628045,"(42.002238974, -87.681628045)" -5993702,HN779567,12/27/2007 05:28:00 AM,042XX W 13TH ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1011,010,24,29,18,1148060,1893655,2007,01/06/2008 01:05:00 AM,41.864136176,-87.731954568,"(41.864136176, -87.731954568)" -5992368,HN778916,12/26/2007 06:14:54 PM,067XX S LOOMIS BLVD,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0725,007,17,67,18,1168127,1859725,2007,01/06/2008 01:05:00 AM,41.770619319,-87.659266397,"(41.770619319, -87.659266397)" -5981302,HN777509,12/25/2007 02:00:00 PM,005XX N OGDEN AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1324,012,27,24,06,1167953,1903861,2007,01/04/2008 01:05:01 AM,41.891736613,-87.658633543,"(41.891736613, -87.658633543)" -5994826,HP103019,12/24/2007 12:00:00 PM,035XX N OTTAWA AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,true,1631,016,36,17,26,1124493,1922694,2007,01/12/2008 01:05:03 AM,41.944243779,-87.817829391,"(41.944243779, -87.817829391)" -5982038,HN775486,12/24/2007 07:25:37 AM,024XX W TOUHY AVE,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2411,024,50,2,08B,1158504,1947662,2007,01/18/2008 01:04:32 AM,42.012127804,-87.692131936,"(42.012127804, -87.692131936)" -5987018,HN775531,12/24/2007 06:20:00 AM,088XX S COMMERCIAL AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0423,004,10,46,16,1197632,1847130,2007,01/02/2008 01:04:12 AM,41.735372288,-87.551533824,"(41.735372288, -87.551533824)" -6023224,HP123819,12/24/2007 12:00:00 AM,012XX W PRATT BLVD,1110,DECEPTIVE PRACTICE,BOGUS CHECK,BANK,false,false,2432,024,49,1,11,1166357,1945267,2007,01/26/2008 01:04:36 AM,42.00539084,-87.663306139,"(42.00539084, -87.663306139)" -5999153,HN775174,12/23/2007 09:26:03 PM,045XX W WILCOX ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1113,011,28,26,08B,1146151,1898992,2007,01/11/2008 01:05:21 AM,41.878818037,-87.738826824,"(41.878818037, -87.738826824)" -5977274,HN773656,12/22/2007 10:45:00 PM,090XX S WALLACE ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2223,022,21,71,18,1173840,1845233,2007,12/26/2007 01:03:36 AM,41.730726672,-87.638753655,"(41.730726672, -87.638753655)" -5977278,HN773847,12/22/2007 09:30:00 PM,024XX W POPE JOHN PAUL II DR,0820,THEFT,$500 AND UNDER,STREET,false,false,0914,009,12,58,06,1160865,1876051,2007,12/04/2014 12:43:35 PM,41.815573115,-87.685435165,"(41.815573115, -87.685435165)" -6003708,HP111792,12/21/2007 09:00:00 AM,055XX N WESTERN AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,2011,020,40,4,06,1159293,1936651,2007,02/01/2008 01:05:02 AM,41.981896969,-87.689533445,"(41.981896969, -87.689533445)" -5976412,HN769964,12/20/2007 10:30:00 PM,039XX N CENTRAL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1633,016,38,15,06,1138266,1925806,2007,12/04/2014 12:43:35 PM,41.952544957,-87.76712944,"(41.952544957, -87.76712944)" -6101442,HP190712,12/20/2007 08:45:00 PM,058XX S WELLS ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,0711,007,20,68,06,1175571,1865986,2007,12/04/2014 12:43:35 PM,41.787636844,-87.631792451,"(41.787636844, -87.631792451)" -5995109,HP103690,12/20/2007 06:30:00 AM,013XX W MELROSE ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1924,019,44,6,26,1166678,1921726,2007,01/30/2008 01:05:27 AM,41.940786666,-87.662803054,"(41.940786666, -87.662803054)" -5972174,HN768002,12/19/2007 07:45:00 PM,006XX E 103RD ST,0554,ASSAULT,AGG PO HANDS NO/MIN INJURY,STREET,true,false,0512,005,9,50,08A,1182604,1836773,2007,12/23/2007 01:04:00 AM,41.707312844,-87.606909897,"(41.707312844, -87.606909897)" -5976146,HN770701,12/19/2007 04:00:00 PM,020XX N PULASKI RD,0820,THEFT,$500 AND UNDER,RESTAURANT,false,false,2525,025,30,20,06,1149420,1913394,2007,12/04/2014 12:43:35 PM,41.918275841,-87.7264495,"(41.918275841, -87.7264495)" -6176145,HN765101,12/17/2007 09:00:00 PM,004XX W WELLINGTON AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,2333,019,44,6,06,1172492,1920192,2007,12/04/2014 12:43:35 PM,41.93645053,-87.641480165,"(41.93645053, -87.641480165)" -5970352,HN765263,12/16/2007 07:00:00 PM,028XX W FOSTER AVE,0560,ASSAULT,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2011,020,40,4,08A,1156324,1934449,2007,12/22/2007 01:04:10 AM,41.975915286,-87.700512466,"(41.975915286, -87.700512466)" -5965733,HN761134,12/15/2007 05:12:05 PM,020XX E 68TH ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,0331,003,5,43,26,1190891,1860324,2007,12/19/2007 01:04:46 AM,41.771743141,-87.575804114,"(41.771743141, -87.575804114)" -5968430,HN761048,12/15/2007 03:00:00 PM,022XX W CERMAK RD,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,SIDEWALK,true,false,1223,012,25,31,14,1161893,1889406,2007,12/21/2007 01:04:15 AM,41.852199373,-87.681292406,"(41.852199373, -87.681292406)" -5970536,HN766760,12/14/2007 05:00:00 PM,002XX S WACKER DR,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,0112,001,2,32,06,1174011,1899114,2007,12/21/2007 01:04:15 AM,41.878577688,-87.636526993,"(41.878577688, -87.636526993)" -5962110,HN757159,12/13/2007 01:30:00 PM,044XX W PALMER ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2522,025,31,20,06,1146618,1914219,2007,12/04/2014 12:43:35 PM,41.920593672,-87.736723253,"(41.920593672, -87.736723253)" -5997367,HN779957,12/13/2007 12:00:00 AM,071XX S UNION AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,APARTMENT,false,true,0732,007,6,68,20,1172945,1857464,2007,01/10/2008 01:05:01 AM,41.764309888,-87.641672167,"(41.764309888, -87.641672167)" -5962739,HN756638,12/12/2007 11:30:00 PM,035XX W 65TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0831,008,15,66,07,1154034,1861247,2007,12/18/2007 02:43:27 PM,41.775087406,-87.710885892,"(41.775087406, -87.710885892)" -5972625,HN756315,12/12/2007 11:15:00 PM,019XX W GARFIELD BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0715,007,15,67,18,1164061,1868010,2007,12/30/2007 01:04:20 AM,41.793440923,-87.673937923,"(41.793440923, -87.673937923)" -5960369,HN755977,12/12/2007 07:00:01 PM,091XX S COMMERCIAL AVE,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,VEHICLE NON-COMMERCIAL,false,false,0423,004,10,46,03,1197686,1845133,2007,03/01/2008 01:04:38 AM,41.729891013,-87.551402459,"(41.729891013, -87.551402459)" -5960400,HN754892,12/12/2007 08:48:00 AM,019XX E 87TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0412,004,8,45,18,1190639,1847713,2007,12/19/2007 01:04:46 AM,41.737143554,-87.577134169,"(41.737143554, -87.577134169)" -5956756,HN753759,12/10/2007 11:50:00 PM,0000X E 70TH ST,2830,OTHER OFFENSE,OBSCENE TELEPHONE CALLS,APARTMENT,false,false,0322,003,6,69,17,1177763,1858651,2007,12/18/2007 02:43:27 PM,41.767459478,-87.623977205,"(41.767459478, -87.623977205)" -5952310,HN750733,12/09/2007 08:13:56 PM,066XX S HOYNE AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE PORCH/HALLWAY,true,false,0726,007,15,67,15,1163470,1860493,2007,12/13/2007 01:04:49 AM,41.772825706,-87.676315695,"(41.772825706, -87.676315695)" -5951078,HN749838,12/09/2007 08:40:00 AM,049XX N KEDZIE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1713,017,33,14,26,1154192,1932663,2007,12/13/2007 01:04:49 AM,41.97105735,-87.708400585,"(41.97105735, -87.708400585)" -5952111,HN749749,12/09/2007 06:00:00 AM,063XX S KOMENSKY AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,true,0813,008,13,65,08B,1150503,1862140,2007,12/18/2007 02:43:27 PM,41.777607343,-87.723807023,"(41.777607343, -87.723807023)" -5948577,HN746760,12/07/2007 12:20:00 PM,029XX W FITCH AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,2411,024,50,2,07,1155411,1947298,2007,12/12/2007 01:05:15 AM,42.011191984,-87.703522413,"(42.011191984, -87.703522413)" -5998278,HN744429,12/06/2007 01:26:26 AM,075XX S CALUMET AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,OTHER,true,false,0623,006,6,69,18,1179817,1855256,2007,01/09/2008 01:04:52 AM,41.758096503,-87.616552164,"(41.758096503, -87.616552164)" -5998274,HN744338,12/05/2007 11:05:00 PM,080XX S LAFLIN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,OTHER,true,false,0612,006,21,71,18,1167687,1851619,2007,01/09/2008 01:04:52 AM,41.748384818,-87.661111456,"(41.748384818, -87.661111456)" -5946496,HN744765,12/05/2007 03:20:00 PM,011XX S STATE ST,0460,BATTERY,SIMPLE,STREET,false,false,0132,001,2,32,08B,1176562,1895133,2007,12/21/2007 01:04:15 AM,41.867596369,-87.627280588,"(41.867596369, -87.627280588)" -5944224,HN743721,12/05/2007 01:15:00 PM,111XX S VINCENNES AVE,0810,THEFT,OVER $500,STREET,false,false,2234,022,34,75,06,1167256,1831056,2007,12/04/2014 12:43:35 PM,41.691966003,-87.663277248,"(41.691966003, -87.663277248)" -5943232,HN741425,12/04/2007 10:25:00 AM,060XX S SANGAMON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0712,007,16,68,08B,1170973,1864665,2007,12/24/2007 01:03:56 AM,41.784113584,-87.648689912,"(41.784113584, -87.648689912)" -5942578,HN741343,12/03/2007 12:00:00 PM,048XX N LINDER AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1623,016,45,11,14,1138747,1931793,2007,12/10/2007 01:03:40 AM,41.968965102,-87.765215322,"(41.968965102, -87.765215322)" -5943314,HN738069,12/02/2007 08:52:00 AM,032XX W GEORGE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1412,014,35,21,14,1154028,1919070,2007,12/09/2007 01:04:39 AM,41.933760515,-87.709367538,"(41.933760515, -87.709367538)" -4345,HN737868,12/02/2007 03:49:00 AM,045XX W VAN BUREN ST,0110,HOMICIDE,FIRST DEGREE MURDER,STREET,false,false,1131,011,24,26,01A,1146369,1897602,2007,11/17/2011 12:01:47 PM,41.874999565,-87.738061759,"(41.874999565, -87.738061759)" -5940691,HN737917,12/01/2007 02:42:00 AM,015XX E 67TH PL,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0332,003,5,43,05,1187701,1860580,2007,12/09/2007 01:04:39 AM,41.772522135,-87.587489296,"(41.772522135, -87.587489296)" -5936409,HN734117,11/29/2007 10:14:30 PM,032XX W FLOURNOY ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,true,false,1134,011,24,27,15,1154761,1896807,2007,12/05/2007 01:05:24 AM,41.872654159,-87.707270879,"(41.872654159, -87.707270879)" -5935034,HN731369,11/28/2007 10:55:00 AM,013XX W 78TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0612,006,17,71,05,1168988,1853009,2007,12/29/2007 01:04:11 AM,41.752171177,-87.656304062,"(41.752171177, -87.656304062)" -5936840,HN731719,11/28/2007 07:45:00 AM,032XX N LECLAIRE AVE,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,1634,016,38,15,06,1141754,1921160,2007,12/04/2014 12:43:35 PM,41.939731947,-87.754422599,"(41.939731947, -87.754422599)" -5931950,HN730526,11/27/2007 10:28:00 PM,072XX S MERRILL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0333,003,5,43,08B,1191849,1857348,2007,12/09/2007 01:04:39 AM,41.763553558,-87.572388973,"(41.763553558, -87.572388973)" -5932414,HN730827,11/27/2007 11:00:00 AM,039XX W BRYN MAWR AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1711,017,39,13,06,1149404,1936964,2007,12/04/2014 12:43:35 PM,41.982954062,-87.725894522,"(41.982954062, -87.725894522)" -5933014,HN729239,11/27/2007 10:30:00 AM,015XX N KEATING AVE,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,false,false,2533,025,37,25,26,1144484,1909820,2007,12/04/2007 01:04:29 AM,41.90856283,-87.744675022,"(41.90856283, -87.744675022)" -5929804,HN730141,11/26/2007 06:00:00 PM,021XX W PIERCE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1424,014,32,24,06,1161816,1910175,2007,12/04/2014 12:43:35 PM,41.90919293,-87.680995605,"(41.90919293, -87.680995605)" -5928179,HN728238,11/26/2007 05:57:00 PM,003XX W HURON ST,031A,ROBBERY,ARMED: HANDGUN,PARKING LOT/GARAGE(NON.RESID.),false,false,1831,018,42,8,03,1173598,1904961,2007,12/30/2007 01:04:20 AM,41.894631399,-87.637869436,"(41.894631399, -87.637869436)" -5939213,HN727770,11/26/2007 01:58:00 PM,030XX S DR MARTIN LUTHER KING JR DR,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,2112,001,2,35,08B,1179263,1885133,2007,12/08/2007 01:04:59 AM,41.840094342,-87.617670874,"(41.840094342, -87.617670874)" -5925027,HN725588,11/25/2007 01:35:00 AM,025XX S HALSTED ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SIDEWALK,true,false,0923,009,11,60,14,1171438,1887322,2007,12/02/2007 01:04:24 AM,41.846276473,-87.646320921,"(41.846276473, -87.646320921)" -5924840,HN725555,11/25/2007 12:01:00 AM,026XX N LINCOLN AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1933,019,32,7,06,1169114,1917456,2007,12/04/2014 12:43:35 PM,41.929016952,-87.653974285,"(41.929016952, -87.653974285)" -5925745,HN726033,11/24/2007 11:45:00 PM,018XX S WASHTENAW AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1023,010,28,29,07,1158609,1891066,2007,12/01/2007 01:05:44 AM,41.856822386,-87.693300224,"(41.856822386, -87.693300224)" -5924050,HN724065,11/24/2007 01:40:00 AM,033XX W 38TH ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,true,false,0913,009,12,58,26,1154758,1879165,2007,11/29/2007 01:05:58 AM,41.824242507,-87.707753736,"(41.824242507, -87.707753736)" -5928074,HN724040,11/24/2007 01:26:00 AM,037XX W 68TH ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SIDEWALK,true,false,0833,008,13,65,14,1152277,1859206,2007,11/30/2007 01:06:01 AM,41.769521295,-87.717380479,"(41.769521295, -87.717380479)" -5930556,HN723000,11/23/2007 12:23:23 PM,049XX W IOWA ST,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1531,015,37,25,18,1142945,1905482,2007,12/05/2007 01:05:24 AM,41.896687712,-87.750436907,"(41.896687712, -87.750436907)" -5925277,HN722965,11/23/2007 11:56:11 AM,092XX S DOBSON AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,ALLEY,true,false,0413,004,8,47,26,1184875,1843741,2007,11/28/2007 01:05:48 AM,41.726380986,-87.598375744,"(41.726380986, -87.598375744)" -5923121,HN721351,11/22/2007 12:05:00 AM,0000X W 69TH ST,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,CTA TRAIN,true,false,0722,007,6,69,08A,1177310,1859316,2007,11/28/2007 01:05:48 AM,41.769294551,-87.625617578,"(41.769294551, -87.625617578)" -5920638,HN718998,11/20/2007 06:26:16 PM,088XX S UNION AVE,0460,BATTERY,SIMPLE,STREET,false,false,2223,022,21,71,08B,1173141,1846474,2007,11/24/2007 01:04:48 AM,41.734147595,-87.641277768,"(41.734147595, -87.641277768)" -5927681,HN727951,11/20/2007 01:00:00 PM,015XX S WABASH AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0132,001,3,33,06,1176973,1892884,2007,11/30/2007 01:06:01 AM,41.861415683,-87.625839799,"(41.861415683, -87.625839799)" -5918839,HN717713,11/19/2007 06:00:00 PM,079XX W BELMONT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,1631,016,36,17,14,1122314,1920355,2007,11/24/2007 01:04:48 AM,41.937860942,-87.825889526,"(41.937860942, -87.825889526)" -5919011,HN715983,11/19/2007 08:45:00 AM,022XX S LAWNDALE AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1013,010,22,30,06,1152015,1888857,2007,12/04/2014 12:43:35 PM,41.850892957,-87.717562102,"(41.850892957, -87.717562102)" -5919183,HN714093,11/18/2007 09:30:00 AM,100XX W OHARE ST,5007,OTHER OFFENSE,OTHER WEAPONS VIOLATION,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,26,1100635,1934208,2007,11/24/2007 01:04:48 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -5915895,HN713903,11/18/2007 02:30:00 AM,032XX W ROOSEVELT RD,0560,ASSAULT,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1134,011,24,29,08A,1155160,1894571,2007,11/21/2007 01:04:07 AM,41.866510343,-87.70586597,"(41.866510343, -87.70586597)" -5919177,HN711384,11/16/2007 08:00:00 PM,011XX S HOMAN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1134,011,24,29,03,1153925,1894538,2007,12/21/2007 01:04:15 AM,41.866444468,-87.710400684,"(41.866444468, -87.710400684)" -5914976,HN710941,11/16/2007 04:26:24 PM,065XX S WOODLAWN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0321,003,20,42,08B,1185295,1862080,2007,11/28/2007 01:05:48 AM,41.776695187,-87.596261771,"(41.776695187, -87.596261771)" -5910843,HN707819,11/14/2007 10:00:00 PM,0000X E LAKE ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0122,001,42,32,06,1176882,1901783,2007,11/21/2007 01:04:07 AM,41.885837125,-87.625904608,"(41.885837125, -87.625904608)" -5910240,HN707039,11/14/2007 02:25:00 PM,011XX W SUNNYSIDE AVE,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,SIDEWALK,true,false,2311,019,46,3,18,1167517,1929779,2007,11/18/2007 01:03:46 AM,41.962866381,-87.659486728,"(41.962866381, -87.659486728)" -5909814,HN705850,11/13/2007 09:25:42 PM,008XX N LAWLER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1531,015,37,25,26,1142488,1905426,2007,11/21/2007 01:04:07 AM,41.89654255,-87.752116806,"(41.89654255, -87.752116806)" -5986881,HN757907,11/13/2007 08:40:00 PM,050XX S KEDZIE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0821,008,14,63,06,1155863,1870771,2007,01/01/2008 01:04:14 AM,41.801186112,-87.703925366,"(41.801186112, -87.703925366)" -5906076,HN703671,11/12/2007 06:00:00 PM,059XX S HALSTED ST,0860,THEFT,RETAIL THEFT,GAS STATION,false,false,0711,007,16,68,06,1172021,1865668,2007,08/31/2010 03:21:15 PM,41.786842966,-87.644818107,"(41.786842966, -87.644818107)" -5906276,HN703601,11/12/2007 05:32:00 PM,096XX S WINCHESTER AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,2213,022,19,72,08A,1165121,1840616,2007,11/16/2007 01:04:24 AM,41.718245538,-87.670824542,"(41.718245538, -87.670824542)" -5905790,HN702920,11/12/2007 12:00:00 PM,011XX N CALIFORNIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,1311,012,26,24,08B,1157557,1907554,2007,11/16/2007 01:04:24 AM,41.902088503,-87.69671273,"(41.902088503, -87.69671273)" -5904979,HN703557,11/12/2007 09:00:00 AM,055XX S WENTWORTH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0233,007,3,68,07,1175869,1868108,2007,08/31/2010 03:21:15 PM,41.79345315,-87.630636223,"(41.79345315, -87.630636223)" -5909175,HN706742,11/11/2007 03:00:00 PM,023XX W ST PAUL AVE,0810,THEFT,OVER $500,STREET,false,false,1434,014,1,24,06,1160147,1911685,2007,12/04/2014 12:43:35 PM,41.913371152,-87.687084964,"(41.913371152, -87.687084964)" -5902217,HN699063,11/10/2007 03:03:38 AM,004XX E 71ST ST,502R,OTHER OFFENSE,VEHICLE TITLE/REG OFFENSE,STREET,false,false,0323,003,6,69,26,1180200,1857995,2007,11/13/2007 01:03:20 AM,41.765603845,-87.615064702,"(41.765603845, -87.615064702)" -4323,HN696765,11/09/2007 04:10:00 AM,005XX S KOSTNER AVE,0110,HOMICIDE,FIRST DEGREE MURDER,PARKING LOT,true,false,1131,011,24,26,01A,1147099,1897319,2007,10/31/2014 03:20:56 PM,41.874209056,-87.735388711,"(41.874209056, -87.735388711)" -5901390,HN696804,11/08/2007 09:40:00 PM,077XX S SAGINAW AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,true,true,0421,004,7,43,04A,1195221,1854354,2007,12/21/2007 01:04:15 AM,41.755255282,-87.560128774,"(41.755255282, -87.560128774)" -5908247,HN695268,11/08/2007 03:10:00 AM,006XX W 129TH PL,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,0523,005,34,53,07,1174494,1818769,2007,08/31/2010 03:21:15 PM,41.658090937,-87.637141419,"(41.658090937, -87.637141419)" -5899702,HN695111,11/07/2007 10:39:00 PM,111XX S NORMAL AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,2233,022,34,49,08A,1174991,1830952,2007,11/14/2007 01:04:36 AM,41.691512009,-87.634961479,"(41.691512009, -87.634961479)" -5896516,HN692393,11/06/2007 02:35:00 PM,038XX W ROOSEVELT RD,2024,NARCOTICS,POSS: HEROIN(WHITE),VACANT LOT/LAND,true,false,1133,011,24,29,18,1150863,1894474,2007,11/11/2007 01:03:25 AM,41.866329266,-87.721643342,"(41.866329266, -87.721643342)" -5892518,HN691670,11/06/2007 06:00:00 AM,103XX S UNION AVE,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,2232,022,34,49,06,1173429,1836204,2007,11/11/2007 01:03:25 AM,41.705958903,-87.640525451,"(41.705958903, -87.640525451)" -5897652,HN695301,11/04/2007 06:00:00 PM,042XX W DIVISION ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1111,011,37,23,07,1147651,1907615,2007,12/01/2007 01:05:44 AM,41.902451853,-87.733097572,"(41.902451853, -87.733097572)" -5880878,HN687167,11/03/2007 03:45:00 PM,071XX S CLYDE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0333,003,5,43,08B,1191401,1858240,2007,11/09/2007 09:43:39 AM,41.766012141,-87.574002096,"(41.766012141, -87.574002096)" -5892531,HN686676,11/03/2007 11:15:00 AM,003XX W CHICAGO AVE,0810,THEFT,OVER $500,GAS STATION,false,false,1823,018,27,8,06,1173636,1905698,2007,12/04/2014 12:43:35 PM,41.896652923,-87.637707928,"(41.896652923, -87.637707928)" -5878327,HN685060,11/02/2007 02:40:00 PM,017XX W WINONA ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,2032,020,47,3,26,1163966,1934289,2007,12/03/2007 01:04:01 AM,41.97531789,-87.672414486,"(41.97531789, -87.672414486)" -5895933,HN681509,10/31/2007 06:40:00 PM,029XX W FILLMORE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1135,011,28,29,18,1156746,1895270,2007,11/11/2007 01:03:25 AM,41.868396513,-87.700024647,"(41.868396513, -87.700024647)" -5874198,HN680832,10/31/2007 01:50:17 PM,029XX E 91ST ST,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,0423,004,10,46,08B,1197093,1845224,2007,11/09/2007 09:43:39 AM,41.730155487,-87.553571723,"(41.730155487, -87.553571723)" -5874173,HN679864,10/30/2007 11:55:00 PM,045XX W WILCOX ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,1113,011,28,26,08A,1146260,1898996,2007,11/09/2007 09:43:39 AM,41.878826941,-87.738426491,"(41.878826941, -87.738426491)" -5871442,HN679456,10/30/2007 07:16:32 PM,005XX N CENTRAL AVE,5004,SEX OFFENSE,ATT CRIM SEXUAL ABUSE,OTHER,false,false,1523,015,37,25,17,1138986,1902826,2007,11/09/2007 09:43:39 AM,41.889472207,-87.765042468,"(41.889472207, -87.765042468)" -5875792,HN678511,10/30/2007 12:40:00 PM,076XX S EGGLESTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0621,006,17,69,08B,1174666,1853937,2007,12/18/2007 02:43:27 PM,41.75459323,-87.635469164,"(41.75459323, -87.635469164)" -5896560,HN676880,10/29/2007 03:30:00 PM,034XX W 63RD ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,PARKING LOT/GARAGE(NON.RESID.),true,false,0823,008,15,66,26,1154564,1862671,2007,11/11/2007 01:03:25 AM,41.778984535,-87.708905058,"(41.778984535, -87.708905058)" -5870499,HN676434,10/29/2007 11:30:00 AM,024XX W 63RD ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,APARTMENT,true,true,0825,008,15,66,04A,1160952,1862848,2007,11/09/2007 09:43:39 AM,41.779340571,-87.685481035,"(41.779340571, -87.685481035)" -5877822,HN676200,10/28/2007 05:00:00 PM,004XX E GRAND AVE,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,1834,018,42,8,05,1179438,1904041,2007,11/09/2007 09:43:39 AM,41.891974978,-87.616449292,"(41.891974978, -87.616449292)" -5871141,HN675041,10/28/2007 01:39:00 PM,002XX W 87TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0622,006,21,44,06,1176403,1847255,2007,11/09/2007 09:43:39 AM,41.736218161,-87.629303966,"(41.736218161, -87.629303966)" -5869995,HN674696,10/28/2007 11:11:07 AM,076XX N SHERIDAN RD,0498,BATTERY,AGGRAVATED DOMESTIC BATTERY: HANDS/FIST/FEET SERIOUS INJURY,APARTMENT,true,false,2422,024,49,1,04B,1165415,1950829,2007,11/09/2007 09:43:39 AM,42.020673234,-87.666612438,"(42.020673234, -87.666612438)" -5866750,HN673776,10/27/2007 07:00:00 PM,074XX N HARLEM AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,true,1611,016,41,9,26,1127351,1948885,2007,11/09/2007 09:43:39 AM,42.016066904,-87.80673257,"(42.016066904, -87.80673257)" -5866804,HN673609,10/27/2007 06:30:00 AM,030XX W LAKE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1331,012,2,27,14,1156091,1901037,2007,11/01/2007 01:04:07 AM,41.884234978,-87.702273633,"(41.884234978, -87.702273633)" -5931932,HN729616,10/26/2007 07:30:00 PM,023XX N KEELER AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2522,025,31,20,26,1147956,1915225,2007,12/03/2007 01:04:01 AM,41.923328582,-87.731781195,"(41.923328582, -87.731781195)" -5867968,HN668434,10/25/2007 08:33:06 AM,091XX S STONY ISLAND AVE,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,0413,004,8,48,06,1188557,1844370,2007,12/04/2014 12:43:35 PM,41.728019969,-87.58486839,"(41.728019969, -87.58486839)" -5951014,HN748508,10/25/2007 12:01:00 AM,098XX S WINSTON AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2213,022,21,73,26,1168504,1839708,2007,12/18/2007 02:43:27 PM,41.715681741,-87.658459907,"(41.715681741, -87.658459907)" -5864191,HN671534,10/24/2007 09:00:00 PM,019XX N HOWE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1813,018,43,7,14,1171595,1913009,2007,10/31/2007 01:04:04 AM,41.916759872,-87.644988633,"(41.916759872, -87.644988633)" -5859516,HN667700,10/24/2007 06:28:00 PM,020XX W CULLERTON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,false,1223,012,25,31,08B,1163262,1890448,2007,10/31/2007 01:04:04 AM,41.855030087,-87.676238525,"(41.855030087, -87.676238525)" -5860444,HN666541,10/24/2007 08:35:08 AM,039XX S DR MARTIN LUTHER KING JR DR,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0213,002,3,38,03,1179457,1879165,2007,11/09/2007 09:43:39 AM,41.82371327,-87.617141566,"(41.82371327, -87.617141566)" -6057328,HP107749,10/21/2007 05:00:00 PM,034XX E 95TH ST,0810,THEFT,OVER $500,BOAT/WATERCRAFT,false,false,0432,004,10,52,06,1200578,1842567,2007,12/04/2014 12:43:35 PM,41.722777131,-87.540895011,"(41.722777131, -87.540895011)" -5850957,HN660427,10/20/2007 11:02:03 PM,056XX W THOMAS ST,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,STREET,false,false,1511,015,29,25,08B,1138776,1906816,2007,10/24/2007 01:04:16 AM,41.900425075,-87.765716747,"(41.900425075, -87.765716747)" -5909724,HN707975,10/20/2007 01:05:00 PM,039XX N SHERIDAN RD,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,CTA PLATFORM,false,false,2324,019,44,6,14,1168850,1926543,2007,11/18/2007 01:03:46 AM,41.953957812,-87.654680033,"(41.953957812, -87.654680033)" -5849128,HN657083,10/19/2007 04:00:00 AM,037XX N RACINE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,CHA PARKING LOT/GROUNDS,false,false,2324,019,44,6,14,1167654,1925325,2007,10/24/2007 01:04:16 AM,41.950641475,-87.659111871,"(41.950641475, -87.659111871)" -5849459,HN656397,10/18/2007 07:55:00 PM,050XX W HURON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1532,015,28,25,18,1142795,1904139,2007,10/24/2007 01:04:16 AM,41.893005159,-87.751021316,"(41.893005159, -87.751021316)" -5849436,HN655903,10/18/2007 03:43:58 PM,060XX N BROADWAY,0460,BATTERY,SIMPLE,SIDEWALK,true,false,2433,024,48,77,08B,1167250,1940209,2007,10/24/2007 01:04:16 AM,41.991492367,-87.660167034,"(41.991492367, -87.660167034)" -5847909,HN655431,10/18/2007 12:00:00 PM,102XX S STATE ST,0810,THEFT,OVER $500,CONSTRUCTION SITE,false,false,0511,005,9,49,06,1178024,1836807,2007,12/04/2014 12:43:35 PM,41.707510942,-87.623680757,"(41.707510942, -87.623680757)" -5849154,HN653586,10/17/2007 02:00:00 PM,007XX N ADA ST,0460,BATTERY,SIMPLE,OTHER,true,false,1324,012,27,24,08B,1167232,1905220,2007,11/21/2007 01:04:07 AM,41.895481331,-87.661242342,"(41.895481331, -87.661242342)" -5844141,HN653380,10/17/2007 01:04:08 PM,107XX S AVENUE M,0460,BATTERY,SIMPLE,RESIDENCE,true,false,0432,004,10,52,08B,1201566,1834329,2007,10/22/2007 01:03:26 AM,41.700146375,-87.537555041,"(41.700146375, -87.537555041)" -5847534,HN653516,10/16/2007 05:20:00 PM,026XX E 79TH ST,0810,THEFT,OVER $500,CTA BUS,false,false,0421,004,7,43,06,1194921,1853130,2007,12/04/2014 12:43:35 PM,41.751903926,-87.561268425,"(41.751903926, -87.561268425)" -5843811,HN650896,10/16/2007 09:00:00 AM,026XX N LARAMIE AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,APARTMENT,true,true,2514,025,31,19,26,1141232,1916942,2007,10/21/2007 01:04:02 AM,41.928166988,-87.756445446,"(41.928166988, -87.756445446)" -5835802,HN645367,10/12/2007 07:00:00 PM,089XX S BURLEY AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0424,004,10,46,06,1199187,1846141,2007,12/04/2014 12:43:35 PM,41.732619494,-87.545870205,"(41.732619494, -87.545870205)" -5837752,HN643902,10/12/2007 01:30:00 PM,049XX N SAWYER AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,"SCHOOL, PUBLIC, GROUNDS",true,false,1713,017,39,14,26,1153775,1932800,2007,10/18/2007 01:04:23 AM,41.971441623,-87.709930278,"(41.971441623, -87.709930278)" -5832224,HN642986,10/12/2007 03:04:20 AM,011XX W WILSON AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2311,019,46,3,18,1167811,1930740,2007,10/14/2007 01:03:27 AM,41.965497049,-87.658377972,"(41.965497049, -87.658377972)" -5855780,HN641405,10/11/2007 04:00:00 AM,041XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1115,011,28,26,16,1148774,1899650,2007,11/09/2007 09:43:39 AM,41.880573401,-87.729178575,"(41.880573401, -87.729178575)" -5834923,HN641901,10/10/2007 02:00:00 PM,025XX W 79TH ST,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,RESTAURANT,true,false,0835,008,18,70,03,1161052,1852117,2007,01/25/2008 01:04:41 AM,41.74989108,-87.685410761,"(41.74989108, -87.685410761)" -5830563,HN639541,10/10/2007 09:50:00 AM,030XX S KEDZIE AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,1033,010,12,30,06,1155545,1884503,2007,12/04/2014 12:43:35 PM,41.838874878,-87.704723163,"(41.838874878, -87.704723163)" -5825686,HN636898,10/08/2007 10:53:31 PM,010XX N LAVERGNE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1531,015,37,25,18,1142803,1906222,2007,10/14/2007 01:03:27 AM,41.898721004,-87.750940006,"(41.898721004, -87.750940006)" -5833183,HN636598,10/08/2007 07:45:00 PM,122XX S GREEN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0524,005,34,53,18,1172844,1823423,2007,12/09/2007 01:04:39 AM,41.670898715,-87.643042718,"(41.670898715, -87.643042718)" -5824281,HN634776,10/07/2007 09:00:42 PM,050XX W MAYPOLE AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1532,015,28,25,08A,1142850,1900955,2007,10/13/2007 01:04:06 AM,41.884266857,-87.750898691,"(41.884266857, -87.750898691)" -5823999,HN634438,10/07/2007 02:48:00 PM,063XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0312,003,20,69,08B,1179974,1862856,2007,10/14/2007 01:03:27 AM,41.778948101,-87.615744398,"(41.778948101, -87.615744398)" -5823263,HN633621,10/07/2007 02:29:00 AM,021XX S LUMBER ST,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,1233,012,25,31,04B,1172782,1889780,2007,01/08/2008 01:04:49 AM,41.852991812,-87.64131586,"(41.852991812, -87.64131586)" -5824805,HN634343,10/06/2007 09:00:00 PM,032XX W 55TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0822,008,14,63,07,1155412,1867920,2007,10/20/2007 01:03:54 AM,41.793371617,-87.705655703,"(41.793371617, -87.705655703)" -5825692,HN633908,10/06/2007 09:00:00 PM,011XX W 18TH PL,0560,ASSAULT,SIMPLE,ALLEY,true,false,1233,012,25,31,08A,1169262,1891362,2007,10/14/2007 01:03:27 AM,41.857410071,-87.654189411,"(41.857410071, -87.654189411)" -5822529,HN632364,10/06/2007 12:00:00 AM,076XX N PAULINA ST,0890,THEFT,FROM BUILDING,OTHER,false,false,2422,024,49,1,06,1163617,1950699,2007,10/12/2007 01:03:28 AM,42.020354754,-87.673232675,"(42.020354754, -87.673232675)" -5829269,HN631243,10/05/2007 09:00:00 PM,054XX W HIGGINS AVE,2012,NARCOTICS,MANU/DELIVER:COCAINE,STREET,true,false,1623,016,45,11,18,1139758,1931749,2007,10/14/2007 01:03:27 AM,41.968825906,-87.761498921,"(41.968825906, -87.761498921)" -5845427,HN631207,10/05/2007 08:45:00 PM,065XX S EBERHART AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0321,003,20,42,18,1180743,1861593,2007,10/28/2007 01:04:10 AM,41.775464661,-87.612963991,"(41.775464661, -87.612963991)" -5823131,HN630648,10/05/2007 04:35:45 PM,002XX S LOTUS AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1522,015,29,25,18,1139877,1898515,2007,10/10/2007 01:49:09 AM,41.877626034,-87.761875719,"(41.877626034, -87.761875719)" -5819828,HN628737,10/04/2007 11:00:00 AM,109XX S EGGLESTON AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2233,022,34,49,06,1175280,1832139,2007,10/11/2007 01:04:03 AM,41.694762881,-87.633868132,"(41.694762881, -87.633868132)" -5817270,HN627106,10/03/2007 07:39:22 PM,036XX S RHODES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0212,002,4,35,14,1180140,1880977,2007,10/07/2007 01:38:50 AM,41.828669884,-87.614580294,"(41.828669884, -87.614580294)" -5816931,HN625290,10/02/2007 09:07:01 PM,007XX W LAWRENCE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,GAS STATION,false,false,2312,019,46,3,03,1170134,1932053,2007,12/04/2007 01:04:29 AM,41.969049425,-87.649798351,"(41.969049425, -87.649798351)" -5814367,HN625155,10/02/2007 08:20:00 PM,028XX E 76TH PL,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,0421,004,7,43,26,1196272,1854967,2007,10/05/2007 01:47:14 AM,41.756911414,-87.556256929,"(41.756911414, -87.556256929)" -5816128,HN624843,10/02/2007 04:45:00 PM,081XX S MAY ST,0460,BATTERY,SIMPLE,STREET,false,false,0613,006,21,71,08B,1170110,1850747,2007,10/07/2007 01:38:50 AM,41.745939643,-87.652258041,"(41.745939643, -87.652258041)" -5814184,HN624224,10/01/2007 10:00:00 PM,017XX W 35TH ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,0922,009,11,59,14,1165077,1881544,2007,10/08/2007 01:39:25 AM,41.830558319,-87.66982916,"(41.830558319, -87.66982916)" -5854976,HN655427,10/01/2007 12:00:00 PM,004XX W FULLERTON PKWY,1110,DECEPTIVE PRACTICE,BOGUS CHECK,COMMERCIAL / BUSINESS OFFICE,false,false,1933,019,43,7,11,1172664,1916270,2007,11/01/2007 01:04:07 AM,41.925684592,-87.640964448,"(41.925684592, -87.640964448)" -5810685,HN621771,09/30/2007 04:00:00 PM,078XX S SPAULDING AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0835,008,18,70,08A,1155706,1852330,2007,10/05/2007 01:47:14 AM,41.750584389,-87.704995282,"(41.750584389, -87.704995282)" -5809541,HN620732,09/30/2007 04:59:00 AM,005XX E RANDOLPH ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0124,001,42,32,06,1180199,1901323,2007,12/04/2014 12:43:35 PM,41.884499182,-87.613738222,"(41.884499182, -87.613738222)" -5808559,HN619849,09/30/2007 02:00:00 AM,001XX N COLUMBUS DR,0810,THEFT,OVER $500,STREET,false,false,0124,001,42,32,06,1178280,1901256,2007,12/04/2014 12:43:35 PM,41.884359271,-87.620786993,"(41.884359271, -87.620786993)" -5808572,HN619874,09/30/2007 12:00:00 AM,002XX E GRAND AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1834,018,42,8,06,1177777,1903989,2007,12/04/2014 12:43:35 PM,41.891870207,-87.622550919,"(41.891870207, -87.622550919)" -5810342,HN613930,09/26/2007 08:00:00 AM,037XX W DOUGLAS BLVD,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,1011,010,24,29,06,1151792,1892995,2007,12/04/2014 12:43:35 PM,41.862252505,-87.718271773,"(41.862252505, -87.718271773)" -5830274,HN611719,09/25/2007 11:40:00 PM,080XX S PHILLIPS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0422,004,7,46,08B,1193877,1852093,2007,10/17/2007 01:04:36 AM,41.749083958,-87.565128062,"(41.749083958, -87.565128062)" -5843850,HN650026,09/25/2007 08:42:00 PM,056XX W BELMONT AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,ATM (AUTOMATIC TELLER MACHINE),false,false,2514,025,30,19,11,1138438,1920675,2007,12/09/2007 01:04:39 AM,41.93846186,-87.76662186,"(41.93846186, -87.76662186)" -5803448,HN610943,09/25/2007 04:42:02 PM,004XX W GARFIELD BLVD,0320,ROBBERY,STRONGARM - NO WEAPON,CTA TRAIN,true,false,0934,009,3,61,03,1174446,1868506,2007,10/31/2007 01:04:04 AM,41.794577103,-87.635842373,"(41.794577103, -87.635842373)" -5801707,HN610802,09/25/2007 04:22:00 PM,012XX W 74TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0734,007,17,67,14,1169107,1855744,2007,08/31/2010 03:21:15 PM,41.75967381,-87.655789046,"(41.75967381, -87.655789046)" -5802557,HN610834,09/25/2007 04:00:00 PM,060XX S ARCHER AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0811,008,23,56,06,1138349,1868370,2007,12/04/2014 12:43:35 PM,41.794931326,-87.768214429,"(41.794931326, -87.768214429)" -5800743,HN609345,09/24/2007 09:20:00 PM,118XX S LAFAYETTE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0522,005,34,53,18,1177995,1826654,2007,09/30/2007 01:49:21 AM,41.679650299,-87.624093097,"(41.679650299, -87.624093097)" -5797961,HN609552,09/24/2007 02:00:00 PM,073XX N RIDGE BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2424,024,49,1,07,1160737,1948730,2007,09/29/2007 01:49:32 AM,42.015012232,-87.683885872,"(42.015012232, -87.683885872)" -5809820,HN608196,09/24/2007 11:40:00 AM,012XX N BURLING ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1822,018,27,8,26,1171043,1908530,2007,10/05/2007 01:47:14 AM,41.904481394,-87.647148303,"(41.904481394, -87.647148303)" -5807437,HN610417,09/24/2007 07:00:00 AM,033XX W 84TH PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0834,008,18,70,05,1155549,1848401,2007,10/05/2007 01:47:14 AM,41.739805708,-87.705675629,"(41.739805708, -87.705675629)" -5795173,HN606046,09/22/2007 11:00:00 PM,048XX N HERMITAGE AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,2032,020,47,3,06,1163948,1932815,2007,12/04/2014 12:43:35 PM,41.971273558,-87.672522489,"(41.971273558, -87.672522489)" -5795990,HN599511,09/20/2007 12:15:00 PM,008XX N KEYSTONE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,1111,011,37,23,08B,1149268,1905544,2007,09/29/2007 01:49:32 AM,41.896737616,-87.727211764,"(41.896737616, -87.727211764)" -5787202,HN597510,09/19/2007 01:03:55 AM,006XX N LOREL AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,1524,015,37,25,24,1140602,1903738,2007,09/21/2007 01:48:17 AM,41.891945325,-87.75908534,"(41.891945325, -87.75908534)" -5787218,HN596986,09/18/2007 07:45:00 PM,059XX S WASHTENAW AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0824,008,16,66,08B,1159354,1865064,2007,09/28/2007 01:47:12 AM,41.785454473,-87.691278852,"(41.785454473, -87.691278852)" -5789585,HN596919,09/18/2007 06:50:00 PM,047XX S MICHIGAN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0231,002,3,38,18,1177922,1873388,2007,09/23/2007 01:51:11 AM,41.807895663,-87.622948091,"(41.807895663, -87.622948091)" -5784100,HN590883,09/15/2007 02:45:00 PM,027XX N CLYBOURN AVE,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,1931,019,32,7,26,1162877,1918139,2007,09/21/2007 01:48:17 AM,41.931024465,-87.676874021,"(41.931024465, -87.676874021)" -5781266,HN590360,09/15/2007 10:17:02 AM,030XX S WALLACE ST,0560,ASSAULT,SIMPLE,APARTMENT,false,true,0923,009,11,60,08A,1172752,1884604,2007,01/04/2008 01:05:01 AM,41.838789108,-87.641578992,"(41.838789108, -87.641578992)" -5784933,HN593901,09/14/2007 12:00:00 PM,043XX S HERMITAGE AVE,0560,ASSAULT,SIMPLE,STREET,true,false,0914,009,12,61,08A,1165444,1875953,2007,10/15/2007 01:03:25 AM,41.815208224,-87.668641322,"(41.815208224, -87.668641322)" -5777337,HN586471,09/13/2007 11:00:00 AM,007XX N BISHOP ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1324,012,27,24,14,1166443,1904973,2007,09/21/2007 01:48:17 AM,41.894820469,-87.664147216,"(41.894820469, -87.664147216)" -5795370,HN598424,09/11/2007 11:30:00 PM,054XX W BERENICE AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,1633,016,38,15,08B,1139121,1925048,2007,07/02/2008 01:04:10 AM,41.950449389,-87.764004892,"(41.950449389, -87.764004892)" -5785179,HN583784,09/11/2007 09:15:00 PM,003XX W 35TH ST,0460,BATTERY,SIMPLE,SPORTS ARENA/STADIUM,true,false,0925,009,11,34,08B,1174472,1881700,2007,09/21/2007 01:48:17 AM,41.830782103,-87.635354068,"(41.830782103, -87.635354068)" -5777463,HN583385,09/11/2007 05:00:00 PM,010XX E 81ST ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,ALLEY,false,false,0631,006,8,44,04B,1184769,1851548,2007,11/09/2007 09:43:39 AM,41.747806722,-87.598519857,"(41.747806722, -87.598519857)" -5773333,HN583592,09/11/2007 09:00:00 AM,0000X N FRANKLIN ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0113,001,42,32,06,1174371,1900363,2007,12/04/2014 12:43:35 PM,41.881996993,-87.635167853,"(41.881996993, -87.635167853)" -5803684,HN610567,09/10/2007 11:51:00 AM,006XX N DEARBORN ST,1122,DECEPTIVE PRACTICE,COUNTERFEIT CHECK,BANK,true,false,1832,018,42,8,10,1175865,1904552,2007,10/26/2007 01:04:16 AM,41.893458356,-87.629555804,"(41.893458356, -87.629555804)" -5773484,HN580270,09/10/2007 08:18:57 AM,019XX E 95TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,0413,004,8,51,05,1190933,1842403,2007,06/02/2010 10:34:17 AM,41.722565301,-87.576228175,"(41.722565301, -87.576228175)" -5779185,HN579845,09/09/2007 10:30:00 PM,079XX S MARSHFIELD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0611,006,21,71,18,1166677,1852255,2007,09/19/2007 01:46:52 AM,41.750151686,-87.664794344,"(41.750151686, -87.664794344)" -5766636,HN576142,09/07/2007 10:00:00 PM,082XX S DR MARTIN LUTHER KING JR DR,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0631,006,6,44,03,1180306,1850117,2007,09/25/2007 02:22:43 AM,41.74398332,-87.614917304,"(41.74398332, -87.614917304)" -5768518,HN575805,09/07/2007 06:27:00 PM,012XX N LARRABEE ST,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,CHA HALLWAY/STAIRWELL/ELEVATOR,true,true,1822,018,27,8,04B,1172064,1908588,2007,09/13/2007 01:47:03 AM,41.904618077,-87.643396202,"(41.904618077, -87.643396202)" -5763978,HN574129,09/06/2007 10:38:00 PM,019XX W WASHINGTON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,1333,012,27,28,08B,1163328,1900740,2007,09/27/2007 02:26:25 AM,41.883270875,-87.675706875,"(41.883270875, -87.675706875)" -5767286,HN574145,09/06/2007 10:00:00 PM,011XX S KEELER AVE,0820,THEFT,$500 AND UNDER,CONSTRUCTION SITE,true,false,1132,011,24,29,06,1148521,1894630,2007,12/04/2014 12:43:35 PM,41.86680282,-87.730237092,"(41.86680282, -87.730237092)" -5765771,HN575094,09/06/2007 12:00:00 PM,043XX W CORTEZ ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,OTHER,false,false,1111,011,37,23,11,1146943,1906594,2007,09/27/2007 02:26:25 AM,41.899663685,-87.735724321,"(41.899663685, -87.735724321)" -5763633,HN573264,09/06/2007 09:00:00 AM,023XX S WABASH AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0134,001,2,33,14,1177069,1889054,2007,09/09/2007 01:53:39 AM,41.850903734,-87.625603289,"(41.850903734, -87.625603289)" -5761434,HN572341,09/06/2007 12:00:00 AM,032XX W ARMITAGE AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,1421,014,35,22,06,1154640,1913072,2007,12/04/2014 12:43:35 PM,41.917289279,-87.707279389,"(41.917289279, -87.707279389)" -5763750,HN574072,09/05/2007 10:30:00 PM,055XX S EMERALD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,0711,007,3,68,07,1172284,1868158,2007,09/10/2007 01:45:18 AM,41.793670016,-87.643780586,"(41.793670016, -87.643780586)" -5760570,HN570315,09/04/2007 11:30:00 PM,063XX W ROSEDALE AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,STREET,false,false,1622,016,45,10,14,1132699,1938799,2007,09/09/2007 01:53:39 AM,41.988298119,-87.78728988,"(41.988298119, -87.78728988)" -5785733,HN565993,09/02/2007 07:33:25 PM,064XX S PULASKI RD,5011,OTHER OFFENSE,LICENSE VIOLATION,SMALL RETAIL STORE,false,false,0813,008,13,65,26,1150770,1861594,2007,09/22/2007 01:51:05 AM,41.776103835,-87.722842396,"(41.776103835, -87.722842396)" -5761215,HN565031,09/02/2007 09:00:00 AM,007XX W 76TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0621,006,17,68,18,1172854,1854515,2007,09/09/2007 01:53:39 AM,41.756219476,-87.642092557,"(41.756219476, -87.642092557)" -6001106,HP107902,09/02/2007 12:00:00 AM,085XX W BRYN MAWR AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,HOTEL/MOTEL,false,false,1614,016,41,76,11,1118573,1936117,2007,01/13/2008 01:05:28 AM,41.981173792,-87.839304814,"(41.981173792, -87.839304814)" -5756441,HN564338,09/01/2007 09:40:00 PM,013XX E 47TH ST,0560,ASSAULT,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),true,false,2123,002,4,39,08A,1186126,1874149,2007,09/07/2007 01:54:58 AM,41.809793878,-87.592834299,"(41.809793878, -87.592834299)" -5755163,HN564179,09/01/2007 08:40:00 PM,0000X N LOTUS AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1522,015,28,25,18,1139907,1899914,2007,09/05/2007 01:50:37 AM,41.881464523,-87.761731354,"(41.881464523, -87.761731354)" -5756474,HN564279,09/01/2007 08:20:00 PM,040XX S DREXEL BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2123,002,4,36,08B,1182625,1878105,2007,09/14/2007 01:49:03 AM,41.8207315,-87.605552379,"(41.8207315, -87.605552379)" -5756714,HN564024,09/01/2007 06:05:00 PM,039XX W 13TH ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1011,010,24,29,26,1150110,1893788,2007,09/05/2007 01:50:37 AM,41.864461492,-87.724425559,"(41.864461492, -87.724425559)" -5848884,HN656198,09/01/2007 02:00:00 PM,026XX W ATTRILL ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,1431,014,1,22,06,1158063,1914179,2007,10/29/2007 01:03:34 AM,41.920257715,-87.694672919,"(41.920257715, -87.694672919)" -5756852,HN562967,09/01/2007 02:00:00 AM,081XX S HERMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE-GARAGE,false,true,0614,006,18,71,14,1166060,1850510,2007,09/12/2007 01:43:33 AM,41.745376289,-87.667104823,"(41.745376289, -87.667104823)" -5757648,HN561884,08/31/2007 05:07:00 PM,131XX S ELLIS AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,STREET,false,true,0533,005,9,54,04B,1185266,1818407,2007,10/04/2007 01:48:51 AM,41.656852044,-87.597735972,"(41.656852044, -87.597735972)" -5754951,HN560461,08/30/2007 10:14:01 PM,027XX W 18TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,1023,010,28,29,08B,1158500,1891242,2007,09/05/2007 01:50:37 AM,41.857307577,-87.693695502,"(41.857307577, -87.693695502)" -5749631,HN556373,08/28/2007 10:04:31 PM,074XX S PARNELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0732,007,17,68,14,1173793,1855626,2007,09/08/2007 01:53:39 AM,41.759247441,-87.63861845,"(41.759247441, -87.63861845)" -5757029,HN567500,08/28/2007 07:00:00 AM,056XX N KIMBALL AVE,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,RESIDENCE,false,true,1711,017,39,13,20,1152658,1937199,2007,11/20/2007 01:03:49 AM,41.983534966,-87.713920681,"(41.983534966, -87.713920681)" -5750075,HN554470,08/27/2007 09:00:00 PM,044XX W JACKSON BLVD,0810,THEFT,OVER $500,APARTMENT,false,false,1131,011,24,26,06,1146503,1898269,2007,12/04/2014 12:43:35 PM,41.876827342,-87.737552762,"(41.876827342, -87.737552762)" -5763592,HN573034,08/25/2007 07:00:00 AM,048XX W DIVERSEY AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,2521,025,31,19,11,1143836,1918225,2007,09/16/2007 01:46:17 AM,41.931639191,-87.746844325,"(41.931639191, -87.746844325)" -5740672,HN549143,08/25/2007 03:00:00 AM,084XX S DREXEL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0632,006,8,44,26,1183735,1849174,2007,08/30/2007 01:59:27 AM,41.741316381,-87.602382605,"(41.741316381, -87.602382605)" -5740151,HN547815,08/24/2007 01:30:00 PM,097XX S EMERALD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,2223,022,21,73,14,1172990,1840100,2007,08/28/2007 01:52:53 AM,41.716659779,-87.642018492,"(41.716659779, -87.642018492)" -5739797,HN548713,08/24/2007 10:00:00 AM,063XX S HALSTED PKWY,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,BANK,false,false,0723,007,20,68,11,1172550,1863067,2007,09/13/2007 01:47:03 AM,41.779693888,-87.642955085,"(41.779693888, -87.642955085)" -5740177,HN547429,08/23/2007 10:30:00 PM,009XX N HONORE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,1322,012,32,24,14,1163854,1906393,2007,08/29/2007 01:49:38 AM,41.898772073,-87.673615773,"(41.898772073, -87.673615773)" -5740974,HN549815,08/23/2007 06:00:00 PM,055XX S NAGLE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0811,008,23,56,05,1134293,1866886,2007,09/02/2007 02:22:13 AM,41.790931166,-87.783122937,"(41.790931166, -87.783122937)" -5736412,HN543461,08/21/2007 09:15:00 PM,046XX W 59TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,CTA GARAGE / OTHER PROPERTY,false,false,0813,008,23,62,07,1146422,1865018,2007,09/26/2007 01:50:46 AM,41.785583453,-87.738695271,"(41.785583453, -87.738695271)" -5733238,HN541950,08/20/2007 10:00:00 PM,022XX W FARWELL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,2411,024,50,2,07,1159769,1945508,2007,08/29/2007 01:49:38 AM,42.00619107,-87.687537196,"(42.00619107, -87.687537196)" -5731202,HN540533,08/20/2007 11:00:00 AM,0000X E SUPERIOR ST,0810,THEFT,OVER $500,STREET,false,false,1834,018,42,8,06,1176271,1905324,2007,12/04/2014 12:43:35 PM,41.895567615,-87.62804142,"(41.895567615, -87.62804142)" -5732218,HN539200,08/20/2007 01:20:00 AM,060XX N KIMBALL AVE,0560,ASSAULT,SIMPLE,RESIDENCE-GARAGE,false,true,1711,017,50,13,08A,1152566,1940199,2007,08/26/2007 01:45:59 AM,41.991768953,-87.714179277,"(41.991768953, -87.714179277)" -5731048,HN538246,08/19/2007 02:00:00 PM,043XX N SHERIDAN RD,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,2322,019,46,3,26,1168852,1929256,2007,08/23/2007 01:50:54 AM,41.961402337,-87.654593687,"(41.961402337, -87.654593687)" -5732594,HN538120,08/19/2007 11:55:00 AM,005XX E BROWNING AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0212,002,4,35,18,1180912,1881386,2007,08/29/2007 01:49:38 AM,41.829774451,-87.61173531,"(41.829774451, -87.61173531)" -5731659,HN537591,08/19/2007 03:00:00 AM,063XX S MARSHFIELD AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0725,007,15,67,08B,1166376,1862532,2007,08/29/2007 01:49:38 AM,41.778359571,-87.665605002,"(41.778359571, -87.665605002)" -5729356,HN538802,08/19/2007 01:30:00 AM,007XX W WRIGHTWOOD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1933,019,43,7,14,1171086,1917463,2007,08/23/2007 01:50:54 AM,41.928993056,-87.646727651,"(41.928993056, -87.646727651)" -5727185,HN535800,08/18/2007 02:00:00 AM,022XX N LAWNDALE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2525,025,35,22,05,1151308,1914458,2007,08/26/2007 01:45:59 AM,41.92115868,-87.719484825,"(41.92115868, -87.719484825)" -5729140,HN534326,08/17/2007 12:00:00 PM,061XX S MORGAN ST,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE,false,false,0712,007,16,68,03,1170660,1863992,2007,12/11/2007 01:04:21 AM,41.782273627,-87.6498571,"(41.782273627, -87.6498571)" -5729516,HN534130,08/17/2007 10:18:59 AM,026XX E 79TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0421,004,7,43,06,1195505,1853147,2007,09/27/2007 02:26:25 AM,41.751936174,-87.559127815,"(41.751936174, -87.559127815)" -5724871,HN533431,08/16/2007 08:30:00 PM,026XX N SPAULDING AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1412,014,35,22,18,1153583,1917546,2007,08/19/2007 02:01:23 AM,41.929587414,-87.711043553,"(41.929587414, -87.711043553)" -5732099,HN532768,08/16/2007 03:33:02 PM,059XX N CLARK ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,false,false,2013,020,48,77,18,1164654,1939212,2007,08/23/2007 01:50:54 AM,41.988812168,-87.669744224,"(41.988812168, -87.669744224)" -5726085,HN534128,08/16/2007 10:00:00 AM,036XX S LAKE PARK AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,2122,002,4,36,26,1182305,1881213,2007,09/26/2007 01:50:46 AM,41.829267505,-87.606629837,"(41.829267505, -87.606629837)" -5719686,HN528532,08/14/2007 08:50:00 AM,002XX S FRANKLIN ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,STREET,false,false,0112,001,2,32,11,1174329,1899069,2007,09/14/2007 01:49:03 AM,41.878447115,-87.635360718,"(41.878447115, -87.635360718)" -5721497,HN528389,08/13/2007 09:00:00 PM,019XX N LEAVITT ST,0810,THEFT,OVER $500,STREET,false,false,1434,014,32,22,06,1161423,1913027,2007,12/04/2014 12:43:35 PM,41.917027217,-87.682359789,"(41.917027217, -87.682359789)" -5717694,HN527540,08/13/2007 05:30:00 PM,064XX N CLARK ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2432,024,40,1,07,1164315,1943026,2007,08/22/2007 01:57:02 AM,41.99928509,-87.670882582,"(41.99928509, -87.670882582)" -5722406,HN526937,08/13/2007 05:00:00 PM,044XX W ALTGELD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,2524,025,31,20,08B,1146249,1916269,2007,08/20/2007 01:50:16 AM,41.926226106,-87.738026757,"(41.926226106, -87.738026757)" -5720784,HN526208,08/13/2007 11:29:33 AM,043XX S COTTAGE GROVE AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0222,002,4,38,06,1182286,1876479,2007,12/04/2014 12:43:35 PM,41.816277508,-87.606846409,"(41.816277508, -87.606846409)" -5728880,HN524725,08/12/2007 03:30:00 PM,078XX S WINCHESTER AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,0611,006,18,71,04B,1164679,1852706,2007,09/04/2007 01:42:25 AM,41.751431663,-87.672103227,"(41.751431663, -87.672103227)" -5716227,HN524372,08/11/2007 07:00:00 PM,073XX S HARVARD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0731,007,17,69,06,1175186,1856313,2007,12/04/2014 12:43:35 PM,41.761101667,-87.633492695,"(41.761101667, -87.633492695)" -5714608,HN522969,08/11/2007 04:15:00 PM,110XX S THROOP ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2234,022,34,75,06,1169673,1831406,2007,12/04/2014 12:43:35 PM,41.692874525,-87.654418166,"(41.692874525, -87.654418166)" -5714952,HN522275,08/11/2007 10:00:00 AM,0000X E 91ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0634,006,6,44,08B,1178387,1844707,2007,08/21/2007 01:54:09 AM,41.729181365,-87.622112463,"(41.729181365, -87.622112463)" -6051544,HN521341,08/10/2007 08:25:19 PM,052XX S HARPER AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,OTHER,true,false,2132,002,4,41,26,1187215,1870524,2007,02/10/2008 01:05:01 AM,41.799820807,-87.588955226,"(41.799820807, -87.588955226)" -5713234,HN520623,08/10/2007 02:00:00 PM,104XX S STATE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0512,005,34,49,14,1178063,1835507,2007,08/15/2007 02:43:11 AM,41.70394268,-87.623577176,"(41.70394268, -87.623577176)" -5711485,HN519684,08/09/2007 11:55:00 PM,096XX S GREENWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0511,005,8,50,08B,1185190,1841440,2007,08/18/2007 02:25:38 AM,41.720059393,-87.597293949,"(41.720059393, -87.597293949)" -5721581,HN516352,08/08/2007 12:06:16 PM,038XX W ROOSEVELT RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1011,010,24,29,18,1150936,1894395,2007,08/19/2007 02:01:23 AM,41.866111053,-87.721377418,"(41.866111053, -87.721377418)" -5704641,HN510463,08/05/2007 01:50:00 PM,003XX E 89TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0633,006,6,44,14,1179908,1845751,2007,08/10/2007 03:53:50 AM,41.732011607,-87.616508848,"(41.732011607, -87.616508848)" -5746272,HN555480,08/04/2007 05:00:00 PM,077XX S CONSTANCE AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0414,004,8,43,06,1189916,1854129,2007,08/31/2007 02:09:56 AM,41.754767052,-87.579577076,"(41.754767052, -87.579577076)" -5700335,HN508532,08/04/2007 12:28:32 PM,072XX S UNION AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0732,007,17,68,06,1173042,1856858,2007,12/04/2014 12:43:35 PM,41.762644809,-87.641334507,"(41.762644809, -87.641334507)" -5712533,HN505432,08/02/2007 09:45:00 PM,066XX S HALSTED ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0723,007,6,68,18,1172149,1860942,2007,08/29/2007 01:49:38 AM,41.773871465,-87.644487603,"(41.773871465, -87.644487603)" -5696566,HN504150,08/02/2007 09:45:00 AM,090XX S COMMERCIAL AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0424,004,10,46,06,1197759,1845396,2007,08/07/2007 01:56:52 AM,41.730610886,-87.55112629,"(41.730610886, -87.55112629)" -5705066,HN502701,08/01/2007 04:00:00 PM,013XX N LAVERGNE AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,false,2533,025,37,25,08B,1142827,1908552,2007,08/15/2007 02:43:11 AM,41.905114341,-87.75079374,"(41.905114341, -87.75079374)" -5692684,HN499798,07/31/2007 07:00:00 AM,045XX N DRAKE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1723,017,33,14,07,1151941,1929981,2007,08/25/2007 01:53:42 AM,41.963742527,-87.716748761,"(41.963742527, -87.716748761)" -5689399,HN498537,07/30/2007 03:40:00 PM,024XX W ADAMS ST,0460,BATTERY,SIMPLE,ALLEY,false,false,1125,011,2,28,08B,1160370,1899052,2007,08/03/2007 02:38:51 AM,41.878700538,-87.686615546,"(41.878700538, -87.686615546)" -5692111,HN498304,07/30/2007 02:16:26 PM,117XX S STATE ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,true,false,0532,005,9,53,03,1178406,1826881,2007,08/04/2007 03:27:52 AM,41.680263928,-87.622581811,"(41.680263928, -87.622581811)" -5693309,HN498065,07/30/2007 12:01:00 PM,0000X N HAMLIN BLVD,0810,THEFT,OVER $500,SIDEWALK,false,false,1122,011,28,26,06,1151025,1899824,2007,12/04/2014 12:43:35 PM,41.881007096,-87.720908487,"(41.881007096, -87.720908487)" -5693889,HN500047,07/30/2007 11:20:00 AM,020XX W 68TH ST,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,STREET,false,false,0726,007,15,67,03,1163691,1859591,2007,08/13/2007 02:45:51 AM,41.770345859,-87.675530854,"(41.770345859, -87.675530854)" -5700809,HN496946,07/29/2007 07:30:00 PM,021XX S WASHTENAW AVE,0460,BATTERY,SIMPLE,ALLEY,true,false,1023,010,28,30,08B,1158740,1889463,2007,08/09/2007 02:29:33 AM,41.852420903,-87.692863269,"(41.852420903, -87.692863269)" -5687257,HN495181,07/28/2007 09:54:00 PM,045XX S LAWLER AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0814,008,23,56,04B,1143418,1873950,2007,08/16/2007 02:19:17 AM,41.810150795,-87.749487085,"(41.810150795, -87.749487085)" -5709792,HN494070,07/28/2007 08:21:41 AM,100XX S MICHIGAN AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,ALLEY,true,false,0511,005,9,49,18,1178972,1838331,2007,08/19/2007 02:01:23 AM,41.711671512,-87.620162962,"(41.711671512, -87.620162962)" -5964245,HN493281,07/27/2007 10:30:00 PM,049XX W NORTH AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2533,025,37,25,16,1143198,1910223,2007,12/23/2007 01:04:00 AM,41.909692827,-87.749389137,"(41.909692827, -87.749389137)" -5693419,HN493225,07/27/2007 10:05:00 PM,007XX W 58TH ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0711,007,20,68,08B,1172457,1866453,2007,08/08/2007 02:59:32 AM,41.788987501,-87.643196399,"(41.788987501, -87.643196399)" -5690181,HN493075,07/27/2007 08:15:00 PM,050XX W BELLE PLAINE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1624,016,45,15,18,1142258,1926834,2007,08/05/2007 01:48:31 AM,41.955292572,-87.752428888,"(41.955292572, -87.752428888)" -5679417,HN489323,07/26/2007 12:15:00 AM,008XX N LARAMIE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1524,015,37,25,18,1141501,1904898,2007,07/29/2007 01:49:15 AM,41.895111946,-87.755754986,"(41.895111946, -87.755754986)" -5685402,HN488446,07/25/2007 04:11:42 PM,032XX W ARMITAGE AVE,0560,ASSAULT,SIMPLE,COMMERCIAL / BUSINESS OFFICE,false,false,1421,014,35,22,08A,1154542,1913069,2007,08/05/2007 01:48:31 AM,41.91728301,-87.707639524,"(41.91728301, -87.707639524)" -5687022,HN487163,07/24/2007 08:27:40 PM,014XX S CHRISTIANA AVE,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,"SCHOOL, PUBLIC, BUILDING",false,false,1021,010,24,29,14,1154231,1892646,2007,08/03/2007 02:38:51 AM,41.861246512,-87.709327807,"(41.861246512, -87.709327807)" -5688272,HN488919,07/24/2007 07:00:00 AM,109XX S WENTWORTH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0513,005,34,49,07,1176841,1832630,2007,08/02/2007 01:58:25 AM,41.696075329,-87.628138155,"(41.696075329, -87.628138155)" -5677493,HN486077,07/24/2007 06:40:00 AM,042XX N MOBILE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1624,016,38,15,05,1133638,1927394,2007,08/31/2010 03:21:15 PM,41.956985235,-87.784105024,"(41.956985235, -87.784105024)" -5673340,HN483810,07/23/2007 12:05:00 PM,037XX W IRVING PARK RD,0560,ASSAULT,SIMPLE,MEDICAL/DENTAL OFFICE,false,false,1723,017,39,16,08A,1150416,1926360,2007,07/29/2007 01:49:15 AM,41.95383622,-87.722450646,"(41.95383622, -87.722450646)" -5714881,HN483012,07/22/2007 10:44:47 PM,119XX S LA SALLE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,0522,005,9,53,18,1177452,1825573,2007,08/19/2007 02:01:23 AM,41.676696119,-87.626113184,"(41.676696119, -87.626113184)" -5672782,HN482901,07/22/2007 10:14:43 PM,062XX S WOODLAWN AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0314,003,20,42,04B,1185337,1863542,2007,08/02/2007 01:58:25 AM,41.780706054,-87.596061852,"(41.780706054, -87.596061852)" -5671777,HN482789,07/22/2007 08:00:00 AM,113XX S YALE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0522,005,34,49,05,1176673,1829781,2007,08/31/2010 03:21:15 PM,41.688261024,-87.628838576,"(41.688261024, -87.628838576)" -5689108,HN481228,07/22/2007 12:30:00 AM,003XX E PERSHING RD,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,0211,002,3,35,18,1179212,1879241,2007,08/05/2007 01:48:31 AM,41.82392742,-87.618038053,"(41.82392742, -87.618038053)" -5676491,HN480229,07/21/2007 02:00:00 PM,050XX W OHIO ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1532,015,28,25,18,1142681,1903566,2007,07/29/2007 01:49:15 AM,41.891434901,-87.751454272,"(41.891434901, -87.751454272)" -5674653,HN480230,07/21/2007 01:50:00 PM,117XX S PRINCETON AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,0522,005,34,53,14,1176437,1826878,2007,07/27/2007 01:58:36 AM,41.680300042,-87.62978934,"(41.680300042, -87.62978934)" -5670396,HN480883,07/21/2007 05:00:00 AM,055XX S CALIFORNIA AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0824,008,16,63,05,1158620,1867498,2007,07/28/2007 01:56:07 AM,41.792148715,-87.693903679,"(41.792148715, -87.693903679)" -5669385,HN479381,07/21/2007 02:15:00 AM,009XX N ASHLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,1323,012,1,24,14,1165600,1906209,2007,07/25/2007 03:43:09 AM,41.898230142,-87.667208067,"(41.898230142, -87.667208067)" -5669866,HN479865,07/21/2007 01:30:00 AM,039XX W 70TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0833,008,13,65,07,1151146,1857595,2007,11/09/2007 09:43:39 AM,41.7651226,-87.721568268,"(41.7651226, -87.721568268)" -5822167,HN478455,07/20/2007 04:25:00 PM,006XX N TRUMBULL AVE,2027,NARCOTICS,POSS: CRACK,VEHICLE NON-COMMERCIAL,true,false,1121,011,27,23,18,1153300,1904215,2007,10/10/2007 01:49:09 AM,41.893011591,-87.712438125,"(41.893011591, -87.712438125)" -5669528,HN475783,07/19/2007 11:30:00 AM,076XX S VERNON AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0624,006,6,69,07,1180526,1854487,2007,07/29/2007 01:49:15 AM,41.755970044,-87.61397734,"(41.755970044, -87.61397734)" -5665691,HN473480,07/18/2007 09:00:00 AM,099XX S WINSTON AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,true,true,2213,022,21,73,26,1169005,1838452,2007,07/22/2007 01:56:08 AM,41.712224293,-87.656661152,"(41.712224293, -87.656661152)" -5662161,HN472228,07/17/2007 04:50:00 PM,093XX S ASHLAND AVE,0860,THEFT,RETAIL THEFT,OTHER,true,false,2221,022,21,73,06,1167355,1842579,2007,07/21/2007 01:59:35 AM,41.723584846,-87.662586187,"(41.723584846, -87.662586187)" -5660787,HN469107,07/16/2007 06:30:00 AM,082XX S ELLIS AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0631,006,8,44,05,1184284,1850763,2007,05/09/2008 01:05:13 AM,41.745663952,-87.600321531,"(41.745663952, -87.600321531)" -5660684,HN468744,07/15/2007 11:00:00 PM,002XX N CENTRAL PARK AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1123,011,28,27,08B,1152295,1901675,2007,07/21/2007 01:59:35 AM,41.88606147,-87.716196223,"(41.88606147, -87.716196223)" -5665335,HN467538,07/15/2007 10:25:32 AM,068XX S JUSTINE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0725,007,17,67,08B,1167221,1859421,2007,09/20/2007 02:07:45 AM,41.769804541,-87.662596135,"(41.769804541, -87.662596135)" -5656965,HN465135,07/13/2007 11:45:00 PM,080XX S PERRY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0623,006,17,44,14,1176967,1851605,2007,07/20/2007 02:45:05 AM,41.748142417,-87.627106887,"(41.748142417, -87.627106887)" -5664162,HN464920,07/13/2007 10:08:10 PM,015XX E 64TH ST,0337,ROBBERY,ATTEMPT: ARMED-OTHER DANG WEAP,STREET,false,false,0314,003,5,42,03,1187928,1862818,2007,07/30/2007 01:43:53 AM,41.778657986,-87.586585953,"(41.778657986, -87.586585953)" -5654799,HN465001,07/13/2007 10:00:00 PM,056XX S STATE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0233,002,20,40,14,1177271,1867831,2007,07/17/2007 01:59:28 AM,41.792661473,-87.625503607,"(41.792661473, -87.625503607)" -5656809,HN463004,07/12/2007 03:00:00 PM,090XX S DAUPHIN AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0633,006,8,44,05,1183647,1845092,2007,04/27/2008 01:04:21 AM,41.730116969,-87.602831974,"(41.730116969, -87.602831974)" -5650939,HN461282,07/12/2007 07:00:00 AM,007XX N RIDGEWAY AVE,0810,THEFT,OVER $500,STREET,false,false,1112,011,27,23,06,1151297,1904554,2007,12/04/2014 12:43:35 PM,41.89398138,-87.71978553,"(41.89398138, -87.71978553)" -5658007,HN462301,07/12/2007 05:43:00 AM,014XX N LATROBE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2532,025,37,25,14,1141062,1909028,2007,07/19/2007 02:59:35 AM,41.906453247,-87.757265485,"(41.906453247, -87.757265485)" -5669125,HN460981,07/12/2007 02:10:00 AM,077XX S WOLCOTT AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0611,006,18,71,18,1164991,1853396,2007,07/25/2007 03:43:09 AM,41.753318536,-87.670940427,"(41.753318536, -87.670940427)" -5656071,HN459547,07/11/2007 11:05:00 AM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0634,006,21,44,06,1176858,1847237,2007,07/19/2007 02:59:35 AM,41.736158541,-87.627637554,"(41.736158541, -87.627637554)" -5651876,HN459044,07/11/2007 06:15:00 AM,071XX S VINCENNES AVE,041A,BATTERY,AGGRAVATED: HANDGUN,GAS STATION,true,false,0731,007,6,69,04B,1176576,1857697,2007,10/15/2007 01:03:25 AM,41.764868376,-87.628356705,"(41.764868376, -87.628356705)" -5647835,HN458315,07/10/2007 08:00:00 AM,044XX S ALBANY AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0912,009,14,58,06,1156401,1875072,2007,12/04/2014 12:43:35 PM,41.812977804,-87.701836415,"(41.812977804, -87.701836415)" -8160478,HT394971,07/10/2007 12:00:00 AM,049XX S LANGLEY AVE,0842,THEFT,AGG: FINANCIAL ID THEFT,OTHER,false,false,0223,,4,38,06,,,2007,07/18/2011 12:38:42 AM,,, -5646549,HN455137,07/09/2007 09:00:00 AM,035XX N PITTSBURGH AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1631,016,36,17,05,1120408,1922635,2007,07/15/2007 01:53:52 AM,41.944148308,-87.832845701,"(41.944148308, -87.832845701)" -5643418,HN454820,07/09/2007 01:00:00 AM,092XX S UNIVERSITY AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0413,004,8,47,07,1185532,1843906,2007,07/13/2007 02:55:14 AM,41.726818346,-87.595963944,"(41.726818346, -87.595963944)" -5645434,HN456176,07/08/2007 10:00:00 PM,057XX S DR MARTIN LUTHER KING JR DR,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,0234,002,20,40,06,1179867,1866913,2007,12/04/2014 12:43:35 PM,41.790083348,-87.616012584,"(41.790083348, -87.616012584)" -5643973,HN453482,07/08/2007 11:48:57 AM,065XX S DR MARTIN LUTHER KING JR DR,1310,CRIMINAL DAMAGE,TO PROPERTY,HOTEL/MOTEL,true,false,0312,003,20,42,14,1180088,1861626,2007,07/13/2007 02:55:14 AM,41.775570247,-87.615364116,"(41.775570247, -87.615364116)" -5655337,HN453344,07/08/2007 10:15:00 AM,011XX W GARFIELD BLVD,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,GROCERY FOOD STORE,false,false,0712,007,16,68,10,1169538,1868147,2007,07/24/2007 02:30:37 AM,41.793699831,-87.653850267,"(41.793699831, -87.653850267)" -5653345,HN452398,07/07/2007 08:24:05 PM,003XX S COLUMBUS DR,0560,ASSAULT,SIMPLE,STREET,true,false,0124,001,42,32,08A,1178372,1898909,2007,07/18/2007 02:17:00 AM,41.877916883,-87.620520745,"(41.877916883, -87.620520745)" -5649232,HN451677,07/07/2007 12:20:00 PM,078XX S GREEN ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0621,006,17,71,08B,1171954,1852900,2007,07/17/2007 01:59:28 AM,41.751807506,-87.645438185,"(41.751807506, -87.645438185)" -5648825,HN451308,07/07/2007 03:00:00 AM,040XX W CORTLAND ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2534,025,30,20,14,1149027,1912356,2007,07/15/2007 01:53:52 AM,41.915435094,-87.727920343,"(41.915435094, -87.727920343)" -5652322,HN450338,07/06/2007 07:10:12 PM,069XX S HARVARD AVE,0560,ASSAULT,SIMPLE,OTHER,false,false,0731,007,6,68,08A,1175110,1859092,2007,07/18/2007 02:17:00 AM,41.768729262,-87.633688393,"(41.768729262, -87.633688393)" -5641022,HN449447,07/06/2007 11:37:04 AM,022XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0134,001,3,33,26,1176629,1889337,2007,07/11/2007 03:46:28 AM,41.851690245,-87.627209622,"(41.851690245, -87.627209622)" -5666640,HN448925,07/06/2007 01:45:00 AM,017XX N CLYBOURN AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1813,018,43,7,16,1169457,1911795,2007,07/22/2007 01:56:08 AM,41.913475409,-87.652878941,"(41.913475409, -87.652878941)" -5646386,HN446230,07/04/2007 08:45:00 PM,081XX S LOOMIS BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0613,006,21,71,08B,1168448,1850958,2007,07/17/2007 01:59:28 AM,41.746554594,-87.658341888,"(41.746554594, -87.658341888)" -5641194,HN445612,07/04/2007 01:17:02 PM,013XX S LAWNDALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1011,010,24,29,08B,1151884,1893418,2007,07/16/2007 01:47:01 AM,41.863411457,-87.717922921,"(41.863411457, -87.717922921)" -5634692,HN444327,07/03/2007 03:00:00 PM,037XX N LINCOLN AVE,0810,THEFT,OVER $500,STREET,false,false,1923,019,47,5,06,1163157,1925031,2007,12/04/2014 12:43:35 PM,41.949930609,-87.675650766,"(41.949930609, -87.675650766)" -5648619,HN442332,07/02/2007 07:05:59 PM,050XX W MAYPOLE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1532,015,28,25,18,1142940,1901037,2007,07/18/2007 02:17:00 AM,41.884490199,-87.750566152,"(41.884490199, -87.750566152)" -5633742,HN442182,07/02/2007 04:00:00 PM,061XX N NEVA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1612,016,41,10,08B,1127663,1940543,2007,07/07/2007 02:00:13 AM,41.993170436,-87.805773629,"(41.993170436, -87.805773629)" -5642550,HN440085,07/01/2007 06:10:00 PM,114XX S YALE AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0522,005,34,49,08A,1176697,1829042,2007,08/24/2007 01:54:26 AM,41.686232558,-87.628772841,"(41.686232558, -87.628772841)" -5630198,HN438813,07/01/2007 12:30:00 AM,015XX E 70TH ST,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,true,0332,003,5,43,04A,1187636,1858841,2007,07/26/2007 03:11:57 AM,41.767751716,-87.587782822,"(41.767751716, -87.587782822)" -5640478,HN442197,06/30/2007 12:00:00 PM,011XX N RUSH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,BAR OR TAVERN,false,false,1824,,42,8,11,,,2007,07/22/2007 01:56:08 AM,,, -5630470,HN437211,06/30/2007 05:47:25 AM,062XX S DR MARTIN LUTHER KING JR DR,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0311,003,20,40,18,1179947,1863890,2007,07/04/2007 02:03:09 AM,41.781786116,-87.615811751,"(41.781786116, -87.615811751)" -5626697,HN434891,06/29/2007 02:15:00 AM,033XX W CHICAGO AVE,5011,OTHER OFFENSE,LICENSE VIOLATION,BAR OR TAVERN,true,false,1121,011,27,23,26,1153771,1905090,2007,07/04/2007 02:03:09 AM,41.89540331,-87.710684991,"(41.89540331, -87.710684991)" -5641094,HN432922,06/28/2007 03:15:00 AM,039XX W 61ST ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,0823,008,13,65,26,1150966,1863896,2007,07/12/2007 02:26:16 AM,41.782417066,-87.722063877,"(41.782417066, -87.722063877)" -5624649,HN432265,06/27/2007 07:00:00 PM,052XX S DREXEL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2131,002,5,41,08B,1183095,1870366,2007,07/04/2007 02:03:09 AM,41.799484154,-87.60406913,"(41.799484154, -87.60406913)" -5654760,HN459415,06/27/2007 06:00:00 PM,073XX S EVANS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0323,003,6,69,14,1182542,1856197,2007,07/17/2007 01:59:28 AM,41.760615965,-87.60653628,"(41.760615965, -87.60653628)" -5626996,HN430288,06/26/2007 05:24:00 PM,092XX S PERRY AVE,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,false,false,0634,006,21,49,03,1177187,1843896,2007,07/13/2007 02:55:14 AM,41.726983001,-87.626532734,"(41.726983001, -87.626532734)" -4130,HN428126,06/25/2007 08:00:00 PM,090XX S COMMERCIAL AVE,0110,HOMICIDE,FIRST DEGREE MURDER,STREET,true,false,0423,004,10,46,01A,1197682,1845294,2007,11/17/2011 12:01:47 PM,41.73033291,-87.551411755,"(41.73033291, -87.551411755)" -5622051,HN425868,06/24/2007 05:25:20 PM,087XX S BALTIMORE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,false,0424,004,10,46,26,1198376,1847391,2007,07/02/2007 02:00:43 AM,41.736069914,-87.548799449,"(41.736069914, -87.548799449)" -5619123,HN425128,06/24/2007 08:57:31 AM,055XX S WOOD ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,0715,007,15,67,26,1165330,1868027,2007,06/29/2007 02:43:59 AM,41.793460769,-87.669284117,"(41.793460769, -87.669284117)" -5619530,HN427986,06/22/2007 06:00:00 PM,074XX S CHAMPLAIN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0323,003,6,69,03,1181806,1856024,2007,08/17/2007 01:51:00 AM,41.760158268,-87.60923906,"(41.760158268, -87.60923906)" -5612394,HN420130,06/21/2007 05:50:00 PM,109XX S CAMPBELL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2212,022,19,75,14,1161612,1832236,2007,06/25/2007 01:50:43 AM,41.695322755,-87.683908255,"(41.695322755, -87.683908255)" -5612167,HN420039,06/21/2007 05:25:00 PM,055XX N WINTHROP AVE,2022,NARCOTICS,POSS: COCAINE,SIDEWALK,true,false,2023,020,48,77,18,1167904,1937091,2007,06/24/2007 02:00:14 AM,41.98292237,-87.657851909,"(41.98292237, -87.657851909)" -5715144,HN419918,06/21/2007 04:26:36 PM,109XX S PRINCETON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0513,005,34,49,18,1176183,1832615,2007,08/19/2007 02:01:23 AM,41.696048925,-87.630547775,"(41.696048925, -87.630547775)" -5616415,HN419883,06/21/2007 04:00:00 PM,026XX N NEWCASTLE AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,2512,025,36,18,04A,1130343,1916870,2007,06/30/2007 02:10:43 AM,41.928163478,-87.796460964,"(41.928163478, -87.796460964)" -5678544,HN419649,06/21/2007 02:00:00 PM,014XX S HOMAN AVE,1661,GAMBLING,GAME/DICE,STREET,true,false,1021,010,24,29,19,1153892,1892889,2007,09/02/2007 02:22:13 AM,41.861920086,-87.710565745,"(41.861920086, -87.710565745)" -5616360,HN417376,06/20/2007 12:50:00 PM,015XX N LUNA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,2532,025,37,25,08B,1139014,1909635,2007,07/26/2007 03:11:57 AM,41.908156421,-87.764773921,"(41.908156421, -87.764773921)" -5631253,HN437550,06/20/2007 10:40:00 AM,003XX N CENTRAL AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,1523,015,28,25,03,1139020,1901761,2007,07/13/2007 02:55:14 AM,41.886549094,-87.76494351,"(41.886549094, -87.76494351)" -5610975,HN416946,06/20/2007 02:00:00 AM,036XX N ELSTON AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1733,017,33,16,06,1153652,1924249,2007,12/04/2014 12:43:35 PM,41.947979576,-87.710611068,"(41.947979576, -87.710611068)" -5607876,HN416736,06/19/2007 10:30:00 PM,052XX N SAWYER AVE,0810,THEFT,OVER $500,STREET,false,false,1712,017,39,13,06,1153723,1934706,2007,12/04/2014 12:43:35 PM,41.976672835,-87.710070499,"(41.976672835, -87.710070499)" -5612135,HN413736,06/18/2007 05:30:00 PM,001XX W LAKE ST,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,CTA PLATFORM,true,false,0113,001,42,32,18,1175460,1901776,2007,12/26/2007 01:03:36 AM,41.885849966,-87.631126643,"(41.885849966, -87.631126643)" -5611628,HN415567,06/18/2007 04:00:00 PM,001XX W 87TH ST,1570,SEX OFFENSE,PUBLIC INDECENCY,SMALL RETAIL STORE,false,false,0622,006,21,44,17,1176857,1847317,2007,07/01/2007 02:00:46 AM,41.736378094,-87.627638815,"(41.736378094, -87.627638815)" -5612697,HN413497,06/18/2007 03:00:00 PM,047XX W BELMONT AVE,0460,BATTERY,SIMPLE,STREET,false,false,1731,017,30,15,08B,1144604,1920904,2007,06/30/2007 02:10:43 AM,41.938976168,-87.743954337,"(41.938976168, -87.743954337)" -5606039,HN412852,06/18/2007 07:30:00 AM,069XX S PRINCETON AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,0731,007,6,69,05,1175461,1858617,2007,06/29/2007 02:43:59 AM,41.767417965,-87.632415997,"(41.767417965, -87.632415997)" -5607899,HN410233,06/16/2007 11:45:00 PM,013XX N ROCKWELL ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1423,014,26,24,14,1158792,1908582,2007,08/31/2010 03:21:15 PM,41.904884181,-87.692148169,"(41.904884181, -87.692148169)" -5601635,HN409499,06/16/2007 04:35:00 PM,035XX S COTTAGE GROVE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2122,002,4,36,08B,1181324,1881729,2007,06/21/2007 02:21:27 AM,41.83070616,-87.61021311,"(41.83070616, -87.61021311)" -5600314,HN408052,06/15/2007 10:24:00 PM,036XX W LEXINGTON ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,1133,011,24,27,03,1151954,1896406,2007,07/18/2007 02:17:00 AM,41.871609489,-87.717587277,"(41.871609489, -87.717587277)" -5700550,HN407635,06/15/2007 06:50:00 PM,040XX W ADAMS ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1115,011,28,26,26,1149528,1898745,2007,08/08/2007 02:59:32 AM,41.878075381,-87.726433432,"(41.878075381, -87.726433432)" -5600324,HN407131,06/15/2007 03:00:00 PM,041XX N LONG AVE,0890,THEFT,FROM BUILDING,PARK PROPERTY,false,false,1624,016,38,15,06,1139577,1926765,2007,08/17/2007 01:51:00 AM,41.955152675,-87.762286594,"(41.955152675, -87.762286594)" -5607071,HN407054,06/15/2007 02:05:00 PM,063XX S TALMAN AVE,0810,THEFT,OVER $500,STREET,false,false,0825,008,15,66,06,1159835,1862614,2007,12/04/2014 12:43:35 PM,41.778721462,-87.689582526,"(41.778721462, -87.689582526)" -5599984,HN406474,06/15/2007 09:15:00 AM,031XX W FRANKLIN BLVD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1313,012,27,23,08B,1155131,1903199,2007,06/21/2007 02:21:27 AM,41.890187034,-87.705740818,"(41.890187034, -87.705740818)" -5614679,HN411152,06/14/2007 01:30:00 PM,049XX S DREXEL BLVD,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE PORCH/HALLWAY,false,false,2124,002,4,39,14,1183187,1872520,2007,07/28/2007 01:56:07 AM,41.80539276,-87.603664688,"(41.80539276, -87.603664688)" -5606659,HN403604,06/13/2007 09:45:00 PM,029XX E 83RD ST,4510,OTHER OFFENSE,PROBATION VIOLATION,GAS STATION,true,false,0424,004,10,46,26,1197383,1850467,2007,06/23/2007 02:27:54 AM,41.744535478,-87.552335092,"(41.744535478, -87.552335092)" -5588616,HN397262,06/10/2007 09:55:00 PM,035XX W PALMER ST,3760,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING SERVICE,SIDEWALK,true,false,1413,014,26,22,24,1152272,1914350,2007,12/04/2014 12:43:35 PM,41.920843329,-87.715945697,"(41.920843329, -87.715945697)" -5596297,HN395236,06/09/2007 07:55:00 PM,008XX N LAWLER AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1531,015,37,25,18,1142571,1905295,2007,06/17/2007 03:25:09 AM,41.896181527,-87.751815219,"(41.896181527, -87.751815219)" -5588848,HN394934,06/09/2007 02:30:00 PM,019XX S TRUMBULL AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1024,010,24,29,08A,1153765,1890400,2007,07/01/2007 02:00:46 AM,41.855092513,-87.71109816,"(41.855092513, -87.71109816)" -5591389,HN397706,06/08/2007 11:59:00 PM,019XX S ST LOUIS AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1024,010,24,29,06,1153365,1890230,2007,06/15/2007 03:05:05 AM,41.854633958,-87.712570859,"(41.854633958, -87.712570859)" -5585609,HN392949,06/08/2007 06:00:00 AM,089XX S BLACKSTONE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0413,004,8,48,14,1187636,1846031,2007,06/11/2007 01:50:55 AM,41.732599854,-87.588189463,"(41.732599854, -87.588189463)" -5586477,HN390699,06/07/2007 03:15:00 PM,059XX S HOMAN AVE,0460,BATTERY,SIMPLE,OTHER,false,false,0822,008,16,66,08B,1154695,1865251,2007,06/15/2007 03:05:05 AM,41.786061828,-87.708356048,"(41.786061828, -87.708356048)" -5590190,HN398208,06/07/2007 12:00:00 PM,031XX N ORIOLE AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,2511,025,36,17,06,1124912,1920153,2007,12/04/2014 12:43:35 PM,41.937264032,-87.816345622,"(41.937264032, -87.816345622)" -5583890,HN389148,06/06/2007 07:30:04 PM,049XX W ALTGELD ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,2521,025,31,19,15,1143000,1916142,2007,06/11/2007 01:50:55 AM,41.925938882,-87.749968606,"(41.925938882, -87.749968606)" -5581454,HN389135,06/06/2007 08:00:00 AM,077XX S MARYLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0624,006,6,69,14,1183211,1853575,2007,06/09/2007 01:49:05 AM,41.753405393,-87.604165844,"(41.753405393, -87.604165844)" -5579896,HN386901,06/05/2007 04:33:07 PM,029XX E 96TH ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0431,004,10,51,06,1197310,1841819,2007,06/13/2007 03:40:31 AM,41.720806481,-87.552889891,"(41.720806481, -87.552889891)" -5576590,HN385365,06/04/2007 09:29:47 PM,006XX N LATROBE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1524,015,28,25,05,1141214,1903530,2007,07/05/2007 02:15:07 AM,41.891363286,-87.756842835,"(41.891363286, -87.756842835)" -5575119,HN383733,06/03/2007 11:00:00 PM,044XX N KENTON AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,false,false,1722,017,45,16,26,1144937,1929438,2007,06/11/2007 03:52:33 PM,41.962387907,-87.742514247,"(41.962387907, -87.742514247)" -5576701,HN378718,06/01/2007 04:05:00 PM,041XX S CALIFORNIA AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,PARK PROPERTY,true,false,0912,009,12,58,24,1158423,1876986,2007,06/07/2007 01:51:10 AM,41.818189047,-87.694367404,"(41.818189047, -87.694367404)" -5578247,HN378531,06/01/2007 02:50:30 PM,062XX S FRANCISCO AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,0823,008,15,66,24,1158073,1863328,2007,06/10/2007 02:28:49 AM,41.780716796,-87.696022795,"(41.780716796, -87.696022795)" -5571706,HN378260,06/01/2007 08:30:00 AM,042XX N AUSTIN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1624,016,38,15,05,1135626,1927683,2007,07/01/2007 02:00:46 AM,41.957743084,-87.776789528,"(41.957743084, -87.776789528)" -5571604,HN378777,05/31/2007 10:30:00 PM,058XX W MONTROSE AVE,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,RESTAURANT,false,false,1624,016,38,15,10,1136370,1928613,2007,06/11/2007 03:52:33 PM,41.960281802,-87.774031973,"(41.960281802, -87.774031973)" -5573116,HN380393,05/31/2007 06:00:00 PM,043XX W 25TH ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,1013,010,22,30,08B,1148087,1887077,2007,07/08/2007 02:16:25 AM,41.846084794,-87.732024557,"(41.846084794, -87.732024557)" -5583262,HN375668,05/31/2007 08:46:00 AM,019XX W 51ST ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0915,009,16,61,16,1163917,1870809,2007,10/03/2007 01:46:09 AM,41.801124755,-87.674387282,"(41.801124755, -87.674387282)" -5567672,HN376028,05/30/2007 10:00:00 PM,084XX S WINCHESTER AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0614,006,18,71,06,1164870,1848396,2007,12/04/2014 12:43:35 PM,41.73960036,-87.671524776,"(41.73960036, -87.671524776)" -5566919,HN374992,05/30/2007 08:56:53 PM,062XX N CALIFORNIA AVE,0460,BATTERY,SIMPLE,APARTMENT,false,false,2413,024,50,2,08B,1156570,1941510,2007,06/12/2007 01:51:41 AM,41.995286012,-87.69941564,"(41.995286012, -87.69941564)" -5565228,HN373290,05/30/2007 01:40:00 AM,067XX S LAFAYETTE AVE,0498,BATTERY,AGGRAVATED DOMESTIC BATTERY: HANDS/FIST/FEET SERIOUS INJURY,APARTMENT,false,true,0722,007,6,69,04B,1176961,1860001,2007,06/04/2007 01:38:54 AM,41.771182139,-87.626876218,"(41.771182139, -87.626876218)" -5565576,HN373056,05/29/2007 07:30:00 PM,066XX S MARYLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0321,003,5,42,14,1183080,1860909,2007,06/02/2007 01:54:14 AM,41.773533662,-87.604418157,"(41.773533662, -87.604418157)" -5566054,HN374055,05/29/2007 10:30:00 AM,094XX S HALSTED ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2223,022,21,73,26,1172679,1842193,2007,06/05/2007 01:50:16 AM,41.722410118,-87.643096081,"(41.722410118, -87.643096081)" -5566879,HN372073,05/28/2007 10:00:00 PM,040XX W 25TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1013,010,22,30,14,1149958,1887125,2007,06/05/2007 01:50:16 AM,41.846180359,-87.725156802,"(41.846180359, -87.725156802)" -5574955,HN369933,05/28/2007 12:48:42 PM,008XX E 79TH ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0624,006,8,44,18,1183029,1852762,2007,06/05/2007 01:50:16 AM,41.751178666,-87.604858026,"(41.751178666, -87.604858026)" -5566795,HN375255,05/28/2007 03:30:00 AM,015XX S HARDING AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1014,010,24,29,07,1150339,1892153,2007,07/04/2007 02:03:09 AM,41.859970397,-87.723627522,"(41.859970397, -87.723627522)" -5559777,HN369539,05/27/2007 10:00:00 PM,048XX W BRYN MAWR AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1621,016,45,12,06,1142890,1936843,2007,12/04/2014 12:43:35 PM,41.982746296,-87.749854915,"(41.982746296, -87.749854915)" -5560573,HN368469,05/27/2007 04:35:00 PM,003XX E MONROE DR,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,PARKING LOT/GARAGE(NON.RESID.),false,false,0124,001,42,32,11,1178787,1900039,2007,06/11/2007 03:52:33 PM,41.881008194,-87.618962451,"(41.881008194, -87.618962451)" -5559233,HN368229,05/27/2007 01:13:00 PM,001XX E OAK ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1833,018,42,8,06,1177221,1907200,2007,07/29/2007 01:49:15 AM,41.900693964,-87.624495406,"(41.900693964, -87.624495406)" -5575594,HN384046,05/27/2007 12:00:00 AM,070XX S WOLCOTT AVE,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,RESIDENCE,false,false,0735,007,17,67,26,1164944,1857950,2007,06/10/2007 02:28:49 AM,41.765816342,-87.67098417,"(41.765816342, -87.67098417)" -5555055,HN359216,05/22/2007 11:45:00 PM,013XX S CHRISTIANA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1021,010,24,29,08B,1154289,1893433,2007,06/03/2007 02:49:28 AM,41.863404971,-87.709093894,"(41.863404971, -87.709093894)" -5548051,HN358674,05/22/2007 05:45:00 PM,087XX S JEFFERY BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,0412,004,8,48,06,1190987,1847617,2007,12/04/2014 12:43:35 PM,41.736871723,-87.575862317,"(41.736871723, -87.575862317)" -5666153,HN357928,05/22/2007 12:10:00 PM,030XX W 63RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0823,008,15,66,18,1157344,1862670,2007,09/16/2007 01:46:17 AM,41.778925944,-87.69871327,"(41.778925944, -87.69871327)" -5551505,HN359718,05/21/2007 01:20:00 PM,069XX S EAST END AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0332,003,5,43,08B,1188940,1859159,2007,05/26/2007 01:52:12 AM,41.768593218,-87.582992985,"(41.768593218, -87.582992985)" -5542755,HN355142,05/21/2007 12:00:00 AM,011XX W COLUMBIA AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2432,024,49,1,06,1167526,1944964,2007,05/31/2007 02:03:58 AM,42.004534219,-87.659014098,"(42.004534219, -87.659014098)" -5543017,HN355205,05/20/2007 12:00:00 PM,066XX W WELLINGTON AVE,0810,THEFT,OVER $500,STREET,false,false,2511,025,36,18,06,1131778,1919180,2007,12/04/2014 12:43:35 PM,41.934477614,-87.791134076,"(41.934477614, -87.791134076)" -5542823,HN351754,05/19/2007 06:00:00 PM,037XX N PARKVIEW TER,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,CONSTRUCTION SITE,false,false,1732,017,39,16,14,1150863,1924616,2007,05/23/2007 02:20:44 AM,41.949041798,-87.720853229,"(41.949041798, -87.720853229)" -5543411,HN351695,05/19/2007 05:35:00 AM,009XX N RIDGEWAY AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,1112,011,27,23,08B,1151251,1906050,2007,05/25/2007 02:27:12 AM,41.898087457,-87.719915192,"(41.898087457, -87.719915192)" -5540537,HN351703,05/19/2007 03:00:00 AM,084XX S INDIANA AVE,0810,THEFT,OVER $500,STREET,false,false,0632,006,6,44,06,1179026,1849007,2007,12/04/2014 12:43:35 PM,41.740966577,-87.61964104,"(41.740966577, -87.61964104)" -5538879,HN350766,05/18/2007 06:00:00 PM,053XX S ALBANY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0911,009,14,63,26,1156583,1868878,2007,05/21/2007 01:50:56 AM,41.795976961,-87.70133589,"(41.795976961, -87.70133589)" -5554429,HN352700,05/18/2007 05:44:00 PM,017XX N CENTRAL AVE,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,GAS STATION,false,false,2531,025,29,25,10,1138728,1911341,2007,06/11/2007 03:52:33 PM,41.912843081,-87.765783087,"(41.912843081, -87.765783087)" -5546485,HN350718,05/18/2007 05:20:00 PM,027XX N MASON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2514,025,30,19,08B,1136301,1917436,2007,06/01/2007 02:14:39 AM,41.929612188,-87.774553537,"(41.929612188, -87.774553537)" -5538174,HN349762,05/18/2007 09:00:00 AM,024XX N ALBANY AVE,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,APARTMENT,true,true,1414,014,35,22,26,1155055,1916254,2007,02/08/2008 01:04:54 AM,41.926012622,-87.705669098,"(41.926012622, -87.705669098)" -5536501,HN349356,05/18/2007 02:40:00 AM,025XX N HALSTED ST,0870,THEFT,POCKET-PICKING,BAR OR TAVERN,false,false,1933,019,43,7,06,1170462,1917355,2007,06/11/2007 03:52:33 PM,41.928710388,-87.649023805,"(41.928710388, -87.649023805)" -5536971,HN349382,05/18/2007 02:24:52 AM,019XX W VAN BUREN ST,1460,WEAPONS VIOLATION,POSS FIREARM/AMMO:NO FOID CARD,STREET,true,false,1211,012,2,28,15,1163686,1898216,2007,05/22/2007 02:05:56 AM,41.876337271,-87.674463431,"(41.876337271, -87.674463431)" -5538483,HN350103,05/18/2007 01:30:00 AM,014XX W WRIGHTWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1931,019,32,7,14,1166515,1917413,2007,09/12/2007 01:43:33 AM,41.928955068,-87.663525983,"(41.928955068, -87.663525983)" -5540762,HN348383,05/17/2007 02:50:00 PM,067XX S PRAIRIE AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0322,003,20,69,08B,1179155,1860582,2007,06/11/2007 03:52:33 PM,41.772726728,-87.618816163,"(41.772726728, -87.618816163)" -5550509,HN354573,05/17/2007 07:00:00 AM,012XX W WINNEMAC AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,2033,020,46,3,06,1166954,1933733,2007,12/04/2014 12:43:35 PM,41.973728424,-87.661442656,"(41.973728424, -87.661442656)" -5551794,HN345787,05/16/2007 11:40:00 AM,061XX S WHIPPLE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0823,008,15,66,18,1157065,1863706,2007,08/15/2007 02:43:11 AM,41.781774524,-87.69970813,"(41.781774524, -87.69970813)" -5533679,HN344893,05/15/2007 09:00:00 PM,063XX S ARTESIAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0825,008,15,66,08B,1161082,1862745,2007,05/23/2007 02:20:44 AM,41.779055237,-87.685007285,"(41.779055237, -87.685007285)" -5728993,HN537984,05/15/2007 10:00:00 AM,033XX N PITTSBURGH AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,1631,016,36,17,11,1120547,1920991,2007,09/05/2007 01:50:37 AM,41.939634729,-87.8323701,"(41.939634729, -87.8323701)" -5527938,HN341802,05/14/2007 01:00:00 PM,026XX N ELSTON AVE,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,1432,014,1,22,06,1160776,1917684,2007,12/04/2014 12:43:35 PM,41.929819797,-87.684607426,"(41.929819797, -87.684607426)" -5524850,HN339142,05/13/2007 12:14:23 AM,057XX W THOMAS ST,0560,ASSAULT,SIMPLE,STREET,false,true,1511,015,29,25,08A,1137785,1906791,2007,11/09/2007 09:43:39 AM,41.900374407,-87.769357396,"(41.900374407, -87.769357396)" -5557788,HN367114,05/12/2007 09:30:00 PM,012XX N SPRINGFIELD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2535,025,27,23,26,1150109,1908155,2007,06/11/2007 03:52:33 PM,41.903886118,-87.724054779,"(41.903886118, -87.724054779)" -5523346,HN337234,05/11/2007 10:45:00 PM,067XX S RHODES AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,true,false,0321,003,20,42,03,1181036,1860229,2007,06/01/2007 02:14:39 AM,41.77171497,-87.61193184,"(41.77171497, -87.61193184)" -5522595,HN336954,05/11/2007 05:15:00 PM,044XX S CALIFORNIA AVE,0560,ASSAULT,SIMPLE,SIDEWALK,true,false,0912,009,12,58,08A,1158406,1874965,2007,05/16/2007 06:13:58 AM,41.812643516,-87.694484883,"(41.812643516, -87.694484883)" -5518849,HN334538,05/10/2007 09:00:00 AM,079XX S COLFAX AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,0422,004,7,46,06,1194936,1852751,2007,05/12/2007 05:43:52 AM,41.750863551,-87.561225921,"(41.750863551, -87.561225921)" -5521445,HN331840,05/09/2007 11:40:00 AM,091XX S WILLIAMS AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,0633,006,6,49,11,1179407,1844217,2007,06/01/2007 02:14:39 AM,41.727813556,-87.618390882,"(41.727813556, -87.618390882)" -5523604,HN329910,05/08/2007 01:18:00 PM,035XX S MICHIGAN AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,POLICE FACILITY/VEH PARKING LOT,true,false,0211,002,3,35,26,1177731,1881697,2007,05/15/2007 06:10:18 AM,41.830700587,-87.623396828,"(41.830700587, -87.623396828)" -5515047,HN329716,05/08/2007 10:30:00 AM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0634,006,21,44,06,1176799,1847235,2007,05/12/2007 05:43:52 AM,41.73615438,-87.627853768,"(41.73615438, -87.627853768)" -5522874,HN329164,05/08/2007 05:15:00 AM,019XX W POTOMAC AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,false,true,1424,014,1,24,08B,1163142,1908704,2007,10/31/2007 01:04:04 AM,41.905128624,-87.676165886,"(41.905128624, -87.676165886)" -5510675,HN329144,05/08/2007 04:15:00 AM,052XX S WESTERN AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0911,009,14,63,05,1161214,1870068,2007,05/19/2007 02:08:46 AM,41.799147791,-87.684320696,"(41.799147791, -87.684320696)" -5509571,HN326284,05/06/2007 04:55:00 PM,080XX S MARYLAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0631,006,8,44,18,1183334,1851990,2007,05/08/2007 05:38:45 AM,41.749053125,-87.603764352,"(41.749053125, -87.603764352)" -5591265,HN326853,05/06/2007 10:30:00 AM,122XX S GREEN ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0524,005,34,53,05,1172835,1823679,2007,06/17/2007 03:25:09 AM,41.671601419,-87.643068152,"(41.671601419, -87.643068152)" -5506746,HN325157,05/06/2007 12:10:00 AM,004XX E 63RD ST,041A,BATTERY,AGGRAVATED: HANDGUN,RESTAURANT,true,false,0313,003,20,42,04B,1180035,1863367,2007,07/04/2007 02:03:09 AM,41.780348938,-87.61550513,"(41.780348938, -87.61550513)" -5505322,HN323782,05/05/2007 08:00:00 AM,006XX N TRUMBULL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,1121,011,27,23,14,1153299,1904272,2007,05/08/2007 05:38:45 AM,41.893168024,-87.712440283,"(41.893168024, -87.712440283)" -5520488,HN321232,05/03/2007 11:45:00 PM,087XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0634,006,21,44,08B,1177767,1847230,2007,05/15/2007 06:10:18 AM,41.73611883,-87.624307529,"(41.73611883, -87.624307529)" -5506110,HN323941,05/03/2007 09:00:00 PM,001XX W DELAWARE PL,0810,THEFT,OVER $500,STREET,false,false,1832,018,42,8,06,1175092,1906695,2007,12/04/2014 12:43:35 PM,41.899356223,-87.632330423,"(41.899356223, -87.632330423)" -5506442,HN322420,05/03/2007 03:00:00 PM,103XX S CHARLES ST,1320,CRIMINAL DAMAGE,TO VEHICLE,"SCHOOL, PUBLIC, GROUNDS",false,false,2212,022,19,72,14,1168616,1835901,2007,05/08/2007 05:38:45 AM,41.705232329,-87.658159037,"(41.705232329, -87.658159037)" -5505742,HN319927,05/03/2007 12:20:00 PM,007XX E 67TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0321,003,20,42,18,1182403,1860792,2007,05/08/2007 05:38:45 AM,41.773228322,-87.606903484,"(41.773228322, -87.606903484)" -5500895,HN318056,05/02/2007 01:15:00 PM,011XX S MASON AVE,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,SIDEWALK,true,false,1513,015,29,25,18,1136858,1894207,2007,05/05/2007 08:11:46 AM,41.865858911,-87.773064124,"(41.865858911, -87.773064124)" -5526834,HN315110,04/30/2007 09:45:00 PM,069XX S DORCHESTER AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0321,003,5,43,18,1186701,1859044,2007,08/22/2007 01:57:02 AM,41.768330955,-87.591203547,"(41.768330955, -87.591203547)" -5493816,HN314606,04/30/2007 01:00:00 PM,040XX W FULLERTON AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2524,025,31,22,06,1149290,1915694,2007,12/04/2014 12:43:35 PM,41.924589776,-87.726867371,"(41.924589776, -87.726867371)" -5499312,HN313537,04/29/2007 11:15:00 PM,0000X E WACKER DR,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,0122,001,42,32,06,1176982,1902484,2007,06/15/2007 03:05:05 AM,41.887758444,-87.625516158,"(41.887758444, -87.625516158)" -5488048,HN308771,04/27/2007 12:00:00 PM,029XX N KOLMAR AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,2521,025,31,20,03,1145436,1919359,2007,05/15/2007 06:10:18 AM,41.934720809,-87.740935727,"(41.934720809, -87.740935727)" -5486520,HN308036,04/27/2007 06:00:00 AM,009XX N RICHMOND ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1311,012,26,24,14,1156583,1906450,2007,05/01/2007 07:13:54 AM,41.899078808,-87.700320302,"(41.899078808, -87.700320302)" -5487645,HN309090,04/26/2007 10:30:00 PM,045XX S CHRISTIANA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0821,008,14,58,14,1154763,1874126,2007,05/02/2007 06:09:42 AM,41.810414726,-87.707869954,"(41.810414726, -87.707869954)" -5487392,HN308673,04/26/2007 07:00:00 PM,018XX W 51ST ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0931,009,16,61,14,1164954,1870909,2007,05/02/2007 06:09:42 AM,41.801377289,-87.670581402,"(41.801377289, -87.670581402)" -5482455,HN305561,04/25/2007 11:36:00 PM,023XX N SPAULDING AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE,true,false,1413,014,35,22,18,1153801,1915362,2007,04/28/2007 05:26:07 AM,41.923589997,-87.710300775,"(41.923589997, -87.710300775)" -5486541,HN305473,04/25/2007 10:13:42 PM,077XX S GREEN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0621,006,17,71,05,1172022,1853363,2007,08/31/2010 03:21:15 PM,41.753076545,-87.645175426,"(41.753076545, -87.645175426)" -5497935,HN305141,04/25/2007 06:42:38 PM,062XX W BYRON ST,5008,OTHER OFFENSE,FIREARM REGISTRATION VIOLATION,RESIDENCE,true,false,1633,016,38,17,26,1133729,1925222,2007,05/05/2007 08:11:46 AM,41.95102344,-87.783821675,"(41.95102344, -87.783821675)" -5476512,HN301606,04/23/2007 10:50:00 PM,076XX S SOUTH CHICAGO AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,GAS STATION,false,false,0411,004,5,45,07,1186253,1854790,2007,04/26/2007 05:54:48 AM,41.756668181,-87.592979864,"(41.756668181, -87.592979864)" -5509148,HN301507,04/23/2007 10:00:00 PM,010XX W 75TH ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0612,006,17,68,18,1170579,1855054,2007,08/05/2007 01:48:31 AM,41.75774842,-87.650414263,"(41.75774842, -87.650414263)" -5477365,HN302013,04/23/2007 06:00:00 PM,048XX N WINTHROP AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2033,020,46,3,14,1167956,1932409,2007,04/26/2007 05:54:48 AM,41.970073703,-87.657796457,"(41.970073703, -87.657796457)" -5481259,HN304126,04/23/2007 06:00:00 PM,041XX N ELSTON AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,1723,017,39,16,26,1150123,1927442,2007,04/29/2007 06:45:31 AM,41.956811034,-87.72349945,"(41.956811034, -87.72349945)" -5477432,HN301001,04/23/2007 02:45:00 PM,025XX N TRIPP AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2524,025,31,20,05,1147578,1916708,2007,05/03/2007 07:26:52 AM,41.92740534,-87.733131974,"(41.92740534, -87.733131974)" -5487650,HN299367,04/22/2007 10:10:00 PM,109XX S WENTWORTH AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0513,005,34,49,18,1176848,1832365,2007,09/30/2007 01:49:21 AM,41.695347973,-87.62812047,"(41.695347973, -87.62812047)" -5473167,HN298171,04/22/2007 02:58:00 AM,0000X W JACKSON BLVD,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,COMMERCIAL / BUSINESS OFFICE,false,false,0112,001,2,32,14,1175749,1898934,2007,04/24/2007 05:19:41 AM,41.87804486,-87.630150898,"(41.87804486, -87.630150898)" -5473391,HN299154,04/22/2007 02:00:00 AM,011XX W WELLINGTON AVE,0820,THEFT,$500 AND UNDER,ALLEY,false,false,1932,019,44,6,06,1168171,1920033,2007,12/04/2014 12:43:35 PM,41.936108818,-87.657364832,"(41.936108818, -87.657364832)" -5472007,HN297360,04/21/2007 09:20:00 PM,080XX S CRANDON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,HOSPITAL BUILDING/GROUNDS,false,false,0414,004,8,46,14,1192880,1852198,2007,04/23/2007 05:51:22 AM,41.749396455,-87.568777964,"(41.749396455, -87.568777964)" -5476674,HN295264,04/20/2007 08:00:23 PM,055XX S ASHLAND AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,0715,007,15,67,04B,1166574,1868056,2007,05/12/2007 05:43:52 AM,41.793513889,-87.664721643,"(41.793513889, -87.664721643)" -5469268,HN294229,04/20/2007 11:02:28 AM,044XX N SHERIDAN RD,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,false,false,2313,019,46,3,08B,1168841,1929869,2007,06/21/2007 02:21:27 AM,41.963084669,-87.654616277,"(41.963084669, -87.654616277)" -5502492,HN321483,04/20/2007 09:23:00 AM,0000X W 110TH PL,0810,THEFT,OVER $500,STREET,false,false,0513,005,34,49,06,1178011,1831656,2007,12/04/2014 12:43:35 PM,41.693376166,-87.623883747,"(41.693376166, -87.623883747)" -5489533,HN305580,04/19/2007 11:40:00 PM,035XX N OAK PARK AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,true,false,1632,016,36,17,26,1130478,1923023,2007,05/02/2007 06:09:42 AM,41.945045714,-87.795823115,"(41.945045714, -87.795823115)" -5477926,HN288740,04/17/2007 02:40:00 PM,009XX N HUDSON AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1823,018,27,8,26,1173042,1906702,2007,04/26/2007 05:54:48 AM,41.89942115,-87.639859762,"(41.89942115, -87.639859762)" -5459426,HN285694,04/15/2007 10:30:00 PM,082XX S DAMEN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0614,006,18,71,08B,1164495,1850137,2007,04/24/2007 05:19:41 AM,41.744385829,-87.672849765,"(41.744385829, -87.672849765)" -5455731,HN284632,04/15/2007 11:25:00 AM,087XX S ADA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,true,2222,022,21,71,14,1168818,1846710,2007,04/18/2007 05:47:17 AM,41.73488951,-87.657108432,"(41.73488951, -87.657108432)" -5506615,HN280483,04/13/2007 09:15:00 AM,037XX W GRENSHAW ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,SIDEWALK,true,false,1133,011,24,29,18,1151657,1894743,2007,05/08/2007 05:38:45 AM,41.867051871,-87.718721404,"(41.867051871, -87.718721404)" -5453915,HN281311,04/12/2007 02:10:00 PM,070XX N ASHLAND BLVD,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2423,024,49,1,08A,1164539,1946810,2007,05/25/2007 02:27:12 AM,42.00966371,-87.669950691,"(42.00966371, -87.669950691)" -5444983,HN276572,04/11/2007 04:19:00 AM,007XX N CLARK ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1832,018,42,8,06,1175367,1905240,2007,04/13/2007 05:31:29 AM,41.895357459,-87.631364089,"(41.895357459, -87.631364089)" -5443560,HN276117,04/10/2007 06:00:00 PM,007XX W 48TH ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0935,009,11,61,08A,1172184,1873079,2007,04/18/2007 05:47:17 AM,41.807175957,-87.644002565,"(41.807175957, -87.644002565)" -5447966,HN275105,04/10/2007 09:00:00 AM,016XX N WELLS ST,0890,THEFT,FROM BUILDING,GROCERY FOOD STORE,false,false,1814,018,43,7,06,1174430,1911584,2007,04/14/2007 05:42:51 AM,41.912786696,-87.634615644,"(41.912786696, -87.634615644)" -5482999,HN273278,04/09/2007 12:20:00 PM,019XX W MARQUETTE RD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0726,007,15,67,18,1164297,1860187,2007,07/22/2007 01:56:08 AM,41.771968623,-87.673292729,"(41.771968623, -87.673292729)" -5448157,HN272293,04/08/2007 06:20:00 PM,014XX S KEDVALE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1011,010,24,29,26,1148999,1892474,2007,04/30/2007 06:19:44 AM,41.860877268,-87.72853804,"(41.860877268, -87.72853804)" -5436019,HN268304,04/06/2007 09:15:00 AM,007XX E 47TH ST,0560,ASSAULT,SIMPLE,RESTAURANT,false,false,0222,002,4,38,08A,1182169,1874055,2007,04/13/2007 05:31:29 AM,41.809628578,-87.607350702,"(41.809628578, -87.607350702)" -5433961,HN266195,04/04/2007 10:29:35 PM,048XX W SUPERIOR ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,1531,015,28,25,18,1144026,1904487,2007,04/07/2007 05:43:19 AM,41.893937096,-87.746491524,"(41.893937096, -87.746491524)" -5422200,HN260701,04/01/2007 10:30:00 PM,016XX W NORTH AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1433,014,1,24,03,1165296,1910762,2007,05/18/2007 02:14:47 AM,41.91073036,-87.668194966,"(41.91073036, -87.668194966)" -5827933,HN638597,04/01/2007 03:30:00 PM,102XX S CALUMET AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0511,005,9,49,26,1180432,1836962,2007,10/14/2007 01:03:27 AM,41.707881489,-87.61485794,"(41.707881489, -87.61485794)" -5527255,HN342196,04/01/2007 12:01:00 AM,037XX W GRENSHAW ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1133,011,24,29,07,1151614,1894742,2007,05/16/2007 06:13:58 AM,41.867049971,-87.71887929,"(41.867049971, -87.71887929)" -5422315,HN258484,03/31/2007 05:00:00 PM,039XX W FULLERTON AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,2525,025,30,22,03,1149948,1915631,2007,04/18/2007 05:47:17 AM,41.924404103,-87.724451219,"(41.924404103, -87.724451219)" -5420143,HN257221,03/30/2007 10:00:00 PM,082XX S STONY ISLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,CLEANING STORE,false,false,0411,004,8,45,14,1188197,1850713,2007,04/02/2007 06:10:32 AM,41.745434382,-87.585985348,"(41.745434382, -87.585985348)" -5419751,HN255750,03/30/2007 09:06:42 AM,103XX S EWING AVE,1570,SEX OFFENSE,PUBLIC INDECENCY,RESIDENCE,true,false,0432,004,10,52,17,1202123,1836713,2007,04/03/2007 07:18:56 AM,41.70667413,-87.535434705,"(41.70667413, -87.535434705)" -5418918,HN255467,03/30/2007 02:30:00 AM,001XX W CERMAK RD,2024,NARCOTICS,POSS: HEROIN(WHITE),CTA PLATFORM,true,false,2111,009,25,34,18,1175599,1889797,2007,04/03/2007 07:18:56 AM,41.852975698,-87.630976134,"(41.852975698, -87.630976134)" -5431436,HN265493,03/30/2007 12:01:00 AM,021XX S HOMAN AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,APARTMENT,false,true,1024,010,24,30,06,1153981,1889769,2007,05/02/2007 06:09:42 AM,41.853356678,-87.710322143,"(41.853356678, -87.710322143)" -5416001,HN253613,03/29/2007 06:58:00 AM,051XX S PULASKI RD,0495,BATTERY,AGGRAVATED OF A SENIOR CITIZEN,GAS STATION,false,false,0815,008,23,62,04B,1150529,1870253,2007,04/08/2007 10:39:00 AM,41.799870158,-87.72350074,"(41.799870158, -87.72350074)" -5416233,HN253383,03/28/2007 11:00:00 PM,020XX W DEVON AVE,0810,THEFT,OVER $500,STREET,false,false,2413,024,50,2,06,1161421,1942448,2007,12/04/2014 12:43:35 PM,41.997759985,-87.681544988,"(41.997759985, -87.681544988)" -5417652,HN255837,03/28/2007 09:00:00 PM,021XX S THROOP ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1222,012,25,31,14,1167986,1890144,2007,04/03/2007 07:18:56 AM,41.854095373,-87.658908167,"(41.854095373, -87.658908167)" -5413602,HN252761,03/28/2007 05:09:55 PM,046XX W MONROE ST,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,VACANT LOT/LAND,false,false,1113,011,28,25,03,1145167,1899113,2007,04/07/2007 05:43:19 AM,41.879168723,-87.742436863,"(41.879168723, -87.742436863)" -5412662,HN252521,03/28/2007 03:24:28 PM,052XX W MADISON ST,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,1522,015,28,25,06,1141447,1899561,2007,03/31/2007 07:38:54 AM,41.880467561,-87.756085176,"(41.880467561, -87.756085176)" -5465114,HN251398,03/27/2007 10:45:00 PM,030XX E 79TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0421,004,7,46,18,1198230,1853221,2007,07/25/2007 03:43:09 AM,41.752071514,-87.549139682,"(41.752071514, -87.549139682)" -5408517,HN250325,03/27/2007 12:52:54 PM,049XX N KENMORE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2024,020,46,3,18,1168393,1933306,2007,03/31/2007 07:38:54 AM,41.972525632,-87.656163527,"(41.972525632, -87.656163527)" -5404284,HN248676,03/26/2007 11:00:00 AM,002XX E 48TH ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE PORCH/HALLWAY,false,false,0224,002,3,38,14,1178587,1873210,2007,03/29/2007 08:44:27 AM,41.807392106,-87.62051448,"(41.807392106, -87.62051448)" -5405804,HN247590,03/26/2007 02:04:00 AM,077XX S EVANS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0624,006,6,69,14,1182605,1853869,2007,03/29/2007 08:44:27 AM,41.754226232,-87.606377483,"(41.754226232, -87.606377483)" -5401120,HN244065,03/24/2007 02:55:00 AM,071XX S ASHLAND AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0735,007,17,67,08A,1166869,1857599,2007,03/29/2007 08:44:27 AM,41.764812258,-87.663938393,"(41.764812258, -87.663938393)" -5410700,HN252265,03/23/2007 08:00:00 PM,028XX N CLARK ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1932,019,44,6,06,1171504,1918894,2007,04/04/2007 06:21:29 AM,41.932910587,-87.645149438,"(41.932910587, -87.645149438)" -5404200,HN242863,03/23/2007 03:10:00 PM,031XX W GRAND AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",true,false,1311,012,26,23,08B,1155450,1905895,2007,03/28/2007 09:12:21 AM,41.897578702,-87.704496733,"(41.897578702, -87.704496733)" -5476391,HN300176,03/23/2007 08:00:00 AM,016XX W OGDEN AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,1211,012,2,28,06,1165447,1899459,2007,12/04/2014 12:43:35 PM,41.879710887,-87.667962264,"(41.879710887, -87.667962264)" -5398367,HN240482,03/22/2007 10:55:27 AM,006XX N LAMON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1532,015,37,25,08B,1143532,1903942,2007,03/25/2007 06:52:34 AM,41.89245081,-87.748319495,"(41.89245081, -87.748319495)" -5397174,HN239008,03/21/2007 02:10:00 PM,066XX S DREXEL AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0321,003,5,42,06,1183403,1861302,2007,03/26/2007 05:46:31 AM,41.774604573,-87.603221894,"(41.774604573, -87.603221894)" -5393951,HN238827,03/21/2007 01:35:00 PM,048XX S DREXEL BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2124,002,4,39,18,1183175,1873000,2007,03/24/2007 07:32:13 AM,41.806710198,-87.603693754,"(41.806710198, -87.603693754)" -5400387,HN237915,03/20/2007 01:00:00 AM,086XX S MARYLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0632,006,8,44,14,1183368,1847686,2007,03/30/2007 06:35:15 AM,41.737241691,-87.603773476,"(41.737241691, -87.603773476)" -5390878,HN233553,03/18/2007 04:10:00 PM,083XX S EXCHANGE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA GARAGE / OTHER PROPERTY,true,false,0423,004,10,46,18,1197247,1850437,2007,04/28/2007 05:26:07 AM,41.744456542,-87.552834399,"(41.744456542, -87.552834399)" -5382539,HN230715,03/16/2007 10:48:27 PM,030XX W FULLERTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1414,014,35,22,08B,1155558,1915756,2007,12/04/2014 12:43:35 PM,41.924635952,-87.703834244,"(41.924635952, -87.703834244)" -5382039,HN230557,03/16/2007 09:09:43 PM,021XX W CULLERTON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1223,012,25,31,18,1162473,1890348,2007,04/04/2007 03:56:04 PM,41.854772209,-87.679137302,"(41.854772209, -87.679137302)" -5380800,HN229876,03/16/2007 02:30:00 PM,015XX S AVERS AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1014,010,24,29,08B,1151001,1892241,2007,03/23/2007 06:55:06 AM,41.860198954,-87.721195178,"(41.860198954, -87.721195178)" -5378510,HN228607,03/15/2007 09:49:00 PM,113XX S WENTWORTH AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,0522,005,34,49,04A,1176918,1829898,2007,03/18/2007 06:37:55 AM,41.688576588,-87.627938145,"(41.688576588, -87.627938145)" -5373419,HN224243,03/13/2007 05:35:00 PM,062XX S COTTAGE GROVE AVE,0560,ASSAULT,SIMPLE,OTHER,true,false,0313,003,20,42,08A,1182684,1863478,2007,03/23/2007 06:55:06 AM,41.78059244,-87.605790115,"(41.78059244, -87.605790115)" -5373309,HN223507,03/13/2007 11:08:21 AM,007XX W GARFIELD BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0711,007,3,68,05,1172076,1868220,2007,04/04/2007 06:21:29 AM,41.793844726,-87.644541483,"(41.793844726, -87.644541483)" -5373005,HN221827,03/12/2007 02:15:00 PM,013XX W 83RD ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,false,false,0613,006,21,71,04A,1168698,1849761,2007,03/19/2007 05:56:57 AM,41.743264474,-87.657460278,"(41.743264474, -87.657460278)" -5371397,HN221780,03/12/2007 01:30:00 PM,061XX S INDIANA AVE,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,SIDEWALK,true,false,0311,003,20,40,18,1178686,1864569,2007,03/17/2007 06:01:53 AM,41.783678141,-87.620414212,"(41.783678141, -87.620414212)" -5371756,HN221275,03/11/2007 11:00:00 AM,048XX N KOSTNER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1712,017,39,14,14,1146205,1931974,2007,03/16/2007 09:21:57 AM,41.969322798,-87.737787458,"(41.969322798, -87.737787458)" -5366326,HN218581,03/10/2007 03:50:00 PM,011XX S STATE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA TRAIN,true,false,0132,001,2,32,18,1176557,1895307,2007,12/02/2007 01:04:24 AM,41.868073948,-87.62729369,"(41.868073948, -87.62729369)" -5369851,HN221283,03/10/2007 01:00:00 PM,021XX N NATCHEZ AVE,0820,THEFT,$500 AND UNDER,FACTORY/MANUFACTURING BUILDING,false,false,2512,025,36,19,06,1132700,1913338,2007,12/04/2014 12:43:35 PM,41.91843042,-87.787882235,"(41.91843042, -87.787882235)" -5366451,HN218152,03/10/2007 12:09:00 PM,030XX W POPE JOHN PAUL II DR,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,0912,009,14,58,24,1157039,1876024,2007,03/13/2007 05:26:14 AM,41.815577325,-87.699470436,"(41.815577325, -87.699470436)" -5680568,HN217053,03/09/2007 08:29:26 PM,004XX N LARAMIE AVE,2250,LIQUOR LAW VIOLATION,LIQUOR LICENSE VIOLATION,BAR OR TAVERN,true,false,1532,015,28,25,22,1141665,1902436,2007,08/31/2010 03:21:15 PM,41.888352891,-87.755213572,"(41.888352891, -87.755213572)" -5361596,HN215336,03/08/2007 06:00:00 PM,011XX S WABASH AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0132,001,2,32,06,1176902,1895641,2007,12/04/2014 12:43:35 PM,41.868982672,-87.62601704,"(41.868982672, -87.62601704)" -5362333,HN214572,03/08/2007 02:30:00 PM,075XX N ASHLAND AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,true,2422,024,49,1,26,1164096,1949974,2007,03/29/2007 08:44:27 AM,42.018355192,-87.671490619,"(42.018355192, -87.671490619)" -5375652,HN225438,03/07/2007 02:00:00 PM,084XX S SAGINAW AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0423,004,7,46,06,1195333,1849722,2007,03/17/2007 06:01:53 AM,41.742541949,-87.559870924,"(41.742541949, -87.559870924)" -5356378,HN211902,03/07/2007 06:00:00 AM,013XX W FLETCHER ST,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE-GARAGE,false,false,1932,019,32,6,14,1166945,1921074,2007,03/13/2007 05:26:14 AM,41.938991811,-87.661840508,"(41.938991811, -87.661840508)" -5355952,HN211770,03/06/2007 10:35:00 PM,006XX N LEAMINGTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1532,015,28,25,26,1141954,1903727,2007,03/13/2007 05:26:14 AM,41.891890202,-87.754120245,"(41.891890202, -87.754120245)" -5354341,HN210046,03/05/2007 11:24:32 PM,014XX W 72ND PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0734,007,17,67,08B,1167951,1856708,2007,03/15/2007 06:47:07 PM,41.762344061,-87.659998119,"(41.762344061, -87.659998119)" -5356507,HN209977,03/05/2007 09:00:00 PM,094XX S DR MARTIN LUTHER KING JR DR,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,GAS STATION,false,false,0633,006,9,49,07,1180622,1842136,2007,03/13/2007 05:26:14 AM,41.722075256,-87.614003861,"(41.722075256, -87.614003861)" -5349652,HN204516,03/02/2007 06:20:00 PM,011XX W 112TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2234,022,34,75,08B,1170614,1830483,2007,03/08/2007 09:51:06 PM,41.69032126,-87.650999754,"(41.69032126, -87.650999754)" -5350421,HN203989,03/02/2007 02:19:00 PM,0000X N STATE ST,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,0122,001,42,32,06,1176404,1900511,2007,03/08/2007 09:51:06 PM,41.882357487,-87.627698312,"(41.882357487, -87.627698312)" -5350682,HN205492,03/02/2007 09:30:00 AM,030XX E 79TH ST,0890,THEFT,FROM BUILDING,PAWN SHOP,false,false,0421,004,7,46,06,1197843,1853210,2007,03/08/2007 09:51:06 PM,41.752051,-87.550558199,"(41.752051, -87.550558199)" -5348281,HN203614,03/01/2007 09:00:00 PM,043XX W WALTON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1111,011,37,23,07,1147118,1906011,2007,03/16/2007 09:21:57 AM,41.898060524,-87.735096471,"(41.898060524, -87.735096471)" -5346411,HN202549,03/01/2007 09:00:00 AM,004XX N GREEN ST,0810,THEFT,OVER $500,STREET,false,false,1323,012,27,24,06,1170677,1903529,2007,12/04/2014 12:43:35 PM,41.89076637,-87.648639318,"(41.89076637, -87.648639318)" -5351425,HN201222,02/28/2007 11:20:00 PM,045XX W WASHINGTON BLVD,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1113,011,28,26,18,1146280,1900074,2007,03/08/2007 09:51:06 PM,41.881784719,-87.738325611,"(41.881784719, -87.738325611)" -5349438,HN203473,02/28/2007 04:00:00 PM,033XX S KEDZIE AVE,0890,THEFT,FROM BUILDING,FEDERAL BUILDING,false,false,1032,010,22,30,06,1155536,1882025,2007,03/15/2007 06:47:07 PM,41.832075125,-87.704822722,"(41.832075125, -87.704822722)" -5454131,HN283466,02/28/2007 12:00:00 PM,073XX S FAIRFIELD AVE,1195,DECEPTIVE PRACTICE,FINAN EXPLOIT-ELDERLY/DISABLED,RESIDENCE,true,true,0835,008,18,66,11,1159347,1856020,2007,01/03/2008 01:04:43 AM,41.760636573,-87.691551967,"(41.760636573, -87.691551967)" -5344694,HN199678,02/28/2007 07:05:00 AM,042XX W MAYPOLE AVE,0460,BATTERY,SIMPLE,APARTMENT,true,false,1114,011,28,26,08B,1148007,1901154,2007,03/26/2007 05:46:31 AM,41.884715329,-87.731956255,"(41.884715329, -87.731956255)" -5342714,HN199351,02/27/2007 09:30:00 PM,008XX W 59TH ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,GAS STATION,false,false,0712,007,16,68,07,1171834,1865770,2007,03/03/2007 06:09:01 AM,41.787126973,-87.645500756,"(41.787126973, -87.645500756)" -5341130,HN197827,02/27/2007 01:40:00 AM,035XX W DOUGLAS BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,1021,010,24,29,08B,1152660,1893261,2007,03/15/2007 06:47:07 PM,41.862965331,-87.715078414,"(41.862965331, -87.715078414)" -5788295,HN197514,02/26/2007 09:40:00 PM,002XX W 117TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0522,005,34,53,18,1176656,1827393,2007,10/14/2007 01:03:27 AM,41.681708371,-87.628972288,"(41.681708371, -87.628972288)" -5341303,HN197650,02/26/2007 09:30:00 PM,007XX N LA SALLE DR,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1832,,42,8,06,,,2007,12/04/2014 12:43:35 PM,,, -5336435,HN194860,02/25/2007 03:20:00 AM,017XX N CLYBOURN AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESTAURANT,false,false,1813,018,43,7,04B,1169469,1911784,2007,03/02/2007 05:52:50 AM,41.913444963,-87.652835176,"(41.913444963, -87.652835176)" -5338476,HN194446,02/24/2007 07:48:43 PM,003XX N WALLER AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,1512,015,29,25,18,1138056,1901487,2007,03/03/2007 06:09:01 AM,41.88581467,-87.768490238,"(41.88581467, -87.768490238)" -5336789,HN193450,02/24/2007 08:20:00 AM,046XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,SIDEWALK,true,false,1113,011,28,25,16,1145479,1899576,2007,02/27/2007 06:32:20 AM,41.88043335,-87.741279513,"(41.88043335, -87.741279513)" -5439206,HN190880,02/22/2007 10:20:00 PM,035XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1123,011,28,27,16,1152815,1899828,2007,07/04/2007 02:03:09 AM,41.880982832,-87.714335579,"(41.880982832, -87.714335579)" -5332192,HN190754,02/22/2007 05:30:00 PM,064XX S UNIVERSITY AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0314,003,20,42,03,1184819,1862500,2007,03/13/2007 05:26:14 AM,41.777858886,-87.597993579,"(41.777858886, -87.597993579)" -5337971,HN190409,02/22/2007 04:10:00 PM,068XX S HERMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0725,007,17,67,14,1165816,1859442,2007,01/23/2008 02:56:07 PM,41.76989212,-87.667745668,"(41.76989212, -87.667745668)" -5331453,HN189977,02/22/2007 11:30:00 AM,007XX N CARPENTER ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1323,012,27,24,06,1169288,1904862,2007,12/04/2014 12:43:35 PM,41.894454512,-87.653701601,"(41.894454512, -87.653701601)" -5432011,HN189598,02/22/2007 07:50:00 AM,039XX S CALUMET AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0214,002,3,38,16,1179039,1878955,2007,07/08/2007 02:16:25 AM,41.823146564,-87.618681452,"(41.823146564, -87.618681452)" -5331449,HN189037,02/21/2007 08:05:38 PM,066XX S WOODLAWN AVE,0461,BATTERY,AGG PO HANDS ETC SERIOUS INJ,STREET,true,false,0321,003,5,42,04B,1185397,1861179,2007,03/13/2007 05:26:14 AM,41.774220364,-87.595916171,"(41.774220364, -87.595916171)" -5338608,HN187540,02/21/2007 01:44:00 AM,070XX S JEFFERY BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0332,003,5,43,18,1190716,1858887,2007,02/27/2007 06:32:20 AM,41.767804128,-87.576491949,"(41.767804128, -87.576491949)" -5332821,HN190081,02/20/2007 02:05:00 PM,008XX E 103RD ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0512,005,9,50,08A,1183714,1836812,2007,02/27/2007 06:32:20 AM,41.707394098,-87.602843897,"(41.707394098, -87.602843897)" -5323382,HN183417,02/18/2007 03:57:59 PM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176328,1900431,2007,02/24/2007 07:01:13 AM,41.882139677,-87.627979796,"(41.882139677, -87.627979796)" -5355619,HN182950,02/18/2007 09:19:00 AM,028XX W 64TH ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0823,008,15,66,26,1158594,1862120,2007,03/13/2007 05:26:14 AM,41.777391259,-87.694145617,"(41.777391259, -87.694145617)" From c626f37057835cf145358b0c8f9cb3d0c64f16c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:32:48 -0700 Subject: [PATCH 057/248] Delete part-00004-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 923 ------------------ 1 file changed, 923 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00004-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00004-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00004-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index 802f1698..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00004-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,923 +0,0 @@ -5325593,HN182341,02/17/2007 09:20:00 PM,008XX W 123RD ST,0460,BATTERY,SIMPLE,STREET,false,false,0524,005,34,53,08B,1173187,1823334,2007,02/28/2007 05:34:33 AM,41.670646937,-87.641789973,"(41.670646937, -87.641789973)" -5327691,HN177982,02/15/2007 02:05:00 PM,024XX W DIVISION ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1423,014,26,24,18,1159780,1907943,2007,08/01/2007 02:03:29 AM,41.903110391,-87.688536587,"(41.903110391, -87.688536587)" -5317338,HN177372,02/15/2007 12:00:00 AM,012XX E 95TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0511,005,8,50,14,1186051,1842186,2007,02/17/2007 06:14:10 AM,41.722086258,-87.594116913,"(41.722086258, -87.594116913)" -5324624,HN184178,02/12/2007 07:00:00 PM,021XX W 52ND ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0915,009,16,61,05,1163150,1870036,2007,02/24/2007 07:01:13 AM,41.799019648,-87.677221789,"(41.799019648, -87.677221789)" -5312361,HN172228,02/11/2007 08:30:00 PM,040XX W WILCOX ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1115,011,28,26,26,1149517,1899070,2007,02/13/2007 08:48:27 AM,41.878967431,-87.726465383,"(41.878967431, -87.726465383)" -5311722,HN172153,02/11/2007 07:20:00 PM,051XX S LEAMINGTON AVE,0560,ASSAULT,SIMPLE,RESIDENCE,true,false,0814,008,23,56,08A,1142864,1869832,2007,02/14/2007 06:32:53 AM,41.798860653,-87.751621346,"(41.798860653, -87.751621346)" -5334880,HN193397,02/10/2007 12:00:00 AM,033XX N OSCEOLA AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1631,016,36,17,26,1125874,1921200,2007,02/27/2007 06:32:20 AM,41.940121157,-87.812786672,"(41.940121157, -87.812786672)" -5307741,HN168042,02/09/2007 03:30:00 AM,033XX W CHICAGO AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1121,011,27,23,06,1153829,1905171,2007,12/04/2014 12:43:35 PM,41.895624426,-87.71046981,"(41.895624426, -87.71046981)" -5307097,HN167222,02/08/2007 06:10:00 PM,053XX S MARSHFIELD AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,APARTMENT,true,false,0932,009,16,61,04B,1166218,1868966,2007,02/12/2007 06:20:13 AM,41.796018629,-87.666001163,"(41.796018629, -87.666001163)" -5465136,HN292118,02/07/2007 12:00:00 PM,021XX N KENNETH AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,2522,025,31,20,06,1146408,1913948,2007,12/04/2014 12:43:35 PM,41.919854028,-87.737501761,"(41.919854028, -87.737501761)" -5308078,HN163212,02/06/2007 03:00:00 PM,007XX N LOCKWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1524,015,28,25,08B,1140921,1904660,2007,02/13/2007 08:48:27 AM,41.89446954,-87.757891067,"(41.89446954, -87.757891067)" -5294662,HN157094,02/02/2007 04:17:31 PM,005XX N ST LOUIS AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1121,011,27,23,18,1152910,1903463,2007,06/11/2007 03:52:33 PM,41.890955763,-87.713890394,"(41.890955763, -87.713890394)" -5294860,HN156885,02/02/2007 02:25:00 PM,076XX S EGGLESTON AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0621,006,17,69,08A,1174654,1854378,2007,02/24/2007 07:01:13 AM,41.755803655,-87.635500031,"(41.755803655, -87.635500031)" -5294955,HN156811,02/02/2007 02:10:00 PM,052XX S JUSTINE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0932,009,16,61,18,1166861,1869682,2007,02/06/2007 06:23:18 AM,41.797969696,-87.663622786,"(41.797969696, -87.663622786)" -5288760,HN151410,01/30/2007 12:44:00 PM,001XX N WABASH AVE,0560,ASSAULT,SIMPLE,RESTAURANT,false,false,0122,001,42,32,08A,1176838,1901015,2007,02/03/2007 06:11:22 AM,41.883730687,-87.626089427,"(41.883730687, -87.626089427)" -5282517,HN150713,01/30/2007 12:50:00 AM,007XX N LEAVITT ST,0560,ASSAULT,SIMPLE,STREET,true,false,1313,012,32,24,08A,1161554,1905248,2007,02/01/2007 06:57:55 AM,41.895678324,-87.682095476,"(41.895678324, -87.682095476)" -5282556,HN149345,01/29/2007 11:30:00 AM,061XX S KEDZIE AVE,1330,CRIMINAL TRESPASS,TO LAND,LIBRARY,true,false,0823,008,15,66,26,1156066,1863779,2007,02/01/2007 06:57:55 AM,41.781994989,-87.703368783,"(41.781994989, -87.703368783)" -5280544,HN149222,01/29/2007 10:45:00 AM,042XX S UNION AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0935,009,11,61,26,1172383,1876656,2007,11/23/2007 01:04:36 AM,41.816987217,-87.643167333,"(41.816987217, -87.643167333)" -5278895,HN148114,01/28/2007 12:00:00 AM,021XX W 110TH PL,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,2212,022,19,75,07,1163884,1831461,2007,02/09/2007 07:49:56 AM,41.69314871,-87.675611338,"(41.69314871, -87.675611338)" -5279545,HN146958,01/27/2007 06:30:41 PM,034XX W CARROLL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1123,011,28,27,14,1153202,1902142,2007,02/01/2007 06:57:55 AM,41.887325017,-87.712853098,"(41.887325017, -87.712853098)" -5280283,HN146593,01/27/2007 04:35:00 AM,060XX S DR MARTIN LUTHER KING JR DR,0820,THEFT,$500 AND UNDER,SIDEWALK,false,true,0313,003,20,42,06,1180005,1864722,2007,12/04/2014 12:43:35 PM,41.784067876,-87.615573648,"(41.784067876, -87.615573648)" -5279417,HN145645,01/26/2007 11:30:00 PM,027XX W 21ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1023,010,28,30,08B,1158386,1889902,2007,02/06/2007 06:23:18 AM,41.853632804,-87.694150563,"(41.853632804, -87.694150563)" -5276084,HN145407,01/26/2007 09:00:00 PM,069XX S EGGLESTON AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0732,007,6,68,26,1174439,1858869,2007,02/02/2007 09:25:46 AM,41.768132276,-87.636154561,"(41.768132276, -87.636154561)" -5270816,HN140206,01/23/2007 11:06:00 PM,034XX W MADISON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1123,011,28,27,14,1153201,1899758,2007,01/27/2007 07:34:41 AM,41.880783096,-87.712920063,"(41.880783096, -87.712920063)" -5285629,HN139457,01/23/2007 02:37:08 PM,064XX S HOYNE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,0726,007,15,67,26,1163433,1861797,2007,02/03/2007 06:11:22 AM,41.776404834,-87.676414814,"(41.776404834, -87.676414814)" -5279820,HN139392,01/23/2007 02:00:00 PM,095XX S HALSTED ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,2223,022,21,73,18,1172611,1841778,2007,01/30/2007 06:41:08 AM,41.721272795,-87.643357338,"(41.721272795, -87.643357338)" -5260690,HN136560,01/21/2007 09:10:00 PM,060XX S WASHTENAW AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0825,008,15,66,14,1159372,1864382,2007,01/24/2007 07:03:14 AM,41.783582602,-87.691231529,"(41.783582602, -87.691231529)" -5261637,HN135877,01/21/2007 11:30:00 AM,004XX E 63RD ST,1330,CRIMINAL TRESPASS,TO LAND,TAVERN/LIQUOR STORE,true,false,0312,003,20,42,26,1180281,1863295,2007,01/25/2007 07:51:08 AM,41.780145724,-87.614605468,"(41.780145724, -87.614605468)" -5276704,HN135222,01/20/2007 10:18:28 PM,011XX S STATE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,false,false,0132,001,2,32,18,1176467,1895662,2007,06/11/2007 03:52:33 PM,41.869050121,-87.62761338,"(41.869050121, -87.62761338)" -5258383,HN133494,01/19/2007 10:11:00 PM,007XX W 41ST ST,0460,BATTERY,SIMPLE,DEPARTMENT STORE,false,false,0925,009,11,61,08B,1171862,1877817,2007,01/23/2007 06:13:38 AM,41.820184581,-87.645044374,"(41.820184581, -87.645044374)" -5257583,HN130630,01/18/2007 01:40:00 PM,063XX S VERNON AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0312,003,20,42,06,1180379,1863108,2007,01/21/2007 07:32:49 AM,41.779630329,-87.614251921,"(41.779630329, -87.614251921)" -5245311,HN124686,01/15/2007 01:00:00 AM,037XX S HERMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0922,009,11,59,14,1165267,1879615,2007,01/18/2007 07:10:58 AM,41.82526091,-87.669186757,"(41.82526091, -87.669186757)" -5246267,HN124809,01/15/2007 12:05:00 AM,030XX W OHIO ST,031A,ROBBERY,ARMED: HANDGUN,FACTORY/MANUFACTURING BUILDING,false,false,1313,012,27,23,03,1155671,1903796,2007,03/08/2007 09:51:06 PM,41.891814404,-87.703741595,"(41.891814404, -87.703741595)" -5249427,HN124277,01/14/2007 08:35:00 PM,116XX S PRINCETON AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,false,0522,005,34,53,08B,1176413,1827616,2007,01/20/2007 06:07:58 AM,41.682325766,-87.629855134,"(41.682325766, -87.629855134)" -5252421,HN121291,01/13/2007 01:10:00 AM,016XX S PULASKI RD,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,true,false,1014,010,24,29,03,1150021,1891683,2007,02/02/2007 09:25:46 AM,41.858686852,-87.724807051,"(41.858686852, -87.724807051)" -5241590,HN120638,01/12/2007 06:10:00 PM,007XX N CHRISTIANA AVE,2830,OTHER OFFENSE,OBSCENE TELEPHONE CALLS,RESIDENCE,false,false,1121,011,27,23,17,1153871,1904696,2007,01/30/2007 06:41:08 AM,41.894320144,-87.710328221,"(41.894320144, -87.710328221)" -5252170,HN128501,01/12/2007 03:30:00 PM,011XX N WESTERN AVE,0460,BATTERY,SIMPLE,STREET,false,false,1312,012,1,24,08B,1160235,1907765,2007,01/23/2007 06:13:38 AM,41.902612548,-87.686870207,"(41.902612548, -87.686870207)" -5245725,HN120229,01/11/2007 09:00:00 PM,119XX S WALLACE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0524,005,34,53,14,1174502,1825544,2007,01/18/2007 07:10:58 AM,41.676682475,-87.636911808,"(41.676682475, -87.636911808)" -5236623,HN117360,01/10/2007 10:20:00 PM,043XX W DICKENS AVE,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,2522,025,30,20,18,1147219,1913646,2007,01/13/2007 05:03:08 AM,41.91900981,-87.734529736,"(41.91900981, -87.734529736)" -5242989,HN113295,01/08/2007 02:30:00 AM,035XX W JACKSON BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1123,011,28,27,05,1152623,1898495,2007,01/23/2007 06:13:38 AM,41.877328737,-87.715075854,"(41.877328737, -87.715075854)" -5228417,HN112233,01/08/2007 12:02:00 AM,026XX N MILWAUKEE AVE,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,STREET,false,false,1412,014,35,22,03,1154298,1917637,2007,01/27/2007 07:34:41 AM,41.929822855,-87.708413679,"(41.929822855, -87.708413679)" -5227253,HN110806,01/07/2007 12:05:00 AM,008XX N GREENVIEW AVE,0460,BATTERY,SIMPLE,CHA APARTMENT,false,false,1323,012,27,24,08B,1166258,1905943,2007,01/11/2007 08:03:48 AM,41.897486175,-87.664798907,"(41.897486175, -87.664798907)" -5227759,HN110490,01/06/2007 05:30:00 PM,019XX E 71ST ST,0320,ROBBERY,STRONGARM - NO WEAPON,RESTAURANT,false,false,0332,003,5,43,03,1190354,1858350,2007,01/30/2007 06:41:08 AM,41.76633929,-87.577836108,"(41.76633929, -87.577836108)" -5227733,HN109966,01/06/2007 02:00:00 PM,049XX W WAVELAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1634,016,38,15,08B,1142811,1924108,2007,01/10/2007 07:09:41 AM,41.94780188,-87.750464081,"(41.94780188, -87.750464081)" -5226752,HN109667,01/06/2007 11:00:00 AM,014XX W ELMDALE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2013,020,48,77,14,1165754,1939923,2007,01/10/2007 07:09:41 AM,41.990739712,-87.665677916,"(41.990739712, -87.665677916)" -5228486,HN108742,01/05/2007 08:15:00 PM,017XX W HURON ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1324,012,1,24,26,1164340,1904762,2007,01/09/2007 06:41:38 AM,41.894286218,-87.671876908,"(41.894286218, -87.671876908)" -5234745,HN107718,01/05/2007 11:15:00 AM,078XX S LAFLIN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0612,006,17,71,08B,1167437,1852683,2007,01/13/2007 05:03:08 AM,41.751309939,-87.661997123,"(41.751309939, -87.661997123)" -5244622,HN107634,01/05/2007 10:35:00 AM,009XX N KARLOV AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1111,011,37,23,18,1148919,1906019,2007,01/16/2007 05:09:07 AM,41.898047824,-87.728481294,"(41.898047824, -87.728481294)" -5223411,HN106240,01/04/2007 01:50:00 PM,001XX N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0122,001,42,32,06,1176390,1900949,2007,01/09/2007 06:41:38 AM,41.883559699,-87.627736496,"(41.883559699, -87.627736496)" -5223012,HN107188,01/03/2007 04:00:00 PM,004XX S CLARK ST,0610,BURGLARY,FORCIBLE ENTRY,HOTEL/MOTEL,false,false,0131,001,2,32,05,1175556,1898268,2007,01/24/2007 07:03:14 AM,41.876221652,-87.630879555,"(41.876221652, -87.630879555)" -5220908,HN100097,01/01/2007 12:29:27 AM,061XX S RACINE AVE,1477,WEAPONS VIOLATION,RECKLESS FIREARM DISCHARGE,RESIDENCE PORCH/HALLWAY,true,false,0712,007,16,68,15,1169412,1864069,2007,01/10/2007 07:09:41 AM,41.782512054,-87.654430379,"(41.782512054, -87.654430379)" -6727269,HR144314,12/31/2006 12:00:00 PM,0000X S RIVERSIDE PLZ,0840,THEFT,FINANCIAL ID THEFT: OVER $300,FACTORY/MANUFACTURING BUILDING,false,false,0111,,2,28,06,,,2006,02/10/2009 01:05:09 AM,,, -5217602,HM801427,12/30/2006 12:00:00 PM,018XX S SPRINGFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1014,010,24,29,08B,1150644,1890879,2006,01/11/2007 08:03:48 AM,41.856468439,-87.722541209,"(41.856468439, -87.722541209)" -5397441,HM799155,12/29/2006 12:55:30 AM,002XX W 106TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0512,005,34,49,18,1176752,1834694,2006,05/26/2007 01:52:12 AM,41.701741242,-87.628402163,"(41.701741242, -87.628402163)" -5221796,HM797844,12/27/2006 08:00:00 PM,037XX S WALLACE ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0925,009,11,60,06,1172956,1879883,2006,12/04/2014 12:43:35 PM,41.825829758,-87.640970043,"(41.825829758, -87.640970043)" -5206570,HM796511,12/27/2006 04:30:00 AM,091XX S GREENWOOD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0413,004,8,47,14,1185107,1844449,2006,12/31/2006 07:09:40 AM,41.728318378,-87.597503747,"(41.728318378, -87.597503747)" -5202463,HM792445,12/24/2006 02:05:00 PM,036XX W 71ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0833,008,13,65,08B,1153507,1857248,2006,12/27/2006 05:16:09 AM,41.764123971,-87.712923572,"(41.764123971, -87.712923572)" -5212650,HM793429,12/24/2006 11:45:00 AM,041XX W VAN BUREN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1132,011,24,26,14,1148616,1897735,2006,01/02/2007 06:08:05 AM,41.875321473,-87.729808188,"(41.875321473, -87.729808188)" -5201373,HM792116,12/23/2006 09:00:00 PM,014XX N RIDGEWAY AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,2535,025,26,23,14,1151137,1909610,2006,12/26/2006 05:17:36 AM,41.90785868,-87.720240457,"(41.90785868, -87.720240457)" -5228118,HM790080,12/22/2006 11:05:00 PM,005XX S KOSTNER AVE,3800,INTERFERENCE WITH PUBLIC OFFICER,INTERFERENCE JUDICIAL PROCESS,PARKING LOT/GARAGE(NON.RESID.),false,false,1131,011,24,26,26,1147099,1897314,2006,12/04/2014 12:43:35 PM,41.874195335,-87.735388839,"(41.874195335, -87.735388839)" -5198424,HM787587,12/21/2006 05:45:00 PM,048XX W ADAMS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1533,015,28,25,08B,1144101,1898932,2006,01/22/2007 06:32:08 AM,41.87869211,-87.746355623,"(41.87869211, -87.746355623)" -5200131,HM784922,12/20/2006 12:20:00 PM,054XX S MICHIGAN AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0232,002,3,40,03,1178037,1869153,2006,12/28/2006 06:04:50 AM,41.796271826,-87.622654732,"(41.796271826, -87.622654732)" -5200098,HM784603,12/20/2006 09:05:00 AM,012XX S LAWNDALE AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,SIDEWALK,true,false,1011,010,24,29,18,1151868,1893990,2006,12/31/2006 07:09:40 AM,41.864981405,-87.717966605,"(41.864981405, -87.717966605)" -5190939,HM782345,12/19/2006 02:03:00 AM,009XX W 31ST ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,true,false,0923,009,11,60,04A,1170268,1884331,2006,12/24/2006 06:39:17 AM,41.838094507,-87.650701973,"(41.838094507, -87.650701973)" -5193110,HM784041,12/18/2006 10:00:00 PM,113XX S CHURCH ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,2212,022,19,75,26,1166095,1829573,2006,12/31/2006 07:09:40 AM,41.687921101,-87.667569805,"(41.687921101, -87.667569805)" -5190724,HM780477,12/18/2006 06:00:00 AM,011XX W 15TH ST,0890,THEFT,FROM BUILDING,CONSTRUCTION SITE,false,false,1232,012,2,28,06,1169110,1892861,2006,04/02/2007 06:10:32 AM,41.861526749,-87.654703846,"(41.861526749, -87.654703846)" -5186588,HM777007,12/16/2006 12:30:48 AM,025XX E 83RD ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0423,004,7,46,08B,1194731,1850395,2006,12/18/2006 06:13:25 AM,41.744403544,-87.562054513,"(41.744403544, -87.562054513)" -5186082,HM775707,12/15/2006 12:30:00 PM,077XX S LAWNDALE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0833,008,18,70,06,1153227,1853136,2006,12/04/2014 12:43:35 PM,41.752845508,-87.714058346,"(41.752845508, -87.714058346)" -5906548,HN280982,12/15/2006 10:00:00 AM,030XX N MILWAUKEE AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,GAS STATION,false,false,2523,025,30,21,11,1150967,1920214,2006,08/31/2010 03:21:15 PM,41.936960325,-87.720586608,"(41.936960325, -87.720586608)" -5534921,HN346784,12/15/2006 01:00:00 AM,059XX N OZANAM AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,true,1612,016,41,10,26,1123303,1938767,2006,06/02/2007 01:54:14 AM,41.988369494,-87.821850735,"(41.988369494, -87.821850735)" -5181218,HM773065,12/14/2006 01:18:00 AM,028XX W CORTEZ ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1311,012,26,24,08B,1157158,1907007,2006,12/16/2006 05:56:32 AM,41.900595603,-87.698193193,"(41.900595603, -87.698193193)" -5182729,HM772933,12/13/2006 11:07:00 PM,065XX S MARYLAND AVE,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,0321,003,20,42,03,1182973,1862028,2006,12/18/2006 06:13:25 AM,41.776606791,-87.60477564,"(41.776606791, -87.60477564)" -5183870,HM773645,12/13/2006 10:00:00 PM,028XX W CATALPA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2011,020,40,4,14,1156226,1936446,2006,12/20/2006 06:24:03 AM,41.981397142,-87.700818623,"(41.981397142, -87.700818623)" -5180989,HM771325,12/12/2006 04:00:00 PM,063XX S INGLESIDE AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,0314,003,20,42,05,1183861,1862896,2006,12/18/2006 06:13:25 AM,41.778967972,-87.601493232,"(41.778967972, -87.601493232)" -5175864,HM769094,12/12/2006 03:09:00 AM,044XX N SHERIDAN RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2313,019,46,3,08B,1168843,1929764,2006,12/14/2006 06:21:01 AM,41.962796502,-87.654611982,"(41.962796502, -87.654611982)" -5175798,HM765711,12/10/2006 05:20:00 AM,059XX S WESTERN AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0825,008,16,66,03,1161428,1865232,2006,12/16/2006 05:56:32 AM,41.785872737,-87.683669923,"(41.785872737, -87.683669923)" -5360660,HM765580,12/10/2006 02:00:00 AM,029XX E 91ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0423,004,10,46,18,1197115,1845225,2006,07/04/2007 02:03:09 AM,41.730157684,-87.553491099,"(41.730157684, -87.553491099)" -5173247,HM765464,12/10/2006 12:45:00 AM,011XX W MADISON ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1212,012,27,28,08B,1169028,1900237,2006,12/28/2006 06:04:50 AM,41.88176884,-87.654790817,"(41.88176884, -87.654790817)" -5172146,HM765480,12/09/2006 11:20:00 PM,021XX N MILWAUKEE AVE,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1431,014,1,22,06,1158676,1914100,2006,12/16/2006 05:56:32 AM,41.920028383,-87.692422811,"(41.920028383, -87.692422811)" -5172568,HM764404,12/09/2006 11:24:03 AM,036XX W LEXINGTON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1133,011,24,27,08B,1152155,1896491,2006,12/16/2006 05:56:32 AM,41.87183878,-87.71684708,"(41.87183878, -87.71684708)" -5169351,HM762117,12/08/2006 12:55:00 AM,033XX W BELMONT AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1733,017,35,21,06,1153793,1921128,2006,12/12/2006 04:47:45 AM,41.939412513,-87.710176182,"(41.939412513, -87.710176182)" -5165747,HM759954,12/06/2006 02:15:00 PM,019XX W OGDEN AVE,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,false,false,1224,012,2,28,06,1163359,1897070,2006,12/08/2006 06:10:22 AM,41.873199429,-87.675696303,"(41.873199429, -87.675696303)" -5168137,HM761173,12/05/2006 02:30:00 AM,012XX S MICHIGAN AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0132,001,2,33,06,1177378,1895029,2006,12/12/2006 04:47:45 AM,41.86729253,-87.624288107,"(41.86729253, -87.624288107)" -5172196,HM765018,12/04/2006 02:50:00 PM,099XX S PROSPECT AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2213,022,19,72,05,1167240,1838988,2006,12/20/2006 06:24:03 AM,41.713733043,-87.663109824,"(41.713733043, -87.663109824)" -5158372,HM755053,12/03/2006 11:00:00 PM,024XX W ARTHINGTON ST,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,RESIDENCE,false,false,1135,011,2,28,26,1160035,1896005,2006,08/31/2010 03:21:15 PM,41.870346204,-87.687929726,"(41.870346204, -87.687929726)" -5157631,HM753482,12/02/2006 08:50:00 PM,028XX N CLARK ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,2333,019,44,6,06,1171497,1919059,2006,12/05/2006 04:13:46 AM,41.933363508,-87.645170295,"(41.933363508, -87.645170295)" -5174291,HM767570,12/01/2006 12:00:00 PM,055XX S WOOD ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0715,007,15,67,07,1165250,1868024,2006,12/13/2006 04:48:10 AM,41.793454232,-87.669577556,"(41.793454232, -87.669577556)" -5161563,HM752038,12/01/2006 11:45:00 AM,111XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,0522,005,34,49,26,1178187,1831335,2006,12/07/2006 06:24:52 AM,41.692491316,-87.623249065,"(41.692491316, -87.623249065)" -5348051,HM749508,11/30/2006 02:08:02 PM,005XX E BROWNING AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,0212,002,4,35,26,1180492,1881375,2006,06/27/2007 02:51:19 AM,41.829753936,-87.613276607,"(41.829753936, -87.613276607)" -5152217,HM747883,11/29/2006 06:00:00 PM,022XX S DR MARTIN LUTHER KING JR DR,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,0133,001,2,33,26,1178906,1889450,2006,12/09/2006 04:10:59 AM,41.85194864,-87.618849106,"(41.85194864, -87.618849106)" -5152185,HM747934,11/29/2006 02:30:00 PM,002XX E RANDOLPH ST,0810,THEFT,OVER $500,PARK PROPERTY,false,false,0124,001,42,32,06,1177892,1901182,2006,12/04/2014 12:43:35 PM,41.884165043,-87.622214011,"(41.884165043, -87.622214011)" -5151154,HM747275,11/29/2006 01:00:00 PM,002XX S LARAMIE AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,OTHER,false,true,1522,015,29,25,26,1141709,1898801,2006,02/05/2007 06:51:54 AM,41.878377185,-87.755141925,"(41.878377185, -87.755141925)" -5148268,HM744568,11/27/2006 07:00:00 PM,019XX N DRAKE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1422,014,26,22,06,1152549,1912630,2006,12/04/2014 12:43:35 PM,41.916118022,-87.714973501,"(41.916118022, -87.714973501)" -5167325,HM741321,11/26/2006 01:20:00 PM,025XX W 59TH ST,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,GROCERY FOOD STORE,false,false,0824,008,16,63,10,1160327,1865492,2006,12/11/2006 05:19:46 AM,41.78660897,-87.687699584,"(41.78660897, -87.687699584)" -5164202,HM740584,11/26/2006 12:50:00 AM,029XX N NEW ENGLAND AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,2511,025,36,18,06,1129946,1918980,2006,12/04/2014 12:43:35 PM,41.933960386,-87.797871401,"(41.933960386, -87.797871401)" -6299304,HP377521,11/25/2006 07:00:00 PM,075XX S INDIANA AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,COMMERCIAL / BUSINESS OFFICE,false,false,0623,,6,69,11,,,2006,07/02/2008 01:04:10 AM,,, -5154546,HM739029,11/25/2006 06:28:00 AM,100XX W OHARE ST,1330,CRIMINAL TRESPASS,TO LAND,AIRPORT/AIRCRAFT,true,false,1651,016,41,76,26,1100635,1934208,2006,12/03/2006 06:03:12 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -5345324,HM738040,11/24/2006 03:19:24 PM,027XX W AUGUSTA BLVD,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1311,012,26,24,26,1157659,1906491,2006,05/05/2007 08:11:46 AM,41.899169462,-87.69636706,"(41.899169462, -87.69636706)" -5344808,HM737883,11/24/2006 01:53:23 PM,094XX S HARVARD AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0634,006,21,49,18,1175635,1842523,2006,05/05/2007 08:11:46 AM,41.723250134,-87.632258841,"(41.723250134, -87.632258841)" -5139589,HM737069,11/23/2006 10:00:00 PM,049XX W GLADYS AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,1533,015,24,25,04A,1143444,1897845,2006,11/29/2006 06:25:08 AM,41.875721552,-87.748795208,"(41.875721552, -87.748795208)" -5447480,HM735102,11/22/2006 02:49:02 PM,131XX S LANGLEY AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0533,005,9,54,18,1183285,1818309,2006,08/08/2007 02:59:32 AM,41.65662928,-87.604987701,"(41.65662928, -87.604987701)" -5138928,HM734312,11/22/2006 08:08:14 AM,078XX S YATES BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0414,004,7,43,14,1193518,1853466,2006,11/25/2006 05:00:04 AM,41.75286037,-87.566398704,"(41.75286037, -87.566398704)" -5136403,HM733977,11/21/2006 10:35:00 PM,012XX N MILWAUKEE AVE,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,PARK PROPERTY,false,false,1433,014,1,24,03,1165658,1908235,2006,12/04/2006 05:55:00 AM,41.903788392,-87.666937234,"(41.903788392, -87.666937234)" -5314675,HM733931,11/21/2006 09:30:00 PM,066XX S BELL AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,0832,008,15,66,18,1162504,1860663,2006,06/24/2007 02:00:14 AM,41.773312406,-87.679852078,"(41.773312406, -87.679852078)" -5137694,HM734435,11/21/2006 09:00:00 PM,063XX W ROSCOE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1633,016,36,17,07,1133475,1921896,2006,01/01/2007 07:32:02 AM,41.941901002,-87.784833623,"(41.941901002, -87.784833623)" -5136001,HM729923,11/19/2006 05:45:00 PM,005XX N HOMAN AVE,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,SIDEWALK,false,false,1121,011,27,23,04B,1153575,1903454,2006,11/29/2006 06:25:08 AM,41.890917867,-87.711448406,"(41.890917867, -87.711448406)" -5206249,HM787057,11/19/2006 12:00:00 AM,033XX W WARREN BLVD,1751,OFFENSE INVOLVING CHILDREN,CRIM SEX ABUSE BY FAM MEMBER,RESIDENCE,false,true,1123,011,28,27,20,1154235,1900190,2006,02/14/2007 06:32:53 AM,41.881947974,-87.70911174,"(41.881947974, -87.70911174)" -5135687,HM728143,11/18/2006 10:00:00 AM,059XX S MICHIGAN AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0233,002,20,40,05,1178218,1865511,2006,11/26/2006 06:54:40 AM,41.786273718,-87.622101485,"(41.786273718, -87.622101485)" -5342294,HM725401,11/17/2006 10:30:00 AM,100XX W OHARE ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,AIRPORT/AIRCRAFT,true,false,1651,016,41,76,18,1100635,1934208,2006,04/21/2007 05:09:41 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -5125874,HM724011,11/14/2006 05:00:00 PM,007XX W BARRY AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,APARTMENT,false,false,2332,019,44,6,06,1170720,1920648,2006,12/02/2006 04:50:35 AM,41.93774087,-87.647979016,"(41.93774087, -87.647979016)" -5337733,HM719076,11/13/2006 11:00:00 PM,103XX S EWING AVE,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,SIDEWALK,true,false,0432,004,10,52,22,1202118,1837208,2006,04/28/2007 05:26:07 AM,41.708032578,-87.535436219,"(41.708032578, -87.535436219)" -5117853,HM718770,11/13/2006 05:20:00 PM,010XX N WINCHESTER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1322,012,1,24,26,1163168,1907110,2006,11/28/2006 06:48:34 AM,41.900754023,-87.676115238,"(41.900754023, -87.676115238)" -5114403,HM715593,11/11/2006 11:03:44 PM,107XX S BENSLEY AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0434,004,10,51,26,1194601,1834439,2006,11/14/2006 04:28:54 AM,41.700621997,-87.563053957,"(41.700621997, -87.563053957)" -5319739,HM714464,11/11/2006 11:18:00 AM,060XX S WINCHESTER AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,VEHICLE NON-COMMERCIAL,true,false,0714,007,15,67,18,1164346,1864803,2006,05/05/2007 08:11:46 AM,41.784634505,-87.672983173,"(41.784634505, -87.672983173)" -5113797,HM714722,11/10/2006 06:00:00 PM,036XX S MICHIGAN AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,true,0211,002,3,35,04A,1177828,1881078,2006,06/02/2010 10:34:17 AM,41.828999802,-87.623059711,"(41.828999802, -87.623059711)" -5113499,HM713193,11/10/2006 05:01:00 PM,052XX S TROY ST,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,RESIDENCE,false,false,0911,009,14,63,26,1156301,1869898,2006,02/01/2007 06:57:55 AM,41.798781667,-87.702342553,"(41.798781667, -87.702342553)" -5111778,HM711058,11/09/2006 04:15:00 PM,022XX S WESTERN AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1034,010,25,31,06,1160669,1889301,2006,11/14/2006 04:28:54 AM,41.851936659,-87.685787742,"(41.851936659, -87.685787742)" -5108824,HM709869,11/09/2006 03:30:00 AM,022XX N KEDZIE BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,NURSING HOME/RETIREMENT HOME,false,false,1413,014,26,22,26,1154622,1914949,2006,11/12/2006 06:16:17 AM,41.922440283,-87.707295178,"(41.922440283, -87.707295178)" -5112192,HM709748,11/08/2006 11:30:00 PM,117XX S LOWE AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,STREET,true,false,0524,005,34,53,08B,1174102,1826979,2006,11/12/2006 06:16:17 AM,41.680629208,-87.638333544,"(41.680629208, -87.638333544)" -5105755,HM707039,11/07/2006 02:30:00 PM,046XX N SHERIDAN RD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2312,019,46,3,26,1168742,1931179,2006,11/11/2006 07:40:50 AM,41.966681503,-87.654942128,"(41.966681503, -87.654942128)" -5107676,HM706536,11/07/2006 12:15:00 PM,059XX S JUSTINE ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0713,007,15,67,08A,1166991,1865020,2006,11/11/2006 07:40:50 AM,41.785173827,-87.663279301,"(41.785173827, -87.663279301)" -5118125,HM707161,11/06/2006 11:30:00 PM,025XX W MARQUETTE RD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0832,008,15,66,14,1160739,1860186,2006,06/14/2007 02:11:59 AM,41.77204007,-87.686335343,"(41.77204007, -87.686335343)" -5112204,HM705385,11/06/2006 05:00:00 PM,054XX S BLACKSTONE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2131,002,4,41,06,1186794,1869524,2006,12/04/2014 12:43:35 PM,41.797086727,-87.590530816,"(41.797086727, -87.590530816)" -5105202,HM704334,11/06/2006 11:25:00 AM,020XX N ORCHARD ST,0320,ROBBERY,STRONGARM - NO WEAPON,PARK PROPERTY,false,false,1812,018,43,7,03,1171321,1913600,2006,11/20/2006 06:27:20 AM,41.918387636,-87.645977893,"(41.918387636, -87.645977893)" -5101234,HM703132,11/05/2006 05:52:25 PM,085XX S HOUSTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0424,004,10,46,08B,1197928,1848764,2006,11/11/2006 07:40:50 AM,41.739848727,-87.550394962,"(41.739848727, -87.550394962)" -5100708,HM702574,11/05/2006 09:47:00 AM,018XX S ALLPORT ST,0810,THEFT,OVER $500,GROCERY FOOD STORE,false,false,1222,012,25,31,06,1168295,1890948,2006,12/04/2014 12:43:35 PM,41.856294954,-87.657750802,"(41.856294954, -87.657750802)" -5106152,HM706731,11/03/2006 08:00:00 PM,018XX W ERIE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1324,012,1,24,06,1163978,1904417,2006,12/04/2014 12:43:35 PM,41.893347162,-87.673216169,"(41.893347162, -87.673216169)" -5100054,HM699809,11/03/2006 07:20:00 PM,087XX S MICHIGAN AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,ALLEY,false,false,0632,006,6,44,04A,1178716,1847148,2006,11/08/2006 05:36:51 AM,41.735872306,-87.620833239,"(41.735872306, -87.620833239)" -5097844,HM699485,11/03/2006 02:00:00 PM,034XX S HALSTED ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0924,009,11,60,06,1171483,1882406,2006,12/04/2014 12:43:35 PM,41.83278555,-87.646300086,"(41.83278555, -87.646300086)" -5191698,HM698575,11/03/2006 08:50:00 AM,005XX E 36TH ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA APARTMENT,true,false,0212,002,4,35,18,1180734,1881036,2006,05/29/2007 01:47:17 AM,41.828818126,-87.612399159,"(41.828818126, -87.612399159)" -5104614,HM701201,11/02/2006 05:00:00 AM,056XX S PRAIRIE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0234,002,20,40,14,1179041,1867700,2006,11/13/2006 05:58:15 AM,41.792261823,-87.619017294,"(41.792261823, -87.619017294)" -5173686,HM695041,11/01/2006 11:39:11 AM,002XX N LEAMINGTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1532,015,28,25,18,1142044,1901046,2006,05/22/2007 02:05:56 AM,41.884531546,-87.753856202,"(41.884531546, -87.753856202)" -5271512,HM693932,10/31/2006 08:10:46 PM,045XX S HONORE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0914,009,20,61,18,1164732,1874779,2006,02/24/2007 07:01:13 AM,41.812001718,-87.671286231,"(41.812001718, -87.671286231)" -5085896,HM689735,10/29/2006 08:32:20 PM,029XX E 91ST ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0423,004,10,46,14,1197007,1845222,2006,11/02/2006 05:58:34 AM,41.730152136,-87.553886827,"(41.730152136, -87.553886827)" -5084772,HM690210,10/29/2006 12:00:00 AM,030XX N LINCOLN AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1931,019,32,6,06,1166130,1920267,2006,11/01/2006 04:25:06 AM,41.936794841,-87.664858959,"(41.936794841, -87.664858959)" -5268351,HM686456,10/28/2006 12:05:00 AM,063XX S RHODES AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0312,003,20,42,16,1180946,1863291,2006,03/17/2007 06:01:53 AM,41.780119469,-87.612167622,"(41.780119469, -87.612167622)" -5090332,HM684278,10/26/2006 11:10:10 PM,045XX S LAMON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0814,008,23,56,08B,1144409,1874287,2006,12/06/2006 05:02:18 AM,41.811057043,-87.745843719,"(41.811057043, -87.745843719)" -5266164,HM684140,10/26/2006 09:45:00 PM,061XX S RICHMOND ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0823,008,15,66,18,1157803,1863947,2006,06/17/2007 03:25:09 AM,41.782420908,-87.696995879,"(41.782420908, -87.696995879)" -5267490,HM683344,10/26/2006 02:27:00 PM,071XX S VERNON AVE,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,STREET,true,false,0323,003,6,69,18,1180435,1857958,2006,06/17/2007 03:25:09 AM,41.765496925,-87.614204492,"(41.765496925, -87.614204492)" -5078569,HM683137,10/26/2006 01:03:01 PM,011XX N CENTRAL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1524,015,37,25,05,1138835,1907256,2006,10/31/2006 04:43:16 AM,41.901631417,-87.765489337,"(41.901631417, -87.765489337)" -5078885,HM681905,10/25/2006 01:00:00 PM,042XX S WESTERN AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0914,009,12,58,04A,1161034,1876454,2006,11/15/2006 04:46:56 AM,41.816675497,-87.684804083,"(41.816675497, -87.684804083)" -5274165,HM680969,10/25/2006 09:00:54 AM,085XX S MUSKEGON AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE,true,false,0423,004,10,46,18,1196677,1848803,2006,06/13/2007 03:40:31 AM,41.739986886,-87.554977055,"(41.739986886, -87.554977055)" -5074058,HM680471,10/25/2006 01:37:42 AM,081XX S BURNHAM AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0422,004,7,46,04B,1196203,1851734,2006,06/11/2007 03:52:33 PM,41.748041532,-87.55661676,"(41.748041532, -87.55661676)" -5073543,HM679386,10/24/2006 09:40:00 AM,025XX N AUSTIN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2512,025,29,19,26,1135926,1916314,2006,10/28/2006 04:53:45 AM,41.926539992,-87.775958382,"(41.926539992, -87.775958382)" -5076900,HM678802,10/24/2006 12:30:00 AM,003XX W 51ST ST,0865,THEFT,DELIVERY CONTAINER THEFT,OTHER RAILROAD PROP / TRAIN DEPOT,false,false,0935,009,3,37,06,1174794,1871176,2006,11/17/2006 04:48:43 AM,41.801896096,-87.634486673,"(41.801896096, -87.634486673)" -5071880,HM677449,10/23/2006 03:10:00 PM,077XX S WOOD ST,0560,ASSAULT,SIMPLE,STREET,false,false,0611,006,17,71,08A,1165647,1853558,2006,11/26/2006 06:54:40 AM,41.753749203,-87.668531838,"(41.753749203, -87.668531838)" -5262160,HM674352,10/21/2006 07:06:00 PM,049XX W THOMAS ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1531,015,37,25,18,1143245,1906826,2006,03/17/2007 06:01:53 AM,41.900370203,-87.74930144,"(41.900370203, -87.74930144)" -5122840,HM720270,10/21/2006 09:00:00 AM,030XX N HARLEM AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,BANK,false,false,2511,025,36,17,11,1127507,1919637,2006,11/24/2006 05:10:29 AM,41.935804726,-87.806820017,"(41.935804726, -87.806820017)" -5078825,HM675714,10/20/2006 07:30:00 PM,076XX S LANGLEY AVE,0925,MOTOR VEHICLE THEFT,"ATT: TRUCK, BUS, MOTOR HOME",STREET,false,false,0624,006,6,69,07,1182261,1854359,2006,10/29/2006 05:43:02 AM,41.755578813,-87.607622972,"(41.755578813, -87.607622972)" -5064995,HM671271,10/19/2006 11:00:00 PM,036XX W 55TH ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0822,008,23,62,26,1152854,1867925,2006,05/29/2007 01:47:17 AM,41.793436206,-87.715035624,"(41.793436206, -87.715035624)" -5064700,HM669496,10/19/2006 01:20:00 PM,030XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,2112,001,2,35,08B,1179263,1885133,2006,10/22/2006 06:20:26 AM,41.840094342,-87.617670874,"(41.840094342, -87.617670874)" -5325602,HM668643,10/18/2006 11:00:00 PM,018XX N CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2533,025,37,25,16,1144075,1911684,2006,04/21/2007 05:09:41 AM,41.913685537,-87.746130628,"(41.913685537, -87.746130628)" -5061251,HM668531,10/18/2006 10:00:00 PM,023XX S STATE ST,0560,ASSAULT,SIMPLE,CHA APARTMENT,false,false,0134,001,3,33,08A,1176644,1888767,2006,08/31/2010 03:21:15 PM,41.850125786,-87.627171772,"(41.850125786, -87.627171772)" -5065620,HM671956,10/17/2006 02:00:00 PM,076XX S WESTERN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,COMMERCIAL / BUSINESS OFFICE,false,false,0835,008,18,70,26,1161657,1854128,2006,08/31/2010 03:21:15 PM,41.755397042,-87.683138077,"(41.755397042, -87.683138077)" -5056133,HM663220,10/16/2006 11:00:00 AM,067XX S ARTESIAN AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0832,008,15,66,05,1161251,1859581,2006,08/31/2010 03:21:15 PM,41.770369279,-87.68447523,"(41.770369279, -87.68447523)" -5053453,HM661977,10/15/2006 03:30:00 PM,022XX W 95TH ST,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,2213,022,19,72,06,1162781,1841554,2006,10/17/2006 05:43:21 AM,41.720868657,-87.679369043,"(41.720868657, -87.679369043)" -5064943,HM661670,10/15/2006 11:30:00 AM,076XX S EGGLESTON AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,true,true,0621,006,17,69,26,1174579,1854210,2006,10/23/2006 03:43:52 AM,41.755344311,-87.63577988,"(41.755344311, -87.63577988)" -5052703,HM660494,10/14/2006 09:45:00 PM,016XX W MONTEREY AVE,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,PARKING LOT/GARAGE(NON.RESID.),false,false,2234,022,34,75,03,1167410,1830187,2006,11/02/2006 05:58:34 AM,41.689578032,-87.662738199,"(41.689578032, -87.662738199)" -5058390,HM666593,10/13/2006 09:00:00 PM,064XX N MAGNOLIA AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,2432,024,40,1,11,1166720,1943049,2006,11/11/2006 07:40:50 AM,41.999296804,-87.662034619,"(41.999296804, -87.662034619)" -5119250,HM718861,10/13/2006 10:30:00 AM,033XX N AVERS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1732,017,30,21,05,1150090,1922134,2006,11/20/2006 06:27:20 AM,41.942246118,-87.723759555,"(41.942246118, -87.723759555)" -5052293,HM658496,10/13/2006 07:00:00 AM,037XX N LAWNDALE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1732,017,39,16,05,1151014,1924831,2006,10/21/2006 04:17:24 AM,41.949628812,-87.720292522,"(41.949628812, -87.720292522)" -5059308,HM656490,10/12/2006 08:10:00 PM,038XX S VERNON AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0212,002,4,35,26,1179866,1879394,2006,10/20/2006 06:42:46 AM,41.824332298,-87.615634088,"(41.824332298, -87.615634088)" -5258285,HM655851,10/12/2006 12:20:08 PM,062XX S ARTESIAN AVE,2094,NARCOTICS,ATTEMPT POSSESSION CANNABIS,STREET,true,false,0825,008,15,66,18,1161074,1863043,2006,04/07/2007 05:43:19 AM,41.779873155,-87.685028378,"(41.779873155, -87.685028378)" -5253284,HM654939,10/11/2006 10:49:48 PM,054XX S NARRAGANSETT AVE,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,0811,008,23,56,18,1134673,1867910,2006,03/17/2007 06:01:53 AM,41.793734525,-87.781705439,"(41.793734525, -87.781705439)" -5046751,HM653465,10/11/2006 09:45:00 AM,007XX W 31ST ST,1330,CRIMINAL TRESPASS,TO LAND,SMALL RETAIL STORE,true,false,0924,009,11,60,26,1171507,1884283,2006,10/14/2006 06:13:36 AM,41.83793568,-87.64615693,"(41.83793568, -87.64615693)" -5041487,HM649052,10/09/2006 01:11:00 AM,067XX S PULASKI RD,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0833,008,13,65,14,1150830,1859315,2006,10/12/2006 05:28:35 AM,41.769848723,-87.722681759,"(41.769848723, -87.722681759)" -5041017,HM648701,10/08/2006 09:30:00 PM,023XX S TROY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,false,1033,010,24,30,08B,1155766,1888305,2006,10/12/2006 05:28:35 AM,41.84930357,-87.70380993,"(41.84930357, -87.70380993)" -5039808,HM648506,10/08/2006 06:30:00 PM,100XX S PEORIA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,2232,022,34,73,14,1172044,1838263,2006,10/17/2006 05:43:21 AM,41.711639572,-87.645536995,"(41.711639572, -87.645536995)" -5044347,HM646305,10/07/2006 03:31:28 PM,003XX E PERSHING RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0213,002,3,38,06,1179295,1879163,2006,11/27/2006 06:32:11 AM,41.823711486,-87.617735941,"(41.823711486, -87.617735941)" -5037172,HM645404,10/07/2006 05:10:00 AM,011XX S JEFFERSON ST,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,0131,001,2,28,06,1172528,1895381,2006,12/04/2014 12:43:35 PM,41.868366989,-87.642082601,"(41.868366989, -87.642082601)" -5224579,HM644514,10/06/2006 06:11:00 PM,063XX N CLARK ST,2021,NARCOTICS,POSS: BARBITUATES,STREET,true,false,2433,024,40,77,18,1164501,1942283,2006,06/05/2007 01:50:16 AM,41.997242329,-87.670219509,"(41.997242329, -87.670219509)" -5035387,HM641523,10/05/2006 10:30:00 AM,059XX S LA SALLE ST,0810,THEFT,OVER $500,RESIDENCE,false,false,0233,002,20,68,06,1176358,1865603,2006,12/04/2014 12:43:35 PM,41.786568195,-87.628918374,"(41.786568195, -87.628918374)" -5034632,HM641142,10/05/2006 05:28:00 AM,020XX E 75TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,0414,004,8,43,08B,1191314,1855606,2006,10/12/2006 05:28:35 AM,41.758786339,-87.574406154,"(41.758786339, -87.574406154)" -5033245,HM640986,10/04/2006 11:15:00 PM,043XX W MADISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1115,011,28,26,08B,1147658,1899705,2006,10/17/2006 05:43:21 AM,41.880745813,-87.733275051,"(41.880745813, -87.733275051)" -5352562,HM639919,10/04/2006 01:46:08 PM,029XX E 92ND ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0423,004,7,46,06,1197291,1844562,2006,03/08/2007 09:51:06 PM,41.728333979,-87.552868393,"(41.728333979, -87.552868393)" -5030362,HM638241,10/03/2006 05:00:00 PM,057XX W BELDEN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2515,025,37,19,03,1137971,1914755,2006,11/03/2006 06:27:43 AM,41.922225199,-87.768481556,"(41.922225199, -87.768481556)" -5030867,HM637435,10/03/2006 12:00:00 AM,042XX S CALIFORNIA AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0912,009,12,58,05,1158442,1876399,2006,10/16/2006 05:23:36 AM,41.816577858,-87.694313719,"(41.816577858, -87.694313719)" -5026385,HM634387,10/01/2006 06:05:00 PM,032XX W WALNUT ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE-GARAGE,true,false,1123,011,28,27,04A,1154820,1901407,2006,10/06/2006 04:52:45 AM,41.885275847,-87.706930998,"(41.885275847, -87.706930998)" -5024566,HM634406,10/01/2006 06:00:00 AM,021XX W 18TH PL,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1223,012,25,31,07,1162560,1891016,2006,10/06/2006 04:52:45 AM,41.856603447,-87.678799284,"(41.856603447, -87.678799284)" -5336698,HM631655,09/30/2006 08:59:05 AM,096XX S BALTIMORE AVE,0810,THEFT,OVER $500,APARTMENT,false,false,0431,004,10,51,06,1198529,1841623,2006,12/04/2014 12:43:35 PM,41.720238229,-87.548431615,"(41.720238229, -87.548431615)" -5023498,HM632841,09/30/2006 12:00:00 AM,018XX N ALBANY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1421,014,26,22,26,1155252,1912199,2006,10/06/2006 04:52:45 AM,41.914881413,-87.70505438,"(41.914881413, -87.70505438)" -5218932,HM630165,09/29/2006 02:30:00 PM,052XX S WOOD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0932,009,16,61,18,1165189,1870144,2006,02/24/2007 07:01:13 AM,41.799273062,-87.669741228,"(41.799273062, -87.669741228)" -5048339,HM655824,09/29/2006 12:00:00 PM,077XX S CLAREMONT AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,SMALL RETAIL STORE,false,false,0835,008,18,70,11,1162039,1852930,2006,01/08/2007 09:05:18 AM,41.752101621,-87.681771386,"(41.752101621, -87.681771386)" -5234139,HM626998,09/27/2006 08:02:00 PM,001XX N FRANKLIN ST,2210,LIQUOR LAW VIOLATION,SELL/GIVE/DEL LIQUOR TO MINOR,CONVENIENCE STORE,true,false,0111,001,42,32,22,1174257,1901580,2006,03/20/2007 05:41:42 AM,41.885339058,-87.63555012,"(41.885339058, -87.63555012)" -5023108,HM626291,09/27/2006 02:20:00 PM,007XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1834,018,42,8,06,1177338,1905320,2006,10/03/2006 05:10:58 AM,41.895532503,-87.624122746,"(41.895532503, -87.624122746)" -5197593,HM625128,09/26/2006 10:20:00 PM,079XX S DR MARTIN LUTHER KING JR DR,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0623,006,6,44,18,1180234,1852648,2006,05/22/2007 02:05:56 AM,41.75093032,-87.615103708,"(41.75093032, -87.615103708)" -5015893,HM623252,09/26/2006 04:20:00 AM,028XX W BELLE PLAINE AVE,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",STREET,false,false,1724,017,33,16,07,1156405,1927149,2006,09/30/2006 05:45:54 AM,41.955882029,-87.7004129,"(41.955882029, -87.7004129)" -5012884,HM622766,09/24/2006 07:55:00 PM,026XX W 61ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0825,008,15,66,08B,1160028,1864153,2006,10/01/2006 07:25:21 AM,41.782940726,-87.688832681,"(41.782940726, -87.688832681)" -5009739,HM618402,09/23/2006 01:00:00 PM,0000X E CHICAGO AVE,0560,ASSAULT,SIMPLE,STREET,true,false,1833,018,42,8,08A,1176470,1905774,2006,09/26/2006 04:49:47 AM,41.896797946,-87.627296947,"(41.896797946, -87.627296947)" -5009515,HM617140,09/22/2006 06:30:00 PM,008XX N KILDARE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1111,011,37,23,14,1147511,1905472,2006,10/10/2006 11:20:40 AM,41.896573921,-87.733666841,"(41.896573921, -87.733666841)" -5010804,HM621370,09/22/2006 06:00:00 AM,038XX S IRON ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0922,009,11,59,06,1167858,1879153,2006,12/04/2014 12:43:35 PM,41.823937779,-87.659694366,"(41.823937779, -87.659694366)" -5007013,HM616520,09/22/2006 05:45:00 AM,002XX S MICHIGAN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0123,001,42,32,06,1177288,1899300,2006,12/04/2014 12:43:35 PM,41.879014445,-87.624489022,"(41.879014445, -87.624489022)" -5007976,HM616328,09/22/2006 01:00:00 AM,041XX W 28TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1031,010,22,30,07,1148871,1885090,2006,10/10/2006 11:20:40 AM,41.840617107,-87.729198597,"(41.840617107, -87.729198597)" -5026994,HM635947,09/20/2006 11:26:00 AM,111XX S MICHIGAN AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,ATM (AUTOMATIC TELLER MACHINE),false,false,0531,005,9,49,11,1178836,1830869,2006,10/20/2006 06:42:46 AM,41.691197839,-87.620887093,"(41.691197839, -87.620887093)" -5012825,HM622349,09/19/2006 12:00:00 PM,026XX W SUPERIOR ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1313,012,26,24,06,1158843,1904937,2006,12/04/2014 12:43:35 PM,41.894880948,-87.692060913,"(41.894880948, -87.692060913)" -5174897,HM609806,09/19/2006 02:00:00 AM,045XX N RAVENSWOOD AVE,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,STREET,true,false,1922,019,47,4,18,1163363,1930259,2006,05/22/2007 02:05:56 AM,41.964272148,-87.674745843,"(41.964272148, -87.674745843)" -5174325,HM609583,09/18/2006 10:05:50 PM,019XX N HARDING AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2535,025,30,20,16,1149689,1912893,2006,05/22/2007 02:05:56 AM,41.916895823,-87.725474214,"(41.916895823, -87.725474214)" -4995625,HM606761,09/17/2006 12:00:00 AM,061XX S EBERHART AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0313,003,20,42,14,1180680,1864244,2006,09/20/2006 04:13:37 AM,41.78274071,-87.613113545,"(41.78274071, -87.613113545)" -5001215,HM604755,09/16/2006 11:18:00 AM,010XX N SPRINGFIELD AVE,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,RESIDENCE,false,true,1112,011,27,23,04B,1150224,1906990,2006,10/12/2006 05:28:35 AM,41.900687,-87.723662765,"(41.900687, -87.723662765)" -4994136,HM602712,09/15/2006 12:50:00 PM,038XX W NORTH AVE,1330,CRIMINAL TRESPASS,TO LAND,SMALL RETAIL STORE,true,false,2535,025,30,23,26,1150266,1910314,2006,09/18/2006 04:34:02 AM,41.909807562,-87.723421686,"(41.909807562, -87.723421686)" -4991695,HM602020,09/15/2006 01:10:00 AM,079XX S WINCHESTER AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0611,006,18,71,08A,1164700,1851950,2006,05/13/2009 01:04:22 AM,41.749356647,-87.672047564,"(41.749356647, -87.672047564)" -5103768,HM600770,09/14/2006 01:55:00 PM,070XX S EGGLESTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0732,007,6,68,18,1174538,1858172,2006,11/18/2006 05:07:44 AM,41.766217424,-87.6358124,"(41.766217424, -87.6358124)" -4987512,HM597453,09/12/2006 07:02:44 PM,050XX W MADISON ST,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,1533,015,28,25,26,1142881,1899515,2006,09/16/2006 04:37:42 AM,41.880314743,-87.750820746,"(41.880314743, -87.750820746)" -5147789,HM597066,09/12/2006 11:13:19 AM,080XX S EBERHART AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0631,006,6,44,18,1181019,1851472,2006,05/29/2007 01:47:17 AM,41.747685228,-87.612263224,"(41.747685228, -87.612263224)" -4982954,HM594578,09/11/2006 12:15:00 PM,024XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0134,001,3,33,26,1176654,1888386,2006,09/14/2006 04:31:21 AM,41.849080069,-87.62714657,"(41.849080069, -87.62714657)" -5148191,HM593317,09/10/2006 04:40:00 PM,119XX S PERRY AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0522,005,9,53,18,1177683,1825981,2006,01/23/2007 06:13:38 AM,41.677810527,-87.625255393,"(41.677810527, -87.625255393)" -4979649,HM593029,09/10/2006 01:10:00 PM,038XX W GEORGE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2523,025,30,21,18,1150523,1918973,2006,06/11/2007 03:52:33 PM,41.933563615,-87.722250892,"(41.933563615, -87.722250892)" -5162252,HM589983,09/08/2006 08:25:00 PM,064XX S DR MARTIN LUTHER KING JR DR,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,0312,003,20,69,18,1179983,1862561,2006,05/15/2007 06:10:18 AM,41.778138385,-87.615720429,"(41.778138385, -87.615720429)" -4984869,HM587739,09/07/2006 07:15:00 AM,019XX W LARCHMONT AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1923,019,47,5,05,1162724,1926195,2006,10/12/2006 05:28:35 AM,41.953133792,-87.677209666,"(41.953133792, -87.677209666)" -4972805,HM586416,09/07/2006 04:00:00 AM,056XX S MC VICKER AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0811,008,23,56,06,1137049,1866434,2006,12/04/2014 12:43:35 PM,41.789641952,-87.773027898,"(41.789641952, -87.773027898)" -4972886,HM586132,09/06/2006 11:45:00 PM,029XX W WARREN BLVD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1331,012,2,27,08B,1156753,1900171,2006,09/27/2006 04:44:36 AM,41.881845206,-87.699866157,"(41.881845206, -87.699866157)" -5171088,HM585943,09/06/2006 09:46:33 PM,031XX N MONTICELLO AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,STREET,true,false,2523,025,35,21,26,1151482,1920562,2006,05/22/2007 02:05:56 AM,41.937905149,-87.718684728,"(41.937905149, -87.718684728)" -5160228,HM583864,09/05/2006 09:09:30 PM,006XX W DIVISION ST,2027,NARCOTICS,POSS: CRACK,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1822,018,27,8,18,1171482,1908281,2006,05/15/2007 06:10:18 AM,41.903788476,-87.645543079,"(41.903788476, -87.645543079)" -4969802,HM582846,09/05/2006 01:00:00 PM,079XX S ASHLAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0611,006,21,71,08B,1167009,1852265,2006,09/12/2006 04:52:48 AM,41.750172042,-87.66357746,"(41.750172042, -87.66357746)" -4967769,HM580881,09/04/2006 12:06:22 PM,023XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0134,001,3,33,26,1176644,1888767,2006,09/13/2006 04:50:05 AM,41.850125786,-87.627171772,"(41.850125786, -87.627171772)" -4969084,HM580769,09/04/2006 10:50:00 AM,027XX W 25TH ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,1034,010,12,30,26,1158598,1887335,2006,09/09/2006 04:19:56 AM,41.846584344,-87.693442651,"(41.846584344, -87.693442651)" -4965340,HM576838,09/02/2006 05:06:06 AM,0000X W 69TH ST,0460,BATTERY,SIMPLE,CTA PLATFORM,true,false,0731,007,6,69,08B,1177312,1859236,2006,09/09/2006 04:19:56 AM,41.769074977,-87.62561266,"(41.769074977, -87.62561266)" -4968561,HM576509,09/02/2006 12:20:00 AM,111XX S ASHLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2234,022,34,75,14,1167273,1830397,2006,05/18/2007 06:17:05 PM,41.690157233,-87.663233777,"(41.690157233, -87.663233777)" -5159427,HM576021,09/01/2006 06:30:00 PM,041XX S WENTWORTH AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0935,009,3,37,18,1175586,1877131,2006,05/15/2007 06:10:18 AM,41.818219464,-87.631403736,"(41.818219464, -87.631403736)" -4963505,HM575803,09/01/2006 07:00:00 AM,054XX S NORDICA AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,0811,008,23,56,14,1130342,1867463,2006,09/18/2006 04:34:02 AM,41.792583037,-87.797597522,"(41.792583037, -87.797597522)" -4961558,HM574629,09/01/2006 01:30:00 AM,021XX N LAMON AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2522,025,31,19,26,1143328,1914109,2006,09/12/2006 04:52:48 AM,41.920353993,-87.748814273,"(41.920353993, -87.748814273)" -4959805,HM572188,08/30/2006 08:30:00 PM,019XX W MONTEREY AVE,4510,OTHER OFFENSE,PROBATION VIOLATION,POLICE FACILITY/VEH PARKING LOT,true,false,2212,022,19,75,26,1165808,1830858,2006,09/02/2006 04:14:01 AM,41.691453444,-87.668584188,"(41.691453444, -87.668584188)" -4959036,HM572112,08/30/2006 07:40:00 PM,012XX N SPRINGFIELD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2535,025,27,23,18,1150112,1908067,2006,06/11/2007 03:52:33 PM,41.903644579,-87.724046055,"(41.903644579, -87.724046055)" -4977031,HM571652,08/30/2006 03:35:00 PM,085XX S COTTAGE GROVE AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0632,006,6,44,06,1183014,1848447,2006,09/11/2006 04:23:45 AM,41.739338188,-87.605046822,"(41.739338188, -87.605046822)" -4959838,HM571126,08/30/2006 11:12:00 AM,107XX S HALSTED ST,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,true,false,2233,022,34,75,08B,1172840,1833829,2006,09/02/2006 04:14:01 AM,41.699454527,-87.642752065,"(41.699454527, -87.642752065)" -4964231,HM575212,08/29/2006 11:30:00 PM,022XX E 71ST ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0331,003,5,43,06,1192410,1858392,2006,12/04/2014 12:43:35 PM,41.766404738,-87.570298886,"(41.766404738, -87.570298886)" -4971760,HM584932,08/28/2006 09:00:00 AM,103XX S DR MARTIN LUTHER KING JR DR,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,0512,005,9,49,11,1180782,1836344,2006,09/12/2006 04:52:48 AM,41.706177595,-87.613595152,"(41.706177595, -87.613595152)" -4962793,HM566413,08/28/2006 02:00:00 AM,0000X N HAMLIN BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1122,011,28,26,08B,1151025,1899824,2006,09/12/2006 04:52:48 AM,41.881007096,-87.720908487,"(41.881007096, -87.720908487)" -4950226,HM564388,08/26/2006 07:00:00 PM,025XX W DEVON AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2412,024,50,2,06,1158456,1942438,2006,12/04/2014 12:43:35 PM,41.997793958,-87.692452435,"(41.997793958, -87.692452435)" -4965020,HM576678,08/26/2006 05:00:00 AM,127XX S HALSTED ST,0810,THEFT,OVER $500,SIDEWALK,false,false,0523,005,34,53,06,1173359,1820326,2006,12/04/2014 12:43:35 PM,41.662388692,-87.641248875,"(41.662388692, -87.641248875)" -5125270,HM562869,08/26/2006 03:33:00 AM,034XX W 26TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1032,010,22,30,18,1153818,1886476,2006,02/10/2007 06:09:10 AM,41.84432354,-87.711008002,"(41.84432354, -87.711008002)" -4950544,HM563788,08/25/2006 09:00:00 PM,056XX S FRANCISCO AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0824,008,16,63,07,1158048,1867018,2006,11/22/2006 05:48:53 AM,41.790843184,-87.696014174,"(41.790843184, -87.696014174)" -4947130,HM560656,08/24/2006 10:30:00 PM,101XX S MORGAN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2232,022,34,73,08B,1171475,1837703,2006,08/31/2006 05:15:08 AM,41.710115302,-87.647637148,"(41.710115302, -87.647637148)" -4944200,HM556039,08/22/2006 01:00:00 PM,085XX S KILBOURN AVE,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,RESIDENCE,false,true,0834,008,18,70,20,1147963,1847295,2006,06/02/2010 10:34:17 AM,41.736919108,-87.73349828,"(41.736919108, -87.73349828)" -4939886,HM553500,08/21/2006 02:30:00 PM,001XX W CERMAK RD,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,SIDEWALK,true,false,2111,009,25,34,08B,1175439,1889713,2006,08/27/2006 04:05:44 AM,41.852748786,-87.6315659,"(41.852748786, -87.6315659)" -4950002,HM561343,08/20/2006 11:00:00 PM,131XX S CORLISS AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,CHA APARTMENT,false,false,0533,005,9,54,11,1184051,1818196,2006,08/31/2006 05:15:08 AM,41.656301396,-87.602188339,"(41.656301396, -87.602188339)" -4935961,HM551529,08/19/2006 09:00:00 PM,086XX S BENNETT AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0412,004,8,45,05,1190393,1848080,2006,09/11/2006 04:23:45 AM,41.738156565,-87.578023625,"(41.738156565, -87.578023625)" -4936974,HM550167,08/19/2006 02:30:00 AM,095XX S GREEN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE,false,false,2223,022,21,73,14,1172295,1841209,2006,08/24/2006 04:55:25 AM,41.719718321,-87.644531457,"(41.719718321, -87.644531457)" -5102050,HM547804,08/18/2006 03:19:11 PM,039XX W JACKSON BLVD,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1122,011,28,26,18,1149855,1898428,2006,01/13/2007 05:03:08 AM,41.877199146,-87.725241001,"(41.877199146, -87.725241001)" -4932814,HM547411,08/17/2006 05:00:00 PM,019XX W NORWOOD ST,0810,THEFT,OVER $500,STREET,false,false,2413,024,40,2,06,1162389,1940365,2006,12/04/2014 12:43:35 PM,41.992023894,-87.678042707,"(41.992023894, -87.678042707)" -4941836,HM551784,08/17/2006 02:30:00 PM,034XX W 84TH ST,0810,THEFT,OVER $500,RESIDENCE-GARAGE,false,false,0834,008,18,70,06,1154692,1848709,2006,12/04/2014 12:43:35 PM,41.740668021,-87.708807398,"(41.740668021, -87.708807398)" -5096332,HM542313,08/15/2006 06:18:03 PM,019XX S TROY ST,1661,GAMBLING,GAME/DICE,STREET,true,false,1022,010,24,29,19,1155625,1890286,2006,01/13/2007 05:03:08 AM,41.854742494,-87.704274157,"(41.854742494, -87.704274157)" -4928771,HM542131,08/15/2006 02:45:00 PM,058XX S WOOD ST,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,0715,007,15,67,08B,1165393,1865758,2006,08/26/2006 05:22:07 AM,41.787233016,-87.669117382,"(41.787233016, -87.669117382)" -4926374,HM540892,08/15/2006 12:30:00 AM,002XX W MARQUETTE RD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0722,007,6,68,14,1175474,1860573,2006,06/01/2007 02:14:39 AM,41.772785159,-87.632309909,"(41.772785159, -87.632309909)" -4925396,HM541348,08/14/2006 10:00:00 PM,036XX N MAGNOLIA AVE,0810,THEFT,OVER $500,STREET,false,false,1923,019,44,6,06,1167273,1924180,2006,12/04/2014 12:43:35 PM,41.947507762,-87.660545431,"(41.947507762, -87.660545431)" -4986390,HM598590,08/14/2006 01:50:00 PM,016XX E 71ST ST,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",OTHER,false,false,0332,003,5,43,11,1188678,1858311,2006,09/23/2006 04:42:43 AM,41.766272502,-87.58398041,"(41.766272502, -87.58398041)" -4921756,HM538937,08/14/2006 02:30:00 AM,019XX W RACE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,true,1324,012,1,24,26,1163422,1903806,2006,08/22/2006 04:57:03 AM,41.89168225,-87.675275363,"(41.89168225, -87.675275363)" -4922117,HM538003,08/13/2006 03:45:00 PM,026XX N NARRAGANSETT AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,2512,025,36,19,06,1133254,1916911,2006,12/04/2014 12:43:35 PM,41.928225472,-87.785762931,"(41.928225472, -87.785762931)" -4920082,HM535370,08/11/2006 07:30:00 PM,082XX S SOUTH SHORE DR,0820,THEFT,$500 AND UNDER,STREET,false,false,0424,004,7,46,06,1198538,1851061,2006,12/04/2014 12:43:35 PM,41.746136613,-87.548083265,"(41.746136613, -87.548083265)" -5094552,HM534305,08/11/2006 06:02:29 PM,049XX S JUSTINE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0931,009,20,61,18,1166887,1871649,2006,12/02/2006 04:50:35 AM,41.803366816,-87.663471225,"(41.803366816, -87.663471225)" -4924082,HM532898,08/11/2006 12:50:00 AM,068XX S RIDGELAND AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0332,003,5,43,26,1189089,1859840,2006,08/18/2006 04:56:43 AM,41.77045837,-87.582425041,"(41.77045837, -87.582425041)" -5148599,HM531738,08/10/2006 01:00:00 PM,112XX S MICHIGAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0531,005,9,49,18,1178839,1830689,2006,12/20/2006 06:24:03 AM,41.690703825,-87.62088156,"(41.690703825, -87.62088156)" -4919317,HM531391,08/10/2006 05:00:00 AM,080XX S DR MARTIN LUTHER KING JR DR,0820,THEFT,$500 AND UNDER,STREET,false,false,0623,006,6,44,06,1180250,1851983,2006,12/04/2014 12:43:35 PM,41.749105119,-87.615065419,"(41.749105119, -87.615065419)" -4914630,HM531052,08/10/2006 12:00:00 AM,013XX W ARGYLE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2033,020,48,3,14,1166321,1933360,2006,08/12/2006 04:03:08 AM,41.972718499,-87.663781069,"(41.972718499, -87.663781069)" -4915431,HM530439,08/09/2006 07:25:00 PM,017XX W DIVISION ST,1570,SEX OFFENSE,PUBLIC INDECENCY,RESIDENCE,false,false,1322,012,1,24,17,1164750,1908010,2006,08/16/2006 04:03:39 AM,41.903190283,-87.670278913,"(41.903190283, -87.670278913)" -4915908,HM530118,08/09/2006 05:00:00 PM,085XX S VINCENNES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0622,006,21,71,14,1173071,1848113,2006,08/13/2006 04:49:32 AM,41.738646776,-87.641485946,"(41.738646776, -87.641485946)" -4953340,HM528814,08/09/2006 12:19:00 AM,0000X N PULASKI RD,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1122,011,28,26,26,1149764,1899891,2006,08/30/2006 04:14:32 AM,41.88121555,-87.725537088,"(41.88121555, -87.725537088)" -4914309,HM527803,08/08/2006 03:20:00 PM,057XX S ADA ST,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,true,0713,007,16,67,06,1168272,1866491,2006,12/04/2014 12:43:35 PM,41.789182937,-87.658540259,"(41.789182937, -87.658540259)" -5063598,HM669693,08/08/2006 12:00:00 PM,038XX W 60TH PL,1120,DECEPTIVE PRACTICE,FORGERY,WAREHOUSE,false,false,0823,008,13,65,10,1151568,1864164,2006,10/25/2006 05:02:56 AM,41.783140734,-87.719849737,"(41.783140734, -87.719849737)" -4919986,HM527213,08/08/2006 09:45:28 AM,126XX S YALE AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,0523,005,9,53,06,1176960,1820928,2006,12/04/2014 12:43:35 PM,41.663960572,-87.628053177,"(41.663960572, -87.628053177)" -4910053,HM526812,08/08/2006 02:42:51 AM,015XX W WASHBURNE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,1231,012,2,28,04B,1166321,1894517,2006,11/15/2006 04:46:56 AM,41.866130995,-87.664894384,"(41.866130995, -87.664894384)" -5089300,HM526500,08/07/2006 10:20:48 PM,050XX S ASHLAND AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0931,009,16,61,18,1166480,1871496,2006,11/21/2006 05:02:11 AM,41.802955661,-87.664968254,"(41.802955661, -87.664968254)" -4908710,HM524149,08/06/2006 08:00:00 PM,056XX S ADA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0713,007,16,67,14,1168250,1867338,2006,05/25/2007 02:27:12 AM,41.791507679,-87.658596552,"(41.791507679, -87.658596552)" -4907387,HM523702,08/06/2006 04:10:00 PM,023XX W LAWRENCE AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,1911,019,47,4,26,1159753,1931780,2006,08/12/2006 04:03:08 AM,41.968521222,-87.687976647,"(41.968521222, -87.687976647)" -5075798,HM521365,08/05/2006 12:10:00 PM,118XX S UNION AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0524,005,34,53,18,1173742,1826268,2006,12/02/2006 04:50:35 AM,41.678686071,-87.639672273,"(41.678686071, -87.639672273)" -5080750,HM520850,08/05/2006 04:06:45 AM,054XX S ALBANY AVE,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,0911,009,14,63,18,1156590,1868627,2006,12/24/2006 06:39:17 AM,41.795288041,-87.701316987,"(41.795288041, -87.701316987)" -4993211,HM603193,08/04/2006 04:39:00 PM,002XX W 87TH ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,OTHER,true,false,0622,006,21,44,11,1176365,1847246,2006,09/18/2006 04:34:02 AM,41.736194317,-87.629443454,"(41.736194317, -87.629443454)" -5146628,HM744431,08/04/2006 01:00:00 PM,016XX S HAMLIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SIDEWALK,false,false,1014,010,24,29,14,1151278,1891710,2006,11/29/2006 06:25:08 AM,41.858736403,-87.720192295,"(41.858736403, -87.720192295)" -4908864,HM519314,08/04/2006 12:57:00 PM,043XX S COTTAGE GROVE AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0222,002,4,38,15,1182283,1876607,2006,08/12/2006 04:03:08 AM,41.816628819,-87.606853443,"(41.816628819, -87.606853443)" -4905566,HM521396,08/03/2006 09:30:00 PM,013XX W PRATT BLVD,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,2432,024,49,1,05,1165980,1945257,2006,08/16/2006 04:03:39 AM,42.005371488,-87.664693432,"(42.005371488, -87.664693432)" -5119780,HM516451,08/03/2006 10:27:10 AM,027XX S DEARBORN ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,false,false,2113,001,3,35,18,1176354,1886614,2006,12/07/2006 06:24:52 AM,41.844224335,-87.62830098,"(41.844224335, -87.62830098)" -4903851,HM519093,08/03/2006 10:00:00 AM,077XX S EGGLESTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0621,006,17,69,26,1174592,1853718,2006,08/12/2006 04:03:08 AM,41.753993914,-87.635746858,"(41.753993914, -87.635746858)" -4912234,HM517019,08/03/2006 01:00:00 AM,006XX W MARQUETTE RD,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0723,007,6,68,05,1172706,1860489,2006,08/27/2006 04:05:44 AM,41.772616119,-87.6424591,"(41.772616119, -87.6424591)" -4946265,HM559701,08/03/2006 12:00:00 AM,089XX S ADA ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2222,022,21,73,06,1168850,1845638,2006,12/04/2014 12:43:35 PM,41.731947097,-87.657022058,"(41.731947097, -87.657022058)" -5014044,HM515011,08/02/2006 02:17:19 PM,085XX S OGLESBY AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0412,004,8,46,18,1193276,1848988,2006,12/02/2006 04:50:35 AM,41.740578278,-87.567431585,"(41.740578278, -87.567431585)" -4902843,HM514115,08/02/2006 01:14:04 AM,073XX S HERMITAGE AVE,031A,ROBBERY,ARMED: HANDGUN,PARK PROPERTY,false,false,0735,007,17,67,03,1165907,1856219,2006,08/20/2006 04:35:28 AM,41.761045839,-87.667503552,"(41.761045839, -87.667503552)" -4901016,HM513926,08/01/2006 09:20:00 PM,077XX S WINCHESTER AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,0611,006,18,71,26,1164662,1853314,2006,08/05/2006 04:48:25 AM,41.753100461,-87.672148402,"(41.753100461, -87.672148402)" -5092943,HM513867,08/01/2006 09:05:24 PM,007XX W 59TH ST,2017,NARCOTICS,MANU/DELIVER:CRACK,APARTMENT,true,false,0711,007,20,68,18,1172454,1865708,2006,01/27/2007 07:34:41 AM,41.786943204,-87.643229324,"(41.786943204, -87.643229324)" -4899757,HM513793,08/01/2006 08:45:00 PM,021XX W CULLERTON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1223,012,25,31,14,1162563,1890350,2006,08/05/2006 04:48:25 AM,41.854775815,-87.678806907,"(41.854775815, -87.678806907)" -4896142,HM509780,07/31/2006 01:00:00 AM,045XX N KENNETH AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1722,017,45,16,14,1145604,1929800,2006,08/05/2006 04:48:25 AM,41.963368618,-87.740052711,"(41.963368618, -87.740052711)" -5080492,HM509621,07/30/2006 09:38:16 PM,010XX W HOLLYWOOD AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2022,020,48,77,16,1168044,1938069,2006,01/23/2007 06:13:38 AM,41.985602995,-87.657308632,"(41.985602995, -87.657308632)" -5077801,HM508953,07/30/2006 03:28:20 PM,045XX W GLADYS AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1131,011,24,26,18,1146223,1897930,2006,12/24/2006 06:39:17 AM,41.875902414,-87.738589472,"(41.875902414, -87.738589472)" -4892584,HM507685,07/29/2006 02:00:00 PM,001XX N ASHLAND AVE,0937,MOTOR VEHICLE THEFT,"THEFT/RECOVERY: CYCLE, SCOOTER, BIKE W-VIN",STREET,true,false,1333,012,27,28,07,1165688,1901005,2006,08/02/2006 04:53:53 AM,41.883948103,-87.667033276,"(41.883948103, -87.667033276)" -4891305,HM504818,07/28/2006 09:30:00 AM,058XX N SHERIDAN RD,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,true,false,2022,020,48,77,06,1168618,1938903,2006,08/05/2006 04:48:25 AM,41.987879058,-87.655173219,"(41.987879058, -87.655173219)" -4890951,HM505352,07/28/2006 07:00:00 AM,0000X E GRAND AVE,0890,THEFT,FROM BUILDING,PARKING LOT/GARAGE(NON.RESID.),false,false,1834,018,42,8,06,1176869,1903879,2006,08/02/2006 04:53:53 AM,41.891588953,-87.62588889,"(41.891588953, -87.62588889)" -5074971,HM501457,07/26/2006 09:20:00 PM,042XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1115,011,28,26,16,1148308,1899719,2006,12/24/2006 06:39:17 AM,41.880771734,-87.730887921,"(41.880771734, -87.730887921)" -4887612,HM500884,07/26/2006 03:00:00 PM,007XX S STATE ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0132,001,2,32,06,1176431,1897043,2006,12/04/2014 12:43:35 PM,41.872840483,-87.627703866,"(41.872840483, -87.627703866)" -4897046,HM499381,07/25/2006 11:30:00 PM,058XX S BISHOP ST,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,true,false,0713,007,16,67,04A,1167616,1866249,2006,08/16/2006 04:03:39 AM,41.788532964,-87.660952535,"(41.788532964, -87.660952535)" -4889939,HM497224,07/25/2006 01:20:00 AM,052XX W LE MOYNE ST,0460,BATTERY,SIMPLE,STREET,false,false,2532,025,37,25,08B,1141251,1909436,2006,08/05/2006 04:48:25 AM,41.90756936,-87.756561127,"(41.90756936, -87.756561127)" -4882390,HM497233,07/25/2006 01:00:00 AM,033XX W OGDEN AVE,1360,CRIMINAL TRESPASS,TO VEHICLE,POLICE FACILITY/VEH PARKING LOT,true,false,1024,010,24,29,26,1154500,1890985,2006,07/27/2006 05:41:42 AM,41.856683172,-87.708384737,"(41.856683172, -87.708384737)" -4883275,HM497254,07/24/2006 11:00:00 PM,057XX S NORDICA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0811,008,23,56,08B,1130411,1865475,2006,08/02/2006 04:53:53 AM,41.78712641,-87.797389945,"(41.78712641, -87.797389945)" -4882198,HM496824,07/24/2006 08:34:05 PM,029XX W BRYN MAWR AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,ALLEY,false,false,2011,020,40,2,24,1155573,1937102,2006,07/27/2006 05:41:42 AM,41.983210446,-87.703202418,"(41.983210446, -87.703202418)" -4879930,HM493593,07/23/2006 10:40:00 AM,113XX S EGGLESTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2233,022,34,49,08B,1175357,1829813,2006,07/27/2006 05:41:42 AM,41.688378269,-87.633655387,"(41.688378269, -87.633655387)" -4879680,HM494610,07/22/2006 08:00:00 AM,036XX W DIVERSEY AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,2523,025,35,21,06,1151460,1918409,2006,12/04/2014 12:43:35 PM,41.931997574,-87.7188223,"(41.931997574, -87.7188223)" -4881654,HM495542,07/21/2006 07:00:00 PM,079XX S KEDZIE AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,0834,008,18,70,06,1156378,1852016,2006,08/02/2006 04:53:53 AM,41.749709229,-87.70254117,"(41.749709229, -87.70254117)" -4880903,HM489871,07/21/2006 02:26:43 PM,080XX S HERMITAGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,false,0611,006,21,71,14,1166123,1851157,2006,07/27/2006 05:41:42 AM,41.747150411,-87.666855617,"(41.747150411, -87.666855617)" -4929773,HM486593,07/19/2006 08:00:00 PM,011XX N LAWNDALE AVE,0460,BATTERY,SIMPLE,STREET,false,false,1112,011,27,23,08B,1151468,1907145,2006,09/07/2006 04:29:35 AM,41.901087984,-87.719089369,"(41.901087984, -87.719089369)" -4871064,HM484644,07/18/2006 11:40:00 PM,011XX E 47TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2123,002,4,39,08B,1184969,1874122,2006,07/29/2006 04:46:09 AM,41.809747066,-87.597078786,"(41.809747066, -87.597078786)" -4882963,HM487490,07/18/2006 10:00:00 PM,081XX S SOUTH SHORE DR,0820,THEFT,$500 AND UNDER,ALLEY,false,false,0422,004,7,46,06,1198607,1851506,2006,12/04/2014 12:43:35 PM,41.747355996,-87.547815554,"(41.747355996, -87.547815554)" -5022089,HM483177,07/18/2006 12:28:00 PM,033XX W MAYPOLE AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,SIDEWALK,true,false,1123,011,28,27,18,1154048,1900822,2006,10/24/2006 05:50:48 AM,41.883685977,-87.709781543,"(41.883685977, -87.709781543)" -4916991,HM531503,07/18/2006 11:50:00 AM,053XX N MILWAUKEE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,1622,016,45,11,07,1137344,1935315,2006,08/13/2006 04:49:32 AM,41.978655194,-87.770289091,"(41.978655194, -87.770289091)" -4877690,HM491495,07/16/2006 01:30:00 PM,006XX E 32ND ST,0810,THEFT,OVER $500,OTHER,false,false,2122,002,4,35,06,1180891,1883645,2006,12/04/2014 12:43:35 PM,41.83597379,-87.611742735,"(41.83597379, -87.611742735)" -4864295,HM477987,07/15/2006 08:40:00 PM,048XX N MARINE DR,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2024,020,48,3,08B,1170055,1932458,2006,07/19/2006 05:15:59 AM,41.970162486,-87.650076954,"(41.970162486, -87.650076954)" -4862433,HM476432,07/14/2006 08:00:00 PM,067XX N WESTERN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2412,024,50,2,07,1159059,1944474,2006,07/19/2006 05:15:59 AM,42.003368407,-87.690177954,"(42.003368407, -87.690177954)" -4857804,HM471848,07/12/2006 10:35:43 PM,013XX W 15TH ST,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,CHA APARTMENT,false,false,1231,012,2,28,14,1167750,1892902,2006,07/26/2006 05:48:20 AM,41.861668647,-87.659694953,"(41.861668647, -87.659694953)" -4861997,HM475788,07/12/2006 10:00:00 AM,113XX S FOREST AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0531,005,9,49,06,1180233,1829651,2006,12/04/2014 12:43:35 PM,41.687823654,-87.615809723,"(41.687823654, -87.615809723)" -4855089,HM469173,07/11/2006 09:00:00 AM,0000X E 25TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2113,001,2,33,14,1177345,1887735,2006,07/24/2006 04:51:03 AM,41.847278058,-87.624630274,"(41.847278058, -87.624630274)" -5013969,HM467237,07/10/2006 07:15:00 PM,030XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1331,012,2,27,18,1156366,1899909,2006,04/06/2007 02:27:04 PM,41.881134082,-87.701294304,"(41.881134082, -87.701294304)" -4857602,HM471637,07/10/2006 04:00:00 PM,114XX S LOOMIS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2234,022,34,75,14,1169086,1828923,2006,07/15/2006 04:07:00 AM,41.686073439,-87.656638699,"(41.686073439, -87.656638699)" -5140368,HM464235,07/09/2006 11:03:00 AM,028XX W FLOURNOY ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,1135,011,2,27,18,1157262,1896940,2006,01/08/2007 09:05:18 AM,41.8729687,-87.698084925,"(41.8729687, -87.698084925)" -4850037,HM464724,07/09/2006 04:00:00 AM,077XX S MARSHFIELD AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0611,006,17,71,26,1166725,1853456,2006,09/30/2006 05:45:54 AM,41.753446374,-87.664584242,"(41.753446374, -87.664584242)" -4848983,HM462918,07/08/2006 03:00:00 PM,030XX W PALMER BLVD,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1414,014,35,22,08A,1155504,1914647,2006,07/13/2006 04:51:06 AM,41.921593856,-87.704062568,"(41.921593856, -87.704062568)" -4849130,HM462378,07/08/2006 11:50:00 AM,024XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0134,001,3,33,26,1176677,1887948,2006,07/11/2006 03:41:17 AM,41.847877647,-87.627075379,"(41.847877647, -87.627075379)" -5488510,HN308130,07/07/2006 10:00:00 AM,085XX S PULASKI RD,1205,DECEPTIVE PRACTICE,"THEFT BY LESSEE,NON-VEH",OTHER,false,false,0834,008,18,70,11,1151185,1847657,2006,11/27/2007 04:21:33 PM,41.73785027,-87.721684272,"(41.73785027, -87.721684272)" -4856280,HM468118,07/07/2006 12:30:00 AM,007XX E 89TH ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0632,006,6,44,06,1182578,1846162,2006,07/14/2006 05:11:24 AM,41.733078002,-87.606714917,"(41.733078002, -87.606714917)" -4846869,HM459417,07/06/2006 10:16:09 PM,058XX W WASHINGTON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1512,015,29,25,08B,1137356,1900190,2006,07/10/2006 03:52:16 AM,41.882268146,-87.77109203,"(41.882268146, -87.77109203)" -4866055,HM459598,07/06/2006 09:00:00 PM,043XX W ADAMS ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1115,011,28,26,08B,1147454,1898617,2006,12/16/2009 01:04:58 AM,41.877764126,-87.734052025,"(41.877764126, -87.734052025)" -4862052,HM475721,07/06/2006 08:30:00 PM,009XX W LELAND AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2312,019,46,3,08B,1169104,1931446,2006,08/14/2006 05:12:46 AM,41.967406286,-87.653603329,"(41.967406286, -87.653603329)" -4845112,HM455056,07/05/2006 12:01:00 AM,039XX W ROOSEVELT RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1011,010,24,29,08B,1150195,1894377,2006,07/14/2006 05:11:24 AM,41.866076122,-87.724098178,"(41.866076122, -87.724098178)" -5001373,HM454459,07/04/2006 05:30:33 PM,003XX E RANDOLPH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,PARK PROPERTY,true,false,0124,001,42,32,18,1178413,1901198,2006,10/24/2006 05:50:48 AM,41.884197085,-87.620300377,"(41.884197085, -87.620300377)" -5001284,HM454392,07/04/2006 04:03:53 PM,013XX S INDEPENDENCE BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1011,010,24,29,18,1151260,1893725,2006,10/24/2006 05:50:48 AM,41.864266152,-87.720205546,"(41.864266152, -87.720205546)" -4840539,HM453139,07/03/2006 10:15:00 PM,005XX W 95TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2223,022,21,73,08B,1174446,1841853,2006,07/09/2006 04:34:06 AM,41.721438051,-87.636633893,"(41.721438051, -87.636633893)" -4839282,HM451798,07/03/2006 10:00:00 AM,009XX W BUENA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2322,019,46,3,14,1168967,1928134,2006,07/05/2006 04:01:36 AM,41.95832103,-87.65420358,"(41.95832103, -87.65420358)" -4839531,HM451920,07/03/2006 04:00:00 AM,0000X W DIVISION ST,0870,THEFT,POCKET-PICKING,BAR OR TAVERN,false,false,1824,018,42,8,06,1175792,1908406,2006,07/06/2006 04:48:17 AM,41.904035566,-87.629707817,"(41.904035566, -87.629707817)" -4839489,HM452152,07/03/2006 12:30:00 AM,078XX S ESSEX AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0421,004,7,43,14,1194184,1853283,2006,07/06/2006 04:48:17 AM,41.752341886,-87.563964126,"(41.752341886, -87.563964126)" -4839786,HM451526,07/02/2006 10:30:00 PM,017XX N ALBANY AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1421,014,26,23,05,1155429,1911199,2006,07/22/2006 04:38:54 AM,41.912133769,-87.704431041,"(41.912133769, -87.704431041)" -4838459,HM450003,07/02/2006 11:14:00 AM,015XX W 54TH ST,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0932,009,16,61,04A,1166956,1868877,2006,08/05/2006 04:48:25 AM,41.795758649,-87.663297414,"(41.795758649, -87.663297414)" -4885310,HM498148,07/01/2006 09:00:00 AM,041XX W FULLERTON AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2524,025,31,20,06,1148615,1915680,2006,12/04/2014 12:43:35 PM,41.924564432,-87.729347996,"(41.924564432, -87.729347996)" -5098922,HM444126,06/29/2006 12:32:38 PM,013XX S HOMAN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1021,010,24,29,18,1153958,1893413,2006,12/02/2006 04:50:35 AM,41.863356687,-87.71030951,"(41.863356687, -87.71030951)" -4830590,HM443120,06/28/2006 08:20:00 PM,036XX W SHAKESPEARE AVE,1661,GAMBLING,GAME/DICE,SIDEWALK,true,false,2525,025,26,22,19,1151612,1914001,2006,06/11/2007 03:52:33 PM,41.919898655,-87.718379891,"(41.919898655, -87.718379891)" -4831364,HM443638,06/28/2006 07:00:00 PM,024XX N KILBOURN AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,2521,025,31,20,06,1145933,1916085,2006,07/01/2006 04:02:09 AM,41.925727207,-87.739192604,"(41.925727207, -87.739192604)" -4977256,HM442587,06/28/2006 04:14:11 PM,049XX W IOWA ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1531,015,37,25,16,1143405,1905490,2006,10/14/2006 06:13:36 AM,41.896701077,-87.748747184,"(41.896701077, -87.748747184)" -4972103,HM440336,06/27/2006 03:30:01 PM,050XX W IOWA ST,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,1531,015,37,25,18,1142714,1905556,2006,10/07/2006 09:43:17 AM,41.89689508,-87.751283498,"(41.89689508, -87.751283498)" -4828773,HM440404,06/27/2006 02:45:00 PM,101XX S WINSTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2213,022,21,73,08B,1169285,1837379,2006,07/06/2006 04:48:17 AM,41.709273772,-87.655666637,"(41.709273772, -87.655666637)" -4826600,HM439189,06/26/2006 07:10:00 PM,075XX S STONY ISLAND AVE,0460,BATTERY,SIMPLE,HOSPITAL BUILDING/GROUNDS,false,false,0411,004,8,43,08B,1188271,1855208,2006,07/01/2006 04:02:09 AM,41.757767317,-87.585571058,"(41.757767317, -87.585571058)" -4873951,HM439722,06/26/2006 07:00:00 PM,010XX N CALIFORNIA AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1311,012,26,24,06,1157498,1906724,2006,12/04/2014 12:43:35 PM,41.899812113,-87.696952062,"(41.899812113, -87.696952062)" -4824516,HM436988,06/25/2006 03:00:00 PM,064XX S SANGAMON ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0723,007,16,68,04B,1171046,1861978,2006,06/30/2006 04:03:48 AM,41.776738546,-87.648500726,"(41.776738546, -87.648500726)" -4819858,HM431146,06/22/2006 08:00:00 PM,053XX S WOODLAWN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,false,2131,002,4,41,14,1185166,1870125,2006,06/26/2006 04:02:24 AM,41.798774366,-87.596481915,"(41.798774366, -87.596481915)" -4833811,HM438269,06/22/2006 05:00:00 PM,034XX W 87TH ST,0810,THEFT,OVER $500,CEMETARY,false,false,0834,008,18,70,06,1155156,1846726,2006,12/04/2014 12:43:35 PM,41.73521708,-87.707160191,"(41.73521708, -87.707160191)" -4818390,HM430894,06/22/2006 12:00:00 PM,040XX S KEDZIE AVE,0460,BATTERY,SIMPLE,APARTMENT,false,false,0912,009,14,58,08B,1155715,1877563,2006,07/27/2006 05:41:42 AM,41.819827239,-87.704285815,"(41.819827239, -87.704285815)" -4957909,HM427101,06/20/2006 11:59:57 PM,042XX W MAYPOLE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1114,011,28,26,18,1147750,1901068,2006,09/23/2006 04:42:43 AM,41.884484274,-87.732902215,"(41.884484274, -87.732902215)" -4830276,HM424798,06/19/2006 09:18:16 PM,003XX E 47TH ST,0560,ASSAULT,SIMPLE,CTA PLATFORM,true,false,0222,002,3,38,08A,1179017,1873965,2006,07/02/2006 04:30:55 AM,41.809454094,-87.618914359,"(41.809454094, -87.618914359)" -4811190,HM424657,06/19/2006 08:11:07 PM,013XX W 108TH PL,0460,BATTERY,SIMPLE,RESIDENCE,false,true,2234,022,34,75,08B,1169311,1832774,2006,06/24/2006 03:34:29 AM,41.696636361,-87.655704116,"(41.696636361, -87.655704116)" -4821282,HM423892,06/19/2006 02:20:20 PM,055XX W GLADYS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1522,015,29,25,08B,1139195,1897825,2006,08/07/2006 05:46:13 AM,41.875745017,-87.764396677,"(41.875745017, -87.764396677)" -4825948,HM428832,06/19/2006 12:01:00 AM,033XX W DIVISION ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,ALLEY,false,false,1422,014,26,23,07,1153851,1907824,2006,06/29/2006 04:05:20 AM,41.902904069,-87.710318249,"(41.902904069, -87.710318249)" -4808622,HM422851,06/19/2006 12:00:00 AM,037XX W DIVISION ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1112,011,27,23,08B,1151080,1907697,2006,06/29/2006 04:05:20 AM,41.902610341,-87.720500051,"(41.902610341, -87.720500051)" -4810040,HM424068,06/19/2006 12:00:00 AM,057XX S THROOP ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0713,007,16,67,07,1168593,1866903,2006,06/21/2006 04:12:51 AM,41.790306594,-87.65735138,"(41.790306594, -87.65735138)" -4808672,HM422945,06/18/2006 01:00:00 PM,023XX N KENNETH AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2522,025,31,20,05,1146285,1915390,2006,10/26/2007 01:04:16 AM,41.92381336,-87.737916901,"(41.92381336, -87.737916901)" -4831808,HM421367,06/18/2006 03:00:00 AM,036XX S INDIANA AVE,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,true,false,0211,002,3,35,03,1178158,1880860,2006,07/07/2006 04:46:09 AM,41.8283941,-87.621855594,"(41.8283941, -87.621855594)" -4807259,HM421065,06/18/2006 01:15:00 AM,034XX W 73RD ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0831,008,18,66,08B,1154645,1856029,2006,06/20/2006 03:50:51 AM,41.760756242,-87.708784923,"(41.760756242, -87.708784923)" -4827510,HM423964,06/17/2006 07:00:00 PM,036XX S PRAIRIE AVE,0810,THEFT,OVER $500,OTHER,false,false,0211,002,2,35,06,1178576,1880609,2006,12/04/2014 12:43:35 PM,41.827695827,-87.620329646,"(41.827695827, -87.620329646)" -4807308,HM420308,06/17/2006 05:20:00 PM,019XX W GARFIELD BLVD,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,false,false,0715,007,15,67,03,1164353,1868017,2006,06/29/2006 04:05:20 AM,41.793453981,-87.672866984,"(41.793453981, -87.672866984)" -4808589,HM419341,06/17/2006 04:30:00 AM,004XX E RANDOLPH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0124,001,42,32,04B,1179262,1901369,2006,07/18/2006 04:10:42 AM,41.884646917,-87.617177553,"(41.884646917, -87.617177553)" -4810135,HM424167,06/16/2006 09:00:00 PM,050XX W 50TH ST,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,PARK PROPERTY,false,false,0814,008,23,56,14,1143734,1871049,2006,06/21/2006 04:12:51 AM,41.802184096,-87.748400437,"(41.802184096, -87.748400437)" -5109514,HM418592,06/16/2006 07:35:36 PM,028XX N BROADWAY,0820,THEFT,$500 AND UNDER,STREET,false,false,2333,019,44,6,06,1171609,1919192,2006,12/04/2014 12:43:35 PM,41.933725998,-87.64475478,"(41.933725998, -87.64475478)" -4804980,HM418588,06/16/2006 03:30:00 PM,010XX W LAWRENCE AVE,0560,ASSAULT,SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,false,2024,020,46,3,08A,1168525,1932090,2006,07/10/2006 03:52:16 AM,41.969186027,-87.655713508,"(41.969186027, -87.655713508)" -4809440,HM417904,06/16/2006 01:30:00 PM,101XX S LAFAYETTE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0511,005,9,49,14,1177759,1837440,2006,06/22/2006 03:55:52 AM,41.70925397,-87.624632109,"(41.70925397, -87.624632109)" -4805171,HM417761,06/16/2006 10:05:00 AM,035XX N JANSSEN AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,true,false,1923,019,44,6,05,1166046,1923753,2006,08/12/2006 04:03:08 AM,41.946362394,-87.665067792,"(41.946362394, -87.665067792)" -4805286,HM419400,06/15/2006 06:00:00 PM,014XX W ROSEMONT AVE,0810,THEFT,OVER $500,RESIDENCE PORCH/HALLWAY,false,false,2433,024,40,77,06,1165523,1942034,2006,12/04/2014 12:43:35 PM,41.996537288,-87.666467117,"(41.996537288, -87.666467117)" -4809399,HM414806,06/14/2006 11:50:54 PM,016XX E 67TH ST,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,false,false,0332,003,5,43,26,1188389,1860846,2006,06/24/2006 03:34:29 AM,41.77323566,-87.584958835,"(41.77323566, -87.584958835)" -4800324,HM413997,06/14/2006 05:00:00 PM,033XX W CRYSTAL ST,1570,SEX OFFENSE,PUBLIC INDECENCY,ALLEY,true,false,1422,014,26,23,17,1153738,1908158,2006,06/16/2006 04:00:38 AM,41.903822848,-87.710724417,"(41.903822848, -87.710724417)" -4799157,HM412933,06/14/2006 06:30:00 AM,020XX N LAMON AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,2522,025,31,19,26,1143425,1913273,2006,01/30/2007 06:41:08 AM,41.918058107,-87.748478821,"(41.918058107, -87.748478821)" -4803885,HM412607,06/13/2006 10:54:00 PM,071XX S HONORE ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0735,007,17,67,08B,1165298,1857149,2006,06/25/2006 04:27:37 AM,41.763610801,-87.669709288,"(41.763610801, -87.669709288)" -4947579,HM412545,06/13/2006 10:43:27 PM,004XX W 116TH ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0522,005,34,53,18,1175261,1828024,2006,09/23/2006 04:42:43 AM,41.683471117,-87.634059997,"(41.683471117, -87.634059997)" -4805468,HM412121,06/13/2006 06:07:17 PM,027XX N AVERS AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,PARK PROPERTY,true,false,2524,025,30,22,26,1150207,1918041,2006,06/19/2006 03:39:37 AM,41.931012303,-87.723436549,"(41.931012303, -87.723436549)" -4933670,HM411442,06/13/2006 02:04:08 PM,025XX W 71ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0832,008,18,66,18,1160569,1857446,2006,09/12/2006 04:52:48 AM,41.764524622,-87.687033988,"(41.764524622, -87.687033988)" -4796590,HM410309,06/12/2006 03:00:00 AM,003XX E 68TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0322,003,20,69,14,1179491,1859957,2006,06/15/2006 04:27:30 AM,41.771003996,-87.617603554,"(41.771003996, -87.617603554)" -4792942,HM407169,06/11/2006 10:00:00 AM,011XX N SPRINGFIELD AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,1112,011,27,23,08A,1150137,1907285,2006,06/16/2006 04:00:38 AM,41.901498205,-87.723974627,"(41.901498205, -87.723974627)" -4936403,HM406734,06/11/2006 01:39:50 AM,039XX N CLARENDON AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2323,019,46,6,18,1170250,1926516,2006,08/26/2006 05:22:07 AM,41.953853186,-87.649534294,"(41.953853186, -87.649534294)" -4792502,HM406072,06/10/2006 06:10:00 PM,034XX W OHIO ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1121,011,27,23,14,1153130,1903742,2006,06/13/2006 03:45:29 AM,41.891717006,-87.713075032,"(41.891717006, -87.713075032)" -6233877,HM404147,06/09/2006 06:54:58 PM,081XX S ASHLAND AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,true,false,0614,,21,71,26,,,2006,05/18/2008 01:04:57 AM,,, -4792606,HM403740,06/09/2006 01:30:00 PM,001XX W 79TH ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,0623,006,17,69,06,1176736,1852645,2006,06/13/2006 03:45:29 AM,41.751001502,-87.6279221,"(41.751001502, -87.6279221)" -4790499,HM403387,06/09/2006 08:30:00 AM,033XX W BELMONT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,1412,014,35,21,14,1153584,1921044,2006,06/14/2006 04:14:16 AM,41.939186177,-87.710946562,"(41.939186177, -87.710946562)" -4813544,HM422152,06/09/2006 12:01:00 AM,006XX S KARLOV AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE PORCH/HALLWAY,false,false,1132,011,24,26,14,1149114,1896802,2006,06/23/2006 03:55:49 AM,41.87275159,-87.72800387,"(41.87275159, -87.72800387)" -4947509,HM402261,06/08/2006 09:00:00 PM,046XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,25,16,1145566,1899578,2006,09/09/2006 04:19:56 AM,41.880437191,-87.740960003,"(41.880437191, -87.740960003)" -4788410,HM401563,06/08/2006 03:30:00 AM,130XX S BRANDON AVE,2830,OTHER OFFENSE,OBSCENE TELEPHONE CALLS,RESIDENCE,false,false,0433,004,10,55,17,1199386,1819041,2006,06/10/2006 03:42:52 AM,41.658249536,-87.546048638,"(41.658249536, -87.546048638)" -4792172,HM398922,06/07/2006 11:10:00 AM,011XX N NOBLE ST,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,1323,012,27,24,26,1166883,1907620,2006,06/13/2006 03:45:29 AM,41.90207459,-87.662455202,"(41.90207459, -87.662455202)" -4786682,HM399347,06/07/2006 02:00:00 AM,086XX S COLFAX AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,RESIDENCE,true,true,0423,004,7,46,04B,1194950,1848315,2006,06/12/2006 03:33:56 AM,41.738690462,-87.561320459,"(41.738690462, -87.561320459)" -4780073,HM393338,06/04/2006 04:30:00 PM,071XX N SHERIDAN RD,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,2423,024,49,1,04B,1166468,1947618,2006,06/13/2006 03:45:29 AM,42.011839637,-87.662830019,"(42.011839637, -87.662830019)" -4777701,HM391821,06/03/2006 06:45:00 PM,098XX S PRAIRIE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0511,005,6,49,06,1179695,1839725,2006,12/04/2014 12:43:35 PM,41.715480368,-87.617472725,"(41.715480368, -87.617472725)" -5271613,HM391414,06/03/2006 03:28:00 PM,063XX S MAY ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0724,007,16,68,26,1169704,1862569,2006,02/01/2007 06:57:55 AM,41.778389543,-87.653403308,"(41.778389543, -87.653403308)" -4778003,HM390439,06/03/2006 12:01:00 AM,024XX S SPAULDING AVE,0810,THEFT,OVER $500,STREET,false,false,1024,010,22,30,06,1154716,1887357,2006,12/04/2014 12:43:35 PM,41.846723205,-87.707688921,"(41.846723205, -87.707688921)" -4776690,HM387647,06/01/2006 06:50:00 PM,051XX S SACRAMENTO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0911,009,14,63,08B,1157202,1870519,2006,04/26/2010 01:11:05 AM,41.800467579,-87.699021557,"(41.800467579, -87.699021557)" -6155530,HP241499,06/01/2006 12:01:00 AM,022XX S HOMAN AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1024,,22,30,06,,,2006,03/30/2008 01:04:35 AM,,, -4865008,HM384245,05/31/2006 09:39:39 AM,062XX S STEWART AVE,2027,NARCOTICS,POSS: CRACK,"SCHOOL, PUBLIC, BUILDING",true,false,0711,007,20,68,18,1174730,1863727,2006,07/25/2006 04:21:28 AM,41.781456694,-87.634943307,"(41.781456694, -87.634943307)" -5855576,HM382444,05/30/2006 01:30:00 PM,002XX N LARAMIE AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1523,015,28,25,18,1141634,1901013,2006,11/11/2007 01:03:25 AM,41.884448577,-87.755362614,"(41.884448577, -87.755362614)" -4782392,HM396605,05/30/2006 08:00:00 AM,013XX W FULLERTON AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1933,019,32,7,06,1167103,1916106,2006,12/04/2014 12:43:35 PM,41.925355965,-87.661402916,"(41.925355965, -87.661402916)" -4768761,HM381423,05/29/2006 11:55:00 PM,003XX W OAK ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1823,018,27,8,08B,1173434,1907132,2006,06/06/2006 03:45:55 AM,41.900592389,-87.638407171,"(41.900592389, -87.638407171)" -4770252,HM381308,05/29/2006 10:30:00 PM,063XX S WASHTENAW AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0825,008,15,66,08B,1159511,1862326,2006,06/07/2006 04:08:49 AM,41.777937799,-87.690778231,"(41.777937799, -87.690778231)" -4768884,HM379509,05/28/2006 11:04:22 PM,010XX N LATROBE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,VEHICLE NON-COMMERCIAL,false,false,1524,015,37,25,14,1141120,1906757,2006,06/02/2006 03:40:19 AM,41.900220291,-87.757108462,"(41.900220291, -87.757108462)" -4769441,HM378462,05/28/2006 11:24:24 AM,078XX S WABASH AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0623,006,6,69,06,1178113,1852879,2006,12/04/2014 12:43:35 PM,41.751612534,-87.622869044,"(41.751612534, -87.622869044)" -4765962,HM378139,05/28/2006 05:00:00 AM,060XX S LAFAYETTE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0311,003,20,40,14,1177056,1864899,2006,05/30/2006 03:34:25 AM,41.784620626,-87.626380383,"(41.784620626, -87.626380383)" -4766134,HM378069,05/28/2006 03:30:00 AM,028XX N ROCKWELL ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,true,1411,014,1,21,04A,1158501,1918847,2006,06/02/2006 03:40:19 AM,41.93305808,-87.69293553,"(41.93305808, -87.69293553)" -4957952,HM377680,05/27/2006 10:45:00 PM,040XX W VAN BUREN ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1132,011,24,26,18,1149670,1897761,2006,09/23/2006 04:42:43 AM,41.875372418,-87.725937605,"(41.875372418, -87.725937605)" -4771644,HM382996,05/26/2006 06:00:00 PM,038XX W HARRISON ST,0610,BURGLARY,FORCIBLE ENTRY,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,1133,011,24,26,05,1150532,1897031,2006,06/23/2006 03:55:49 AM,41.873352433,-87.722791718,"(41.873352433, -87.722791718)" -4763390,HM375541,05/26/2006 07:00:00 AM,054XX N KENMORE AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2023,020,48,77,06,1168221,1936545,2006,06/02/2006 03:40:19 AM,41.981417266,-87.656701921,"(41.981417266, -87.656701921)" -4757238,HM368530,05/23/2006 04:20:00 PM,053XX W WINONA ST,1792,KIDNAPPING,CHILD ABDUCTION/STRANGER,STREET,false,false,1623,016,45,11,20,1140021,1933778,2006,06/07/2006 04:08:49 AM,41.974388833,-87.760481976,"(41.974388833, -87.760481976)" -4756084,HM365290,05/22/2006 03:21:00 AM,011XX N CLARK ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,1824,018,42,8,15,1175285,1908141,2006,06/11/2007 03:52:33 PM,41.903319789,-87.631578099,"(41.903319789, -87.631578099)" -4753520,HM364173,05/21/2006 11:45:00 AM,088XX S DORCHESTER AVE,0460,BATTERY,SIMPLE,STREET,false,false,0412,004,8,48,08B,1186962,1846420,2006,05/24/2006 03:44:11 AM,41.733683296,-87.590646295,"(41.733683296, -87.590646295)" -4759908,HM368356,05/20/2006 11:00:00 AM,003XX W 35TH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,SPORTS ARENA/STADIUM,false,false,0925,009,11,34,11,1174472,1881700,2006,06/05/2006 03:42:54 AM,41.830782103,-87.635354068,"(41.830782103, -87.635354068)" -4752025,HM362167,05/20/2006 10:49:04 AM,121XX S EGGLESTON AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0523,005,34,53,05,1175442,1824498,2006,05/29/2006 03:30:35 AM,41.673791185,-87.633502259,"(41.673791185, -87.633502259)" -4784861,HM389295,05/19/2006 06:30:00 PM,059XX W RACE AVE,1751,OFFENSE INVOLVING CHILDREN,CRIM SEX ABUSE BY FAM MEMBER,RESIDENCE,false,false,1512,015,29,25,20,1136814,1902977,2006,07/11/2006 03:41:17 AM,41.889925767,-87.773015467,"(41.889925767, -87.773015467)" -4750830,HM362002,05/19/2006 05:30:00 PM,073XX N RIDGE BLVD,0810,THEFT,OVER $500,OTHER,false,false,2411,024,49,2,06,1160624,1948855,2006,12/04/2014 12:43:35 PM,42.015357587,-87.684298183,"(42.015357587, -87.684298183)" -4748245,HM359622,05/19/2006 02:23:00 AM,067XX N WESTERN AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,2412,024,50,2,11,1159047,1944938,2006,05/29/2006 03:30:35 AM,42.004641886,-87.690209279,"(42.004641886, -87.690209279)" -4749554,HM360208,05/18/2006 06:00:00 PM,098XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2213,022,19,72,06,1162156,1839249,2006,12/04/2014 12:43:35 PM,41.71455636,-87.681722192,"(41.71455636, -87.681722192)" -4750497,HM358467,05/18/2006 02:00:00 PM,099XX S EMERALD AVE,0842,THEFT,AGG: FINANCIAL ID THEFT,RESIDENCE,false,false,2232,022,34,73,06,1173021,1838924,2006,05/25/2006 03:41:58 AM,41.713431982,-87.641939541,"(41.713431982, -87.641939541)" -4751609,HM358204,05/18/2006 12:15:34 PM,061XX S ADA ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0713,007,16,67,07,1168330,1863760,2006,05/23/2006 03:30:06 AM,41.781687495,-87.658406196,"(41.781687495, -87.658406196)" -4750992,HM357218,05/17/2006 05:00:00 PM,080XX S RHODES AVE,1752,OFFENSE INVOLVING CHILDREN,AGG CRIM SEX ABUSE FAM MEMBER,APARTMENT,false,true,0631,006,6,44,20,1181339,1851851,2006,08/12/2006 04:03:08 AM,41.748717881,-87.611079,"(41.748717881, -87.611079)" -4749895,HM356324,05/17/2006 01:30:00 PM,122XX S RACINE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0524,005,34,53,26,1170506,1823651,2006,05/23/2006 03:30:06 AM,41.671575461,-87.651593063,"(41.671575461, -87.651593063)" -4746282,HM355096,05/16/2006 08:00:00 PM,036XX W WRIGHTWOOD AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,2524,025,35,22,08A,1151792,1917084,2006,05/21/2006 03:52:27 AM,41.928355128,-87.717637205,"(41.928355128, -87.717637205)" -4754276,HM357882,05/16/2006 06:00:00 PM,003XX E GARFIELD BLVD,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,OTHER,false,false,0234,002,3,40,14,1179192,1868453,2006,05/26/2006 03:55:36 AM,41.794324681,-87.618440644,"(41.794324681, -87.618440644)" -4748891,HM356413,05/15/2006 04:00:00 PM,056XX S ELLIS AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,2133,002,5,41,06,1183829,1867630,2006,05/24/2006 03:44:11 AM,41.791959226,-87.601462818,"(41.791959226, -87.601462818)" -4742046,HM351228,05/15/2006 01:30:00 AM,056XX S EMERALD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0711,007,20,68,08B,1172221,1867530,2006,05/25/2006 03:41:58 AM,41.791948102,-87.644030066,"(41.791948102, -87.644030066)" -4740523,HM350430,05/14/2006 11:00:00 AM,001XX W POLK ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0131,001,2,32,06,1175424,1896835,2006,12/04/2014 12:43:35 PM,41.872292374,-87.631407236,"(41.872292374, -87.631407236)" -4737801,HM347775,05/12/2006 09:00:00 PM,022XX S KIRKLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1013,010,22,29,14,1147740,1888819,2006,05/16/2006 03:27:27 AM,41.850871729,-87.733253363,"(41.850871729, -87.733253363)" -4740351,HM347313,05/12/2006 07:47:00 PM,063XX S ARTESIAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,0825,008,15,66,08B,1161084,1862690,2006,05/26/2006 03:55:36 AM,41.778904268,-87.685001473,"(41.778904268, -87.685001473)" -4738766,HM346584,05/11/2006 09:00:00 PM,055XX W WINDSOR AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1623,016,45,15,26,1138452,1929761,2006,01/30/2007 06:41:08 AM,41.963394474,-87.766349492,"(41.963394474, -87.766349492)" -4736403,HM344607,05/11/2006 03:40:00 PM,114XX S HALSTED ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2234,022,34,75,06,1172991,1829061,2006,05/14/2006 03:39:19 AM,41.68636707,-87.642339221,"(41.68636707, -87.642339221)" -4744734,HM344264,05/11/2006 02:10:02 PM,074XX N GREENVIEW AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,2422,024,49,1,26,1165033,1949722,2006,05/19/2006 03:39:57 AM,42.017643768,-87.668049841,"(42.017643768, -87.668049841)" -4849367,HM460224,05/11/2006 12:00:00 PM,015XX W 17TH ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,1222,012,25,31,11,1166452,1891861,2006,08/07/2006 05:46:13 AM,41.8588399,-87.664489436,"(41.8588399, -87.664489436)" -4738915,HM347329,05/10/2006 09:45:00 PM,040XX W JACKSON BLVD,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,true,false,1132,011,28,26,04B,1149264,1898334,2006,01/30/2008 01:05:27 AM,41.876952669,-87.72741344,"(41.876952669, -87.72741344)" -4855737,HM342875,05/10/2006 09:30:00 PM,023XX W WALNUT ST,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,SIDEWALK,true,false,1332,012,27,28,18,1160582,1901571,2006,09/02/2006 04:14:01 AM,41.885608513,-87.685767332,"(41.885608513, -87.685767332)" -4735415,HM342595,05/10/2006 06:20:00 PM,026XX W 25TH ST,0460,BATTERY,SIMPLE,OTHER,false,false,1034,010,12,30,08B,1159161,1887269,2006,05/14/2006 03:39:19 AM,41.846391703,-87.691378269,"(41.846391703, -87.691378269)" -4733423,HM341990,05/10/2006 09:00:00 AM,080XX S LAFLIN ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,0612,006,21,71,11,1167696,1851308,2006,05/21/2006 03:52:27 AM,41.747531198,-87.661087381,"(41.747531198, -87.661087381)" -4732319,HM341047,05/10/2006 12:05:00 AM,027XX W MAYPOLE AVE,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,VACANT LOT/LAND,false,false,1331,012,27,27,03,1158051,1900882,2006,06/04/2006 04:24:23 AM,41.883769867,-87.695080496,"(41.883769867, -87.695080496)" -4734764,HM339668,05/09/2006 11:15:00 AM,020XX N BURLING ST,0320,ROBBERY,STRONGARM - NO WEAPON,PARK PROPERTY,true,false,1812,018,43,7,03,1170991,1913808,2006,06/14/2006 04:14:16 AM,41.91896565,-87.647184215,"(41.91896565, -87.647184215)" -4734058,HM338333,05/08/2006 02:40:00 PM,008XX E 101ST ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,true,false,0511,005,8,50,03,1183471,1838136,2006,05/13/2006 03:25:14 AM,41.711032972,-87.603692674,"(41.711032972, -87.603692674)" -4736888,HM336521,05/07/2006 08:15:00 PM,058XX S MICHIGAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE PORCH/HALLWAY,false,false,0233,002,20,40,14,1178119,1866176,2006,05/14/2006 03:39:19 AM,41.788100791,-87.622444306,"(41.788100791, -87.622444306)" -4728638,HM335523,05/07/2006 07:00:00 AM,041XX S DREXEL BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,CONSTRUCTION SITE,false,false,2123,002,4,36,14,1182789,1877620,2006,05/10/2006 03:31:10 AM,41.819396811,-87.604965839,"(41.819396811, -87.604965839)" -4727062,HM334715,05/06/2006 07:05:00 PM,079XX S VERNON AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0624,006,6,44,08B,1180574,1852659,2006,05/10/2006 03:31:10 AM,41.75095271,-87.613857455,"(41.75095271, -87.613857455)" -4726349,HM333520,05/06/2006 04:30:00 AM,041XX S ARTESIAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0914,009,12,58,08B,1160674,1876921,2006,05/15/2006 03:25:18 AM,41.817964449,-87.686111753,"(41.817964449, -87.686111753)" -4725616,HM333587,05/05/2006 09:00:00 PM,016XX N PARKSIDE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2531,025,29,25,05,1138498,1910597,2006,05/17/2006 03:39:53 AM,41.910805632,-87.766646123,"(41.910805632, -87.766646123)" -4728214,HM331601,05/05/2006 08:05:00 AM,009XX N MAYFIELD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1511,015,29,25,26,1137011,1905611,2006,05/11/2006 03:38:51 AM,41.897150267,-87.772228724,"(41.897150267, -87.772228724)" -4724613,HM330707,05/04/2006 07:31:00 PM,068XX S PERRY AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0722,007,6,69,04B,1176532,1859826,2006,05/17/2006 03:39:53 AM,41.770711579,-87.628454027,"(41.770711579, -87.628454027)" -4727590,HM330258,05/04/2006 03:31:54 PM,031XX N NEENAH AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2511,025,36,19,14,1132164,1920036,2006,05/10/2006 03:31:10 AM,41.936819869,-87.789695551,"(41.936819869, -87.789695551)" -4727376,HM335794,05/04/2006 01:00:00 PM,034XX W FULLERTON AVE,0890,THEFT,FROM BUILDING,CLEANING STORE,false,false,1413,014,26,22,06,1153272,1915787,2006,05/09/2006 03:25:05 AM,41.924766762,-87.712233218,"(41.924766762, -87.712233218)" -4725746,HM331937,05/03/2006 12:50:00 PM,065XX S RICHMOND ST,141C,WEAPONS VIOLATION,UNLAWFUL USE OTHER DANG WEAPON,STREET,false,false,0831,008,15,66,15,1157805,1860868,2006,05/08/2006 03:22:32 AM,41.773971644,-87.697072069,"(41.773971644, -87.697072069)" -4722207,HM327135,05/03/2006 02:00:00 AM,082XX S GREEN ST,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0613,006,21,71,07,1172118,1850082,2006,05/06/2006 03:25:41 AM,41.744070946,-87.644919822,"(41.744070946, -87.644919822)" -4721105,HM327002,05/02/2006 11:30:00 PM,015XX S RIDGEWAY AVE,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,1014,010,24,29,08B,1151675,1891906,2006,05/05/2006 03:33:59 AM,41.859266461,-87.718729883,"(41.859266461, -87.718729883)" -4862065,HM326852,05/02/2006 09:40:00 PM,001XX W 103RD ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,SIDEWALK,true,false,0512,005,34,49,16,1177348,1836622,2006,08/05/2006 04:48:25 AM,41.707018537,-87.626161833,"(41.707018537, -87.626161833)" -4726705,HM333664,05/02/2006 05:00:00 PM,033XX N SHEFFIELD AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1924,019,44,6,05,1169057,1922344,2006,05/24/2006 03:44:11 AM,41.942431088,-87.654041419,"(41.942431088, -87.654041419)" -4719409,HM326024,05/01/2006 04:00:00 PM,061XX S ARTESIAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,false,false,0825,008,15,66,14,1161125,1864078,2006,05/04/2006 03:35:01 AM,41.782712282,-87.684812786,"(41.782712282, -87.684812786)" -4718676,HM323053,05/01/2006 06:22:59 AM,019XX W DEVON AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2412,024,50,2,05,1162106,1942550,2006,05/22/2006 03:27:56 AM,41.998025541,-87.679022256,"(41.998025541, -87.679022256)" -4718386,HM321690,04/30/2006 11:10:00 AM,063XX S ASHLAND AVE,1330,CRIMINAL TRESPASS,TO LAND,TAVERN/LIQUOR STORE,false,false,0725,007,16,67,26,1166716,1862724,2006,05/07/2006 03:57:33 AM,41.778879192,-87.664353067,"(41.778879192, -87.664353067)" -4719252,HM323483,04/30/2006 08:50:00 AM,0000X E 91ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0634,006,6,44,08B,1178536,1844712,2006,05/09/2006 03:25:05 AM,41.729191706,-87.621566491,"(41.729191706, -87.621566491)" -4715156,HM320994,04/29/2006 10:40:00 PM,023XX W GARFIELD BLVD,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0915,009,16,63,03,1162027,1868179,2006,05/11/2006 03:38:51 AM,41.793947251,-87.681391755,"(41.793947251, -87.681391755)" -4715132,HM319177,04/29/2006 01:00:00 AM,023XX S TRUMBULL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,1024,010,22,30,08B,1153769,1888433,2006,05/02/2006 03:29:06 AM,41.849694756,-87.711135792,"(41.849694756, -87.711135792)" -4714019,HM319207,04/28/2006 11:00:00 PM,062XX S ARTESIAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0825,008,15,66,14,1161075,1863025,2006,05/31/2007 02:03:58 AM,41.77982374,-87.685025209,"(41.77982374, -87.685025209)" -4739155,HM349450,04/28/2006 03:00:00 PM,009XX N TRUMBULL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1121,011,27,23,26,1153245,1906034,2006,05/23/2006 03:30:06 AM,41.898004195,-87.712591787,"(41.898004195, -87.712591787)" -4714094,HM317583,04/28/2006 09:40:00 AM,006XX N HOMAN AVE,0460,BATTERY,SIMPLE,STREET,false,false,1121,011,27,23,08B,1153627,1904393,2006,05/06/2006 03:25:41 AM,41.893493541,-87.711232432,"(41.893493541, -87.711232432)" -4715511,HM318084,04/28/2006 12:01:00 AM,075XX S VERNON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0624,006,6,69,14,1180512,1855041,2006,05/02/2006 03:29:06 AM,41.757490601,-87.614011671,"(41.757490601, -87.614011671)" -4713709,HM316655,04/27/2006 08:00:00 AM,019XX N LA CROSSE AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,2533,025,31,19,05,1143778,1912771,2006,05/10/2006 03:31:10 AM,41.916673954,-87.747194469,"(41.916673954, -87.747194469)" -4820228,HM312127,04/25/2006 03:45:00 PM,028XX W ROOSEVELT RD,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),PARK PROPERTY,true,false,1022,010,24,29,18,1157241,1894536,2006,07/22/2006 04:38:54 AM,41.866372306,-87.698227328,"(41.866372306, -87.698227328)" -4713585,HM311529,04/25/2006 10:30:00 AM,027XX E 81ST ST,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0422,004,7,46,08A,1195714,1851827,2006,05/01/2006 04:24:48 AM,41.74830883,-87.558405507,"(41.74830883, -87.558405507)" -4708531,HM310911,04/24/2006 10:33:24 PM,081XX S LUELLA AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0414,004,8,46,04A,1192563,1851381,2006,05/03/2006 03:43:36 AM,41.747162262,-87.569966119,"(41.747162262, -87.569966119)" -4705722,HM311289,04/24/2006 06:00:00 PM,016XX N LA SALLE DR,0810,THEFT,OVER $500,STREET,false,false,1814,018,43,7,06,1174784,1911570,2006,12/04/2014 12:43:35 PM,41.912740359,-87.633315568,"(41.912740359, -87.633315568)" -4706798,HM310310,04/24/2006 04:20:00 PM,038XX W GRENSHAW ST,0820,THEFT,$500 AND UNDER,RESIDENCE,true,false,1133,011,24,29,06,1150791,1894801,2006,12/04/2014 12:43:35 PM,41.867227999,-87.721899113,"(41.867227999, -87.721899113)" -4830351,HM308180,04/23/2006 02:43:52 PM,063XX S CHAMPLAIN AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,0312,003,20,42,18,1181612,1863312,2006,07/01/2006 04:02:09 AM,41.780161742,-87.60972534,"(41.780161742, -87.60972534)" -4706055,HM309490,04/22/2006 05:00:00 PM,051XX S KILDARE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE,false,false,0815,008,23,57,14,1148526,1870178,2006,05/05/2006 03:33:59 AM,41.799703107,-87.730848329,"(41.799703107, -87.730848329)" -4699025,HM303427,04/21/2006 12:01:00 AM,086XX S HERMITAGE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0614,006,18,71,06,1166228,1847213,2006,12/04/2014 12:43:35 PM,41.736325267,-87.66658284,"(41.736325267, -87.66658284)" -4699071,HM303597,04/20/2006 10:00:00 PM,098XX S CALHOUN AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0431,004,7,51,26,1194802,1840130,2006,04/23/2006 03:51:29 AM,41.716233729,-87.562131359,"(41.716233729, -87.562131359)" -4704328,HM302826,04/20/2006 08:00:00 PM,036XX S FEDERAL ST,0560,ASSAULT,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,0211,002,3,35,08A,1176167,1880544,2006,04/28/2006 03:43:43 AM,41.827571984,-87.629169842,"(41.827571984, -87.629169842)" -4699423,HM301908,04/20/2006 11:45:00 AM,025XX S KARLOV AVE,0460,BATTERY,SIMPLE,STREET,false,false,1013,010,22,30,08B,1149721,1886590,2006,06/11/2007 03:52:33 PM,41.844716853,-87.726040469,"(41.844716853, -87.726040469)" -4699902,HM301017,04/19/2006 10:25:00 PM,006XX S SACRAMENTO BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1134,011,28,27,08B,1156423,1897182,2006,05/04/2006 03:35:01 AM,41.87364977,-87.701158757,"(41.87364977, -87.701158757)" -4697855,HM300633,04/19/2006 06:55:00 PM,107XX S MACKINAW AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0432,004,10,52,15,1200236,1834543,2006,05/04/2006 03:35:01 AM,41.70076723,-87.542417655,"(41.70076723, -87.542417655)" -4697461,HM300565,04/19/2006 06:32:07 PM,060XX S INDIANA AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0311,003,20,40,08B,1178587,1865207,2006,05/06/2006 03:25:41 AM,41.785431128,-87.620757793,"(41.785431128, -87.620757793)" -4693664,HM297765,04/18/2006 12:00:00 PM,0000X W RANDOLPH ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0122,001,42,32,06,1175995,1901321,2006,04/20/2006 03:40:12 AM,41.884589391,-87.629175742,"(41.884589391, -87.629175742)" -4731495,HM297028,04/17/2006 11:59:35 PM,013XX N NORTH BRANCH ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1822,018,32,8,18,1168526,1908656,2006,05/16/2006 03:27:27 AM,41.904882022,-87.656390235,"(41.904882022, -87.656390235)" -4693071,HM295609,04/17/2006 11:20:00 AM,035XX W OHIO ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1121,011,27,23,08B,1152464,1903808,2006,04/27/2006 04:04:19 AM,41.891911302,-87.715519218,"(41.891911302, -87.715519218)" -4690488,HM294462,04/16/2006 12:20:00 PM,053XX S HYDE PARK BLVD,0880,THEFT,PURSE-SNATCHING,STREET,false,false,2132,002,5,41,06,1188512,1870406,2006,04/18/2006 03:38:47 AM,41.799466087,-87.584202615,"(41.799466087, -87.584202615)" -4692154,HM295143,04/16/2006 03:00:00 AM,065XX S EVANS AVE,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,APARTMENT,false,false,0321,003,20,42,17,1182378,1861975,2006,06/03/2006 03:59:47 AM,41.776475166,-87.606958499,"(41.776475166, -87.606958499)" -4689827,HM293664,04/16/2006 02:05:00 AM,072XX S WESTERN AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,SIDEWALK,false,false,0832,008,18,66,03,1161593,1856419,2006,05/16/2006 03:27:27 AM,41.761685211,-87.683309181,"(41.761685211, -87.683309181)" -4690263,HM293197,04/15/2006 07:30:00 PM,054XX S WENTWORTH AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0232,002,3,37,06,1175924,1869100,2006,04/20/2006 03:40:12 AM,41.796174063,-87.6304048,"(41.796174063, -87.6304048)" -4691393,HM293175,04/15/2006 06:35:00 PM,058XX S CALIFORNIA AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,SIDEWALK,true,false,0824,008,16,63,24,1158754,1865601,2006,06/11/2007 03:52:33 PM,41.78694035,-87.693464089,"(41.78694035, -87.693464089)" -4690233,HM292346,04/15/2006 11:25:00 AM,050XX S INDIANA AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0224,002,3,38,06,1178492,1871668,2006,12/04/2014 12:43:35 PM,41.803162883,-87.620909788,"(41.803162883, -87.620909788)" -4695609,HM289514,04/13/2006 09:03:00 PM,073XX S EMERALD AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,true,false,0732,007,17,68,15,1172607,1856347,2006,06/11/2007 03:52:33 PM,41.761252154,-87.642943877,"(41.761252154, -87.642943877)" -4686703,HM288992,04/13/2006 05:34:13 PM,001XX N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176390,1900949,2006,04/18/2006 03:38:47 AM,41.883559699,-87.627736496,"(41.883559699, -87.627736496)" -4687681,HM288422,04/13/2006 12:25:00 PM,072XX S UNION AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0732,007,17,68,08A,1172958,1856984,2006,04/22/2006 04:02:27 AM,41.762992423,-87.641638666,"(41.762992423, -87.641638666)" -4686938,HM288340,04/13/2006 11:49:27 AM,075XX N HOYNE AVE,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,2424,024,49,1,26,1160930,1950059,2006,04/18/2006 03:38:47 AM,42.018655019,-87.683138557,"(42.018655019, -87.683138557)" -4685993,HM285960,04/12/2006 07:15:00 AM,001XX S HAMLIN BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1122,011,28,26,08B,1151058,1898883,2006,04/15/2006 04:32:33 AM,41.878424243,-87.720811972,"(41.878424243, -87.720811972)" -4714194,HM285526,04/11/2006 10:15:00 PM,035XX W 63RD ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0823,008,15,66,16,1154091,1862578,2006,05/20/2006 03:31:18 AM,41.778738741,-87.710641605,"(41.778738741, -87.710641605)" -4684431,HM284548,04/11/2006 01:30:00 PM,118XX S STATE ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0522,005,34,53,08B,1178331,1826695,2006,04/15/2006 04:32:33 AM,41.679755213,-87.622861959,"(41.679755213, -87.622861959)" -4696521,HM284457,04/11/2006 11:40:00 AM,005XX E BROWNING AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0212,002,4,35,26,1180772,1881382,2006,04/24/2006 03:36:24 AM,41.8297667,-87.612249086,"(41.8297667, -87.612249086)" -4686134,HM289095,04/10/2006 04:00:00 PM,023XX N DAMEN AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1432,014,32,22,06,1162608,1915094,2006,12/04/2014 12:43:35 PM,41.922674439,-87.677948069,"(41.922674439, -87.677948069)" -4680709,HM282765,04/10/2006 03:07:22 PM,001XX N GREEN ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1212,012,27,28,07,1170659,1901384,2006,04/14/2006 04:02:25 AM,41.884880743,-87.648768266,"(41.884880743, -87.648768266)" -4678790,HM282008,04/08/2006 12:00:00 AM,097XX S INDIANA AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0511,005,6,49,05,1179260,1840322,2006,04/15/2006 04:32:33 AM,41.717128528,-87.619047749,"(41.717128528, -87.619047749)" -4676358,HM276791,04/07/2006 09:00:00 AM,029XX S FEDERAL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA HALLWAY/STAIRWELL/ELEVATOR,false,true,2113,001,3,35,08B,1176013,1885806,2006,04/11/2006 03:34:47 AM,41.842014797,-87.629576675,"(41.842014797, -87.629576675)" -4677654,HM276401,04/07/2006 12:01:00 AM,076XX S ASHLAND AVE,0498,BATTERY,AGGRAVATED DOMESTIC BATTERY: HANDS/FIST/FEET SERIOUS INJURY,STREET,false,true,0611,006,17,71,04B,1166956,1854252,2006,05/18/2007 06:17:05 PM,41.755625778,-87.663715006,"(41.755625778, -87.663715006)" -4673604,HM274869,04/05/2006 11:00:00 PM,025XX W HURON ST,0810,THEFT,OVER $500,STREET,false,false,1313,012,26,24,06,1159321,1904626,2006,12/04/2014 12:43:35 PM,41.89401772,-87.690313907,"(41.89401772, -87.690313907)" -4672376,HM274376,04/05/2006 10:50:00 PM,027XX N ASHLAND AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1931,019,32,7,26,1165147,1918454,2006,04/21/2006 04:05:47 AM,41.931840846,-87.668523269,"(41.931840846, -87.668523269)" -4672429,HM271419,04/04/2006 04:00:00 AM,027XX N KENMORE AVE,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,RESIDENCE,false,false,1933,019,32,7,17,1168753,1918193,2006,05/01/2006 04:24:48 AM,41.931047158,-87.655279421,"(41.931047158, -87.655279421)" -4790844,HM270047,04/03/2006 08:25:00 PM,089XX S COMMERCIAL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0423,004,10,46,18,1197650,1846464,2006,08/05/2006 04:48:25 AM,41.733544282,-87.551490045,"(41.733544282, -87.551490045)" -4782421,HM270012,04/03/2006 07:51:19 PM,091XX S CREGIER AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0413,004,8,48,18,1189820,1844590,2006,06/24/2006 03:34:29 AM,41.728593442,-87.580234808,"(41.728593442, -87.580234808)" -4668723,HM269658,04/03/2006 05:09:00 PM,013XX W HASTINGS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA PARKING LOT/GROUNDS,false,true,1231,012,2,28,08B,1167850,1893896,2006,04/08/2006 03:34:53 AM,41.864394113,-87.659299225,"(41.864394113, -87.659299225)" -4668159,HM269442,04/03/2006 10:00:00 AM,117XX S MAPLEWOOD AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2212,022,19,75,06,1161547,1826491,2006,04/06/2006 03:47:15 AM,41.679558775,-87.684304716,"(41.679558775, -87.684304716)" -4692016,HM295841,04/03/2006 12:00:00 AM,022XX E 79TH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,ATM (AUTOMATIC TELLER MACHINE),false,false,0414,004,7,43,11,1192269,1853061,2006,05/06/2006 03:25:41 AM,41.751779477,-87.570988853,"(41.751779477, -87.570988853)" -4668031,HM268776,04/02/2006 06:00:00 PM,092XX S WOODLAWN AVE,0460,BATTERY,SIMPLE,STREET,false,false,0413,004,8,47,08B,1185857,1844153,2006,04/07/2006 03:45:50 AM,41.727488495,-87.594765682,"(41.727488495, -87.594765682)" -4676247,HM268708,04/02/2006 03:00:00 AM,002XX E 103RD ST,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,false,false,0512,005,9,49,05,1179787,1836690,2006,04/28/2006 03:43:43 AM,41.707149828,-87.617228223,"(41.707149828, -87.617228223)" -4771496,HM266362,04/01/2006 07:32:26 PM,001XX N LA CROSSE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1532,015,28,25,18,1144050,1900913,2006,06/10/2006 03:42:52 AM,41.884129171,-87.746493149,"(41.884129171, -87.746493149)" -4664939,HM263258,03/31/2006 09:05:00 AM,047XX N KENNETH AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1722,017,45,16,26,1145637,1931343,2006,04/06/2006 03:47:15 AM,41.967602102,-87.739892087,"(41.967602102, -87.739892087)" -4667225,HM263137,03/31/2006 08:00:00 AM,020XX N BURLING ST,0460,BATTERY,SIMPLE,ALLEY,false,false,1812,018,43,7,08B,1170914,1913752,2006,04/19/2006 03:48:12 AM,41.918813673,-87.647468764,"(41.918813673, -87.647468764)" -4790839,HM262702,03/30/2006 09:55:00 PM,003XX S HOMAN AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1134,011,28,27,16,1153813,1898231,2006,06/20/2006 03:50:51 AM,41.876580687,-87.710713511,"(41.876580687, -87.710713511)" -4662313,HM262046,03/30/2006 04:33:52 PM,106XX S AVENUE O,0935,MOTOR VEHICLE THEFT,"THEFT/RECOVERY: TRUCK,BUS,MHOME",OTHER,false,false,0432,004,10,52,07,1200903,1835207,2006,04/02/2006 04:37:42 AM,41.702572469,-87.539953006,"(41.702572469, -87.539953006)" -4668215,HM264719,03/29/2006 10:30:00 PM,079XX S PRAIRIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0623,006,6,44,08B,1179363,1852621,2006,04/11/2006 03:34:47 AM,41.750876137,-87.618296275,"(41.750876137, -87.618296275)" -4661789,HM261614,03/29/2006 05:00:00 PM,077XX N PAULINA ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2422,024,49,1,14,1163697,1951317,2006,04/01/2006 03:33:39 AM,42.022048862,-87.672920733,"(42.022048862, -87.672920733)" -4659557,HM259010,03/28/2006 06:00:00 PM,031XX W MARQUETTE RD,0810,THEFT,OVER $500,STREET,false,false,0831,008,15,66,06,1156662,1860072,2006,12/04/2014 12:43:35 PM,41.77181043,-87.701283563,"(41.77181043, -87.701283563)" -4659678,HM256568,03/27/2006 09:09:00 PM,043XX W CORTEZ ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1111,011,37,23,08B,1146908,1906673,2006,03/31/2006 03:37:39 AM,41.899881138,-87.735850857,"(41.899881138, -87.735850857)" -4656649,HM255977,03/27/2006 02:50:00 PM,029XX W 65TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0823,008,15,66,08B,1157778,1861432,2006,04/04/2006 03:37:55 AM,41.775519891,-87.697155753,"(41.775519891, -87.697155753)" -4729088,HM255478,03/27/2006 12:01:00 PM,100XX W OHARE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,AIRPORT/AIRCRAFT,true,false,1651,016,41,76,18,1100635,1934208,2006,05/13/2006 03:25:14 AM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -4655024,HM253446,03/26/2006 08:30:00 AM,075XX S COLES AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0421,004,7,43,08A,1195768,1855900,2006,04/04/2006 03:37:55 AM,41.759484111,-87.558073149,"(41.759484111, -87.558073149)" -4654985,HM252699,03/25/2006 07:30:00 PM,011XX W 104TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2232,022,34,73,14,1170768,1835550,2006,03/30/2006 03:33:32 AM,41.70422256,-87.65028884,"(41.70422256, -87.65028884)" -4656202,HM252141,03/25/2006 01:10:00 PM,021XX N LECLAIRE AVE,0460,BATTERY,SIMPLE,STREET,false,false,2522,025,37,19,08B,1142005,1913549,2006,04/04/2006 03:37:55 AM,41.918841936,-87.753689194,"(41.918841936, -87.753689194)" -4654074,HM251989,03/25/2006 09:00:00 AM,040XX W ADAMS ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1115,011,28,26,05,1149511,1898665,2006,04/03/2006 03:33:36 AM,41.877856182,-87.726497929,"(41.877856182, -87.726497929)" -4724645,HM251357,03/24/2006 10:39:05 PM,019XX N ST LOUIS AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,APARTMENT,true,false,1422,014,35,22,26,1152984,1912842,2006,05/09/2006 03:25:05 AM,41.916691151,-87.713369695,"(41.916691151, -87.713369695)" -4682792,HM284306,03/24/2006 08:30:00 AM,078XX S DAMEN AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,OTHER,true,false,0611,006,18,71,07,1164438,1852334,2006,04/15/2006 04:32:33 AM,41.75041592,-87.672996842,"(41.75041592, -87.672996842)" -4650458,HM249306,03/24/2006 12:03:00 AM,104XX S AVENUE F,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0432,004,10,52,14,1203446,1836368,2006,03/28/2006 03:57:36 AM,41.705693682,-87.530601823,"(41.705693682, -87.530601823)" -4650886,HM248236,03/23/2006 01:30:00 PM,065XX S WINCHESTER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,false,0726,007,15,67,08B,1164525,1861162,2006,03/26/2006 04:17:13 AM,41.774639349,-87.672429483,"(41.774639349, -87.672429483)" -4652175,HM251106,03/22/2006 06:00:00 PM,050XX N MENARD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,VEHICLE NON-COMMERCIAL,false,false,1622,016,45,11,14,1136475,1933180,2006,03/27/2006 03:56:29 AM,41.972812194,-87.773536233,"(41.972812194, -87.773536233)" -4644410,HM243573,03/20/2006 08:53:00 PM,029XX S BONFIELD ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0923,009,11,60,26,1169089,1885419,2006,03/25/2006 04:20:22 AM,41.84110571,-87.654996732,"(41.84110571, -87.654996732)" -4651044,HM242951,03/20/2006 02:43:00 PM,001XX E 47TH ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0224,002,3,38,06,1178259,1873864,2006,03/26/2006 04:17:13 AM,41.809194199,-87.621697617,"(41.809194199, -87.621697617)" -4645526,HM241695,03/19/2006 06:40:00 PM,065XX S HALSTED ST,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,0723,007,20,68,06,1172032,1861738,2006,03/25/2006 04:20:22 AM,41.776058354,-87.644893141,"(41.776058354, -87.644893141)" -4644864,HM240745,03/19/2006 01:00:00 AM,009XX N LAWNDALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1112,011,27,23,08B,1151494,1906347,2006,03/27/2006 03:56:29 AM,41.898897683,-87.719014857,"(41.898897683, -87.719014857)" -4765926,HM239520,03/18/2006 01:23:24 PM,0000X N KARLOV AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,OTHER,false,false,1115,011,28,26,08B,1149020,1899743,2006,06/11/2007 03:52:33 PM,41.880823848,-87.72827287,"(41.880823848, -87.72827287)" -4639633,HM238909,03/18/2006 03:35:00 AM,028XX N WESTERN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,1411,014,1,22,14,1159837,1918470,2006,03/19/2006 04:41:00 AM,41.931996078,-87.688036262,"(41.931996078, -87.688036262)" -4639441,HM237689,03/17/2006 06:30:00 AM,026XX N PAULINA ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1931,019,32,7,07,1164515,1917508,2006,03/20/2006 03:53:54 AM,41.929258392,-87.670872627,"(41.929258392, -87.670872627)" -4721125,HM234444,03/15/2006 09:00:00 PM,013XX W TAYLOR ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,true,false,1213,012,2,28,26,1167837,1895751,2006,05/13/2006 03:25:14 AM,41.869484665,-87.65929348,"(41.869484665, -87.65929348)" -4637191,HM233984,03/15/2006 03:00:00 PM,024XX W CONGRESS PKWY,0810,THEFT,OVER $500,"SCHOOL, PRIVATE, BUILDING",false,false,1135,011,2,28,06,1160449,1897662,2006,12/04/2014 12:43:35 PM,41.874884616,-87.686363945,"(41.874884616, -87.686363945)" -4637779,HM233374,03/15/2006 10:37:00 AM,021XX S LAFLIN ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,1222,012,25,31,08B,1166665,1889621,2006,03/22/2006 04:29:24 AM,41.852688583,-87.663771704,"(41.852688583, -87.663771704)" -4638234,HM233949,03/15/2006 10:00:00 AM,056XX N ST LOUIS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1711,017,39,13,05,1152070,1937294,2006,08/12/2006 04:03:08 AM,41.9838073,-87.716080734,"(41.9838073, -87.716080734)" -4637459,HM233210,03/15/2006 09:30:00 AM,030XX N MOBILE AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,2511,025,36,19,08B,1133838,1919612,2006,03/19/2006 04:41:00 AM,41.935627071,-87.783553257,"(41.935627071, -87.783553257)" -4640907,HM232439,03/14/2006 07:50:00 PM,065XX S HALSTED ST,1570,SEX OFFENSE,PUBLIC INDECENCY,COMMERCIAL / BUSINESS OFFICE,false,false,0723,007,20,68,17,1172036,1861575,2006,04/14/2006 04:02:25 AM,41.775610975,-87.644883261,"(41.775610975, -87.644883261)" -4643231,HM231003,03/14/2006 03:05:00 AM,059XX S WABASH AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0233,002,20,40,08B,1177775,1865516,2006,09/22/2006 04:36:35 AM,41.786297483,-87.623725583,"(41.786297483, -87.623725583)" -4630496,HM228772,03/12/2006 08:55:00 PM,035XX W ADAMS ST,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,APARTMENT,true,true,1123,011,28,27,08B,1152962,1898808,2006,03/15/2006 05:07:15 AM,41.878180934,-87.713822837,"(41.878180934, -87.713822837)" -4629626,HM227561,03/12/2006 03:16:54 AM,024XX W TAYLOR ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,1135,011,28,28,08B,1160010,1895591,2006,03/14/2006 03:54:43 AM,41.869210664,-87.688032936,"(41.869210664, -87.688032936)" -4629851,HM228108,03/12/2006 02:00:00 AM,024XX N LINCOLN AVE,0810,THEFT,OVER $500,MOVIE HOUSE/THEATER,false,false,1933,019,43,7,06,1170293,1916345,2006,12/04/2014 12:43:35 PM,41.9259426,-87.649674411,"(41.9259426, -87.649674411)" -4639509,HM227357,03/12/2006 12:05:00 AM,067XX S ADA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0724,007,17,67,08B,1168448,1860064,2006,05/26/2006 03:55:36 AM,41.771542669,-87.658079979,"(41.771542669, -87.658079979)" -4633556,HM225837,03/11/2006 09:11:00 AM,017XX E 71ST PL,0460,BATTERY,SIMPLE,APARTMENT,false,true,0324,003,5,43,08B,1189233,1857880,2006,03/17/2006 04:34:02 AM,41.765076516,-87.581959966,"(41.765076516, -87.581959966)" -4625376,HM222871,03/09/2006 06:00:00 PM,082XX S CHAPPEL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0414,004,8,46,07,1191244,1850939,2006,07/10/2006 03:52:16 AM,41.745981384,-87.574813489,"(41.745981384, -87.574813489)" -4626947,HM222374,03/09/2006 01:33:13 PM,085XX S MARSHFIELD AVE,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,ALLEY,false,false,0614,006,18,71,20,1166874,1847895,2006,03/17/2006 04:34:02 AM,41.738183018,-87.664196685,"(41.738183018, -87.664196685)" -4624044,HM220151,03/07/2006 03:00:00 PM,024XX W NORTH AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1434,014,1,24,08B,1160084,1910612,2006,03/14/2006 03:54:43 AM,41.910428061,-87.687346102,"(41.910428061, -87.687346102)" -4626998,HM218889,03/06/2006 09:15:00 PM,022XX N KEYSTONE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2525,025,31,20,03,1148982,1914379,2006,03/19/2006 04:41:00 AM,41.920987267,-87.728033212,"(41.920987267, -87.728033212)" -4707434,HM216429,03/06/2006 12:57:23 PM,005XX E BROWNING AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA APARTMENT,true,false,0212,002,4,35,18,1180710,1881381,2006,05/02/2006 03:29:06 AM,41.829765384,-87.612476591,"(41.829765384, -87.612476591)" -4620350,HM215094,03/05/2006 03:16:39 PM,032XX N MILWAUKEE AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,1732,017,30,21,06,1149882,1921190,2006,03/09/2006 03:43:37 AM,41.939659761,-87.724548694,"(41.939659761, -87.724548694)" -4620196,HM214587,03/04/2006 04:00:00 PM,042XX N KEELER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,1722,017,38,16,14,1147599,1927959,2006,03/09/2006 03:43:37 AM,41.958278634,-87.732765147,"(41.958278634, -87.732765147)" -4614095,HM207782,03/01/2006 03:34:33 PM,002XX N CENTRAL AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1512,015,29,25,08B,1138960,1901158,2006,03/09/2006 03:43:37 AM,41.884895475,-87.765178509,"(41.884895475, -87.765178509)" -4618232,HM205640,02/28/2006 08:50:00 AM,007XX E 75TH ST,0810,THEFT,OVER $500,STREET,false,false,0624,006,6,69,06,1182226,1855397,2006,12/04/2014 12:43:35 PM,41.758428003,-87.607719152,"(41.758428003, -87.607719152)" -4648368,HM245138,02/28/2006 12:00:00 AM,060XX N PAULINA ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2433,024,40,77,06,1164040,1940461,2006,12/04/2014 12:43:35 PM,41.992252494,-87.671967108,"(41.992252494, -87.671967108)" -4608697,HM203502,02/27/2006 08:45:00 AM,002XX W WACKER DR,0820,THEFT,$500 AND UNDER,STREET,false,false,0113,001,42,32,06,1174617,1902081,2006,12/04/2014 12:43:35 PM,41.886705791,-87.63421316,"(41.886705791, -87.63421316)" -4610130,HM202576,02/26/2006 04:45:00 PM,070XX N CLARK ST,0440,BATTERY,AGG: HANDS/FIST/FEET NO/MINOR INJURY,SIDEWALK,false,false,2424,024,49,1,08B,1163327,1947034,2006,03/05/2006 04:52:17 AM,42.010304056,-87.674403678,"(42.010304056, -87.674403678)" -4700413,HM201291,02/25/2006 08:20:00 PM,027XX W CERMAK RD,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1034,010,28,30,16,1158284,1889234,2006,05/02/2006 03:29:06 AM,41.851801823,-87.694543181,"(41.851801823, -87.694543181)" -4691824,HM199728,02/25/2006 12:50:00 AM,024XX W WALTON ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1312,012,1,24,18,1159742,1906284,2006,04/29/2006 03:51:07 AM,41.898558743,-87.688721957,"(41.898558743, -87.688721957)" -4609699,HM197651,02/23/2006 11:00:00 PM,003XX E 131ST PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0533,005,9,54,08B,1180520,1818348,2006,03/09/2006 03:43:37 AM,41.65679997,-87.61510394,"(41.65679997, -87.61510394)" -4603263,HM197910,02/23/2006 08:00:00 PM,105XX S VERNON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0512,005,9,49,14,1181072,1835086,2006,02/25/2006 03:52:18 AM,41.70271882,-87.612571752,"(41.70271882, -87.612571752)" -4739002,HM348736,02/23/2006 12:00:00 PM,072XX S PHILLIPS AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,APARTMENT,false,false,0334,003,7,43,06,1193863,1857225,2006,05/17/2006 03:39:53 AM,41.76316691,-87.565011414,"(41.76316691, -87.565011414)" -4607147,HM194238,02/22/2006 09:23:48 AM,044XX W CARROLL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,1113,011,28,26,08B,1146720,1901888,2006,03/02/2006 04:44:02 AM,41.886754161,-87.736663612,"(41.886754161, -87.736663612)" -4602658,HM194456,02/22/2006 08:50:00 AM,047XX S BISHOP ST,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0933,009,20,61,08B,1167511,1873093,2006,02/27/2006 04:31:37 AM,41.807315947,-87.661141299,"(41.807315947, -87.661141299)" -4714038,HM191651,02/20/2006 08:42:13 PM,032XX N CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1634,016,30,15,16,1143769,1920876,2006,05/06/2006 03:25:41 AM,41.938915045,-87.747023917,"(41.938915045, -87.747023917)" -4706584,HM191316,02/20/2006 05:23:12 PM,007XX N LOCKWOOD AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),STREET,true,false,1524,015,37,25,18,1140858,1904186,2006,05/02/2006 03:29:06 AM,41.893169986,-87.758134122,"(41.893169986, -87.758134122)" -4706162,HM191258,02/20/2006 04:36:21 PM,0000X E 23RD ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0134,001,2,33,18,1176882,1889075,2006,05/02/2006 03:29:06 AM,41.850965586,-87.626288975,"(41.850965586, -87.626288975)" -4685801,HM189790,02/19/2006 05:20:00 PM,015XX S KEDZIE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1022,010,24,29,18,1155321,1892135,2006,04/29/2006 03:51:07 AM,41.859822463,-87.705340335,"(41.859822463, -87.705340335)" -4593317,HM185031,02/16/2006 06:10:00 PM,031XX W LAWRENCE AVE,1330,CRIMINAL TRESPASS,TO LAND,SMALL RETAIL STORE,true,false,1713,017,33,14,26,1154326,1931678,2006,02/19/2006 04:13:23 AM,41.968351768,-87.707934291,"(41.968351768, -87.707934291)" -4592716,HM184974,02/16/2006 07:15:00 AM,035XX N ROCKWELL ST,0810,THEFT,OVER $500,STREET,false,false,1913,019,47,5,06,1158110,1923324,2006,12/04/2014 12:43:35 PM,41.94535127,-87.69424977,"(41.94535127, -87.69424977)" -4591306,HM183787,02/16/2006 02:00:00 AM,015XX S KEDZIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,1022,010,24,29,08B,1155230,1892551,2006,02/25/2006 03:52:18 AM,41.860965839,-87.705663209,"(41.860965839, -87.705663209)" -4593838,HM181880,02/15/2006 01:05:00 AM,124XX S EMERALD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0523,005,34,53,08B,1173627,1822189,2006,02/20/2006 03:28:46 AM,41.667495167,-87.640213312,"(41.667495167, -87.640213312)" -4597769,HM179658,02/13/2006 07:50:00 PM,063XX S HALSTED ST,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,STREET,false,false,0723,007,20,68,14,1172016,1862832,2006,02/25/2006 03:52:18 AM,41.779060769,-87.64491969,"(41.779060769, -87.64491969)" -4591887,HM178264,02/13/2006 12:50:00 PM,019XX N SEDGWICK ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,1814,018,43,7,14,1173319,1913308,2006,02/18/2006 03:56:51 AM,41.917542197,-87.638645845,"(41.917542197, -87.638645845)" -4588726,HM178595,02/13/2006 10:05:00 AM,067XX S THROOP ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,false,false,0724,007,17,67,26,1168781,1860000,2006,02/17/2006 03:48:57 AM,41.771359864,-87.656861158,"(41.771359864, -87.656861158)" -4687479,HM178005,02/12/2006 08:00:00 PM,027XX W LAWRENCE AVE,2027,NARCOTICS,POSS: CRACK,OTHER,true,false,1911,019,47,4,18,1157282,1931730,2006,04/29/2006 03:51:07 AM,41.968434735,-87.697063787,"(41.968434735, -87.697063787)" -4691333,HM176479,02/11/2006 09:05:00 PM,012XX W GUNNISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2033,020,48,3,18,1167398,1932504,2006,04/29/2006 03:51:07 AM,41.970346442,-87.659845491,"(41.970346442, -87.659845491)" -4585541,HM175483,02/11/2006 11:11:20 AM,014XX S ALBANY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1022,010,24,29,14,1155903,1892942,2006,02/15/2006 03:40:56 AM,41.862025257,-87.703182225,"(41.862025257, -87.703182225)" -4582904,HM172749,02/09/2006 08:47:00 PM,047XX S EVANS AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0223,002,4,38,03,1182011,1873817,2006,03/22/2006 04:29:24 AM,41.808979148,-87.607937582,"(41.808979148, -87.607937582)" -4582942,HM171329,02/09/2006 07:45:00 AM,003XX W 111TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0522,005,34,49,08B,1176119,1831027,2006,03/25/2006 04:20:22 AM,41.69169265,-87.630829521,"(41.69169265, -87.630829521)" -4580982,HM169927,02/08/2006 12:25:00 PM,050XX S LAFLIN ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0933,009,16,61,08B,1167224,1871441,2006,02/13/2006 03:49:20 AM,41.802788826,-87.66224124,"(41.802788826, -87.66224124)" -4579583,HM169879,02/08/2006 12:00:00 PM,016XX W LE MOYNE ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,OTHER,false,false,1433,014,1,24,04A,1164966,1910121,2006,02/12/2006 04:11:43 AM,41.908978428,-87.669425489,"(41.908978428, -87.669425489)" -4660010,HM168826,02/07/2006 07:53:48 PM,021XX S KOSTNER AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1012,010,24,29,18,1147352,1889220,2006,04/01/2006 03:33:39 AM,41.851979557,-87.734667158,"(41.851979557, -87.734667158)" -4578679,HM168725,02/07/2006 07:05:00 PM,113XX S LONGWOOD DR,4651,OTHER OFFENSE,SEX OFFENDER: FAIL REG NEW ADD,RESIDENCE,true,false,2212,022,19,75,26,1164726,1829223,2006,06/11/2007 03:52:33 PM,41.686989564,-87.672591438,"(41.686989564, -87.672591438)" -4578101,HM168467,02/07/2006 05:03:34 PM,090XX S COMMERCIAL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,true,false,0424,004,10,46,14,1197763,1845268,2006,02/10/2006 03:41:04 AM,41.730259544,-87.551115898,"(41.730259544, -87.551115898)" -4578162,HM168946,02/07/2006 08:00:00 AM,053XX N WASHTENAW AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2011,020,40,4,05,1157430,1935311,2006,02/15/2006 03:40:56 AM,41.978258165,-87.696421703,"(41.978258165, -87.696421703)" -4577824,HM166487,02/06/2006 03:00:00 PM,023XX N MOODY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2512,025,29,19,08B,1134973,1915063,2006,02/20/2006 03:28:46 AM,41.923124048,-87.779489974,"(41.923124048, -87.779489974)" -4575564,HM164679,02/05/2006 12:20:00 PM,005XX N DEARBORN ST,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,RESIDENCE,false,true,1831,018,42,8,26,1175878,1904085,2006,02/15/2006 03:40:56 AM,41.892176591,-87.629522129,"(41.892176591, -87.629522129)" -4580071,HM170713,02/05/2006 09:00:00 AM,059XX W DIVERSEY AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,2514,025,30,19,06,1136298,1918039,2006,12/04/2014 12:43:35 PM,41.931266941,-87.77455012,"(41.931266941, -87.77455012)" -4573498,HM164165,02/05/2006 03:45:00 AM,066XX S STATE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,true,false,0322,003,20,69,14,1177469,1860721,2006,02/07/2006 03:28:20 AM,41.77314643,-87.624992346,"(41.77314643, -87.624992346)" -4574360,HM163139,02/04/2006 03:30:00 PM,053XX N BROADWAY,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,2013,020,48,77,06,1167314,1935410,2006,02/09/2006 03:37:51 AM,41.978322407,-87.660070384,"(41.978322407, -87.660070384)" -4575977,HM162932,02/04/2006 01:39:00 PM,0000X N PULASKI RD,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1122,011,28,26,26,1149764,1899891,2006,02/09/2006 03:37:51 AM,41.88121555,-87.725537088,"(41.88121555, -87.725537088)" -4573425,HM162767,02/04/2006 12:10:00 PM,052XX N LINCOLN AVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,2011,020,40,4,26,1158504,1934480,2006,02/07/2006 03:28:20 AM,41.975955881,-87.692494907,"(41.975955881, -87.692494907)" -4573638,HM162609,02/04/2006 10:36:37 AM,121XX S EMERALD AVE,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,RESIDENCE,false,false,0523,005,34,53,26,1173558,1824234,2006,02/14/2006 03:22:09 AM,41.673108507,-87.640405655,"(41.673108507, -87.640405655)" -4571591,HM160832,02/03/2006 12:00:00 PM,074XX S YATES BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0334,003,7,43,14,1193457,1856019,2006,02/09/2006 03:37:51 AM,41.759867495,-87.566538852,"(41.759867495, -87.566538852)" -4578638,HM160265,02/03/2006 05:45:00 AM,023XX W ADDISON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1912,019,47,5,14,1160032,1923887,2006,02/10/2006 03:41:04 AM,41.946856635,-87.687169614,"(41.946856635, -87.687169614)" -4567016,HM154871,01/31/2006 09:07:02 AM,002XX N LAVERGNE AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1532,015,28,25,08B,1142961,1901186,2006,06/11/2007 03:52:33 PM,41.884898681,-87.75048532,"(41.884898681, -87.75048532)" -4563955,HM154280,01/30/2006 08:55:00 PM,005XX N LAWLER AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,1532,015,28,25,08A,1142568,1902910,2006,02/03/2006 03:39:58 AM,41.889636861,-87.751885598,"(41.889636861, -87.751885598)" -4561630,HM151390,01/28/2006 10:00:00 PM,067XX S PAXTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0331,003,5,43,14,1192083,1860488,2006,01/31/2006 03:37:56 AM,41.772164275,-87.571429384,"(41.772164275, -87.571429384)" -4560308,HM149455,01/27/2006 10:45:00 PM,079XX S ELLIS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0624,006,8,44,07,1184311,1852507,2006,04/24/2006 03:36:24 AM,41.750449038,-87.600168148,"(41.750449038, -87.600168148)" -4560011,HM148391,01/27/2006 05:35:00 PM,015XX E 71ST PL,0460,BATTERY,SIMPLE,STREET,false,false,0324,003,5,43,08B,1187500,1857844,2006,01/31/2006 03:37:56 AM,41.765019094,-87.588312969,"(41.765019094, -87.588312969)" -4561300,HM147668,01/26/2006 11:00:00 PM,010XX N MENARD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1511,015,29,25,07,1137540,1906385,2006,06/11/2007 03:52:33 PM,41.899264709,-87.770267093,"(41.899264709, -87.770267093)" -4564191,HM146503,01/26/2006 05:50:00 PM,0000X W 47TH ST,0820,THEFT,$500 AND UNDER,PARK PROPERTY,false,false,0231,002,3,38,06,1176619,1873814,2006,12/04/2014 12:43:35 PM,41.809094102,-87.627714291,"(41.809094102, -87.627714291)" -4567004,HM146484,01/26/2006 05:25:00 PM,012XX N BURLING ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1822,018,27,8,26,1171043,1908530,2006,02/03/2006 03:39:58 AM,41.904481394,-87.647148303,"(41.904481394, -87.647148303)" -4555428,HM145149,01/26/2006 12:20:00 AM,035XX W HURON ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1121,011,27,23,26,1152867,1904404,2006,02/07/2006 03:28:20 AM,41.893538813,-87.714023369,"(41.893538813, -87.714023369)" -4578230,HM145168,01/26/2006 12:05:00 AM,046XX W 59TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0813,008,13,65,14,1146615,1865053,2006,02/11/2006 03:54:44 AM,41.785675833,-87.737986743,"(41.785675833, -87.737986743)" -4558164,HM144944,01/25/2006 09:20:27 PM,050XX N KENNETH AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1712,017,39,14,08B,1145743,1933199,2006,01/31/2006 03:37:56 AM,41.97269309,-87.739455026,"(41.97269309, -87.739455026)" -4627080,HM143626,01/25/2006 09:00:00 AM,063XX W 56TH ST,2022,NARCOTICS,POSS: COCAINE,"SCHOOL, PUBLIC, BUILDING",true,false,0811,008,23,56,18,1135058,1866707,2006,03/18/2006 04:28:50 AM,41.790426489,-87.780322015,"(41.790426489, -87.780322015)" -4556084,HM144069,01/25/2006 02:00:00 AM,040XX N ELSTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,1723,017,39,16,14,1150903,1926632,2006,01/30/2006 03:44:08 AM,41.954573068,-87.720653219,"(41.954573068, -87.720653219)" -4642723,HM141940,01/24/2006 01:20:00 PM,039XX W GRENSHAW ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1132,011,24,29,18,1150488,1894794,2006,03/28/2006 03:57:36 AM,41.867214707,-87.723011661,"(41.867214707, -87.723011661)" -4563934,HM141290,01/23/2006 11:00:00 AM,005XX E 74TH ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,true,0323,003,6,69,05,1181301,1856034,2006,02/16/2006 03:38:57 AM,41.760197358,-87.611089567,"(41.760197358, -87.611089567)" -4557294,HM146305,01/22/2006 11:55:00 PM,014XX W TAYLOR ST,0810,THEFT,OVER $500,RESTAURANT,false,false,1231,012,2,28,06,1166992,1895647,2006,12/04/2014 12:43:35 PM,41.869217445,-87.662398676,"(41.869217445, -87.662398676)" -4558153,HM144502,01/22/2006 08:00:00 PM,021XX N LINCOLN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1812,018,43,7,26,1172374,1914493,2006,02/06/2006 03:16:34 AM,41.920814845,-87.642082678,"(41.920814845, -87.642082678)" -4546278,HM134420,01/20/2006 02:30:00 AM,001XX W HUBBARD ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,false,false,1831,018,42,8,08B,1175314,1903252,2006,02/15/2006 03:40:56 AM,41.88990347,-87.631618456,"(41.88990347, -87.631618456)" -4545063,HM133508,01/19/2006 04:00:00 PM,115XX S OAKLEY AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2212,022,19,75,26,1162992,1828077,2006,05/18/2007 06:17:05 PM,41.683881055,-87.678971263,"(41.683881055, -87.678971263)" -4550229,HM132837,01/19/2006 11:40:00 AM,029XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,2113,001,3,35,26,1176716,1885520,2006,01/26/2006 07:28:55 PM,41.841214155,-87.627005535,"(41.841214155, -87.627005535)" -4540120,HM128455,01/16/2006 09:00:00 PM,087XX S COMMERCIAL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0424,004,10,46,06,1197700,1847611,2006,12/04/2014 12:43:35 PM,41.736690495,-87.551268691,"(41.736690495, -87.551268691)" -4567704,HM157386,01/14/2006 10:40:00 AM,012XX S ASHLAND AVE,1120,DECEPTIVE PRACTICE,FORGERY,BANK,true,false,1224,012,2,28,10,1165874,1894639,2006,03/25/2006 04:20:22 AM,41.866475313,-87.666531874,"(41.866475313, -87.666531874)" -4543673,HM123389,01/14/2006 01:06:00 AM,035XX S CALUMET AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0211,002,4,35,14,1179136,1881574,2006,05/18/2007 06:17:05 PM,41.830331088,-87.618245628,"(41.830331088, -87.618245628)" -4540706,HM128718,01/13/2006 04:15:00 PM,069XX N HIAWATHA AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,"SCHOOL, PUBLIC, BUILDING",false,false,1621,016,41,12,14,1135081,1945795,2006,01/26/2006 07:28:55 PM,42.007453697,-87.778361731,"(42.007453697, -87.778361731)" -4537372,HM123298,01/13/2006 01:00:00 PM,022XX N LAWLER AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2522,025,31,19,14,1142400,1914280,2006,01/26/2006 07:28:55 PM,41.920840542,-87.752219706,"(41.920840542, -87.752219706)" -4610750,HM119169,01/11/2006 07:10:00 PM,039XX W IRVING PARK RD,1670,GAMBLING,GAME/AMUSEMENT DEVICE,RESTAURANT,true,false,1732,017,39,16,19,1149063,1926242,2006,09/19/2010 12:45:18 AM,41.953538775,-87.727427531,"(41.953538775, -87.727427531)" -4534035,HM118401,01/11/2006 01:28:13 PM,079XX S GREENWOOD AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0624,006,8,44,06,1184891,1852521,2006,01/26/2006 07:28:55 PM,41.750473874,-87.598042348,"(41.750473874, -87.598042348)" -4604592,HM118073,01/11/2006 12:05:00 PM,039XX W GRENSHAW ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1132,011,24,29,18,1150488,1894794,2006,03/05/2006 04:52:17 AM,41.867214707,-87.723011661,"(41.867214707, -87.723011661)" -4535708,HM118099,01/11/2006 10:31:00 AM,027XX W FULTON ST,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,1331,012,27,27,06,1157934,1901933,2006,12/04/2014 12:43:35 PM,41.886656296,-87.695481445,"(41.886656296, -87.695481445)" -4534052,HM116831,01/10/2006 07:00:00 AM,114XX S ADA ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2234,022,34,75,05,1169419,1828937,2006,05/18/2007 06:17:05 PM,41.686104673,-87.655419247,"(41.686104673, -87.655419247)" -4525138,HM113126,01/08/2006 01:45:00 PM,018XX W MONROE ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,CHA APARTMENT,false,false,1211,012,2,28,26,1164255,1899544,2006,01/26/2006 07:28:55 PM,41.87996941,-87.672336705,"(41.87996941, -87.672336705)" -4536448,HM124161,01/08/2006 12:05:00 AM,005XX W OAKDALE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2333,019,44,6,07,1172115,1919898,2006,05/18/2007 06:17:05 PM,41.935652123,-87.642874373,"(41.935652123, -87.642874373)" -4524963,HM112140,01/07/2006 09:45:00 PM,016XX S HOMAN AVE,0460,BATTERY,SIMPLE,STREET,false,false,1021,010,24,29,08B,1154013,1891476,2006,05/18/2007 06:17:05 PM,41.858040245,-87.710159219,"(41.858040245, -87.710159219)" -4525151,HM112050,01/07/2006 08:00:00 PM,026XX N ELSTON AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1432,014,1,22,06,1160776,1917684,2006,05/18/2007 06:17:05 PM,41.929819797,-87.684607426,"(41.929819797, -87.684607426)" -4536325,HM111776,01/07/2006 04:50:00 PM,008XX E 53RD ST,0560,ASSAULT,SIMPLE,APARTMENT,true,false,2131,002,5,41,08A,1182955,1870097,2006,05/18/2007 06:17:05 PM,41.798749254,-87.604590903,"(41.798749254, -87.604590903)" -4524768,HM110153,01/06/2006 06:45:00 PM,022XX S MILLARD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1013,010,22,30,14,1152343,1888986,2006,05/18/2007 06:17:05 PM,41.851240488,-87.716354864,"(41.851240488, -87.716354864)" -4530450,HM109566,01/06/2006 12:20:00 PM,001XX E 47TH ST,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,false,false,0221,002,3,38,26,1178102,1873939,2006,01/26/2006 07:28:55 PM,41.809403571,-87.622271183,"(41.809403571, -87.622271183)" -4522298,HM109473,01/06/2006 02:30:00 AM,051XX S ADA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0933,009,16,61,14,1168238,1870712,2006,02/03/2006 03:39:58 AM,41.800766583,-87.658543438,"(41.800766583, -87.658543438)" -4516206,HM105144,01/03/2006 10:15:00 PM,075XX S COLFAX AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0421,004,7,43,26,1194799,1855229,2006,05/18/2007 06:17:05 PM,41.757666746,-87.561646497,"(41.757666746, -87.561646497)" -4516622,HM102695,01/02/2006 04:30:10 PM,013XX W 13TH ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,1231,012,2,28,04A,1167785,1894147,2006,05/18/2007 06:17:05 PM,41.865084278,-87.659530606,"(41.865084278, -87.659530606)" -4515683,HM101750,01/01/2006 11:00:00 PM,0000X W ONTARIO ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1832,018,42,8,06,1175891,1904437,2006,01/26/2006 07:28:55 PM,41.893142205,-87.629463781,"(41.893142205, -87.629463781)" -4581671,HM172459,01/01/2006 09:00:00 PM,048XX W MONTANA ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2521,025,31,19,26,1143701,1915829,2006,02/16/2006 03:38:57 AM,41.925066863,-87.747400603,"(41.925066863, -87.747400603)" -9398072,HW541230,01/01/2006 09:00:00 AM,049XX N AVERS AVE,1752,OFFENSE INVOLVING CHILDREN,AGG CRIM SEX ABUSE FAM MEMBER,RESIDENCE,false,false,1712,,39,14,20,,,2006,01/17/2014 12:40:17 AM,,, -4582633,HL818109,12/30/2005 09:44:39 PM,047XX W ERIE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1111,011,28,25,18,1144671,1903933,2005,02/14/2006 03:22:09 AM,41.892404727,-87.744136594,"(41.892404727, -87.744136594)" -4511361,HL817693,12/30/2005 04:20:00 PM,003XX W 23RD PL,0320,ROBBERY,STRONGARM - NO WEAPON,DRIVEWAY - RESIDENTIAL,false,false,2111,009,25,34,03,1174361,1888668,2005,01/30/2006 03:44:08 AM,41.849905334,-87.635553628,"(41.849905334, -87.635553628)" -4512098,HL816710,12/30/2005 02:15:00 AM,033XX W BELMONT AVE,0460,BATTERY,SIMPLE,STREET,false,false,1733,017,35,21,08B,1153422,1921125,2005,01/26/2006 03:51:08 AM,41.939411673,-87.711539799,"(41.939411673, -87.711539799)" -4515277,HL815699,12/29/2005 03:00:00 PM,008XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1833,018,42,8,06,1177376,1906134,2005,01/26/2006 03:51:08 AM,41.897765295,-87.623958464,"(41.897765295, -87.623958464)" -4507572,HL814762,12/29/2005 01:50:00 AM,073XX N WESTERN AVE,0870,THEFT,POCKET-PICKING,BAR OR TAVERN,false,false,2411,024,49,2,06,1159055,1948443,2005,01/26/2006 03:51:08 AM,42.014259548,-87.690082954,"(42.014259548, -87.690082954)" -4534369,HL005521,12/27/2005 04:00:00 PM,002XX E ILLINOIS ST,0610,BURGLARY,FORCIBLE ENTRY,FACTORY/MANUFACTURING BUILDING,false,false,1834,018,42,8,05,1178214,1903711,2005,03/05/2006 04:52:17 AM,41.891097416,-87.62095451,"(41.891097416, -87.62095451)" -4521384,HL812254,12/27/2005 03:30:00 PM,019XX N BURLING ST,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,1813,018,43,7,14,1170936,1912992,2005,01/26/2006 03:51:08 AM,41.916727712,-87.647410268,"(41.916727712, -87.647410268)" -4504759,HL811324,12/27/2005 09:00:00 AM,016XX W GREENLEAF AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,false,false,2423,024,49,1,04B,1164432,1947070,2005,01/30/2006 03:44:08 AM,42.01037943,-87.670336969,"(42.01037943, -87.670336969)" -4506878,HL813307,12/26/2005 08:00:00 PM,026XX N CENTRAL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,2514,025,30,19,14,1138623,1917266,2005,01/26/2006 03:51:08 AM,41.929103848,-87.766024838,"(41.929103848, -87.766024838)" -4503414,HL809696,12/25/2005 09:00:00 PM,016XX N PAULINA ST,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1433,014,32,24,06,1164722,1910921,2005,12/04/2014 12:43:35 PM,41.911178861,-87.670299112,"(41.911178861, -87.670299112)" -4502652,HL808226,12/24/2005 07:30:00 PM,019XX S LOOMIS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1222,012,25,31,08B,1167382,1890660,2005,01/26/2006 03:51:08 AM,41.85552432,-87.661110247,"(41.85552432, -87.661110247)" -4499434,HL803048,12/22/2005 12:10:00 AM,062XX S KILDARE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0813,008,13,65,26,1148739,1862800,2005,01/26/2006 03:51:08 AM,41.779452619,-87.730256985,"(41.779452619, -87.730256985)" -4502501,HL802318,12/21/2005 10:30:00 AM,001XX E 83RD ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0631,006,6,44,05,1178749,1850046,2005,01/26/2006 03:51:08 AM,41.743824017,-87.620624411,"(41.743824017, -87.620624411)" -4501030,HL800779,12/20/2005 09:26:00 PM,023XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0134,001,3,33,26,1176640,1888950,2005,01/26/2006 03:51:08 AM,41.850628042,-87.62718093,"(41.850628042, -87.62718093)" -4497354,HL800397,12/20/2005 08:00:00 AM,055XX N NEENAH AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1613,016,41,10,05,1131967,1936416,2005,01/26/2006 03:51:08 AM,41.981771723,-87.790037894,"(41.981771723, -87.790037894)" -4496250,HL798708,12/19/2005 07:05:00 PM,003XX E ILLINOIS ST,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,BAR OR TAVERN,false,false,1834,018,42,8,10,1178703,1903728,2005,01/26/2006 03:51:08 AM,41.891132911,-87.619158156,"(41.891132911, -87.619158156)" -4494779,HL797824,12/19/2005 11:45:00 AM,013XX S KOSTNER AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1011,010,24,29,04B,1147228,1893239,2005,01/26/2006 03:51:08 AM,41.863010573,-87.735019486,"(41.863010573, -87.735019486)" -4498679,HL797219,12/19/2005 12:45:00 AM,059XX S MAY ST,031A,ROBBERY,ARMED: HANDGUN,APARTMENT,false,false,0712,007,16,68,03,1169710,1865275,2005,01/30/2006 03:44:08 AM,41.785814999,-87.653302857,"(41.785814999, -87.653302857)" -4491843,HL794404,12/17/2005 08:00:00 AM,083XX S MACKINAW AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0424,004,10,46,26,1199881,1850294,2005,01/26/2006 03:51:08 AM,41.743998175,-87.543188149,"(41.743998175, -87.543188149)" -4491043,HL792389,12/16/2005 09:50:00 AM,014XX N MILWAUKEE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,1424,014,1,24,14,1163971,1909552,2005,01/26/2006 03:51:08 AM,41.907438128,-87.673096738,"(41.907438128, -87.673096738)" -4490285,HL791666,12/15/2005 09:10:00 PM,035XX W FULLERTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1413,014,26,22,14,1152599,1915692,2005,01/26/2006 03:51:08 AM,41.924519424,-87.71470865,"(41.924519424, -87.71470865)" -4489108,HL790838,12/14/2005 08:00:00 PM,003XX W HILL ST,0810,THEFT,OVER $500,STREET,false,false,1823,018,27,8,06,1173732,1907631,2005,12/04/2014 12:43:35 PM,41.901955042,-87.63729774,"(41.901955042, -87.63729774)" -4487424,HL788987,12/13/2005 11:00:00 AM,038XX W MONTROSE AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,SMALL RETAIL STORE,false,false,1723,017,39,16,14,1150111,1928928,2005,01/26/2006 03:51:08 AM,41.960888959,-87.723504688,"(41.960888959, -87.723504688)" -4486551,HL786216,12/12/2005 10:40:00 PM,131XX S CORLISS AVE,031A,ROBBERY,ARMED: HANDGUN,CHA PARKING LOT/GROUNDS,false,false,0533,,9,54,03,,,2005,01/26/2006 03:51:08 AM,,, -4484233,HL785794,12/11/2005 05:30:00 PM,027XX N HAMPDEN CT,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,2333,019,43,7,11,1172252,1918565,2005,01/26/2006 03:51:08 AM,41.931991289,-87.642410372,"(41.931991289, -87.642410372)" -4480434,HL781114,12/09/2005 11:15:00 PM,009XX W AGATITE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2313,019,46,3,05,1169283,1929774,2005,01/26/2006 03:51:08 AM,41.962814367,-87.652993984,"(41.962814367, -87.652993984)" -4486017,HL788058,12/09/2005 04:00:00 PM,017XX E 70TH ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0332,003,5,43,26,1189261,1858957,2005,01/26/2006 03:51:08 AM,41.768031223,-87.581822849,"(41.768031223, -87.581822849)" -4479921,HL778736,12/08/2005 05:00:00 PM,007XX W NORTH AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1822,018,27,8,06,1170822,1910836,2005,01/26/2006 03:51:08 AM,41.910814035,-87.647892403,"(41.910814035, -87.647892403)" -4482941,HL779761,12/08/2005 11:50:00 AM,087XX S ASHLAND AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,2221,022,21,71,11,1167151,1846958,2005,01/26/2006 03:51:08 AM,41.735605838,-87.66320855,"(41.735605838, -87.66320855)" -4480878,HL778790,12/07/2005 10:30:00 PM,052XX S BERKELEY AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,true,true,2131,002,4,41,20,1184026,1870653,2005,01/26/2006 03:51:08 AM,41.80024998,-87.600645984,"(41.80024998, -87.600645984)" -4479513,HL776648,12/07/2005 01:30:00 PM,087XX S ESCANABA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0423,004,10,46,14,1196866,1847537,2005,01/26/2006 03:51:08 AM,41.736508189,-87.554326586,"(41.736508189, -87.554326586)" -4577333,HL773721,12/05/2005 07:05:00 PM,052XX S HOMAN AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0822,008,14,63,18,1154635,1869799,2005,02/14/2006 03:22:09 AM,41.798543394,-87.708454834,"(41.798543394, -87.708454834)" -4474699,HL772573,12/05/2005 09:05:32 AM,050XX W MAYPOLE AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1532,015,28,25,08A,1142922,1901037,2005,06/11/2007 03:52:33 PM,41.884490534,-87.750632251,"(41.884490534, -87.750632251)" -4471670,HL771522,12/04/2005 03:30:00 AM,017XX S MORGAN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1233,012,25,31,08B,1170194,1891742,2005,01/26/2006 03:51:08 AM,41.858432542,-87.650757361,"(41.858432542, -87.650757361)" -4472006,HL771277,12/03/2005 11:45:00 PM,030XX W CERMAK RD,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,true,false,1022,010,24,30,07,1156436,1889267,2005,01/26/2006 03:51:08 AM,41.851929902,-87.701324956,"(41.851929902, -87.701324956)" -4562994,HL768571,12/02/2005 11:24:11 PM,025XX E 79TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,0421,004,7,43,18,1194402,1853117,2005,02/15/2006 03:40:56 AM,41.751881017,-87.563170711,"(41.751881017, -87.563170711)" -4469011,HL766191,12/01/2005 04:44:31 PM,046XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,PARKING LOT/GARAGE(NON.RESID.),false,false,1113,011,28,25,11,1145224,1901709,2005,01/26/2006 03:51:08 AM,41.886291377,-87.742161904,"(41.886291377, -87.742161904)" -4468734,HL764994,12/01/2005 07:30:00 AM,064XX W BELMONT AVE,0560,ASSAULT,SIMPLE,SMALL RETAIL STORE,false,false,2511,025,36,19,08A,1133128,1920547,2005,01/26/2006 03:51:08 AM,41.938205281,-87.786140668,"(41.938205281, -87.786140668)" -4468101,HL765972,11/30/2005 07:30:00 PM,002XX E CULLERTON ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0134,001,2,33,06,1178193,1890707,2005,01/26/2006 03:51:08 AM,41.855414181,-87.621427725,"(41.855414181, -87.621427725)" -4466629,HL763417,11/30/2005 06:15:00 AM,037XX S DR MARTIN LUTHER KING JR DR,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,CHA APARTMENT,false,false,0212,002,3,35,03,1179507,1880415,2005,01/26/2006 03:51:08 AM,41.827142222,-87.616919896,"(41.827142222, -87.616919896)" -4463674,HL761627,11/29/2005 10:38:39 AM,020XX E 75TH ST,0610,BURGLARY,FORCIBLE ENTRY,BARBERSHOP,false,false,0414,004,8,43,05,1191252,1855604,2005,01/26/2006 03:51:08 AM,41.758782351,-87.57463344,"(41.758782351, -87.57463344)" -4471305,HL767531,11/29/2005 10:00:00 AM,061XX S FAIRFIELD AVE,0810,THEFT,OVER $500,STREET,false,false,0825,008,15,66,06,1159062,1863579,2005,12/04/2014 12:43:35 PM,41.781385404,-87.692390051,"(41.781385404, -87.692390051)" -4459772,HL759089,11/27/2005 09:45:00 PM,034XX W 85TH ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0834,008,18,70,03,1155049,1847978,2005,03/18/2006 04:28:50 AM,41.738654917,-87.707518847,"(41.738654917, -87.707518847)" -4462783,HL758808,11/27/2005 12:00:00 AM,006XX S JEFFERSON ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0131,001,2,28,07,1172382,1897418,2005,01/26/2006 03:51:08 AM,41.873959886,-87.642558413,"(41.873959886, -87.642558413)" -4463950,HL756533,11/26/2005 01:45:00 PM,016XX N HUMBOLDT BLVD,0440,BATTERY,AGG: HANDS/FIST/FEET NO/MINOR INJURY,SIDEWALK,false,false,1421,014,35,23,08B,1156076,1910999,2005,01/26/2006 03:51:08 AM,41.91157191,-87.702059545,"(41.91157191, -87.702059545)" -4461208,HL759350,11/26/2005 12:00:00 PM,001XX S MICHIGAN AVE,0870,THEFT,POCKET-PICKING,GOVERNMENT BUILDING/PROPERTY,false,false,0124,001,42,32,06,1177362,1899912,2005,01/26/2006 03:51:08 AM,41.880692129,-87.624198743,"(41.880692129, -87.624198743)" -4458057,HL756069,11/25/2005 10:00:00 PM,054XX S NORDICA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0811,008,23,56,14,1130330,1867909,2005,01/26/2006 03:51:08 AM,41.79380715,-87.797631334,"(41.79380715, -87.797631334)" -4457864,HL755226,11/24/2005 08:00:00 PM,018XX W 34TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0922,009,11,59,06,1164435,1882116,2005,12/04/2014 12:43:35 PM,41.832141531,-87.672168531,"(41.832141531, -87.672168531)" -4455852,HL753008,11/23/2005 10:33:16 PM,003XX N CENTRAL AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1523,015,28,25,08B,1139015,1901951,2005,01/26/2006 03:51:08 AM,41.887070569,-87.76495725,"(41.887070569, -87.76495725)" -4454950,HL753113,11/23/2005 04:00:00 PM,034XX N KENTON AVE,2830,OTHER OFFENSE,OBSCENE TELEPHONE CALLS,RESIDENCE,false,false,1731,017,30,16,17,1145146,1922793,2005,01/26/2006 03:51:08 AM,41.944149511,-87.741914426,"(41.944149511, -87.741914426)" -4451919,HL748813,11/21/2005 08:30:00 PM,014XX N CLYBOURN AVE,0560,ASSAULT,SIMPLE,STREET,false,false,1822,018,27,8,08A,1171348,1910006,2005,01/26/2006 03:51:08 AM,41.908524919,-87.645984517,"(41.908524919, -87.645984517)" -4457204,HL747742,11/20/2005 10:30:00 PM,041XX N ASHLAND AVE,0810,THEFT,OVER $500,STREET,false,false,1923,019,47,6,06,1164877,1927433,2005,12/04/2014 12:43:35 PM,41.956485416,-87.669259841,"(41.956485416, -87.669259841)" -4567564,HL746827,11/20/2005 07:40:08 PM,012XX N BURLING ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CHA PARKING LOT/GROUNDS,true,false,1822,018,27,8,18,1171043,1908530,2005,02/11/2006 03:54:44 AM,41.904481394,-87.647148303,"(41.904481394, -87.647148303)" -4455345,HL752312,11/20/2005 05:00:00 PM,118XX S ARTESIAN AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,2212,022,19,75,26,1162155,1825897,2005,01/26/2006 03:51:08 AM,41.67791614,-87.682095592,"(41.67791614, -87.682095592)" -4448014,HL745411,11/19/2005 11:50:57 PM,024XX N AVERS AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,2524,025,30,22,05,1150264,1916021,2005,01/26/2006 03:51:08 AM,41.925468134,-87.723279898,"(41.925468134, -87.723279898)" -4448154,HL745370,11/19/2005 11:15:00 PM,047XX W NORTH AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,2533,025,37,25,06,1144223,1910247,2005,01/26/2006 03:51:08 AM,41.909739475,-87.745623072,"(41.909739475, -87.745623072)" -4458774,HL746332,11/19/2005 01:00:00 AM,025XX N HALSTED ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1933,019,43,7,06,1170462,1917355,2005,02/01/2006 03:54:18 AM,41.928710388,-87.649023805,"(41.928710388, -87.649023805)" -4448274,HL742977,11/18/2005 05:45:00 PM,085XX S COTTAGE GROVE AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0632,006,6,44,06,1183016,1848397,2005,01/26/2006 03:51:08 AM,41.739200936,-87.605041045,"(41.739200936, -87.605041045)" -4479761,HL741431,11/17/2005 10:05:03 PM,049XX W QUINCY ST,2024,NARCOTICS,POSS: HEROIN(WHITE),OTHER,true,false,1533,015,28,25,18,1143552,1898588,2005,01/26/2006 03:51:08 AM,41.877758417,-87.748380075,"(41.877758417, -87.748380075)" -4446992,HL739741,11/16/2005 10:10:00 PM,011XX E 65TH ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0314,003,20,42,15,1185152,1862183,2005,06/11/2007 03:52:33 PM,41.77698119,-87.596782762,"(41.77698119, -87.596782762)" -4440314,HL736253,11/15/2005 09:00:00 AM,027XX W FOSTER AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2031,020,40,4,08B,1157354,1934387,2005,01/26/2006 03:51:08 AM,41.975724213,-87.696726448,"(41.975724213, -87.696726448)" -4436413,HL733939,11/14/2005 12:40:00 AM,060XX W MIAMI AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1611,016,45,10,03,1134828,1939954,2005,01/26/2006 03:51:08 AM,41.991430022,-87.779431604,"(41.991430022, -87.779431604)" -4438709,HL727230,11/10/2005 01:15:00 PM,013XX N HOMAN AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,1422,014,26,23,26,1153419,1908474,2005,06/11/2007 03:52:33 PM,41.904696328,-87.711887778,"(41.904696328, -87.711887778)" -4430196,HL726553,11/10/2005 12:10:00 AM,049XX N KENMORE AVE,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,2024,020,46,3,06,1168397,1933162,2005,01/26/2006 03:51:08 AM,41.972130405,-87.656153004,"(41.972130405, -87.656153004)" -4442347,HL739382,11/10/2005 12:01:00 AM,056XX N BROADWAY,0890,THEFT,FROM BUILDING,OTHER,false,false,2022,020,48,77,06,1167325,1937797,2005,01/26/2006 03:51:08 AM,41.984872163,-87.659960921,"(41.984872163, -87.659960921)" -4428262,HL724088,11/08/2005 07:30:00 PM,034XX N KEDVALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,1731,017,30,16,08B,1148015,1922826,2005,01/26/2006 03:51:08 AM,41.944185262,-87.731368308,"(41.944185262, -87.731368308)" -4428957,HL723813,11/08/2005 05:10:00 PM,048XX S LAVERGNE AVE,0880,THEFT,PURSE-SNATCHING,ALLEY,false,false,0814,008,23,56,06,1143809,1871835,2005,01/26/2006 03:51:08 AM,41.804339604,-87.748105749,"(41.804339604, -87.748105749)" -4446539,HL722409,11/07/2005 10:25:00 PM,020XX N KIMBALL AVE,0460,BATTERY,SIMPLE,ALLEY,false,false,1413,014,35,22,08B,1153421,1913210,2005,01/26/2006 03:51:08 AM,41.917692294,-87.711754358,"(41.917692294, -87.711754358)" -4427019,HL721991,11/07/2005 07:45:00 PM,076XX S SOUTH CHICAGO AVE,031A,ROBBERY,ARMED: HANDGUN,GAS STATION,false,false,0411,004,5,43,03,1186321,1854836,2005,06/04/2012 01:47:36 PM,41.756792803,-87.592729208,"(41.756792803, -87.592729208)" -4433240,HL727481,11/07/2005 06:00:00 PM,009XX E 52ND ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2131,002,4,41,08B,1183250,1870823,2005,01/26/2006 03:51:08 AM,41.800734589,-87.603486482,"(41.800734589, -87.603486482)" -4431926,HL723209,11/07/2005 02:00:00 PM,003XX E 133RD ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0533,005,9,54,06,1180722,1817241,2005,01/26/2006 03:51:08 AM,41.653757567,-87.614398582,"(41.653757567, -87.614398582)" -4426888,HL721022,11/07/2005 12:25:00 PM,071XX S CARPENTER ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0733,007,17,68,14,1170508,1857486,2005,01/26/2006 03:51:08 AM,41.764423685,-87.65060373,"(41.764423685, -87.65060373)" -4520272,HL719988,11/06/2005 09:00:00 PM,041XX W MADISON ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1115,011,28,26,26,1148477,1899723,2005,01/26/2006 03:51:08 AM,41.880779454,-87.730267258,"(41.880779454, -87.730267258)" -4426139,HL717859,11/05/2005 06:20:55 PM,002XX W 107TH PL,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,0513,005,34,49,03,1176456,1833691,2005,01/26/2006 03:51:08 AM,41.698995509,-87.629516032,"(41.698995509, -87.629516032)" -4422238,HL718595,11/05/2005 05:00:00 PM,009XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,1833,018,42,8,06,1177362,1906783,2005,01/26/2006 03:51:08 AM,41.899546499,-87.623990175,"(41.899546499, -87.623990175)" -4637076,HM235473,11/05/2005 07:30:00 AM,004XX N NOBLE ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,COMMERCIAL / BUSINESS OFFICE,false,false,1324,012,27,24,11,1166945,1902891,2005,05/09/2006 03:25:05 AM,41.889096553,-87.662363311,"(41.889096553, -87.662363311)" -4420782,HL715983,11/04/2005 07:41:00 PM,053XX S CICERO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0815,008,23,56,14,1145300,1869006,2005,01/26/2006 03:51:08 AM,41.796548392,-87.742708658,"(41.796548392, -87.742708658)" -4509013,HL716354,11/04/2005 01:04:00 AM,010XX W NORTH AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1811,018,32,7,16,1169059,1910864,2005,01/26/2006 03:51:08 AM,41.910929347,-87.654368177,"(41.910929347, -87.654368177)" -4421753,HL715243,11/03/2005 08:00:00 PM,042XX W MADISON ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1115,011,28,26,08B,1148326,1899720,2005,01/26/2006 03:51:08 AM,41.880774132,-87.7308218,"(41.880774132, -87.7308218)" -4418330,HL713014,11/03/2005 08:30:00 AM,027XX W 68TH ST,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,false,false,0831,008,15,66,06,1159482,1859406,2005,01/26/2006 03:51:08 AM,41.769925494,-87.690964504,"(41.769925494, -87.690964504)" -4419299,HL713552,11/03/2005 03:00:00 AM,045XX S ROCKWELL ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0912,009,12,58,14,1159752,1874521,2005,01/26/2006 03:51:08 AM,41.81139756,-87.689559912,"(41.81139756, -87.689559912)" -4420095,HL709907,11/01/2005 08:05:00 PM,043XX W JACKSON BLVD,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,true,false,1131,011,28,26,15,1147575,1898295,2005,06/11/2007 03:52:33 PM,41.876878202,-87.733616001,"(41.876878202, -87.733616001)" -4417114,HL710866,11/01/2005 05:00:00 PM,073XX S STEWART AVE,0810,THEFT,OVER $500,RESIDENCE-GARAGE,false,false,0731,007,17,69,06,1174937,1856213,2005,12/04/2014 12:43:35 PM,41.76083281,-87.634408271,"(41.76083281, -87.634408271)" -4411724,HL707572,10/30/2005 08:15:00 PM,108XX S RACINE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,false,2234,022,34,75,26,1170293,1832832,2005,01/26/2006 03:51:08 AM,41.696774265,-87.652106937,"(41.696774265, -87.652106937)" -4478143,HL704698,10/30/2005 01:09:51 PM,043XX W KAMERLING AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,2534,025,37,23,18,1146881,1908583,2005,01/26/2006 03:51:08 AM,41.905122896,-87.735901172,"(41.905122896, -87.735901172)" -4420883,HL715554,10/29/2005 02:30:00 PM,021XX N LARAMIE AVE,2851,PUBLIC PEACE VIOLATION,ARSON THREAT,APARTMENT,false,false,2515,025,37,19,26,1141329,1913794,2005,01/26/2006 03:51:08 AM,41.919526753,-87.756166862,"(41.919526753, -87.756166862)" -4408880,HL702544,10/29/2005 11:30:00 AM,002XX N SANGAMON ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,1212,012,27,28,26,1170011,1901809,2005,01/26/2006 03:51:08 AM,41.886061132,-87.6511354,"(41.886061132, -87.6511354)" -4410740,HL702348,10/29/2005 09:40:00 AM,005XX E 33RD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,false,2122,002,4,35,08B,1180495,1882843,2005,01/26/2006 03:51:08 AM,41.833782165,-87.61322045,"(41.833782165, -87.61322045)" -4479400,HL702026,10/29/2005 03:01:00 AM,073XX N CLARK ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2423,024,49,1,18,1163193,1948666,2005,01/26/2006 03:51:08 AM,42.014785127,-87.674850521,"(42.014785127, -87.674850521)" -4408168,HL702672,10/29/2005 02:00:00 AM,117XX S CAMPBELL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2212,022,19,75,05,1161794,1826744,2005,01/26/2006 03:51:08 AM,41.680247945,-87.683393597,"(41.680247945, -87.683393597)" -4406636,HL701012,10/28/2005 01:00:00 PM,027XX W AINSLIE ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,2031,020,40,4,08A,1157311,1932608,2005,01/26/2006 03:51:08 AM,41.970843423,-87.696933174,"(41.970843423, -87.696933174)" -4405274,HL698739,10/27/2005 01:10:00 PM,097XX S PRAIRIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0511,005,6,49,08B,1179599,1840332,2005,01/26/2006 03:51:08 AM,41.717148245,-87.617805844,"(41.717148245, -87.617805844)" -4404987,HL698991,10/27/2005 09:00:00 AM,046XX S FRANCISCO AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0912,009,14,58,05,1157777,1873657,2005,01/26/2006 03:51:08 AM,41.809067003,-87.696827612,"(41.809067003, -87.696827612)" -4411425,HL698650,10/27/2005 12:45:00 AM,067XX S STONY ISLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0332,003,5,43,14,1187984,1860846,2005,01/26/2006 03:51:08 AM,41.773245321,-87.586443445,"(41.773245321, -87.586443445)" -4435486,HL729008,10/26/2005 06:00:00 PM,078XX S THROOP ST,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,"SCHOOL, PRIVATE, BUILDING",false,false,0612,006,17,71,17,1169197,1853020,2005,01/26/2006 03:51:08 AM,41.752196846,-87.655537851,"(41.752196846, -87.655537851)" -4407768,HL694301,10/24/2005 03:00:00 PM,041XX S CALIFORNIA AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0912,009,14,58,08B,1158338,1877159,2005,01/26/2006 03:51:08 AM,41.818665515,-87.694674497,"(41.818665515, -87.694674497)" -4398887,HL692291,10/24/2005 10:14:49 AM,035XX W LAWRENCE AVE,1330,CRIMINAL TRESPASS,TO LAND,COMMERCIAL / BUSINESS OFFICE,true,false,1723,017,33,14,26,1152085,1931629,2005,01/26/2006 03:51:08 AM,41.968261902,-87.716175671,"(41.968261902, -87.716175671)" -4396563,HL691167,10/23/2005 03:50:00 PM,025XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,HOSPITAL BUILDING/GROUNDS,false,false,2112,001,2,33,08B,1177690,1887529,2005,01/26/2006 03:51:08 AM,41.84670496,-87.623370388,"(41.84670496, -87.623370388)" -4399082,HL691216,10/23/2005 12:30:00 PM,004XX W 28TH ST,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,0923,009,11,60,06,1173473,1886325,2005,12/04/2014 12:43:35 PM,41.843495709,-87.638882231,"(41.843495709, -87.638882231)" -4449747,HL688358,10/22/2005 02:29:31 AM,003XX S HAMLIN BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1133,011,28,26,18,1151056,1898404,2005,01/26/2006 03:51:08 AM,41.877109853,-87.720831867,"(41.877109853, -87.720831867)" -4410314,HL706005,10/21/2005 06:00:00 PM,003XX S CANAL ST,0890,THEFT,FROM BUILDING,PARKING LOT/GARAGE(NON.RESID.),false,false,0111,001,2,28,06,1173152,1898669,2005,01/26/2006 03:51:08 AM,41.877375673,-87.639694241,"(41.877375673, -87.639694241)" -4398386,HL692438,10/21/2005 04:15:00 PM,036XX S WENTWORTH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0925,009,3,34,07,1175592,1880521,2005,07/29/2006 04:46:09 AM,41.827521784,-87.631280113,"(41.827521784, -87.631280113)" -4394141,HL687017,10/21/2005 01:00:00 PM,080XX S INGLESIDE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0631,006,8,44,08B,1184007,1851613,2005,01/26/2006 03:51:08 AM,41.748002912,-87.601310003,"(41.748002912, -87.601310003)" -4400489,HL694581,10/20/2005 04:45:00 PM,029XX W 59TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0824,008,14,63,04B,1157585,1865413,2005,01/26/2006 03:51:08 AM,41.786448245,-87.697755405,"(41.786448245, -87.697755405)" -4388322,HL681828,10/18/2005 11:53:21 PM,015XX W 62ND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,true,true,0713,007,15,67,08B,1166832,1863646,2005,01/26/2006 03:51:08 AM,41.781406799,-87.663901487,"(41.781406799, -87.663901487)" -4385235,HL680361,10/18/2005 10:50:00 AM,071XX S MARSHFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0735,007,17,67,14,1166535,1857468,2005,01/26/2006 03:51:08 AM,41.764459902,-87.665166329,"(41.764459902, -87.665166329)" -4384585,HL680080,10/18/2005 12:30:00 AM,008XX W SUPERIOR ST,0820,THEFT,$500 AND UNDER,RESIDENCE-GARAGE,false,false,1323,012,27,24,06,1170614,1905312,2005,12/04/2014 12:43:35 PM,41.895660415,-87.648818444,"(41.895660415, -87.648818444)" -4381654,HL676409,10/16/2005 11:05:00 AM,0000X N LA SALLE ST,0810,THEFT,OVER $500,SIDEWALK,false,false,0113,001,42,32,06,1175165,1900665,2005,12/04/2014 12:43:35 PM,41.882807937,-87.632243264,"(41.882807937, -87.632243264)" -4380806,HL673436,10/14/2005 07:15:00 PM,111XX S WENTWORTH AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,true,0522,005,34,49,04A,1176887,1830891,2005,01/26/2006 03:51:08 AM,41.691302224,-87.628021869,"(41.691302224, -87.628021869)" -4379283,HL672581,10/14/2005 12:15:00 PM,115XX S EWING AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,false,false,0433,004,10,52,07,1202198,1829221,2005,01/26/2006 03:51:08 AM,41.686113522,-87.535414224,"(41.686113522, -87.535414224)" -4384406,HL676582,10/14/2005 03:00:00 AM,044XX S ROCKWELL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0912,009,12,58,08B,1159739,1875003,2005,01/26/2006 03:51:08 AM,41.812720495,-87.689594352,"(41.812720495, -87.689594352)" -4379258,HL670028,10/13/2005 07:40:00 AM,121XX S HARVARD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,0523,005,34,53,08B,1176105,1824311,2005,01/26/2006 03:51:08 AM,41.673263225,-87.631081195,"(41.673263225, -87.631081195)" -4375855,HL668822,10/12/2005 03:35:00 PM,041XX S DR MARTIN LUTHER KING JR DR,033B,ROBBERY,ATTEMPT: ARMED-OTHER FIREARM,STREET,false,false,0213,002,3,38,03,1179502,1877636,2005,03/05/2006 04:52:17 AM,41.819516544,-87.617023243,"(41.819516544, -87.617023243)" -4377902,HL670882,10/11/2005 03:00:00 PM,081XX S COLES AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,false,0422,004,7,46,20,1198198,1851422,2005,01/26/2006 03:51:08 AM,41.74713573,-87.549317016,"(41.74713573, -87.549317016)" -4373995,HL668644,10/10/2005 09:00:00 PM,049XX N WHIPPLE ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1713,017,33,14,06,1155181,1932882,2005,12/04/2014 12:43:35 PM,41.971638444,-87.704758009,"(41.971638444, -87.704758009)" -4374615,HL662184,10/09/2005 01:20:00 AM,035XX W 64TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0823,008,15,66,14,1153601,1861978,2005,01/26/2006 03:51:08 AM,41.777101972,-87.712453882,"(41.777101972, -87.712453882)" -4369166,HL661634,10/08/2005 06:15:00 PM,077XX S MICHIGAN AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,true,true,0623,006,6,69,04A,1178534,1853703,2005,01/26/2006 03:51:08 AM,41.753864134,-87.621301298,"(41.753864134, -87.621301298)" -4367937,HL661257,10/08/2005 02:17:20 PM,052XX W LAKE ST,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,OTHER,false,false,1523,015,28,25,11,1141361,1901993,2005,01/26/2006 03:51:08 AM,41.887142859,-87.756340922,"(41.887142859, -87.756340922)" -4449146,HL660941,10/08/2005 11:51:28 AM,056XX S BISHOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0713,007,16,67,18,1167593,1867100,2005,01/26/2006 03:51:08 AM,41.790868703,-87.661012467,"(41.790868703, -87.661012467)" -4444660,HL660037,10/07/2005 08:39:24 PM,004XX W CHICAGO AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,18,1173213,1905687,2005,01/26/2006 03:51:08 AM,41.896632139,-87.639261847,"(41.896632139, -87.639261847)" -4363306,HL658322,10/06/2005 12:00:00 PM,064XX S RACINE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0724,007,16,68,07,1169475,1861808,2005,01/26/2006 03:51:08 AM,41.776306232,-87.654264865,"(41.776306232, -87.654264865)" -3372,HL655808,10/05/2005 11:00:00 PM,015XX W 91ST ST,0110,HOMICIDE,FIRST DEGREE MURDER,STREET,true,false,2221,022,21,73,01A,1167359,1844338,2005,11/17/2011 12:01:46 PM,41.728411722,-87.662521326,"(41.728411722, -87.662521326)" -4363919,HL656028,10/05/2005 09:45:00 PM,072XX S LOOMIS BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0734,007,17,67,08B,1168203,1856974,2005,02/24/2006 04:04:33 AM,41.763068584,-87.659066862,"(41.763068584, -87.659066862)" -4363802,HL655502,10/05/2005 08:45:00 AM,082XX S INGLESIDE AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0631,006,8,44,05,1183958,1850573,2005,01/26/2006 03:51:08 AM,41.745150186,-87.601521964,"(41.745150186, -87.601521964)" -4360137,HL654090,10/04/2005 11:50:12 PM,027XX W LAWRENCE AVE,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,true,false,2031,020,40,4,05,1157318,1931810,2005,01/26/2006 03:51:08 AM,41.968653525,-87.696929231,"(41.968653525, -87.696929231)" -4356795,HL653143,10/04/2005 03:10:00 PM,080XX S MERRILL AVE,0560,ASSAULT,SIMPLE,MEDICAL/DENTAL OFFICE,false,false,0414,004,8,46,08A,1191886,1852026,2005,01/26/2006 03:51:08 AM,41.748948652,-87.572425887,"(41.748948652, -87.572425887)" -4358551,HL651163,10/03/2005 10:00:00 AM,043XX N LINDER AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,"SCHOOL, PUBLIC, BUILDING",false,false,1624,016,38,15,06,1138928,1928643,2005,01/26/2006 03:51:08 AM,41.960317924,-87.764626657,"(41.960317924, -87.764626657)" -4353143,HL651749,10/03/2005 12:00:00 AM,006XX S DEARBORN ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0132,001,2,32,08B,1175976,1897615,2005,01/26/2006 03:51:08 AM,41.874420338,-87.62935714,"(41.874420338, -87.62935714)" -4354007,HL648821,10/01/2005 10:30:00 PM,049XX N CALIFORNIA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2031,020,40,4,14,1156759,1933018,2005,01/26/2006 03:51:08 AM,41.971979718,-87.698951769,"(41.971979718, -87.698951769)" -4369713,HL650012,10/01/2005 01:15:00 AM,061XX S WABASH AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0311,003,20,40,06,1177728,1864380,2005,12/04/2014 12:43:35 PM,41.783181249,-87.623932272,"(41.783181249, -87.623932272)" -4347488,HL644977,09/30/2005 03:28:32 PM,093XX S MERRILL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0413,004,7,48,08B,1192183,1843322,2005,01/26/2006 03:51:08 AM,41.725056869,-87.571619875,"(41.725056869, -87.571619875)" -4398485,HL644583,09/30/2005 10:17:24 AM,024XX S STATE ST,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0134,001,3,33,18,1176662,1888124,2005,01/26/2006 03:51:08 AM,41.848360942,-87.627125117,"(41.848360942, -87.627125117)" -5621419,HN430228,09/30/2005 09:00:00 AM,013XX N LAKE SHORE DR,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1824,,43,8,06,,,2005,07/06/2007 02:26:39 AM,,, -4345453,HL644147,09/29/2005 05:00:00 PM,007XX W VAN BUREN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,0111,001,2,28,14,1171976,1898458,2005,01/26/2006 03:51:08 AM,41.876822674,-87.644018376,"(41.876822674, -87.644018376)" -4343485,HL643035,09/29/2005 03:30:00 PM,002XX S CLARK ST,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,0112,001,42,32,06,1175531,1899116,2005,01/26/2006 03:51:08 AM,41.878549177,-87.630945865,"(41.878549177, -87.630945865)" -4342419,HL641180,09/28/2005 03:50:00 PM,071XX S ASHLAND AVE,1330,CRIMINAL TRESPASS,TO LAND,HOTEL/MOTEL,true,false,0735,007,17,67,26,1166888,1857001,2005,01/26/2006 03:51:08 AM,41.76317086,-87.663885811,"(41.76317086, -87.663885811)" -4338346,HL639962,09/27/2005 11:19:00 PM,047XX N CUMBERLAND AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1614,016,36,76,06,1119277,1930590,2005,01/26/2006 03:51:08 AM,41.965995882,-87.836833463,"(41.965995882, -87.836833463)" -4334319,HL636642,09/26/2005 12:00:00 PM,056XX N SPAULDING AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1711,017,39,13,07,1153324,1937187,2005,01/26/2006 03:51:08 AM,41.983488795,-87.711471561,"(41.983488795, -87.711471561)" -4335358,HL636774,09/26/2005 03:00:00 AM,013XX N CLEVELAND AVE,0610,BURGLARY,FORCIBLE ENTRY,PARKING LOT/GARAGE(NON.RESID.),false,false,1821,018,43,8,05,1172707,1909186,2005,01/26/2006 03:51:08 AM,41.906244805,-87.641016571,"(41.906244805, -87.641016571)" -4349928,HL635347,09/25/2005 05:00:00 PM,067XX S MAPLEWOOD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0832,008,15,66,14,1160496,1859816,2005,01/26/2006 03:51:08 AM,41.77102975,-87.687236301,"(41.77102975, -87.687236301)" -4397276,HL634561,09/25/2005 12:48:18 PM,001XX N LAMON AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1532,015,28,25,18,1143665,1900102,2005,01/26/2006 03:51:08 AM,41.881910905,-87.747927244,"(41.881910905, -87.747927244)" -4329102,HL633952,09/25/2005 02:30:00 AM,002XX W LAKE ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,true,false,0113,001,42,32,08B,1174600,1901685,2005,01/26/2006 03:51:08 AM,41.885619524,-87.634287434,"(41.885619524, -87.634287434)" -4328882,HL632346,09/23/2005 05:30:00 PM,111XX S HOMEWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2212,022,19,75,14,1165397,1830334,2005,01/26/2006 03:51:08 AM,41.690024192,-87.67010368,"(41.690024192, -87.67010368)" -4327359,HL630853,09/23/2005 01:00:00 PM,010XX W VERNON PARK PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1213,012,25,28,14,1169352,1897091,2005,01/26/2006 03:51:08 AM,41.873128949,-87.65369258,"(41.873128949, -87.65369258)" -4325724,HL630200,09/22/2005 11:00:00 PM,064XX S MOZART ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0823,008,15,66,05,1158530,1861681,2005,01/26/2006 03:51:08 AM,41.776187885,-87.6943922,"(41.776187885, -87.6943922)" -4317710,HL625542,09/21/2005 04:15:00 AM,073XX S MOZART ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0835,008,18,66,03,1158599,1856034,2005,01/26/2006 03:51:08 AM,41.760690272,-87.694293058,"(41.760690272, -87.694293058)" -4318628,HL624784,09/20/2005 06:55:00 PM,007XX S KEDVALE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,ALLEY,false,false,1132,011,24,26,03,1148802,1896176,2005,01/26/2006 03:51:08 AM,41.871039805,-87.729165553,"(41.871039805, -87.729165553)" -4322374,HL625848,09/20/2005 06:30:00 PM,062XX S EVANS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0313,003,20,42,14,1182328,1863999,2005,01/26/2006 03:51:08 AM,41.78203037,-87.607079129,"(41.78203037, -87.607079129)" -4315979,HL624304,09/20/2005 09:00:00 AM,013XX W HASTINGS ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1231,012,2,28,06,1167850,1893896,2005,12/04/2014 12:43:35 PM,41.864394113,-87.659299225,"(41.864394113, -87.659299225)" -4314495,HL621385,09/19/2005 05:30:00 AM,051XX S MARSHFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0932,009,16,61,08B,1166178,1870384,2005,01/26/2006 03:51:08 AM,41.799910641,-87.666107484,"(41.799910641, -87.666107484)" -4317443,HL620910,09/18/2005 11:30:00 PM,026XX S TRUMBULL AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1032,010,22,30,08B,1153761,1885915,2005,01/26/2006 03:51:08 AM,41.842785221,-87.711232097,"(41.842785221, -87.711232097)" -4381816,HL614821,09/15/2005 09:00:10 PM,066XX N MOZART ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2412,024,50,2,18,1156085,1944032,2005,01/26/2006 03:51:08 AM,42.002216323,-87.70113122,"(42.002216323, -87.70113122)" -4391313,HL614783,09/15/2005 08:40:34 PM,050XX S ELIZABETH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0933,009,16,61,18,1168883,1871393,2005,01/26/2006 03:51:08 AM,41.802621403,-87.656158335,"(41.802621403, -87.656158335)" -4308490,HL613446,09/15/2005 08:30:00 AM,019XX N HUMBOLDT BLVD,2851,PUBLIC PEACE VIOLATION,ARSON THREAT,RESIDENCE,false,true,1421,014,35,22,26,1156109,1912542,2005,01/26/2006 03:51:08 AM,41.915805363,-87.70189658,"(41.915805363, -87.70189658)" -4310846,HL613286,09/15/2005 07:46:28 AM,033XX W GRAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,1121,011,27,23,08B,1153953,1906587,2005,01/26/2006 03:51:08 AM,41.899507593,-87.709976598,"(41.899507593, -87.709976598)" -4306801,HL613112,09/14/2005 11:45:00 PM,063XX S STATE ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0312,003,20,69,03,1177383,1863200,2005,01/26/2006 03:51:08 AM,41.779951011,-87.625232772,"(41.779951011, -87.625232772)" -4415483,HL584961,09/14/2005 05:00:00 AM,041XX W GLADYS AVE,2050,NARCOTICS,CRIMINAL DRUG CONSPIRACY,STREET,true,false,1132,011,28,26,18,1149047,1898077,2005,01/26/2006 03:51:08 AM,41.876251633,-87.728216858,"(41.876251633, -87.728216858)" -4381833,HL607717,09/12/2005 04:00:00 PM,063XX S DR MARTIN LUTHER KING JR DR,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA PLATFORM,true,false,0312,003,20,69,18,1179963,1863306,2005,01/26/2006 03:51:08 AM,41.780183197,-87.615770958,"(41.780183197, -87.615770958)" -4295484,HL607679,09/12/2005 02:23:00 PM,028XX E 91ST ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0423,004,10,46,08A,1196649,1845213,2005,01/26/2006 03:51:08 AM,41.730136328,-87.555198561,"(41.730136328, -87.555198561)" -3345,HL607066,09/12/2005 11:17:00 AM,074XX S RACINE AVE,0110,HOMICIDE,FIRST DEGREE MURDER,RETAIL STORE,false,false,0734,007,17,67,01A,1169563,1855701,2005,11/17/2011 12:01:46 PM,41.759545945,-87.654119056,"(41.759545945, -87.654119056)" -4293450,HL607638,09/12/2005 02:00:00 AM,048XX W ARMITAGE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2522,025,31,19,26,1143221,1912886,2005,01/26/2006 03:51:08 AM,41.916999954,-87.749238021,"(41.916999954, -87.749238021)" -4293321,HL605429,09/11/2005 01:39:09 PM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0622,006,21,44,06,1176857,1847317,2005,01/26/2006 03:51:08 AM,41.736378094,-87.627638815,"(41.736378094, -87.627638815)" -4388555,HL605209,09/11/2005 12:55:00 PM,050XX W WASHINGTON BLVD,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,SIDEWALK,true,false,1533,015,28,25,18,1142442,1899985,2005,01/26/2006 03:51:08 AM,41.881612647,-87.752421047,"(41.881612647, -87.752421047)" -4291251,HL605470,09/11/2005 04:15:00 AM,022XX W 111TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,false,false,2212,022,19,75,14,1163140,1831009,2005,01/26/2006 03:51:08 AM,41.6919239,-87.678347873,"(41.6919239, -87.678347873)" -4295738,HL604154,09/10/2005 07:00:00 PM,008XX E 40TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE PORCH/HALLWAY,false,false,2122,002,4,36,05,1182966,1878533,2005,01/26/2006 03:51:08 AM,41.82189803,-87.604288123,"(41.82189803, -87.604288123)" -4289335,HL603255,09/10/2005 12:00:00 PM,026XX N ELSTON AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1432,014,1,22,06,1160776,1917684,2005,01/26/2006 03:51:08 AM,41.929819797,-87.684607426,"(41.929819797, -87.684607426)" -4290404,HL602519,09/10/2005 01:07:00 AM,012XX S INDEPENDENCE BLVD,0560,ASSAULT,SIMPLE,SIDEWALK,true,false,1011,010,24,29,08A,1151249,1894060,2005,01/26/2006 03:51:08 AM,41.865185646,-87.720237144,"(41.865185646, -87.720237144)" -4376505,HL598084,09/10/2005 12:20:00 AM,010XX N CICERO AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1531,015,37,25,16,1144136,1906250,2005,01/26/2006 03:51:08 AM,41.898772903,-87.746043203,"(41.898772903, -87.746043203)" -4288591,HL601694,09/09/2005 09:10:00 AM,004XX E 82ND ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0631,006,6,44,05,1180947,1850698,2005,01/26/2006 03:51:08 AM,41.74556294,-87.612550809,"(41.74556294, -87.612550809)" -4376269,HL598047,09/08/2005 11:25:00 AM,004XX S SPRINGFIELD AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1132,011,24,26,18,1150429,1897464,2005,01/26/2006 03:51:08 AM,41.874542644,-87.723158583,"(41.874542644, -87.723158583)" -4302961,HL597635,09/07/2005 06:00:00 PM,0000X E ROOSEVELT RD,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,0132,001,2,32,11,1176812,1895113,2005,01/26/2006 03:51:08 AM,41.867535841,-87.626363413,"(41.867535841, -87.626363413)" -4345976,HL644450,09/07/2005 12:00:00 AM,081XX S ST LAWRENCE AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,STREET,false,false,0631,006,6,44,11,1181697,1850919,2005,01/26/2006 03:51:08 AM,41.746152116,-87.609795888,"(41.746152116, -87.609795888)" -4358406,HL594178,09/06/2005 06:56:54 AM,051XX W NORTH AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,SIDEWALK,true,false,2533,025,37,25,16,1142124,1910197,2005,01/26/2006 03:51:08 AM,41.909641476,-87.753335256,"(41.909641476, -87.753335256)" -4278272,HL594092,09/06/2005 02:50:00 AM,019XX S TRUMBULL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1024,010,24,29,08B,1153689,1890225,2005,01/26/2006 03:51:08 AM,41.854613804,-87.711381768,"(41.854613804, -87.711381768)" -4330686,HL636036,09/05/2005 12:00:00 PM,010XX N MONITOR AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1511,015,29,25,26,1137136,1906135,2005,01/26/2006 03:51:08 AM,41.898585944,-87.771757012,"(41.898585944, -87.771757012)" -4276177,HL590738,09/04/2005 04:00:00 AM,076XX S STONY ISLAND AVE,0460,BATTERY,SIMPLE,STREET,false,false,0411,004,5,43,08B,1188093,1854872,2005,01/26/2006 03:51:08 AM,41.756849546,-87.58623409,"(41.756849546, -87.58623409)" -4273653,HL590015,09/03/2005 04:00:00 PM,026XX W HURON ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,1313,012,26,24,26,1158799,1904606,2005,01/26/2006 03:51:08 AM,41.893973558,-87.692231597,"(41.893973558, -87.692231597)" -4273233,HL588584,09/02/2005 11:30:00 PM,078XX S PHILLIPS AVE,0460,BATTERY,SIMPLE,STREET,false,false,0421,004,7,43,08B,1193843,1853657,2005,01/26/2006 03:51:08 AM,41.753376533,-87.565201483,"(41.753376533, -87.565201483)" -4364689,HL586854,09/02/2005 09:50:00 AM,050XX W WASHINGTON BLVD,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,SIDEWALK,true,false,1533,015,28,25,18,1142442,1899985,2005,01/26/2006 03:51:08 AM,41.881612647,-87.752421047,"(41.881612647, -87.752421047)" -5596732,HN362355,09/01/2005 12:01:00 AM,117XX S ELIZABETH ST,1753,OFFENSE INVOLVING CHILDREN,SEX ASSLT OF CHILD BY FAM MBR,RESIDENCE,false,false,0524,,34,53,02,,,2005,08/12/2007 02:23:40 AM,,, -4266633,HL581587,08/30/2005 06:20:34 PM,017XX N KEELER AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,2534,025,30,23,26,1148077,1911194,2005,01/26/2006 03:51:08 AM,41.912264801,-87.731440545,"(41.912264801, -87.731440545)" -4342253,HL581242,08/30/2005 02:45:23 PM,038XX S DR MARTIN LUTHER KING JR DR,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0212,002,3,35,18,1179533,1879312,2005,01/26/2006 03:51:08 AM,41.82411491,-87.616858255,"(41.82411491, -87.616858255)" -4267038,HL583911,08/29/2005 06:20:00 PM,009XX N PINE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1524,015,37,25,26,1139306,1905645,2005,01/26/2006 03:51:08 AM,41.89720207,-87.763798557,"(41.89720207, -87.763798557)" -4261936,HL576427,08/28/2005 04:30:00 AM,0000X E HUBBARD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,1834,018,42,8,08B,1176540,1903366,2005,01/26/2006 03:51:08 AM,41.890188691,-87.627112647,"(41.890188691, -87.627112647)" -4256486,HL575780,08/27/2005 05:00:00 PM,049XX S CAMPBELL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0911,009,14,63,05,1160495,1871844,2005,01/26/2006 03:51:08 AM,41.80403623,-87.686908473,"(41.80403623, -87.686908473)" -4256813,HL574363,08/27/2005 04:45:00 AM,005XX E 79TH ST,031A,ROBBERY,ARMED: HANDGUN,RESTAURANT,false,false,0624,006,6,69,03,1181198,1852785,2005,01/26/2006 03:51:08 AM,41.751284126,-87.61156696,"(41.751284126, -87.61156696)" -4255366,HL574345,08/27/2005 04:34:14 AM,055XX W VAN BUREN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1522,015,29,25,08B,1139281,1897417,2005,01/26/2006 03:51:08 AM,41.874623846,-87.764090847,"(41.874623846, -87.764090847)" -4268627,HL573998,08/26/2005 11:10:00 PM,005XX W DIVISION ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1821,018,27,8,14,1172140,1908300,2005,01/26/2006 03:51:08 AM,41.903826111,-87.643125547,"(41.903826111, -87.643125547)" -4254771,HL573714,08/26/2005 07:30:00 PM,062XX S CALIFORNIA AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0825,008,15,66,06,1158828,1862964,2005,12/04/2014 12:43:35 PM,41.77970254,-87.693264737,"(41.77970254, -87.693264737)" -4253262,HL572268,08/26/2005 04:30:00 AM,027XX E 81ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0422,004,7,46,08B,1196085,1851837,2005,01/26/2006 03:51:08 AM,41.748327094,-87.557045736,"(41.748327094, -87.557045736)" -4267533,HL571850,08/25/2005 09:55:13 PM,061XX N WINTHROP AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,2433,024,48,77,26,1167699,1941166,2005,01/26/2006 03:51:08 AM,41.994108698,-87.658487756,"(41.994108698, -87.658487756)" -4257416,HL570106,08/25/2005 01:02:01 AM,041XX W POTOMAC AVE,1330,CRIMINAL TRESPASS,TO LAND,CONSTRUCTION SITE,true,false,2534,025,37,23,26,1148210,1908289,2005,01/26/2006 03:51:08 AM,41.904290627,-87.731026873,"(41.904290627, -87.731026873)" -4256021,HL569070,08/24/2005 02:05:54 PM,075XX S CARPENTER ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,false,false,0612,006,17,71,15,1170581,1854742,2005,01/26/2006 03:51:08 AM,41.756892208,-87.650416011,"(41.756892208, -87.650416011)" -4245238,HL566498,08/23/2005 02:40:00 PM,008XX W 78TH ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,STREET,false,false,0621,006,17,71,26,1171893,1853169,2005,01/26/2006 03:51:08 AM,41.752547015,-87.645653842,"(41.752547015, -87.645653842)" -4247733,HL565179,08/22/2005 05:00:00 PM,005XX E 44TH PL,0810,THEFT,OVER $500,CONSTRUCTION SITE,false,false,0222,002,3,38,06,1180723,1875590,2005,12/04/2014 12:43:35 PM,41.813874139,-87.612607121,"(41.813874139, -87.612607121)" -4253349,HL563309,08/21/2005 07:25:53 PM,011XX W 47TH ST,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,0921,009,11,61,26,1169709,1873676,2005,01/26/2006 03:51:08 AM,41.808868304,-87.653062766,"(41.808868304, -87.653062766)" -4240175,HL562527,08/21/2005 12:40:00 PM,102XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0511,005,9,49,08B,1178022,1836920,2005,01/26/2006 03:51:08 AM,41.707821075,-87.623684671,"(41.707821075, -87.623684671)" -4258087,HL562355,08/21/2005 11:02:17 AM,017XX E 87TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,0412,004,8,45,05,1189183,1847672,2005,12/01/2007 01:05:44 AM,41.737066029,-87.582469749,"(41.737066029, -87.582469749)" -4239879,HL563228,08/21/2005 05:00:00 AM,061XX N ELSTON AVE,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,1611,016,45,10,06,1133994,1940330,2005,01/26/2006 03:51:08 AM,41.992476559,-87.782490442,"(41.992476559, -87.782490442)" -4241043,HL561797,08/21/2005 12:10:57 AM,012XX N MONTICELLO AVE,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PUBLIC, BUILDING",false,false,2535,025,26,23,05,1151767,1908135,2005,01/26/2006 03:51:08 AM,41.90379876,-87.717965025,"(41.90379876, -87.717965025)" -4238445,HL562118,08/20/2005 11:30:00 PM,015XX N KINGSBURY ST,0810,THEFT,OVER $500,STREET,false,false,1822,018,32,8,06,1169533,1910280,2005,12/04/2014 12:43:35 PM,41.909316508,-87.652643905,"(41.909316508, -87.652643905)" -4241709,HL560109,08/20/2005 04:08:33 AM,080XX S DREXEL AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,APARTMENT,false,false,0631,006,8,44,04B,1183673,1851771,2005,01/26/2006 03:51:08 AM,41.748444272,-87.602528956,"(41.748444272, -87.602528956)" -4237043,HL559296,08/17/2005 09:45:00 PM,073XX N BELL AVE,0810,THEFT,OVER $500,STREET,false,false,2411,024,49,2,06,1160072,1948434,2005,12/04/2014 12:43:35 PM,42.01421382,-87.686341061,"(42.01421382, -87.686341061)" -4255489,HL573413,08/17/2005 05:40:00 PM,024XX W DEVON AVE,1120,DECEPTIVE PRACTICE,FORGERY,CURRENCY EXCHANGE,false,false,2412,024,50,2,10,1159119,1942458,2005,01/26/2006 03:51:08 AM,41.997835196,-87.690012941,"(41.997835196, -87.690012941)" -4230823,HL551031,08/15/2005 05:30:00 PM,0000X W 87TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",PARKING LOT/GARAGE(NON.RESID.),false,false,0634,006,21,44,07,1176974,1847236,2005,01/26/2006 03:51:08 AM,41.736153186,-87.627212603,"(41.736153186, -87.627212603)" -4224154,HL550214,08/15/2005 11:10:00 AM,014XX N HARDING AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,true,false,2535,025,30,23,26,1149815,1909582,2005,01/26/2006 03:51:08 AM,41.907807671,-87.725097554,"(41.907807671, -87.725097554)" -4225546,HL548958,08/14/2005 04:43:01 PM,052XX W RACE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1523,015,28,25,26,1141316,1903090,2005,01/26/2006 03:51:08 AM,41.890153991,-87.756479095,"(41.890153991, -87.756479095)" -4439986,HL737149,08/13/2005 11:30:00 PM,016XX W FULLERTON AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1811,018,32,7,06,1164611,1915960,2005,01/26/2006 03:51:08 AM,41.925008552,-87.670563826,"(41.925008552, -87.670563826)" -4220235,HL546369,08/12/2005 04:30:00 PM,051XX N AUSTIN AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1622,016,45,11,06,1135240,1933676,2005,12/04/2014 12:43:35 PM,41.974195319,-87.778065832,"(41.974195319, -87.778065832)" -4218402,HL544414,08/11/2005 04:30:00 AM,009XX N ROCKWELL ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1312,012,26,24,06,1158936,1906107,2005,12/04/2014 12:43:35 PM,41.89808962,-87.691687212,"(41.89808962, -87.691687212)" -4250654,HL570747,08/10/2005 12:00:00 PM,020XX N CLYBOURN AVE,1140,DECEPTIVE PRACTICE,EMBEZZLEMENT,BANK,true,false,1811,018,43,7,12,1167422,1913722,2005,01/26/2006 03:51:08 AM,41.91880727,-87.660299516,"(41.91880727, -87.660299516)" -4211983,HL540060,08/10/2005 03:04:00 AM,005XX S CLINTON ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0131,001,2,28,26,1172768,1897874,2005,01/26/2006 03:51:08 AM,41.875202647,-87.641127713,"(41.875202647, -87.641127713)" -4210233,HL539261,08/09/2005 06:00:00 PM,075XX S PULASKI RD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0833,008,13,65,07,1150961,1854579,2005,01/26/2006 03:51:08 AM,41.756849802,-87.722324877,"(41.756849802, -87.722324877)" -4216744,HL537642,08/09/2005 08:57:04 AM,029XX N MC VICKER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,"SCHOOL, PUBLIC, BUILDING",false,false,2511,025,29,19,26,1135587,1919083,2005,01/26/2006 03:51:08 AM,41.934144479,-87.777138069,"(41.934144479, -87.777138069)" -4206512,HL536576,08/07/2005 02:00:00 AM,039XX W 67TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0833,008,13,65,14,1151124,1859586,2005,01/26/2006 03:51:08 AM,41.770586658,-87.721597003,"(41.770586658, -87.721597003)" -4204345,HL532948,08/06/2005 10:11:51 PM,058XX W RACE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1512,015,29,25,05,1137358,1903068,2005,06/11/2007 03:52:33 PM,41.890165717,-87.771015435,"(41.890165717, -87.771015435)" -4296516,HL531043,08/05/2005 11:09:43 PM,006XX N CENTRAL PARK AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1122,011,27,23,18,1152231,1903962,2005,01/26/2006 03:51:08 AM,41.892338494,-87.716370862,"(41.892338494, -87.716370862)" -4295817,HL530727,08/05/2005 07:50:16 PM,105XX S KEDZIE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,2211,022,19,74,18,1156923,1834305,2005,01/26/2006 03:51:08 AM,41.70109621,-87.701020766,"(41.70109621, -87.701020766)" -4204764,HL535565,08/05/2005 05:35:00 PM,049XX S LAKE PARK AVE,0890,THEFT,FROM BUILDING,LIBRARY,false,false,2132,002,4,39,06,1187129,1872564,2005,01/26/2006 03:51:08 AM,41.805420755,-87.589205839,"(41.805420755, -87.589205839)" -4211904,HL530188,08/05/2005 03:30:00 PM,0000X W 47TH ST,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,0231,002,3,38,08B,1176619,1873814,2005,01/26/2006 03:51:08 AM,41.809094102,-87.627714291,"(41.809094102, -87.627714291)" -4205717,HL529336,08/05/2005 06:30:00 AM,002XX W 111TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0522,005,34,49,14,1176381,1830954,2005,01/26/2006 03:51:08 AM,41.691486459,-87.629872494,"(41.691486459, -87.629872494)" -4199078,HL527529,08/03/2005 11:35:00 AM,035XX W 60TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0822,008,16,66,04B,1153812,1864642,2005,01/26/2006 03:51:08 AM,41.784408209,-87.71160974,"(41.784408209, -87.71160974)" -4288560,HL524864,08/03/2005 12:58:00 AM,047XX S CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0814,008,23,56,16,1145112,1872973,2005,01/26/2006 03:51:08 AM,41.807438008,-87.74329822,"(41.807438008, -87.74329822)" -4191589,HL523247,08/02/2005 10:52:17 AM,055XX N CLARK ST,0810,THEFT,OVER $500,STREET,false,false,2012,020,40,77,06,1164988,1936640,2005,12/04/2014 12:43:35 PM,41.981747414,-87.668589158,"(41.981747414, -87.668589158)" -4187771,HL520595,08/01/2005 04:54:00 AM,074XX S BENNETT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0333,003,8,43,14,1190043,1855700,2005,01/26/2006 03:51:08 AM,41.759074958,-87.579061189,"(41.759074958, -87.579061189)" -4195602,HL520052,07/31/2005 07:50:00 PM,041XX W 21ST PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1012,010,24,29,08B,1148875,1889389,2005,01/26/2006 03:51:08 AM,41.852414041,-87.729072917,"(41.852414041, -87.729072917)" -4354842,HL519727,07/31/2005 05:08:07 PM,079XX S KINGSTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0422,004,7,46,18,1194602,1852942,2005,01/26/2006 03:51:08 AM,41.751395888,-87.562443563,"(41.751395888, -87.562443563)" -4184537,HL516918,07/30/2005 06:30:00 AM,046XX N BROADWAY,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,2311,019,46,3,04B,1167840,1931061,2005,01/26/2006 03:51:08 AM,41.966377257,-87.658262047,"(41.966377257, -87.658262047)" -4201951,HL514725,07/29/2005 07:55:00 AM,047XX W CONGRESS PKWY,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,1131,011,24,25,08B,1144685,1897229,2005,01/26/2006 03:51:08 AM,41.87400789,-87.744254184,"(41.87400789, -87.744254184)" -4201973,HL512190,07/27/2005 10:15:00 PM,007XX S INDEPENDENCE BLVD,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1133,011,24,26,08A,1151166,1896683,2005,01/26/2006 03:51:08 AM,41.872385083,-87.720473096,"(41.872385083, -87.720473096)" -4189158,HL511650,07/27/2005 05:00:00 PM,041XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,CTA GARAGE / OTHER PROPERTY,false,false,0213,002,3,38,08B,1179576,1877821,2005,01/26/2006 03:51:08 AM,41.820022505,-87.616746124,"(41.820022505, -87.616746124)" -4179847,HL511408,07/27/2005 04:05:02 PM,091XX S CRANDON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0413,004,7,48,14,1193135,1844786,2005,01/26/2006 03:51:08 AM,41.729051053,-87.568085073,"(41.729051053, -87.568085073)" -4268808,HL505406,07/24/2005 07:20:00 PM,054XX S NORMAL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0934,009,3,61,18,1173842,1868869,2005,01/26/2006 03:51:08 AM,41.795586639,-87.638046451,"(41.795586639, -87.638046451)" -4172739,HL504893,07/23/2005 09:40:00 PM,027XX W FRANCIS PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1431,014,1,22,07,1157690,1913514,2005,01/26/2006 03:51:08 AM,41.918440518,-87.696061549,"(41.918440518, -87.696061549)" -4172607,HL503601,07/23/2005 08:12:57 PM,054XX W HARRISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,1522,015,29,25,08B,1140191,1896825,2005,01/26/2006 03:51:08 AM,41.87298271,-87.760764171,"(41.87298271, -87.760764171)" -4171424,HL503760,07/23/2005 01:50:00 PM,060XX S CALIFORNIA AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0825,008,15,66,26,1158794,1864144,2005,01/26/2006 03:51:08 AM,41.782941321,-87.693357189,"(41.782941321, -87.693357189)" -5833313,HL505011,07/23/2005 12:00:00 PM,009XX N RACINE AVE,0810,THEFT,OVER $500,OTHER,false,false,1323,,27,24,06,,,2005,12/04/2014 12:43:35 PM,,, -4172616,HL503881,07/22/2005 11:00:00 PM,053XX W MONROE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1522,015,29,25,06,1140704,1899101,2005,12/04/2014 12:43:35 PM,41.879218943,-87.758824744,"(41.879218943, -87.758824744)" -4281611,HL501680,07/22/2005 09:10:45 PM,062XX W GRAND AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2512,025,29,19,18,1134056,1914568,2005,01/26/2006 03:51:08 AM,41.921781913,-87.782871086,"(41.921781913, -87.782871086)" -4170750,HL500505,07/21/2005 10:00:00 PM,044XX W CHICAGO AVE,1330,CRIMINAL TRESPASS,TO LAND,WAREHOUSE,false,false,1111,011,37,23,26,1146417,1904986,2005,01/26/2006 03:51:08 AM,41.895261196,-87.737697344,"(41.895261196, -87.737697344)" -4310781,HL499226,07/21/2005 06:30:00 PM,0000X W 95TH ST,2027,NARCOTICS,POSS: CRACK,CTA PLATFORM,true,false,0634,006,21,49,18,1177743,1841988,2005,01/26/2006 03:51:08 AM,41.721734655,-87.624553594,"(41.721734655, -87.624553594)" -4165740,HL498165,07/19/2005 09:30:00 PM,091XX S EUCLID AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,0413,004,8,48,06,1190822,1844421,2005,12/04/2014 12:43:35 PM,41.728105574,-87.576569766,"(41.728105574, -87.576569766)" -4259891,HL495170,07/19/2005 09:10:00 PM,033XX W HURON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,1121,011,27,23,18,1154216,1904512,2005,01/26/2006 03:51:08 AM,41.893808349,-87.709066051,"(41.893808349, -87.709066051)" -4161928,HL493107,07/18/2005 09:55:00 PM,065XX N HARLEM AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,1611,016,41,10,14,1127417,1943198,2005,01/26/2006 03:51:08 AM,42.00046016,-87.806618456,"(42.00046016, -87.806618456)" -4159396,HL492720,07/18/2005 04:00:00 PM,050XX N BROADWAY,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2033,020,48,3,08B,1167371,1933372,2005,01/26/2006 03:51:08 AM,41.972728844,-87.659919683,"(41.972728844, -87.659919683)" -4253908,HL491783,07/18/2005 11:50:44 AM,029XX W MADISON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,1331,012,2,27,18,1156829,1899919,2005,01/26/2006 03:51:08 AM,41.881152154,-87.699593918,"(41.881152154, -87.699593918)" -4157192,HL491142,07/18/2005 02:13:00 AM,027XX W LEXINGTON ST,041A,BATTERY,AGGRAVATED: HANDGUN,RESIDENCE PORCH/HALLWAY,true,false,1135,011,2,27,04B,1158364,1896552,2005,04/12/2006 04:09:54 AM,41.871881539,-87.694049562,"(41.871881539, -87.694049562)" -4160066,HL490692,07/17/2005 09:09:06 PM,013XX W 51ST ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0933,009,16,61,14,1167895,1870893,2005,01/26/2006 03:51:08 AM,41.80127065,-87.659796131,"(41.80127065, -87.659796131)" -4155617,HL490260,07/17/2005 01:00:00 PM,013XX E 87TH ST,0460,BATTERY,SIMPLE,ALLEY,true,false,0412,004,8,45,08B,1186377,1847597,2005,01/26/2006 03:51:08 AM,41.736926941,-87.592752315,"(41.736926941, -87.592752315)" -4155877,HL489531,07/17/2005 04:00:00 AM,075XX S EMERALD AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,0621,006,17,68,06,1172574,1854602,2005,12/04/2014 12:43:35 PM,41.756464384,-87.643116138,"(41.756464384, -87.643116138)" -4155307,HL487873,07/16/2005 12:15:00 PM,021XX E 71ST ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,true,false,0333,003,5,43,03,1192064,1858245,2005,11/10/2013 12:45:55 AM,41.766009775,-87.571571852,"(41.766009775, -87.571571852)" -4151399,HL482705,07/14/2005 06:50:00 AM,047XX W IRVING PARK RD,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1722,017,45,15,14,1144038,1926211,2005,01/26/2006 03:51:08 AM,41.953549711,-87.745900882,"(41.953549711, -87.745900882)" -4148103,HL481724,07/13/2005 09:00:00 AM,063XX N GLENWOOD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2433,024,40,77,06,1165788,1942048,2005,12/04/2014 12:43:35 PM,41.996570037,-87.665491899,"(41.996570037, -87.665491899)" -4258948,HL479834,07/12/2005 09:14:52 PM,059XX S LOOMIS BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0713,007,16,67,18,1167972,1865376,2005,01/26/2006 03:51:08 AM,41.786129699,-87.659672294,"(41.786129699, -87.659672294)" -4146224,HL478877,07/12/2005 01:10:00 PM,068XX S ST LAWRENCE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,0321,003,6,42,14,1181459,1859735,2005,01/26/2006 03:51:08 AM,41.770349638,-87.610396496,"(41.770349638, -87.610396496)" -4142506,HL478343,07/12/2005 08:20:00 AM,0000X E ROOSEVELT RD,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,0132,001,2,33,06,1176915,1895035,2005,01/26/2006 03:51:08 AM,41.867319476,-87.625987647,"(41.867319476, -87.625987647)" -4154137,HL488570,07/12/2005 12:00:00 AM,014XX N CAMPBELL AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,1423,014,26,24,11,1159442,1909311,2005,01/26/2006 03:51:08 AM,41.906871258,-87.689740429,"(41.906871258, -87.689740429)" -4138085,HL475730,07/11/2005 12:20:00 AM,012XX N ASHLAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1424,014,1,24,08B,1165466,1908095,2005,01/26/2006 03:51:08 AM,41.903408313,-87.667646484,"(41.903408313, -87.667646484)" -4142320,HL476214,07/10/2005 09:00:00 PM,020XX W SUMMERDALE AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,2012,020,40,4,06,1161507,1935554,2005,01/26/2006 03:51:08 AM,41.978840805,-87.681421669,"(41.978840805, -87.681421669)" -4137995,HL470827,07/08/2005 04:10:00 PM,072XX S JEFFERY BLVD,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0333,003,5,43,06,1190756,1857366,2005,01/26/2006 03:51:08 AM,41.763629415,-87.576394395,"(41.763629415, -87.576394395)" -4143031,HL470945,07/08/2005 03:30:00 PM,021XX S CLARK ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,2111,001,3,34,06,1175793,1889963,2005,12/04/2014 12:43:35 PM,41.853426858,-87.63025911,"(41.853426858, -87.63025911)" -4136831,HL468525,07/07/2005 02:58:00 PM,110XX S MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0513,005,9,49,06,1178748,1831610,2005,01/26/2006 03:51:08 AM,41.693233246,-87.621186839,"(41.693233246, -87.621186839)" -4134012,HL468733,07/07/2005 11:00:00 AM,041XX W NELSON ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,2523,025,31,21,05,1147774,1919985,2005,01/26/2006 03:51:08 AM,41.936393955,-87.732327336,"(41.936393955, -87.732327336)" -4138475,HL467624,07/07/2005 02:30:00 AM,056XX S KOLIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0813,008,13,62,14,1148296,1866520,2005,01/26/2006 03:51:08 AM,41.789669408,-87.731785684,"(41.789669408, -87.731785684)" -4250973,HL466253,07/06/2005 01:25:36 PM,052XX W FERDINAND ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1523,015,28,25,18,1141348,1902685,2005,01/26/2006 03:51:08 AM,41.889042032,-87.756371576,"(41.889042032, -87.756371576)" -4249217,HL466247,07/06/2005 12:55:00 PM,050XX W LE MOYNE ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,2533,025,37,25,18,1142465,1909464,2005,01/26/2006 03:51:08 AM,41.907623709,-87.752100797,"(41.907623709, -87.752100797)" -4128459,HL463851,07/05/2005 12:45:00 PM,051XX N MILWAUKEE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1623,016,45,11,06,1138491,1933502,2005,12/04/2014 12:43:35 PM,41.973659402,-87.766115038,"(41.973659402, -87.766115038)" -4135940,HL464116,07/05/2005 09:30:00 AM,0000X S KARLOV AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,1115,011,28,26,03,1149028,1899496,2005,01/26/2006 03:51:08 AM,41.880145898,-87.728249889,"(41.880145898, -87.728249889)" -4124850,HL463104,07/05/2005 02:50:00 AM,032XX W CERMAK RD,0820,THEFT,$500 AND UNDER,VACANT LOT/LAND,true,false,1024,010,24,30,06,1155134,1889154,2005,12/04/2014 12:43:35 PM,41.851646014,-87.706106696,"(41.851646014, -87.706106696)" -4129134,HL461749,07/04/2005 11:30:00 AM,010XX N ST LOUIS AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1121,011,27,23,06,1152894,1906618,2005,12/04/2014 12:43:35 PM,41.899613709,-87.713865497,"(41.899613709, -87.713865497)" -4123262,HL461024,07/03/2005 11:25:00 PM,041XX N WESTERN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1912,019,47,5,08B,1159592,1927416,2005,01/26/2006 03:51:08 AM,41.956549505,-87.688689359,"(41.956549505, -87.688689359)" -4218882,HL459218,07/03/2005 11:45:00 AM,006XX N LAWNDALE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1122,011,27,23,18,1151570,1903833,2005,01/26/2006 03:51:08 AM,41.891997521,-87.718801848,"(41.891997521, -87.718801848)" -4122458,HL459434,07/03/2005 02:50:09 AM,048XX W CHICAGO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1531,015,37,25,08B,1144142,1904915,2005,06/11/2007 03:52:33 PM,41.895109399,-87.74605473,"(41.895109399, -87.74605473)" -4168039,HL461832,07/01/2005 08:00:00 PM,077XX S MARYLAND AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0624,006,6,69,06,1183208,1853703,2005,01/26/2006 03:51:08 AM,41.753756708,-87.604172862,"(41.753756708, -87.604172862)" -4123171,HL456733,07/01/2005 06:30:00 PM,010XX N LA SALLE DR,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1824,018,42,8,05,1174986,1907310,2005,01/26/2006 03:51:08 AM,41.901046191,-87.632701308,"(41.901046191, -87.632701308)" -4129140,HL459808,07/01/2005 02:30:00 PM,055XX S HALSTED ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0712,007,20,68,06,1171871,1868200,2005,12/04/2014 12:43:35 PM,41.793794349,-87.645293789,"(41.793794349, -87.645293789)" -4123293,HL455564,07/01/2005 07:04:08 AM,058XX S TROY ST,3730,INTERFERENCE WITH PUBLIC OFFICER,OBSTRUCTING JUSTICE,APARTMENT,true,false,0824,008,14,63,24,1156351,1865421,2005,12/04/2014 12:43:35 PM,41.786495141,-87.702279707,"(41.786495141, -87.702279707)" -4244512,HL566391,06/30/2005 05:00:00 PM,050XX S LAKE SHORE DR SB,1242,DECEPTIVE PRACTICE,COMPUTER FRAUD,OTHER,false,false,2132,002,4,39,11,1189144,1871655,2005,01/26/2006 03:51:08 AM,41.802878289,-87.581844902,"(41.802878289, -87.581844902)" -4116178,HL450605,06/28/2005 10:15:00 PM,038XX S COTTAGE GROVE AVE,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,STREET,false,false,0212,002,4,36,14,1181923,1879997,2005,01/26/2006 03:51:08 AM,41.825939573,-87.608069027,"(41.825939573, -87.608069027)" -4115098,HL448320,06/27/2005 07:00:00 PM,053XX S MARSHFIELD AVE,0460,BATTERY,SIMPLE,STREET,false,false,0932,009,16,61,08B,1166287,1869371,2005,01/26/2006 03:51:08 AM,41.797128527,-87.665736602,"(41.797128527, -87.665736602)" -4188916,HL447892,06/27/2005 06:38:00 PM,010XX N LARRABEE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,18,1172192,1907242,2005,01/26/2006 03:51:08 AM,41.900921752,-87.642965815,"(41.900921752, -87.642965815)" -4110691,HL447605,06/27/2005 04:15:00 PM,045XX N HAZEL ST,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,2313,019,46,3,06,1169402,1930496,2005,01/26/2006 03:51:08 AM,41.964792964,-87.652535377,"(41.964792964, -87.652535377)" -4103878,HL445990,06/26/2005 09:00:00 PM,038XX W 46TH PL,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0821,008,14,57,26,1151550,1873566,2005,01/26/2006 03:51:08 AM,41.80894157,-87.719669656,"(41.80894157, -87.719669656)" -4113028,HL451755,06/25/2005 10:00:00 PM,030XX W WILSON AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1713,017,33,14,05,1155288,1930406,2005,01/26/2006 03:51:08 AM,41.964842002,-87.704431386,"(41.964842002, -87.704431386)" -4822378,HM435859,06/25/2005 03:00:00 AM,064XX W WABANSIA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2513,,36,25,14,,,2005,06/27/2006 03:48:36 AM,,, -4207673,HL442125,06/24/2005 09:04:53 PM,033XX S OAKLEY AVE,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,RESIDENCE,true,false,0913,009,12,59,18,1161604,1882485,2005,01/26/2006 03:51:08 AM,41.83321343,-87.682545599,"(41.83321343, -87.682545599)" -4104535,HL441637,06/24/2005 05:28:00 PM,054XX S FAIRFIELD AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,true,false,0911,009,14,63,04B,1158929,1868337,2005,01/26/2006 03:51:08 AM,41.794444733,-87.692747694,"(41.794444733, -87.692747694)" -4101679,HL440056,06/23/2005 10:00:00 PM,009XX W CERMAK RD,0820,THEFT,$500 AND UNDER,CONSTRUCTION SITE,true,false,1233,012,25,31,06,1170606,1889577,2005,12/04/2014 12:43:35 PM,41.852482607,-87.649308375,"(41.852482607, -87.649308375)" -4200990,HL438842,06/23/2005 11:30:00 AM,032XX W DOUGLAS BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1022,010,24,29,18,1155178,1893072,2005,01/26/2006 03:51:08 AM,41.862396563,-87.705840112,"(41.862396563, -87.705840112)" -4098848,HL439151,06/22/2005 09:30:00 PM,015XX N LEAMINGTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2533,025,37,25,14,1141721,1909553,2005,01/26/2006 03:51:08 AM,41.907881736,-87.754831681,"(41.907881736, -87.754831681)" -4212028,HL437998,06/22/2005 09:18:00 PM,015XX S KEDZIE AVE,2027,NARCOTICS,POSS: CRACK,APARTMENT,true,false,1022,010,24,29,18,1155310,1892547,2005,01/26/2006 03:51:08 AM,41.860953257,-87.705369652,"(41.860953257, -87.705369652)" -4099577,HL436550,06/22/2005 10:36:58 AM,082XX S EVANS AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0631,006,6,44,06,1182619,1850575,2005,01/26/2006 03:51:08 AM,41.745186819,-87.606428161,"(41.745186819, -87.606428161)" From 44d3d998a86d38a0a1015370993e9a4d9d968fee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:33:00 -0700 Subject: [PATCH 058/248] Delete part-00005-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 887 ------------------ 1 file changed, 887 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00005-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00005-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00005-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index f56545d9..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00005-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,887 +0,0 @@ -4090568,HL434740,06/21/2005 08:20:00 AM,064XX N WESTERN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2412,024,50,2,06,1159181,1942888,2005,12/04/2014 12:43:35 PM,41.999013853,-87.689772976,"(41.999013853, -87.689772976)" -4094219,HL437167,06/21/2005 08:00:00 AM,010XX W HURON ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",PARKING LOT/GARAGE(NON.RESID.),false,false,1323,012,27,24,07,1169533,1904803,2005,04/21/2006 04:05:47 AM,41.894287283,-87.652803513,"(41.894287283, -87.652803513)" -4087693,HL431778,06/20/2005 01:30:00 AM,036XX N CALIFORNIA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,1733,017,33,16,14,1157035,1923866,2005,01/26/2006 03:51:08 AM,41.94686048,-87.698186313,"(41.94686048, -87.698186313)" -4280908,HL592493,06/20/2005 12:00:00 AM,023XX N MILWAUKEE AVE,1120,DECEPTIVE PRACTICE,FORGERY,OTHER,false,false,1414,014,35,22,10,1156508,1915749,2005,01/26/2006 03:51:08 AM,41.924597553,-87.70034371,"(41.924597553, -87.70034371)" -4166607,HL427845,06/18/2005 12:25:00 AM,103XX S INDIANA AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0512,005,9,49,18,1179368,1836421,2005,01/26/2006 03:51:08 AM,41.706421207,-87.618770764,"(41.706421207, -87.618770764)" -4085010,HL427805,06/17/2005 11:10:00 PM,080XX S UNION AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,true,false,0621,006,21,71,04B,1172994,1851472,2005,01/26/2006 03:51:08 AM,41.74786601,-87.64166914,"(41.74786601, -87.64166914)" -4083770,HL427522,06/17/2005 08:45:00 PM,017XX W CULLERTON ST,0460,BATTERY,SIMPLE,STREET,false,false,1223,012,25,31,08B,1165330,1890500,2005,01/26/2006 03:51:08 AM,41.855129102,-87.668646583,"(41.855129102, -87.668646583)" -4078120,HL423563,06/15/2005 10:35:00 PM,075XX S WENTWORTH AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0623,006,17,69,14,1176209,1855143,2005,01/26/2006 03:51:08 AM,41.757868151,-87.62977842,"(41.757868151, -87.62977842)" -4163503,HL423532,06/15/2005 10:15:00 PM,040XX W VAN BUREN ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1132,011,24,26,18,1149725,1897762,2005,01/26/2006 03:51:08 AM,41.875374094,-87.725735639,"(41.875374094, -87.725735639)" -4095087,HL436485,06/15/2005 02:43:00 PM,031XX W 111TH ST,1205,DECEPTIVE PRACTICE,"THEFT BY LESSEE,NON-VEH",SMALL RETAIL STORE,false,false,2211,022,19,74,11,1157531,1830805,2005,06/09/2008 01:03:25 AM,41.69147929,-87.698888859,"(41.69147929, -87.698888859)" -4160139,HL421383,06/14/2005 10:40:00 PM,030XX W LYNDALE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1414,014,35,22,18,1155470,1914967,2005,01/26/2006 03:51:08 AM,41.922472646,-87.704178867,"(41.922472646, -87.704178867)" -4073639,HL420590,06/14/2005 04:30:00 PM,034XX N WESTERN AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1913,019,47,5,06,1159733,1922580,2005,01/26/2006 03:51:08 AM,41.943276328,-87.688304805,"(41.943276328, -87.688304805)" -4076704,HL420290,06/14/2005 02:23:43 PM,043XX W DRUMMOND PL,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,2524,025,31,20,11,1146809,1917221,2005,01/26/2006 03:51:08 AM,41.928827796,-87.73594463,"(41.928827796, -87.73594463)" -4070733,HL419133,06/13/2005 11:40:00 PM,029XX N CENTRAL AVE,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,SIDEWALK,true,false,2514,025,31,19,11,1138487,1919007,2005,01/26/2006 03:51:08 AM,41.933883805,-87.766482305,"(41.933883805, -87.766482305)" -4078210,HL415330,06/12/2005 06:00:00 AM,090XX S BISHOP ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,RESIDENCE,false,false,2222,022,21,73,26,1168289,1844907,2005,01/26/2006 03:51:08 AM,41.729953203,-87.65909821,"(41.729953203, -87.65909821)" -4068386,HL415499,06/12/2005 04:00:00 AM,082XX S WABASH AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,0631,006,6,44,07,1178102,1850457,2005,01/26/2006 03:51:08 AM,41.74496653,-87.622982626,"(41.74496653, -87.622982626)" -4208028,HL413656,06/11/2005 12:20:00 PM,067XX S WINCHESTER AVE,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,VEHICLE NON-COMMERCIAL,true,false,0726,007,15,67,18,1164477,1859982,2005,01/26/2006 03:51:08 AM,41.771402283,-87.672638675,"(41.771402283, -87.672638675)" -4064467,HL412693,06/11/2005 12:00:00 AM,006XX N LAKE SHORE DR,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,1834,018,42,8,06,1179752,1904733,2005,01/26/2006 03:51:08 AM,41.893866651,-87.615274856,"(41.893866651, -87.615274856)" -4071396,HL412387,06/10/2005 09:53:00 PM,010XX W 61ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0712,007,16,68,08B,1170258,1864399,2005,01/26/2006 03:51:08 AM,41.783399242,-87.651319106,"(41.783399242, -87.651319106)" -4064153,HL410670,06/10/2005 06:10:00 AM,070XX S DR MARTIN LUTHER KING JR DR,0460,BATTERY,SIMPLE,APARTMENT,false,false,0322,003,6,69,08B,1180176,1858392,2005,01/26/2006 03:51:08 AM,41.766693805,-87.61514052,"(41.766693805, -87.61514052)" -4062453,HL409452,06/09/2005 02:30:00 PM,016XX W 35TH ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,true,false,0922,009,11,59,26,1166051,1881487,2005,01/26/2006 03:51:08 AM,41.830381207,-87.666257142,"(41.830381207, -87.666257142)" -4152959,HL409369,06/09/2005 02:23:00 PM,047XX W OHIO ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1111,011,28,25,26,1144429,1903601,2005,01/26/2006 03:51:08 AM,41.891498237,-87.745033731,"(41.891498237, -87.745033731)" -4344799,HL644155,06/09/2005 12:30:00 PM,079XX S RICHMOND ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0835,008,18,70,26,1158055,1851654,2005,01/26/2006 03:51:08 AM,41.748681941,-87.696405703,"(41.748681941, -87.696405703)" -4060885,HL407287,06/08/2005 12:00:00 PM,007XX N RIDGEWAY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1112,011,27,23,14,1151212,1904744,2005,01/26/2006 03:51:08 AM,41.894504427,-87.720092722,"(41.894504427, -87.720092722)" -4056297,HL405422,06/07/2005 05:37:00 PM,032XX S LITUANICA AVE,0560,ASSAULT,SIMPLE,CHA APARTMENT,false,false,0924,009,11,60,08A,1170787,1883697,2005,01/26/2006 03:51:08 AM,41.836343419,-87.648816066,"(41.836343419, -87.648816066)" -4055793,HL405876,06/07/2005 06:00:00 AM,028XX S KARLOV AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1031,010,22,30,05,1149556,1884555,2005,01/26/2006 03:51:08 AM,41.839135748,-87.72669875,"(41.839135748, -87.72669875)" -4053696,HL404402,06/06/2005 05:52:00 PM,048XX N RAVENSWOOD AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2032,020,47,3,06,1163542,1932027,2005,12/04/2014 12:43:35 PM,41.969119838,-87.674037693,"(41.969119838, -87.674037693)" -4049161,HL401436,06/05/2005 07:00:00 PM,033XX W WELLINGTON AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1412,014,35,21,06,1153616,1919802,2005,12/04/2014 12:43:35 PM,41.935777397,-87.710862097,"(41.935777397, -87.710862097)" -4049944,HL400504,06/05/2005 11:45:16 AM,001XX W 79TH ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,GROCERY FOOD STORE,true,false,0623,006,17,69,11,1176736,1852645,2005,01/26/2006 03:51:08 AM,41.751001502,-87.6279221,"(41.751001502, -87.6279221)" -4145889,HL399744,06/04/2005 11:50:31 PM,010XX N LAVERGNE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1531,015,37,25,18,1142878,1906420,2005,01/26/2006 03:51:08 AM,41.899262941,-87.750659592,"(41.899262941, -87.750659592)" -4142098,HL398016,06/04/2005 05:23:02 AM,072XX S HALSTED ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0732,007,17,68,16,1172254,1857055,2005,01/26/2006 03:51:08 AM,41.763202761,-87.644216859,"(41.763202761, -87.644216859)" -4193650,HL526077,06/03/2005 07:30:00 PM,047XX N WESTERN AVE,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,1911,019,47,4,06,1159547,1931583,2005,01/26/2006 03:51:08 AM,41.9679849,-87.68873955,"(41.9679849, -87.68873955)" -4044622,HL395657,06/02/2005 11:45:00 PM,061XX S GREENWOOD AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0314,003,20,42,06,1184437,1864184,2005,01/26/2006 03:51:08 AM,41.782488886,-87.599341286,"(41.782488886, -87.599341286)" -4043039,HL394482,06/02/2005 10:00:00 AM,032XX W ROOSEVELT RD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESTAURANT,false,true,1134,011,24,29,26,1155179,1894572,2005,01/26/2006 03:51:08 AM,41.866512706,-87.705796192,"(41.866512706, -87.705796192)" -4040984,HL393521,06/02/2005 12:50:00 AM,019XX W RACE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1324,012,1,24,08B,1163129,1903798,2005,01/26/2006 03:51:08 AM,41.891666459,-87.676351642,"(41.891666459, -87.676351642)" -4081180,HL426436,06/01/2005 12:00:00 PM,045XX W 56TH ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0813,008,13,62,06,1146751,1867047,2005,01/26/2006 03:51:08 AM,41.791145105,-87.737437424,"(41.791145105, -87.737437424)" -4065104,HL392022,06/01/2005 11:56:18 AM,038XX N ELSTON AVE,0810,THEFT,OVER $500,STREET,true,false,1732,017,35,16,06,1152191,1925573,2005,12/04/2014 12:43:35 PM,41.951641731,-87.715946348,"(41.951641731, -87.715946348)" -4039458,HL390657,05/31/2005 04:30:00 PM,001XX W 115TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0522,005,34,49,14,1177026,1828731,2005,01/26/2006 03:51:08 AM,41.685371737,-87.627577766,"(41.685371737, -87.627577766)" -4042686,HL389827,05/30/2005 06:00:00 PM,031XX W POLK ST,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE,false,false,1134,011,24,27,03,1155390,1896235,2005,01/26/2006 03:51:08 AM,41.871071919,-87.704976897,"(41.871071919, -87.704976897)" -4121260,HL387558,05/30/2005 08:29:00 AM,046XX S WASHTENAW AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0912,009,12,58,16,1159196,1873497,2005,01/26/2006 03:51:08 AM,41.808598985,-87.691627344,"(41.808598985, -87.691627344)" -4033856,HL388335,05/30/2005 12:00:00 AM,063XX W WARWICK AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1633,016,38,17,06,1133585,1924309,2005,12/04/2014 12:43:35 PM,41.948520603,-87.784372518,"(41.948520603, -87.784372518)" -4031852,HL385781,05/29/2005 12:00:00 AM,046XX S LARAMIE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0814,008,23,56,06,1142517,1873281,2005,12/04/2014 12:43:35 PM,41.808331702,-87.752808467,"(41.808331702, -87.752808467)" -4032642,HL385880,05/28/2005 07:00:00 PM,036XX N PAULINA ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1923,019,47,6,05,1164303,1924223,2005,01/26/2006 03:51:08 AM,41.947689209,-87.671461146,"(41.947689209, -87.671461146)" -4033025,HL383943,05/28/2005 06:39:00 AM,045XX S CICERO AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,HOTEL/MOTEL,true,false,0815,008,23,56,14,1145156,1874305,2005,01/26/2006 03:51:08 AM,41.811092392,-87.743103286,"(41.811092392, -87.743103286)" -4031242,HL382791,05/27/2005 10:00:00 AM,030XX W FILLMORE ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1134,011,28,29,05,1156047,1895175,2005,01/26/2006 03:51:08 AM,41.868149945,-87.702593396,"(41.868149945, -87.702593396)" -4034263,HL387642,05/27/2005 07:30:00 AM,065XX N CALIFORNIA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,2412,024,50,2,14,1156439,1943123,2005,01/26/2006 03:51:08 AM,41.999714811,-87.699853629,"(41.999714811, -87.699853629)" -4027386,HL380759,05/26/2005 05:45:00 PM,0000X N WESTERN AVE,0460,BATTERY,SIMPLE,RESTAURANT,true,false,1332,012,2,28,08B,1160446,1900212,2005,01/26/2006 03:51:08 AM,41.881882111,-87.686304377,"(41.881882111, -87.686304377)" -4023741,HL378632,05/25/2005 12:00:00 PM,052XX S MORGAN ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0934,009,16,61,06,1170490,1870272,2005,01/26/2006 03:51:08 AM,41.799510364,-87.650297443,"(41.799510364, -87.650297443)" -4027890,HL376705,05/24/2005 06:40:00 PM,040XX W ROOSEVELT RD,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,true,false,1132,011,24,29,06,1149433,1894437,2005,12/04/2014 12:43:35 PM,41.866255574,-87.726894007,"(41.866255574, -87.726894007)" -4020960,HL375588,05/24/2005 09:22:00 AM,076XX S CONSTANCE AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0414,004,8,43,08A,1189903,1854626,2005,01/26/2006 03:51:08 AM,41.756131176,-87.57960876,"(41.756131176, -87.57960876)" -4102365,HL375246,05/24/2005 01:15:00 AM,045XX W 16TH ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1012,010,24,29,18,1146514,1891697,2005,01/26/2006 03:51:08 AM,41.858792755,-87.73767981,"(41.858792755, -87.73767981)" -4097315,HL374502,05/23/2005 05:55:53 PM,001XX S CICERO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),VACANT LOT/LAND,true,false,1533,015,28,25,18,1144372,1898942,2005,01/26/2006 03:51:08 AM,41.878714461,-87.745360302,"(41.878714461, -87.745360302)" -4018221,HL373442,05/23/2005 09:30:00 AM,072XX N ROCKWELL ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2411,024,50,2,14,1157688,1947792,2005,01/26/2006 03:51:08 AM,42.012501261,-87.69513082,"(42.012501261, -87.69513082)" -4101902,HL372452,05/22/2005 06:55:00 PM,062XX S CALUMET AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,0311,003,20,40,18,1179607,1863744,2005,01/26/2006 03:51:08 AM,41.781393256,-87.617062723,"(41.781393256, -87.617062723)" -4138812,HL371730,05/22/2005 12:13:17 PM,005XX W OAK ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1823,018,27,8,18,1172690,1907113,2005,01/26/2006 03:51:08 AM,41.900556757,-87.641140463,"(41.900556757, -87.641140463)" -4012575,HL370181,05/21/2005 03:00:00 PM,011XX W BRYN MAWR AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,2023,020,48,77,24,1167746,1937315,2005,01/26/2006 03:51:08 AM,41.98354045,-87.658426504,"(41.98354045, -87.658426504)" -4109365,HL370033,05/21/2005 01:26:41 PM,047XX S KNOX AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0815,008,23,56,16,1146111,1872996,2005,01/26/2006 03:51:08 AM,41.807482244,-87.739633536,"(41.807482244, -87.739633536)" -4025363,HL378384,05/20/2005 12:00:00 AM,096XX S YATES AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,0431,004,7,51,06,1194055,1841464,2005,12/04/2014 12:43:35 PM,41.719912682,-87.564823593,"(41.719912682, -87.564823593)" -4009774,HL366889,05/19/2005 11:00:00 PM,072XX S SOUTH SHORE DR,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0334,003,7,43,05,1194953,1857770,2005,01/26/2006 03:51:08 AM,41.764635643,-87.560998509,"(41.764635643, -87.560998509)" -4011610,HL367825,05/19/2005 06:00:00 PM,021XX N SAYRE AVE,0810,THEFT,OVER $500,ALLEY,false,false,2512,025,36,25,06,1129194,1913638,2005,12/04/2014 12:43:35 PM,41.919314126,-87.800756972,"(41.919314126, -87.800756972)" -4007993,HL365188,05/19/2005 04:28:42 AM,061XX S COTTAGE GROVE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0313,003,20,42,14,1182575,1864672,2005,01/26/2006 03:51:08 AM,41.783871415,-87.606152705,"(41.783871415, -87.606152705)" -4021766,HL364795,05/18/2005 09:54:04 PM,015XX E 69TH PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0332,003,5,43,05,1187792,1859256,2005,01/26/2006 03:51:08 AM,41.7688868,-87.587197825,"(41.7688868, -87.587197825)" -4024633,HL363790,05/18/2005 01:30:00 PM,003XX E PERSHING RD,0820,THEFT,$500 AND UNDER,DELIVERY TRUCK,false,false,0211,002,3,35,06,1179235,1879242,2005,12/04/2014 12:43:35 PM,41.823929639,-87.617953645,"(41.823929639, -87.617953645)" -4003625,HL360730,05/16/2005 10:30:00 PM,006XX W 115TH ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0524,005,34,53,08A,1173775,1828571,2005,01/26/2006 03:51:08 AM,41.685005141,-87.639483591,"(41.685005141, -87.639483591)" -4013449,HL360541,05/16/2005 06:23:18 PM,041XX W 19TH ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,1012,010,24,29,24,1149017,1890363,2005,01/26/2006 03:51:08 AM,41.855084076,-87.728526551,"(41.855084076, -87.728526551)" -4506407,HL359772,05/16/2005 03:07:00 PM,029XX W SHAKESPEARE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,false,false,1414,014,35,22,26,1156349,1914254,2005,06/11/2007 03:52:33 PM,41.920498376,-87.700968456,"(41.920498376, -87.700968456)" -3995826,HL356914,05/14/2005 10:50:00 PM,033XX W MAYPOLE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,1123,011,28,27,04B,1154256,1900827,2005,01/26/2006 03:51:08 AM,41.883695547,-87.709017611,"(41.883695547, -87.709017611)" -3993901,HL354033,05/13/2005 12:45:00 PM,052XX N LINCOLN AVE,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,OTHER,false,false,2011,020,40,4,10,1158503,1934520,2005,01/26/2006 03:51:08 AM,41.976065663,-87.692497484,"(41.976065663, -87.692497484)" -3995571,HL356081,05/13/2005 12:00:00 PM,034XX S WALLACE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0924,009,11,60,26,1172898,1882129,2005,01/26/2006 03:51:08 AM,41.831994266,-87.641116435,"(41.831994266, -87.641116435)" -4025001,HL377978,05/13/2005 08:30:00 AM,036XX W SCHOOL ST,1330,CRIMINAL TRESPASS,TO LAND,VACANT LOT/LAND,false,false,1732,017,35,21,26,1151250,1921732,2005,01/26/2006 03:51:08 AM,41.941120283,-87.719506589,"(41.941120283, -87.719506589)" -3997312,HL352195,05/12/2005 02:30:00 PM,010XX E 83RD ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESTAURANT,false,false,0631,006,8,44,11,1184520,1850213,2005,01/26/2006 03:51:08 AM,41.744149174,-87.59947398,"(41.744149174, -87.59947398)" -4081092,HL349730,05/11/2005 01:45:00 PM,079XX S KINGSTON AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,0422,004,7,46,26,1194520,1853010,2005,01/26/2006 03:51:08 AM,41.751584501,-87.562741816,"(41.751584501, -87.562741816)" -3989778,HL349751,05/11/2005 12:25:00 PM,037XX W POLK ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1133,011,24,27,08B,1151655,1896077,2005,01/26/2006 03:51:08 AM,41.870712557,-87.718693681,"(41.870712557, -87.718693681)" -4047247,HL398154,05/11/2005 05:35:00 AM,014XX N STATE PKWY,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,1824,018,42,8,11,1175983,1910119,2005,01/26/2006 03:51:08 AM,41.908731814,-87.628954565,"(41.908731814, -87.628954565)" -3991700,HL349586,05/09/2005 02:00:00 AM,033XX W OHIO ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,true,1121,011,27,23,07,1153792,1903835,2005,01/26/2006 03:51:08 AM,41.89195905,-87.710641314,"(41.89195905, -87.710641314)" -4060008,HL343662,05/08/2005 08:03:00 PM,040XX W WILCOX ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1115,011,28,26,18,1149370,1899067,2005,01/26/2006 03:51:08 AM,41.87896205,-87.727005223,"(41.87896205, -87.727005223)" -3982702,HL342175,05/07/2005 09:30:00 PM,030XX W 26TH ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,STREET,false,false,1033,010,12,30,11,1156740,1886640,2005,01/26/2006 03:51:08 AM,41.844714972,-87.700280266,"(41.844714972, -87.700280266)" -3983923,HL340795,05/07/2005 08:45:22 AM,004XX W 101ST ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,2232,022,9,73,07,1174929,1837974,2005,01/26/2006 03:51:08 AM,41.710782791,-87.634980004,"(41.710782791, -87.634980004)" -3977819,HL340540,05/07/2005 03:40:00 AM,024XX W BELMONT AVE,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,JAIL / LOCK-UP FACILITY,true,false,1913,019,47,5,14,1159318,1921219,2005,01/26/2006 03:51:08 AM,41.939550218,-87.689867691,"(41.939550218, -87.689867691)" -3979719,HL340533,05/07/2005 03:20:00 AM,004XX N LA SALLE DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,1831,018,42,8,14,1175020,1903314,2005,01/26/2006 03:51:08 AM,41.890080194,-87.632696284,"(41.890080194, -87.632696284)" -3977602,HL340364,05/07/2005 12:45:00 AM,023XX N KARLOV AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2525,025,31,20,26,1148704,1915151,2005,01/26/2006 03:51:08 AM,41.923111087,-87.729034667,"(41.923111087, -87.729034667)" -3974796,HL336932,05/05/2005 12:40:00 PM,021XX W TOUHY AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,STREET,true,false,2411,024,50,2,08B,1160370,1947673,2005,01/26/2006 03:51:08 AM,42.01211943,-87.685265743,"(42.01211943, -87.685265743)" -3971626,HL335441,05/04/2005 05:53:19 PM,062XX N WESTERN AVE,1330,CRIMINAL TRESPASS,TO LAND,DRUG STORE,true,false,2413,024,50,2,26,1159144,1941488,2005,01/26/2006 03:51:08 AM,41.995172965,-87.689947786,"(41.995172965, -87.689947786)" -3971797,HL334258,05/04/2005 08:36:49 AM,080XX S WINCHESTER AVE,0810,THEFT,OVER $500,OTHER,false,false,0611,006,18,71,06,1164790,1851545,2005,12/04/2014 12:43:35 PM,41.748243369,-87.671729179,"(41.748243369, -87.671729179)" -3961762,HL329560,05/01/2005 07:30:00 PM,107XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0513,005,9,49,08B,1178199,1833611,2005,01/26/2006 03:51:08 AM,41.698736714,-87.623136424,"(41.698736714, -87.623136424)" -3964448,HL329343,05/01/2005 07:53:00 AM,0000X E OHIO ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1834,018,42,8,06,1176754,1904172,2005,12/04/2014 12:43:35 PM,41.892395561,-87.62630236,"(41.892395561, -87.62630236)" -4046776,HL327863,04/30/2005 06:50:00 PM,078XX S EAST END AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0414,004,8,43,18,1188939,1853258,2005,01/26/2006 03:51:08 AM,41.752400382,-87.58318527,"(41.752400382, -87.58318527)" -4077172,HL327238,04/30/2005 10:55:00 AM,037XX S DR MARTIN LUTHER KING JR DR,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),CHA PARKING LOT/GROUNDS,true,false,0212,002,3,35,18,1179518,1879937,2005,01/26/2006 03:51:08 AM,41.825830302,-87.616894164,"(41.825830302, -87.616894164)" -3966587,HL326225,04/29/2005 07:00:00 PM,003XX E PERSHING RD,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,RESIDENCE PORCH/HALLWAY,false,false,0211,002,3,35,26,1179117,1879239,2005,01/26/2006 03:51:08 AM,41.823924102,-87.618386633,"(41.823924102, -87.618386633)" -4051431,HL325863,04/29/2005 06:19:34 PM,055XX S TROY ST,2027,NARCOTICS,POSS: CRACK,VEHICLE NON-COMMERCIAL,true,false,0824,008,14,63,18,1156278,1867919,2005,01/26/2006 03:51:08 AM,41.793351479,-87.702480159,"(41.793351479, -87.702480159)" -3966077,HL332405,04/29/2005 06:00:00 PM,003XX W KINZIE ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE,false,false,1831,018,42,8,14,1174111,1903005,2005,01/26/2006 03:51:08 AM,41.889252599,-87.636043732,"(41.889252599, -87.636043732)" -3957960,HL325434,04/28/2005 09:00:00 PM,044XX S CALIFORNIA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0912,009,12,58,14,1158485,1874986,2005,01/26/2006 03:51:08 AM,41.81269953,-87.694194535,"(41.81269953, -87.694194535)" -3957507,HL324572,04/28/2005 07:00:00 PM,017XX N CICERO AVE,0810,THEFT,OVER $500,OTHER,false,false,2533,025,37,25,06,1144100,1910903,2005,12/04/2014 12:43:35 PM,41.911541921,-87.746058428,"(41.911541921, -87.746058428)" -3954756,HL323089,04/28/2005 10:00:00 AM,085XX S OGLESBY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0412,004,8,46,14,1193279,1848828,2005,01/26/2006 03:51:08 AM,41.740139151,-87.567425811,"(41.740139151, -87.567425811)" -3968030,HL321204,04/27/2005 01:51:51 PM,057XX S HOYNE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,0715,007,15,67,14,1163309,1866295,2005,01/26/2006 03:51:08 AM,41.788750539,-87.67674348,"(41.788750539, -87.67674348)" -3950420,HL320224,04/26/2005 10:40:00 PM,025XX W JACKSON BLVD,0560,ASSAULT,SIMPLE,STREET,false,false,1125,011,2,28,08A,1159586,1898573,2005,01/26/2006 03:51:08 AM,41.877402293,-87.689507435,"(41.877402293, -87.689507435)" -3965349,HL319400,04/26/2005 04:24:04 PM,062XX S JUSTINE ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0713,007,16,67,05,1167032,1863307,2005,01/26/2006 03:51:08 AM,41.780472265,-87.663177927,"(41.780472265, -87.663177927)" -4030812,HL318915,04/26/2005 12:01:56 PM,066XX S RHODES AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0321,003,20,42,18,1180998,1861286,2005,01/26/2006 03:51:08 AM,41.774616358,-87.612038638,"(41.774616358, -87.612038638)" -3962920,HL330724,04/25/2005 08:00:00 PM,062XX N AVERS AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,1711,017,39,13,14,1149531,1941038,2005,01/26/2006 03:51:08 AM,41.994130886,-87.725321066,"(41.994130886, -87.725321066)" -3956929,HL320056,04/25/2005 05:00:00 AM,002XX N CLARK ST,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0113,001,42,32,06,1175460,1901755,2005,12/04/2014 12:43:35 PM,41.885792341,-87.631127274,"(41.885792341, -87.631127274)" -3946895,HL316057,04/25/2005 01:09:29 AM,082XX S INGLESIDE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,0631,006,8,44,04B,1183966,1850243,2005,01/26/2006 03:51:08 AM,41.744244444,-87.601502935,"(41.744244444, -87.601502935)" -3946732,HL317859,04/25/2005 01:00:00 AM,031XX N MEADE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2511,025,36,19,07,1135128,1920602,2005,01/26/2006 03:51:08 AM,41.938320941,-87.778788804,"(41.938320941, -87.778788804)" -4110078,HL441947,04/24/2005 06:00:00 PM,017XX N HONORE ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,1434,014,32,24,26,1163785,1911652,2005,01/26/2006 03:51:08 AM,41.9132046,-87.673720673,"(41.9132046, -87.673720673)" -3952424,HL321490,04/24/2005 12:00:00 PM,079XX S PAULINA ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0611,006,21,71,07,1166357,1851827,2005,01/26/2006 03:51:08 AM,41.74898401,-87.665979133,"(41.74898401, -87.665979133)" -4029479,HL313221,04/23/2005 11:54:00 AM,002XX E 42ND ST,2017,NARCOTICS,MANU/DELIVER:CRACK,VEHICLE NON-COMMERCIAL,true,false,0214,002,3,38,18,1178408,1877169,2005,01/26/2006 03:51:08 AM,41.818260014,-87.621050641,"(41.818260014, -87.621050641)" -3942228,HL312849,04/22/2005 07:30:00 PM,019XX S MICHIGAN AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0132,001,3,33,06,1177480,1890933,2005,12/04/2014 12:43:35 PM,41.856050532,-87.624037885,"(41.856050532, -87.624037885)" -3934913,HL307933,04/20/2005 05:30:00 AM,102XX S COMMERCIAL AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0431,004,10,51,05,1197539,1837814,2005,01/26/2006 03:51:08 AM,41.709810704,-87.552184224,"(41.709810704, -87.552184224)" -3933508,HL306210,04/20/2005 12:05:00 AM,001XX E 70TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0322,003,6,69,08B,1178637,1858682,2005,01/26/2006 03:51:08 AM,41.76752472,-87.620772701,"(41.76752472, -87.620772701)" -3929801,HL298056,04/16/2005 02:45:00 AM,005XX E BROWNING AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,true,true,0212,002,4,35,08B,1180405,1881373,2005,01/26/2006 03:51:08 AM,41.829750449,-87.613595867,"(41.829750449, -87.613595867)" -3923716,HL297187,04/15/2005 07:40:00 AM,063XX S ASHLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,CTA GARAGE / OTHER PROPERTY,false,false,0725,007,16,67,14,1166795,1862745,2005,01/26/2006 03:51:08 AM,41.778935131,-87.664062847,"(41.778935131, -87.664062847)" -3919218,HL294014,04/13/2005 11:00:00 PM,067XX S RIDGELAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0332,003,5,43,14,1189073,1860333,2005,01/26/2006 03:51:08 AM,41.771811586,-87.582467913,"(41.771811586, -87.582467913)" -3944202,HL297847,04/13/2005 06:00:00 PM,041XX W OAKDALE AVE,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,RESIDENCE,true,false,2523,025,31,21,17,1148176,1919330,2005,06/02/2010 10:34:17 AM,41.934588835,-87.730866846,"(41.934588835, -87.730866846)" -4004393,HL291831,04/13/2005 07:10:00 AM,027XX W MADISON ST,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1125,011,2,27,16,1158307,1899866,2005,01/26/2006 03:51:08 AM,41.880976639,-87.694168225,"(41.880976639, -87.694168225)" -3919140,HL292244,04/13/2005 06:30:00 AM,058XX N CLARK ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,2012,020,40,77,08B,1164665,1938480,2005,01/26/2006 03:51:08 AM,41.986803305,-87.669724627,"(41.986803305, -87.669724627)" -3957360,HL325054,04/10/2005 09:30:00 AM,034XX W VAN BUREN ST,0820,THEFT,$500 AND UNDER,HOSPITAL BUILDING/GROUNDS,false,false,1133,011,28,27,06,1153420,1897772,2005,12/04/2014 12:43:35 PM,41.875328956,-87.712168686,"(41.875328956, -87.712168686)" -3983190,HL344497,04/07/2005 11:50:00 PM,014XX W CATALPA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,2013,020,48,77,08B,1165372,1936581,2005,01/26/2006 03:51:08 AM,41.98157733,-87.667178608,"(41.98157733, -87.667178608)" -4000310,HL278921,04/06/2005 07:30:00 PM,001XX E RANDOLPH ST,1505,PROSTITUTION,CALL OPERATION,HOTEL/MOTEL,true,false,0124,001,42,32,16,1177728,1901183,2005,01/26/2006 03:51:08 AM,41.884171514,-87.6228162,"(41.884171514, -87.6228162)" -3992868,HL277634,04/06/2005 10:25:00 AM,044XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,26,16,1146569,1899600,2005,01/26/2006 03:51:08 AM,41.880478505,-87.737276487,"(41.880478505, -87.737276487)" -3906398,HL276807,04/05/2005 09:25:00 PM,062XX S RACINE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0712,007,16,68,03,1169424,1863608,2005,01/26/2006 03:51:08 AM,41.781246755,-87.654399729,"(41.781246755, -87.654399729)" -3907033,HL282281,04/05/2005 03:00:00 PM,116XX S PARNELL AVE,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,0524,005,34,53,06,1174772,1827503,2005,12/04/2014 12:43:35 PM,41.682052289,-87.635865492,"(41.682052289, -87.635865492)" -3897838,HL275273,04/05/2005 02:00:00 AM,040XX W CHICAGO AVE,0890,THEFT,FROM BUILDING,GAS STATION,false,false,1111,011,37,23,06,1149526,1905085,2005,01/26/2006 03:51:08 AM,41.895473067,-87.726276093,"(41.895473067, -87.726276093)" -3895819,HL272929,04/04/2005 03:16:00 AM,031XX N ELSTON AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,true,1411,014,1,21,08A,1157677,1920491,2005,01/26/2006 03:51:08 AM,41.937586179,-87.695918749,"(41.937586179, -87.695918749)" -4000194,HL272493,04/03/2005 08:15:00 PM,022XX S STATE ST,2027,NARCOTICS,POSS: CRACK,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0134,001,3,33,18,1176629,1889337,2005,01/26/2006 03:51:08 AM,41.851690245,-87.627209622,"(41.851690245, -87.627209622)" -3894611,HL271700,04/03/2005 08:00:00 AM,045XX N KENTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1722,017,45,16,14,1144845,1929820,2005,01/26/2006 03:51:08 AM,41.963437886,-87.742842819,"(41.963437886, -87.742842819)" -3894119,HL271325,04/03/2005 03:50:00 AM,008XX N KEDVALE AVE,0560,ASSAULT,SIMPLE,STREET,true,false,1111,011,37,23,08A,1148526,1905215,2005,01/26/2006 03:51:08 AM,41.895849158,-87.729945529,"(41.895849158, -87.729945529)" -3897709,HL270163,04/01/2005 05:00:00 PM,0000X E GARFIELD BLVD,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESTAURANT,true,false,0232,002,3,40,11,1177959,1868613,2005,01/26/2006 03:51:08 AM,41.794791784,-87.622957126,"(41.794791784, -87.622957126)" -4174840,HL506585,04/01/2005 12:00:00 PM,024XX E 73RD ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,0334,003,7,43,06,1193715,1856987,2005,01/26/2006 03:51:08 AM,41.762517446,-87.565561637,"(41.762517446, -87.565561637)" -4000289,HL357840,04/01/2005 12:00:00 AM,039XX S LAKE PARK AVE,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,APARTMENT,false,false,2122,002,4,36,17,1183460,1878926,2005,01/26/2006 03:51:08 AM,41.822964933,-87.602463624,"(41.822964933, -87.602463624)" -3893335,HL267101,03/31/2005 02:30:00 PM,030XX W WARREN BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,1331,012,2,27,07,1155853,1900152,2005,01/26/2006 03:51:08 AM,41.88181125,-87.703171464,"(41.88181125, -87.703171464)" -3986278,HL265968,03/31/2005 01:00:00 PM,056XX S ABERDEEN ST,2094,NARCOTICS,ATTEMPT POSSESSION CANNABIS,STREET,true,false,0712,007,16,68,18,1169981,1867531,2005,01/26/2006 03:51:08 AM,41.791999837,-87.652243716,"(41.791999837, -87.652243716)" -3891092,HL264885,03/30/2005 08:17:46 PM,037XX N SOUTHPORT AVE,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,true,false,1923,019,44,6,08B,1166264,1924905,2005,01/26/2006 03:51:08 AM,41.949518868,-87.664233441,"(41.949518868, -87.664233441)" -3894596,HL264445,03/30/2005 04:45:00 PM,068XX S RIDGELAND AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0332,003,5,43,05,1189002,1860092,2005,01/26/2006 03:51:08 AM,41.771151963,-87.582735882,"(41.771151963, -87.582735882)" -3906302,HL277796,03/30/2005 04:30:00 PM,060XX W MONTROSE AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,1624,016,38,15,11,1135524,1928592,2005,01/26/2006 03:51:08 AM,41.960239286,-87.77714283,"(41.960239286, -87.77714283)" -3889964,HL264211,03/30/2005 02:05:00 PM,131XX S CARVER DR,0560,ASSAULT,SIMPLE,STREET,false,false,0533,005,9,54,08A,1186819,1818582,2005,01/26/2006 03:51:08 AM,41.65729576,-87.592047878,"(41.65729576, -87.592047878)" -3914164,HL288023,03/30/2005 01:15:00 PM,014XX W WEBSTER AVE,0860,THEFT,RETAIL THEFT,OTHER,false,false,1811,018,32,7,06,1166165,1914693,2005,01/26/2006 03:51:08 AM,41.921498729,-87.664890033,"(41.921498729, -87.664890033)" -3895235,HL263741,03/30/2005 11:00:00 AM,106XX S PARNELL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2233,022,34,49,05,1174561,1834223,2005,01/26/2006 03:51:08 AM,41.700497682,-87.636438858,"(41.700497682, -87.636438858)" -3887333,HL263442,03/29/2005 08:00:00 PM,025XX W 117TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2212,022,19,75,05,1161332,1827001,2005,01/26/2006 03:51:08 AM,41.680962752,-87.685077669,"(41.680962752, -87.685077669)" -4100711,HL261866,03/29/2005 12:30:00 PM,013XX W 88TH ST,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,VEHICLE NON-COMMERCIAL,true,false,2222,022,21,71,18,1168665,1846361,2005,01/26/2006 03:51:08 AM,41.733935101,-87.657678997,"(41.733935101, -87.657678997)" -3886862,HL260119,03/28/2005 02:55:00 PM,060XX S THROOP ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0713,007,16,67,08B,1168649,1864822,2005,01/26/2006 03:51:08 AM,41.784594874,-87.657206049,"(41.784594874, -87.657206049)" -3882444,HL258913,03/27/2005 10:25:00 PM,053XX W CHICAGO AVE,141C,WEAPONS VIOLATION,UNLAWFUL USE OTHER DANG WEAPON,STREET,true,false,1524,015,37,25,15,1140842,1904779,2005,06/11/2007 03:52:33 PM,41.894797544,-87.758178285,"(41.894797544, -87.758178285)" -3890999,HL254878,03/24/2005 06:30:00 PM,050XX N MANGO AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1622,016,45,11,06,1136885,1933269,2005,12/04/2014 12:43:35 PM,41.973049056,-87.772026411,"(41.973049056, -87.772026411)" -3879278,HL253118,03/24/2005 04:00:00 PM,088XX S LOWE AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,2223,022,21,71,08B,1173479,1846259,2005,01/26/2006 03:51:08 AM,41.733550142,-87.640045842,"(41.733550142, -87.640045842)" -3881851,HL253780,03/24/2005 02:00:00 PM,001XX W 87TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",PARKING LOT/GARAGE(NON.RESID.),false,false,0622,006,21,44,07,1176920,1847317,2005,01/26/2006 03:51:08 AM,41.736376676,-87.627408005,"(41.736376676, -87.627408005)" -3975299,HL251752,03/23/2005 08:30:00 PM,010XX N LARRABEE ST,2027,NARCOTICS,POSS: CRACK,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1823,018,27,8,18,1172192,1907242,2005,01/26/2006 03:51:08 AM,41.900921752,-87.642965815,"(41.900921752, -87.642965815)" -3878255,HL253425,03/23/2005 07:30:00 PM,004XX W GOETHE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1821,018,27,8,26,1173123,1908967,2005,01/26/2006 03:51:08 AM,41.905634634,-87.639494966,"(41.905634634, -87.639494966)" -3876312,HL250217,03/23/2005 03:07:00 AM,008XX W JACKSON BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,1213,012,27,28,14,1170955,1898896,2005,01/26/2006 03:51:08 AM,41.878047017,-87.647754301,"(41.878047017, -87.647754301)" -3972526,HL248256,03/21/2005 10:36:41 PM,031XX W DOUGLAS BLVD,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1022,010,24,29,18,1155832,1893333,2005,01/26/2006 03:51:08 AM,41.863099633,-87.703432325,"(41.863099633, -87.703432325)" -3868814,HL243891,03/19/2005 12:40:00 PM,093XX S KENWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0413,004,8,47,08B,1186794,1843214,2005,01/26/2006 03:51:08 AM,41.724889664,-87.591362999,"(41.724889664, -87.591362999)" -3867609,HL243100,03/19/2005 01:30:00 AM,018XX W 23RD ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,true,false,1034,010,25,31,04A,1164355,1888918,2005,01/26/2006 03:51:08 AM,41.850808598,-87.672269968,"(41.850808598, -87.672269968)" -3876547,HL242890,03/18/2005 11:03:49 PM,015XX W HOWARD ST,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,2422,024,49,1,24,1164499,1950305,2005,06/11/2007 03:52:33 PM,42.019254901,-87.669998214,"(42.019254901, -87.669998214)" -3864930,HL240417,03/17/2005 06:00:00 PM,062XX N GREENVIEW AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2433,024,40,77,26,1165134,1941704,2005,01/26/2006 03:51:08 AM,41.995640064,-87.667907509,"(41.995640064, -87.667907509)" -3865520,HL239622,03/17/2005 12:15:00 PM,085XX S CONSTANCE AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0412,004,8,45,08B,1189965,1848842,2005,01/26/2006 03:51:08 AM,41.740257863,-87.579567238,"(41.740257863, -87.579567238)" -3864863,HL238517,03/16/2005 07:56:41 PM,0000X N PARKSIDE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,1513,015,29,25,04B,1138640,1899751,2005,02/25/2006 03:52:18 AM,41.881040292,-87.766387751,"(41.881040292, -87.766387751)" -3867969,HL241222,03/16/2005 03:05:00 PM,062XX S STEWART AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0711,007,20,68,08B,1174730,1863727,2005,01/26/2006 03:51:08 AM,41.781456694,-87.634943307,"(41.781456694, -87.634943307)" -3863503,HL237584,03/16/2005 11:40:00 AM,049XX S VINCENNES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0223,002,4,38,14,1180444,1872536,2005,01/26/2006 03:51:08 AM,41.805500128,-87.613724306,"(41.805500128, -87.613724306)" -3934844,HL307617,03/15/2005 08:00:00 PM,079XX S OGLESBY AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0414,004,7,46,05,1193200,1852723,2005,01/26/2006 03:51:08 AM,41.75082929,-87.567588257,"(41.75082929, -87.567588257)" -6008307,HP114494,03/15/2005 12:00:00 PM,052XX N HARLEM AVE,0810,THEFT,OVER $500,COMMERCIAL / BUSINESS OFFICE,true,false,1613,,41,10,06,,,2005,12/04/2014 12:43:35 PM,,, -3859069,HL234497,03/14/2005 06:42:00 PM,128XX S HALSTED ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0523,005,34,53,08B,1173293,1819919,2005,01/26/2006 03:51:08 AM,41.661273269,-87.641502354,"(41.661273269, -87.641502354)" -3860301,HL234204,03/14/2005 02:30:00 PM,076XX S CICERO AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0833,008,13,65,06,1145766,1853738,2005,01/26/2006 03:51:08 AM,41.75464162,-87.741385158,"(41.75464162, -87.741385158)" -3858642,HL233208,03/14/2005 08:00:00 AM,016XX E 67TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0332,003,5,43,08B,1188532,1860850,2005,01/26/2006 03:51:08 AM,41.77324322,-87.584434511,"(41.77324322, -87.584434511)" -3858653,HL232844,03/13/2005 10:50:22 PM,026XX W 47TH ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0912,009,12,58,03,1159273,1873438,2005,01/26/2006 03:51:08 AM,41.808435504,-87.69134654,"(41.808435504, -87.69134654)" -3856876,HL232689,03/13/2005 07:45:00 PM,033XX N KOSTNER AVE,0460,BATTERY,SIMPLE,STREET,true,false,1731,017,31,16,08B,1146499,1921846,2005,12/04/2014 12:43:35 PM,41.941525136,-87.736965566,"(41.941525136, -87.736965566)" -3858883,HL234039,03/13/2005 04:30:00 PM,015XX S KOLIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1012,010,24,29,08B,1147679,1892031,2005,01/26/2006 03:51:08 AM,41.859687035,-87.73339488,"(41.859687035, -87.73339488)" -3859424,HL229248,03/11/2005 08:30:00 PM,003XX W OAK ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,false,false,1823,018,27,8,26,1173434,1907132,2005,01/26/2006 03:51:08 AM,41.900592389,-87.638407171,"(41.900592389, -87.638407171)" -3853800,HL229305,03/11/2005 06:45:00 PM,082XX S COMMERCIAL AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,0424,004,7,46,26,1197577,1851090,2005,01/26/2006 03:51:08 AM,41.746240202,-87.55160353,"(41.746240202, -87.55160353)" -3866732,HL226278,03/10/2005 12:40:00 PM,026XX W HIRSCH ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1423,014,26,24,08B,1158652,1909252,2005,01/26/2006 03:51:08 AM,41.906725586,-87.69264405,"(41.906725586, -87.69264405)" -3852066,HL225836,03/10/2005 09:30:00 AM,062XX S KEDZIE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0823,008,15,66,03,1156096,1862711,2005,01/26/2006 03:51:08 AM,41.779063637,-87.703287484,"(41.779063637, -87.703287484)" -3997098,HL224456,03/09/2005 02:12:00 PM,059XX S PEORIA ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,0712,007,16,68,18,1171277,1865648,2005,01/26/2006 03:51:08 AM,41.786804401,-87.647546589,"(41.786804401, -87.647546589)" -3858632,HL233307,03/09/2005 08:00:00 AM,005XX W CERMAK RD,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,1233,012,25,31,14,1172969,1889736,2005,01/26/2006 03:51:08 AM,41.852866935,-87.640630817,"(41.852866935, -87.640630817)" -3847210,HL221890,03/08/2005 07:11:53 AM,028XX W 64TH ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,ALLEY,false,true,0823,008,15,66,26,1158363,1862113,2005,01/26/2006 03:51:08 AM,41.777376758,-87.694992659,"(41.777376758, -87.694992659)" -3846647,HL221675,03/07/2005 11:45:00 PM,056XX W FULLERTON AVE,0820,THEFT,$500 AND UNDER,DRUG STORE,true,false,2515,025,30,19,06,1138610,1915438,2005,12/04/2014 12:43:35 PM,41.924087853,-87.766117045,"(41.924087853, -87.766117045)" -3846500,HL221681,03/07/2005 11:38:00 PM,063XX S FAIRFIELD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0825,008,15,66,26,1159178,1862349,2005,01/26/2006 03:51:08 AM,41.778007736,-87.691998398,"(41.778007736, -87.691998398)" -3847709,HL221377,03/07/2005 07:20:00 PM,028XX S STATE ST,0460,BATTERY,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,2113,001,3,35,08B,1176702,1886077,2005,01/26/2006 03:51:08 AM,41.842742921,-87.627040101,"(41.842742921, -87.627040101)" -3846799,HL220117,03/07/2005 09:01:09 AM,023XX S DR MARTIN LUTHER KING JR DR,1330,CRIMINAL TRESPASS,TO LAND,HOTEL/MOTEL,true,false,0133,001,2,33,26,1178919,1889126,2005,01/26/2006 03:51:08 AM,41.851059266,-87.618811288,"(41.851059266, -87.618811288)" -3940387,HL219647,03/06/2005 11:38:23 PM,036XX W ROOSEVELT RD,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1133,011,24,29,18,1152068,1894503,2005,01/26/2006 03:51:08 AM,41.866385199,-87.717218881,"(41.866385199, -87.717218881)" -3849187,HL217960,03/05/2005 07:00:00 PM,063XX S WOLCOTT AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0726,007,15,67,05,1164739,1862381,2005,01/26/2006 03:51:08 AM,41.777979931,-87.671610606,"(41.777979931, -87.671610606)" -3845611,HL217284,03/05/2005 02:45:00 PM,045XX W WASHINGTON BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,1113,011,28,26,06,1146318,1900075,2005,12/04/2014 12:43:35 PM,41.88178674,-87.738186049,"(41.88178674, -87.738186049)" -3945261,HL216215,03/05/2005 12:53:25 AM,016XX W KINZIE ST,2250,LIQUOR LAW VIOLATION,LIQUOR LICENSE VIOLATION,OTHER,true,false,1324,012,27,24,22,1165125,1902824,2005,01/26/2006 03:51:08 AM,41.888951557,-87.669048955,"(41.888951557, -87.669048955)" -3851751,HL215727,03/04/2005 08:20:00 PM,066XX S PERRY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,0722,007,6,69,08B,1176584,1860777,2005,01/26/2006 03:51:08 AM,41.773320057,-87.628234836,"(41.773320057, -87.628234836)" -3839186,HL210289,03/02/2005 05:30:00 AM,012XX S WABASH AVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,0132,001,2,33,26,1177005,1894764,2005,01/26/2006 03:51:08 AM,41.8665738,-87.625665449,"(41.8665738, -87.625665449)" -3835163,HL207324,02/28/2005 09:00:00 AM,001XX N SANGAMON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,1212,012,27,28,07,1170039,1900839,2005,01/26/2006 03:51:08 AM,41.883398775,-87.651060898,"(41.883398775, -87.651060898)" -3903379,HL204296,02/26/2005 11:00:00 PM,029XX S STATE ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,2113,001,3,35,18,1176716,1885520,2005,01/26/2006 03:51:08 AM,41.841214155,-87.627005535,"(41.841214155, -87.627005535)" -3832748,HL204081,02/26/2005 08:15:00 PM,0000X E 102ND PL,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0511,005,9,49,04B,1178421,1836982,2005,01/26/2006 03:51:08 AM,41.707982179,-87.622221652,"(41.707982179, -87.622221652)" -3832024,HL203540,02/26/2005 02:00:00 PM,032XX W 66TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0831,008,15,66,14,1155594,1860631,2005,01/26/2006 03:51:08 AM,41.773365882,-87.705183579,"(41.773365882, -87.705183579)" -3831851,HL201807,02/25/2005 02:00:00 PM,036XX W CERMAK RD,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1013,010,22,30,08B,1152104,1889088,2005,01/26/2006 03:51:08 AM,41.851525097,-87.717229369,"(41.851525097, -87.717229369)" -3831253,HL199726,02/24/2005 02:15:00 PM,051XX N DAMEN AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,"SCHOOL, PUBLIC, BUILDING",true,false,2032,020,47,4,04A,1162033,1934198,2005,01/26/2006 03:51:08 AM,41.975108885,-87.679525341,"(41.975108885, -87.679525341)" -3834017,HL201198,02/24/2005 10:15:00 AM,036XX E 114TH ST,1900,OTHER NARCOTIC VIOLATION,INTOXICATING COMPOUNDS,"SCHOOL, PUBLIC, BUILDING",false,false,0433,004,10,52,18,1202032,1829944,2005,01/26/2006 03:51:08 AM,41.688101718,-87.535997405,"(41.688101718, -87.535997405)" -3833102,HL198579,02/23/2005 09:19:00 PM,068XX S HALSTED ST,1330,CRIMINAL TRESPASS,TO LAND,TAVERN/LIQUOR STORE,true,false,0723,007,6,68,26,1172116,1859172,2005,01/26/2006 03:51:08 AM,41.7690151,-87.644660529,"(41.7690151, -87.644660529)" -3903602,HL198556,02/23/2005 08:15:00 PM,014XX S ASHLAND AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1224,012,2,28,16,1165908,1893436,2005,01/26/2006 03:51:08 AM,41.863173451,-87.666441364,"(41.863173451, -87.666441364)" -3825915,HL196605,02/22/2005 09:14:00 PM,005XX S LA SALLE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CTA PLATFORM,true,true,0131,001,2,32,08B,1175288,1897997,2005,01/26/2006 03:51:08 AM,41.875484026,-87.631871681,"(41.875484026, -87.631871681)" -3823531,HL194440,02/21/2005 07:13:06 PM,006XX E 88TH ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,0632,006,6,44,26,1182135,1846815,2005,01/26/2006 03:51:08 AM,41.734880161,-87.608317668,"(41.734880161, -87.608317668)" -3829195,HL194352,02/21/2005 06:06:00 PM,010XX W NORTH AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1811,018,32,7,06,1169374,1910873,2005,01/26/2006 03:51:08 AM,41.910947195,-87.653210723,"(41.910947195, -87.653210723)" -3827141,HL198636,02/21/2005 04:00:00 PM,060XX N WINTHROP AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2433,024,48,77,05,1167805,1940314,2005,01/26/2006 03:51:08 AM,41.9917685,-87.658122556,"(41.9917685, -87.658122556)" -3906585,HL193008,02/20/2005 11:38:41 PM,047XX N LAPORTE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,1623,016,45,15,18,1142470,1930986,2005,01/26/2006 03:51:08 AM,41.966682068,-87.751545891,"(41.966682068, -87.751545891)" -3827065,HL192248,02/20/2005 02:35:00 PM,014XX W 61ST ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0713,007,16,67,06,1167554,1864327,2005,01/26/2006 03:51:08 AM,41.783260092,-87.661234954,"(41.783260092, -87.661234954)" -3821979,HL192180,02/20/2005 01:15:00 PM,074XX S BENNETT AVE,0496,BATTERY,AGGRAVATED DOMESTIC BATTERY: KNIFE/CUTTING INST,APARTMENT,true,true,0333,003,8,43,04B,1190043,1855700,2005,01/26/2006 03:51:08 AM,41.759074958,-87.579061189,"(41.759074958, -87.579061189)" -3822283,HL191274,02/19/2005 10:40:00 PM,056XX N WASHTENAW AVE,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,2011,020,40,2,26,1157322,1937569,2005,01/26/2006 03:51:08 AM,41.984456427,-87.696757163,"(41.984456427, -87.696757163)" -3819546,HL189022,02/18/2005 05:29:13 PM,015XX W 21ST ST,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,VEHICLE NON-COMMERCIAL,false,false,1222,012,25,31,03,1166296,1890205,2005,01/26/2006 03:51:08 AM,41.85429902,-87.665109364,"(41.85429902, -87.665109364)" -3825009,HL195457,02/18/2005 04:00:00 PM,013XX W ESTES AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,2423,024,49,1,06,1166019,1947562,2005,01/26/2006 03:51:08 AM,42.011695611,-87.664483694,"(42.011695611, -87.664483694)" -3820003,HL188773,02/18/2005 03:20:00 PM,063XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0312,003,20,42,08B,1182025,1863051,2005,01/26/2006 03:51:08 AM,41.779435987,-87.608219303,"(41.779435987, -87.608219303)" -3932867,HL304969,02/14/2005 09:00:00 PM,025XX W 116TH PL,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2212,022,19,75,26,1161435,1827256,2005,01/26/2006 03:51:08 AM,41.681660392,-87.684693606,"(41.681660392, -87.684693606)" -3806000,HL174319,02/10/2005 08:14:48 PM,032XX N WESTERN AVE,0554,ASSAULT,AGG PO HANDS NO/MIN INJURY,CTA BUS,true,false,1913,019,47,5,08A,1159739,1921242,2005,01/26/2006 03:51:08 AM,41.939604649,-87.688319756,"(41.939604649, -87.688319756)" -3805949,HL173464,02/10/2005 09:45:00 AM,021XX N LONG AVE,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,2515,025,37,19,06,1139988,1913987,2005,12/04/2014 12:43:35 PM,41.920081027,-87.761089223,"(41.920081027, -87.761089223)" -3803850,HL171895,02/09/2005 04:15:00 PM,030XX W BELMONT AVE,0560,ASSAULT,SIMPLE,SMALL RETAIL STORE,false,false,1733,017,33,21,08A,1155812,1921164,2005,01/26/2006 03:51:08 AM,41.939470786,-87.702754784,"(41.939470786, -87.702754784)" -3806509,HL171707,02/09/2005 12:00:00 PM,043XX S DREXEL BLVD,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2123,002,4,39,08B,1183099,1876120,2005,01/26/2006 03:51:08 AM,41.815273485,-87.603875363,"(41.815273485, -87.603875363)" -3802809,HL169768,02/08/2005 03:43:05 PM,075XX S RACINE AVE,1260,DECEPTIVE PRACTICE,LIBRARY THEFT,LIBRARY,true,false,0612,006,17,71,11,1169583,1854922,2005,06/11/2007 03:52:33 PM,41.757407834,-87.6540683,"(41.757407834, -87.6540683)" -3823848,HL167930,02/07/2005 03:55:00 PM,013XX W WILSON AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,true,false,2311,019,46,3,26,1166426,1930623,2005,01/26/2006 03:51:08 AM,41.965205822,-87.663473655,"(41.965205822, -87.663473655)" -3801043,HL166478,02/06/2005 08:10:00 PM,051XX S HARPER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE-GARAGE,false,false,2132,002,4,41,14,1187121,1871107,2005,01/26/2006 03:51:08 AM,41.801422834,-87.589281438,"(41.801422834, -87.589281438)" -3801728,HL165614,02/06/2005 09:39:00 AM,024XX W MONROE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,1125,011,2,28,26,1159849,1899642,2005,01/26/2006 03:51:08 AM,41.88033031,-87.688512279,"(41.88033031, -87.688512279)" -3796957,HL165461,02/05/2005 10:00:00 PM,055XX W EDMUNDS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),true,false,1623,016,45,11,07,1138295,1932440,2005,01/26/2006 03:51:08 AM,41.97074874,-87.766861613,"(41.97074874, -87.766861613)" -3796231,HL162874,02/04/2005 07:00:00 PM,024XX S MILLARD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1013,010,22,30,26,1152380,1887692,2005,01/26/2006 03:51:08 AM,41.847688865,-87.716253192,"(41.847688865, -87.716253192)" -3795739,HL162444,02/04/2005 04:13:30 PM,110XX S INDIANA AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,LIBRARY,true,false,0513,005,9,49,26,1179575,1832059,2005,01/26/2006 03:51:08 AM,41.694446562,-87.618145389,"(41.694446562, -87.618145389)" -3799975,HL165869,02/04/2005 04:00:00 PM,005XX W BARRY AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,2332,019,44,6,26,1171962,1920672,2005,01/26/2006 03:51:08 AM,41.93777939,-87.643413761,"(41.93777939, -87.643413761)" -3795299,HL162475,02/04/2005 01:30:00 PM,021XX W 32ND ST,0810,THEFT,OVER $500,STREET,false,false,0913,009,12,59,06,1162855,1883480,2005,12/04/2014 12:43:35 PM,41.835917718,-87.677927578,"(41.835917718, -87.677927578)" -3851652,HL159564,02/03/2005 08:55:00 AM,005XX E BROWNING AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA APARTMENT,true,false,0212,002,4,35,18,1180912,1881386,2005,01/26/2006 03:51:08 AM,41.829774451,-87.61173531,"(41.829774451, -87.61173531)" -3783875,HL153294,01/30/2005 09:24:22 PM,029XX E 78TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0421,004,7,43,14,1196990,1853870,2005,01/26/2006 03:51:08 AM,41.753883341,-87.553662074,"(41.753883341, -87.553662074)" -3839780,HL151498,01/29/2005 07:25:00 PM,077XX S SAWYER AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0835,008,18,70,18,1156020,1853020,2005,01/26/2006 03:51:08 AM,41.752471562,-87.703826127,"(41.752471562, -87.703826127)" -3777629,HL148547,01/28/2005 04:20:00 AM,062XX S NASHVILLE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0812,008,23,64,14,1133438,1862620,2005,01/26/2006 03:51:08 AM,41.779239441,-87.786357609,"(41.779239441, -87.786357609)" -3779357,HL147235,01/27/2005 12:15:00 PM,013XX S TROY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1022,010,24,29,08B,1155540,1893401,2005,01/26/2006 03:51:08 AM,41.863292107,-87.704502406,"(41.863292107, -87.704502406)" -3775918,HL146518,01/26/2005 11:25:00 PM,032XX W FULTON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1123,011,28,27,08B,1154330,1901847,2005,01/26/2006 03:51:08 AM,41.886493052,-87.708718613,"(41.886493052, -87.708718613)" -3776475,HL146495,01/26/2005 10:45:00 PM,010XX W 74TH ST,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0733,007,17,68,03,1170920,1855796,2005,01/26/2006 03:51:08 AM,41.759777128,-87.649142914,"(41.759777128, -87.649142914)" -3772766,HL144026,01/25/2005 05:00:00 PM,044XX W WEST END AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1113,011,28,26,04B,1147026,1900651,2005,01/26/2006 03:51:08 AM,41.883353848,-87.735571531,"(41.883353848, -87.735571531)" -3771769,HL143917,01/25/2005 02:30:00 PM,045XX S HALSTED ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0935,009,11,61,26,1171781,1874407,2005,01/26/2006 03:51:08 AM,41.810828985,-87.645441657,"(41.810828985, -87.645441657)" -3775550,HL143114,01/25/2005 11:38:37 AM,0000X N PINE AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,APARTMENT,false,false,1522,015,28,25,11,1139549,1899588,2005,01/26/2006 03:51:08 AM,41.880576472,-87.763053889,"(41.880576472, -87.763053889)" -3776911,HL141595,01/24/2005 03:50:00 PM,032XX N LAKE SHORE DR,0460,BATTERY,SIMPLE,STREET,false,false,2332,019,44,6,08B,1173053,1921821,2005,01/26/2006 03:51:08 AM,41.940908123,-87.639369982,"(41.940908123, -87.639369982)" -3773904,HL142029,01/24/2005 12:00:00 PM,042XX S UNION AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0935,009,11,61,06,1172384,1876620,2005,01/26/2006 03:51:08 AM,41.816888408,-87.643164726,"(41.816888408, -87.643164726)" -3770854,HL140920,01/24/2005 11:00:00 AM,047XX W IRVING PARK RD,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1722,017,45,15,06,1143749,1926204,2005,01/26/2006 03:51:08 AM,41.953535933,-87.746963462,"(41.953535933, -87.746963462)" -3769669,HL141376,01/23/2005 11:00:00 PM,050XX W CONCORD PL,0820,THEFT,$500 AND UNDER,STREET,false,false,2533,025,37,25,06,1142516,1910460,2005,12/04/2014 12:43:35 PM,41.910355894,-87.751888647,"(41.910355894, -87.751888647)" -3771070,HL139266,01/23/2005 12:01:00 AM,016XX W 73RD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0735,007,17,67,08B,1166710,1856344,2005,01/26/2006 03:51:08 AM,41.761371763,-87.664556937,"(41.761371763, -87.664556937)" -3782181,HL152914,01/23/2005 12:00:00 AM,0000X E 118TH PL,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0532,005,9,53,26,1178615,1826363,2005,01/26/2006 03:51:08 AM,41.678837724,-87.621832434,"(41.678837724, -87.621832434)" -3808793,HL175942,01/21/2005 11:00:00 AM,121XX S NORMAL AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,false,false,0523,005,34,53,10,1175191,1824555,2005,01/26/2006 03:51:08 AM,41.673953192,-87.634419251,"(41.673953192, -87.634419251)" -3764608,HL136073,01/21/2005 01:30:00 AM,024XX N ARTESIAN AVE,0810,THEFT,OVER $500,STREET,false,false,1431,014,1,22,06,1159571,1916452,2005,12/04/2014 12:43:35 PM,41.926464037,-87.689069498,"(41.926464037, -87.689069498)" -3763918,HL134895,01/20/2005 02:30:00 PM,012XX N WASHTENAW AVE,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,SIDEWALK,true,false,1423,014,26,24,18,1158138,1907899,2005,06/11/2007 03:52:33 PM,41.903023361,-87.694569195,"(41.903023361, -87.694569195)" -3785730,HL154721,01/20/2005 11:00:00 AM,048XX S DR MARTIN LUTHER KING JR DR,0810,THEFT,OVER $500,CONSTRUCTION SITE,false,false,0224,002,3,38,06,1179635,1873067,2005,12/04/2014 12:43:35 PM,41.806975786,-87.616675128,"(41.806975786, -87.616675128)" -3764243,HL134342,01/20/2005 08:56:11 AM,090XX S EXCHANGE AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0423,004,10,46,08B,1197290,1845844,2005,01/26/2006 03:51:08 AM,41.731851918,-87.552829473,"(41.731851918, -87.552829473)" -3764922,HL134756,01/19/2005 09:30:00 PM,070XX S MERRILL AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,0331,003,5,43,07,1191813,1858347,2005,01/26/2006 03:51:08 AM,41.766295767,-87.572488531,"(41.766295767, -87.572488531)" -3839583,HL133661,01/19/2005 07:26:51 PM,012XX W 72ND ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,0734,007,17,67,26,1169019,1856990,2005,01/26/2006 03:51:08 AM,41.763094899,-87.656075612,"(41.763094899, -87.656075612)" -3763863,HL133478,01/19/2005 03:00:00 PM,024XX N NEVA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,false,false,2512,025,36,18,07,1128229,1915519,2005,01/26/2006 03:51:08 AM,41.924492223,-87.804259943,"(41.924492223, -87.804259943)" -3761305,HL128590,01/16/2005 10:30:00 PM,071XX S YALE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0731,007,6,69,14,1175908,1857250,2005,01/26/2006 03:51:08 AM,41.763656754,-87.630818482,"(41.763656754, -87.630818482)" -3757043,HL128261,01/16/2005 05:59:00 PM,034XX W 13TH PL,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,ALLEY,true,false,1021,010,24,29,15,1153778,1893653,2005,06/11/2007 03:52:33 PM,41.864018856,-87.710963892,"(41.864018856, -87.710963892)" -3768435,HL127786,01/15/2005 05:30:00 PM,058XX S NARRAGANSETT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0811,008,23,56,14,1134698,1864733,2005,01/26/2006 03:51:08 AM,41.785015819,-87.781688514,"(41.785015819, -87.781688514)" -3756452,HL126057,01/15/2005 11:20:00 AM,071XX S MARSHFIELD AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,true,0735,007,17,67,08A,1166547,1856966,2005,01/26/2006 03:51:08 AM,41.763082091,-87.665136638,"(41.763082091, -87.665136638)" -3756094,HL125702,01/15/2005 12:00:00 AM,037XX W ALTGELD ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2524,025,35,22,07,1150841,1916392,2005,01/26/2006 03:51:08 AM,41.926474906,-87.721149974,"(41.926474906, -87.721149974)" -3755934,HL125278,01/14/2005 08:29:03 PM,086XX S COTTAGE GROVE AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0632,006,6,44,06,1183033,1847810,2005,01/26/2006 03:51:08 AM,41.737589747,-87.604996961,"(41.737589747, -87.604996961)" -3756656,HL124127,01/14/2005 10:30:00 AM,071XX S WESTERN AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0832,008,18,66,06,1161645,1857408,2005,01/26/2006 03:51:08 AM,41.764398091,-87.683091194,"(41.764398091, -87.683091194)" -3750520,HL121555,01/12/2005 10:20:00 PM,021XX S SPAULDING AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1024,010,24,30,08B,1154646,1889730,2005,01/26/2006 03:51:08 AM,41.853236392,-87.70788239,"(41.853236392, -87.70788239)" -3771571,HL119903,01/12/2005 08:10:00 AM,062XX S STEWART AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,0711,007,20,68,08A,1174729,1863752,2005,01/26/2006 03:51:08 AM,41.781525319,-87.634946229,"(41.781525319, -87.634946229)" -3768381,HL137169,01/12/2005 07:15:00 AM,044XX N KENNETH AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,1722,017,45,16,06,1145624,1929167,2005,12/04/2014 12:43:35 PM,41.961631236,-87.739995293,"(41.961631236, -87.739995293)" -3811169,HL116792,01/10/2005 02:35:00 PM,062XX S DR MARTIN LUTHER KING JR DR,2091,NARCOTICS,FORFEIT PROPERTY,STREET,true,false,0311,003,20,40,26,1179958,1863484,2005,01/26/2006 03:51:08 AM,41.780671761,-87.615783843,"(41.780671761, -87.615783843)" -3745543,HL116057,01/10/2005 09:30:00 AM,060XX S DR MARTIN LUTHER KING JR DR,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0313,003,20,42,05,1180002,1864838,2005,01/26/2006 03:51:08 AM,41.78438626,-87.615581097,"(41.78438626, -87.615581097)" -3742276,HL112641,01/08/2005 03:16:01 AM,022XX E 103RD ST,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,POLICE FACILITY/VEH PARKING LOT,true,false,0434,004,10,51,08B,1193141,1837090,2005,01/26/2006 03:51:08 AM,41.707932328,-87.568313606,"(41.707932328, -87.568313606)" -3826252,HL112111,01/07/2005 07:45:07 PM,0000X N OAKLEY BLVD,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1332,012,2,28,18,1161032,1900467,2005,01/26/2006 03:51:08 AM,41.88256971,-87.684145512,"(41.88256971, -87.684145512)" -3738484,HL108311,01/05/2005 03:30:00 PM,047XX W NORTH AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,2533,025,37,25,06,1144212,1910247,2005,01/26/2006 03:51:08 AM,41.909739682,-87.745663482,"(41.909739682, -87.745663482)" -3739217,HL108315,01/05/2005 10:00:00 AM,063XX S CHAMPLAIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0312,003,20,42,14,1181695,1863217,2005,01/26/2006 03:51:08 AM,41.779899136,-87.609423985,"(41.779899136, -87.609423985)" -3736514,HL107476,01/04/2005 06:00:00 PM,030XX W ARTHINGTON ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,1134,011,28,27,26,1156098,1895839,2005,01/26/2006 03:51:08 AM,41.869971002,-87.702388247,"(41.869971002, -87.702388247)" -3739239,HL105176,01/03/2005 08:50:00 PM,111XX S LONGWOOD DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2212,022,19,75,08B,1164794,1830539,2005,01/26/2006 03:51:08 AM,41.690599467,-87.67230553,"(41.690599467, -87.67230553)" -3741321,HL103303,01/02/2005 09:00:00 PM,005XX W 45TH PL,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,0935,009,11,61,26,1173352,1874782,2005,01/26/2006 03:51:08 AM,41.81182337,-87.639668298,"(41.81182337, -87.639668298)" -9016183,HW163548,01/01/2005 12:00:00 AM,044XX S STATE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0215,,3,38,06,,,2005,02/23/2013 12:41:52 AM,,, -3739313,HK835104,12/30/2004 09:40:00 PM,044XX W THOMAS ST,0460,BATTERY,SIMPLE,OTHER,false,false,1111,011,37,23,08B,1146235,1906989,2004,02/25/2006 12:14:30 AM,41.900761111,-87.73831477,"(41.900761111, -87.73831477)" -3786396,HK833773,12/29/2004 11:10:00 AM,031XX W FIFTH AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1124,011,28,27,18,1155650,1899150,2004,02/25/2006 12:14:30 AM,41.87906575,-87.703943862,"(41.87906575, -87.703943862)" -3739943,HK831388,12/27/2004 11:30:00 PM,031XX W LEXINGTON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,1134,011,24,27,08B,1155428,1896488,2004,02/25/2006 12:14:30 AM,41.871765414,-87.704830583,"(41.871765414, -87.704830583)" -3730522,HK830987,12/27/2004 07:02:20 PM,047XX N WESTERN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1911,019,47,4,05,1159480,1931139,2004,02/25/2006 12:14:30 AM,41.966767925,-87.688998182,"(41.966767925, -87.688998182)" -3786840,HK831105,12/27/2004 06:35:00 PM,005XX N ST LOUIS AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1121,011,27,23,18,1152913,1903391,2004,02/25/2006 12:14:30 AM,41.890758129,-87.713881286,"(41.890758129, -87.713881286)" -3731374,HL101794,12/27/2004 08:00:00 AM,020XX W 47TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,SIDEWALK,false,false,0914,009,12,61,14,1163599,1873535,2004,02/25/2006 12:14:30 AM,41.808611912,-87.675476985,"(41.808611912, -87.675476985)" -3722260,HK829176,12/26/2004 06:56:00 PM,044XX N PULASKI RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,1722,017,39,14,08B,1148885,1929310,2004,02/25/2006 12:14:30 AM,41.961961049,-87.728002212,"(41.961961049, -87.728002212)" -3736482,HK828590,12/26/2004 11:10:00 AM,026XX W GRAND AVE,0820,THEFT,$500 AND UNDER,GOVERNMENT BUILDING/PROPERTY,true,false,1313,012,27,23,06,1158930,1903977,2004,12/04/2014 12:43:35 PM,41.89224484,-87.69176775,"(41.89224484, -87.69176775)" -3721608,HK828458,12/25/2004 01:30:00 AM,062XX S ABERDEEN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0712,007,16,68,14,1170008,1863585,2004,02/25/2006 12:14:30 AM,41.781170967,-87.652259328,"(41.781170967, -87.652259328)" -3788981,HK826966,12/24/2004 09:10:00 PM,060XX S COTTAGE GROVE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0313,003,20,42,18,1182560,1865396,2004,02/25/2006 12:14:30 AM,41.785858484,-87.606185252,"(41.785858484, -87.606185252)" -3739777,HK824423,12/23/2004 11:45:00 AM,025XX W JACKSON BLVD,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1125,011,2,28,26,1159587,1898573,2004,02/25/2006 12:14:30 AM,41.877402272,-87.689503763,"(41.877402272, -87.689503763)" -3718657,HK823424,12/22/2004 07:20:00 PM,010XX W 14TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1232,012,25,28,08B,1169742,1893610,2004,02/25/2006 12:14:30 AM,41.863568333,-87.652362095,"(41.863568333, -87.652362095)" -3718735,HK823036,12/21/2004 02:20:00 PM,053XX S NAGLE AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,0811,008,23,56,11,1134316,1868742,2004,02/25/2006 12:14:30 AM,41.796023961,-87.782995032,"(41.796023961, -87.782995032)" -3721365,HK820691,12/21/2004 11:00:00 AM,060XX S TALMAN AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,true,false,0825,008,15,66,26,1159705,1864382,2004,02/25/2006 12:14:30 AM,41.783575771,-87.690010626,"(41.783575771, -87.690010626)" -8125432,HT358359,12/20/2004 12:00:00 PM,014XX S KARLOV AVE,0843,THEFT,ATTEMPT FINANCIAL IDENTITY THEFT,RESIDENCE,false,false,1011,,24,29,06,,,2004,06/25/2011 12:39:13 AM,,, -3712477,HK818152,12/19/2004 07:45:00 PM,001XX E WACKER DR,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,0124,001,42,32,06,1177809,1902574,2004,02/25/2006 12:14:30 AM,41.887986649,-87.62247645,"(41.887986649, -87.62247645)" -3713862,HK818451,12/19/2004 04:30:00 PM,009XX E 40TH ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2123,002,4,36,05,1183200,1878556,2004,02/25/2006 12:14:30 AM,41.821955692,-87.603428979,"(41.821955692, -87.603428979)" -3716104,HK821530,12/17/2004 08:00:00 AM,109XX S MACKINAW AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0432,004,10,52,07,1200169,1833069,2004,02/25/2006 12:14:30 AM,41.696724128,-87.542712523,"(41.696724128, -87.542712523)" -3712680,HK817779,12/16/2004 02:30:00 PM,019XX W GEORGE ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,ATM (AUTOMATIC TELLER MACHINE),false,false,1931,019,32,5,11,1163060,1919232,2004,02/25/2006 12:14:30 AM,41.934019875,-87.676170747,"(41.934019875, -87.676170747)" -3718678,HK822485,12/16/2004 07:00:00 AM,022XX W MONROE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1211,012,2,28,14,1161466,1899542,2004,02/25/2006 12:14:30 AM,41.880022409,-87.682577609,"(41.880022409, -87.682577609)" -3705399,HK809650,12/15/2004 02:00:00 AM,019XX S WELLS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2111,009,25,34,14,1175045,1891012,2004,02/25/2006 12:14:30 AM,41.856322163,-87.632973102,"(41.856322163, -87.632973102)" -3706152,HK809766,12/14/2004 09:00:00 PM,026XX N AVERS AVE,0810,THEFT,OVER $500,STREET,false,false,2524,025,30,22,06,1150230,1917193,2004,12/04/2014 12:43:35 PM,41.928684869,-87.723374197,"(41.928684869, -87.723374197)" -3704179,HK803795,12/11/2004 08:30:00 PM,009XX N PULASKI RD,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1112,011,27,23,08B,1149598,1905719,2004,02/25/2006 12:14:30 AM,41.89721143,-87.725995168,"(41.89721143, -87.725995168)" -3700208,HK804903,12/11/2004 06:00:00 PM,064XX S KIMBARK AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0314,003,20,42,06,1185786,1862526,2004,12/04/2014 12:43:35 PM,41.777907487,-87.594447762,"(41.777907487, -87.594447762)" -3699211,HK803938,12/11/2004 05:30:00 PM,008XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,DEPARTMENT STORE,false,false,1833,018,42,8,06,1177262,1905766,2004,02/25/2006 12:14:30 AM,41.896758072,-87.624388338,"(41.896758072, -87.624388338)" -3698591,HK802644,12/11/2004 12:00:00 AM,073XX S BELL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0835,008,18,66,14,1162628,1856209,2004,02/25/2006 12:14:30 AM,41.761087416,-87.679521631,"(41.761087416, -87.679521631)" -3698644,HK800596,12/10/2004 09:30:00 AM,019XX N LINCOLN AVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,1814,018,43,7,26,1173300,1913510,2004,02/25/2006 12:14:30 AM,41.918096916,-87.63870964,"(41.918096916, -87.63870964)" -3727616,HK834739,12/10/2004 06:00:00 AM,054XX S RIDGEWOOD CT,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2131,002,4,41,05,1186189,1869591,2004,02/25/2006 12:14:30 AM,41.797284904,-87.592747276,"(41.797284904, -87.592747276)" -3698161,HK800350,12/10/2004 04:42:23 AM,055XX S MICHIGAN AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0233,002,20,40,03,1178064,1868155,2004,02/25/2006 12:14:30 AM,41.793532607,-87.62258598,"(41.793532607, -87.62258598)" -3708058,HK797942,12/08/2004 08:00:00 PM,051XX W HURON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1531,015,28,25,18,1142228,1904180,2004,02/25/2006 12:14:30 AM,41.893128208,-87.753102701,"(41.893128208, -87.753102701)" -3690968,HK794203,12/07/2004 01:25:32 AM,003XX N LOCKWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VACANT LOT/LAND,false,false,1523,015,28,25,08B,1140933,1902012,2004,02/25/2006 12:14:30 AM,41.887202884,-87.757912214,"(41.887202884, -87.757912214)" -3690629,HK793928,12/06/2004 08:41:56 PM,094XX S ASHLAND AVE,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,2221,022,21,73,26,1167280,1842373,2004,02/25/2006 12:14:30 AM,41.723021154,-87.662866785,"(41.723021154, -87.662866785)" -3687672,HK790701,12/05/2004 07:05:23 AM,010XX N LAMON AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,1531,015,37,25,08A,1143540,1906666,2004,02/25/2006 12:14:30 AM,41.899925629,-87.748221887,"(41.899925629, -87.748221887)" -3686828,HK790508,12/05/2004 02:30:00 AM,009XX W ADDISON ST,0460,BATTERY,SIMPLE,STREET,true,false,2324,019,44,6,08B,1169040,1924139,2004,02/25/2006 12:14:30 AM,41.947357012,-87.654051617,"(41.947357012, -87.654051617)" -3694076,HK789802,12/04/2004 05:55:27 PM,012XX S WABASH AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,0132,001,2,33,06,1176923,1894821,2004,02/25/2006 12:14:30 AM,41.866732066,-87.625964752,"(41.866732066, -87.625964752)" -3683716,HK785986,12/02/2004 07:00:00 PM,030XX W 64TH ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,false,false,0823,008,15,66,04B,1157026,1862077,2004,02/25/2006 12:14:30 AM,41.777305099,-87.699895109,"(41.777305099, -87.699895109)" -3687054,HK785865,12/02/2004 04:40:00 PM,031XX S RHODES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2122,002,4,35,08B,1180364,1884547,2004,02/25/2006 12:14:30 AM,41.838461073,-87.613648727,"(41.838461073, -87.613648727)" -3682838,HK784457,12/01/2004 11:45:00 PM,068XX S UNION AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0723,007,6,68,08B,1172872,1859744,2004,02/25/2006 12:14:30 AM,41.770568091,-87.641872548,"(41.770568091, -87.641872548)" -3724163,HK781391,11/30/2004 02:20:00 PM,032XX W ADAMS ST,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,1124,011,28,27,08A,1154515,1898924,2004,02/25/2006 12:14:30 AM,41.878468348,-87.708117444,"(41.878468348, -87.708117444)" -3759483,HK780526,11/30/2004 01:25:00 AM,034XX N HOYNE AVE,2012,NARCOTICS,MANU/DELIVER:COCAINE,STREET,true,false,1913,019,32,5,18,1161780,1923025,2004,02/25/2006 12:14:30 AM,41.944454918,-87.680768598,"(41.944454918, -87.680768598)" -3675505,HK777823,11/28/2004 03:00:00 PM,035XX N CICERO AVE,1780,OFFENSE INVOLVING CHILDREN,OTHER OFFENSE,RESTAURANT,false,true,1634,016,38,15,26,1143705,1923317,2004,02/25/2006 12:14:30 AM,41.945614575,-87.747197791,"(41.945614575, -87.747197791)" -3674799,HK776038,11/27/2004 04:37:36 PM,079XX S RHODES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0624,006,6,44,14,1181248,1852216,2004,02/25/2006 12:14:30 AM,41.749721577,-87.611401232,"(41.749721577, -87.611401232)" -3674945,HK775256,11/27/2004 08:00:00 AM,100XX W OHARE ST,1330,CRIMINAL TRESPASS,TO LAND,AIRPORT/AIRCRAFT,false,false,1651,016,41,76,26,1100629,1934213,2004,02/25/2006 12:14:30 AM,41.976213976,-87.905334384,"(41.976213976, -87.905334384)" -3683253,HK774923,11/27/2004 12:05:00 AM,130XX S ELLIS AVE,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,CHA APARTMENT,false,true,0533,005,9,54,26,1185319,1818677,2004,02/25/2006 12:14:30 AM,41.657591722,-87.597533606,"(41.657591722, -87.597533606)" -3673904,HK774544,11/26/2004 08:05:00 PM,056XX N ARTESIAN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2011,020,40,2,26,1159010,1937527,2004,02/25/2006 12:14:30 AM,41.984306583,-87.690550064,"(41.984306583, -87.690550064)" -3680931,HK777928,11/26/2004 01:00:00 AM,071XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,true,0731,007,6,69,06,1176161,1857397,2004,12/04/2014 12:43:35 PM,41.764054465,-87.629886782,"(41.764054465, -87.629886782)" -3670900,HK771771,11/24/2004 09:00:00 PM,102XX S RHODES AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0511,005,9,49,26,1181755,1837278,2004,02/25/2006 12:14:30 AM,41.70871824,-87.610003381,"(41.70871824, -87.610003381)" -3669033,HK769285,11/23/2004 05:30:00 PM,046XX S PULASKI RD,0810,THEFT,OVER $500,STREET,false,false,0815,008,14,57,06,1150422,1873827,2004,12/04/2014 12:43:35 PM,41.80967982,-87.723800193,"(41.80967982, -87.723800193)" -3667137,HK767131,11/22/2004 01:30:00 PM,051XX W FULLERTON AVE,0810,THEFT,OVER $500,STREET,false,false,2522,025,31,19,06,1141391,1915425,2004,12/04/2014 12:43:35 PM,41.924001245,-87.755898711,"(41.924001245, -87.755898711)" -3725148,HK760443,11/19/2004 11:11:00 AM,071XX S ROCKWELL ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,0832,008,18,66,18,1160321,1857015,2004,02/25/2006 12:14:30 AM,41.763347004,-87.687954831,"(41.763347004, -87.687954831)" -3666573,HK762512,11/19/2004 12:01:00 AM,030XX W 26TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1033,010,12,30,14,1156716,1886639,2004,02/25/2006 12:14:30 AM,41.844712713,-87.70036837,"(41.844712713, -87.70036837)" -3666180,HK757649,11/18/2004 12:30:00 AM,057XX S LAFLIN ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,0713,007,16,67,04B,1167356,1866688,2004,02/25/2006 12:14:30 AM,41.789743208,-87.661893289,"(41.789743208, -87.661893289)" -3659600,HK756849,11/17/2004 05:35:00 PM,003XX E 69TH ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,0322,003,6,69,04A,1179465,1859294,2004,02/25/2006 12:14:30 AM,41.769185249,-87.617719081,"(41.769185249, -87.617719081)" -3673061,HK756750,11/17/2004 04:45:00 PM,011XX S MOZART ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1135,011,28,29,08B,1157573,1894890,2004,02/25/2006 12:14:30 AM,41.867336972,-87.696998888,"(41.867336972, -87.696998888)" -3659682,HK756615,11/17/2004 12:30:00 PM,026XX W ALTGELD ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1431,014,1,22,05,1158163,1916472,2004,02/25/2006 12:14:30 AM,41.926547832,-87.694242711,"(41.926547832, -87.694242711)" -3659853,HK756223,11/17/2004 12:15:00 PM,043XX S WASHTENAW AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0912,009,12,58,05,1159049,1875768,2004,02/25/2006 12:14:30 AM,41.814833907,-87.692104359,"(41.814833907, -87.692104359)" -3957324,HL325027,11/16/2004 11:00:00 AM,016XX W WALNUT ST,2820,OTHER OFFENSE,TELEPHONE THREAT,COMMERCIAL / BUSINESS OFFICE,false,false,1333,012,27,28,26,1165231,1901835,2004,02/25/2006 12:14:30 AM,41.886235412,-87.668687815,"(41.886235412, -87.668687815)" -3659289,HK752394,11/15/2004 04:05:00 PM,006XX N AVERS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1122,011,27,23,08B,1150569,1903996,2004,02/25/2006 12:14:30 AM,41.892464425,-87.722473849,"(41.892464425, -87.722473849)" -3653951,HK751736,11/15/2004 02:00:00 AM,0000X E 9TH ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0132,001,2,32,06,1176893,1896253,2004,12/04/2014 12:43:35 PM,41.870662241,-87.626031568,"(41.870662241, -87.626031568)" -3655393,HK751436,11/15/2004 12:01:00 AM,078XX S LAFLIN ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0612,006,17,71,07,1167431,1852929,2004,02/25/2006 12:14:30 AM,41.751985125,-87.662012076,"(41.751985125, -87.662012076)" -3653449,HK750716,11/14/2004 05:32:43 PM,073XX S COLES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0334,003,7,43,08B,1194808,1857092,2004,02/25/2006 12:14:30 AM,41.762778734,-87.561552258,"(41.762778734, -87.561552258)" -3749588,HK747510,11/12/2004 08:45:00 PM,014XX W 69TH ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0725,007,17,67,18,1168183,1859037,2004,02/25/2006 12:14:30 AM,41.768730154,-87.659080894,"(41.768730154, -87.659080894)" -3656077,HK748110,11/12/2004 06:00:00 PM,074XX S VINCENNES AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,0731,007,17,69,05,1175883,1855682,2004,02/25/2006 12:14:30 AM,41.75935454,-87.630957038,"(41.75935454, -87.630957038)" -3650560,HK746929,11/12/2004 04:30:10 PM,021XX S RACINE AVE,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1233,012,25,31,08B,1168742,1889867,2004,02/25/2006 12:14:30 AM,41.853318934,-87.656141382,"(41.853318934, -87.656141382)" -3655295,HK745529,11/11/2004 09:00:00 PM,056XX S PRINCETON AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,true,false,0711,007,3,68,04A,1175208,1867555,2004,02/25/2006 12:14:30 AM,41.791950463,-87.633076556,"(41.791950463, -87.633076556)" -3649738,HK744914,11/11/2004 03:30:00 PM,023XX S WENTWORTH AVE,0460,BATTERY,SIMPLE,COMMERCIAL / BUSINESS OFFICE,false,false,2111,009,25,34,08B,1175294,1888994,2004,02/25/2006 12:14:30 AM,41.850779048,-87.63211964,"(41.850779048, -87.63211964)" -3652462,HK744609,11/11/2004 12:30:00 PM,015XX E 72ND ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,0324,003,5,43,07,1187687,1857515,2004,02/25/2006 12:14:30 AM,41.764111843,-87.587638024,"(41.764111843, -87.587638024)" -3648976,HK744153,11/10/2004 08:20:00 AM,020XX N DAYTON ST,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,1812,018,43,7,05,1170241,1914074,2004,02/25/2006 12:14:30 AM,41.919712001,-87.649931989,"(41.919712001, -87.649931989)" -3645104,HK739880,11/09/2004 01:52:00 PM,021XX E 87TH ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0412,004,8,45,08B,1191686,1847743,2004,02/25/2006 12:14:30 AM,41.737200568,-87.573297366,"(41.737200568, -87.573297366)" -3643559,HK737880,11/08/2004 09:47:46 AM,0000X N PINE AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,true,false,1522,015,28,25,26,1139539,1899901,2004,06/11/2007 03:52:33 PM,41.881435567,-87.763082972,"(41.881435567, -87.763082972)" -3639296,HK735753,11/06/2004 06:59:00 PM,033XX W DICKENS AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,ALLEY,true,false,1413,014,26,22,15,1153704,1913795,2004,06/11/2007 03:52:33 PM,41.919291951,-87.710698996,"(41.919291951, -87.710698996)" -3639300,HK733735,11/05/2004 09:35:00 PM,013XX W LELAND AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2311,019,46,3,03,1166637,1931374,2004,02/25/2006 12:14:30 AM,41.967262064,-87.662676247,"(41.967262064, -87.662676247)" -3637119,HK728392,11/03/2004 12:19:52 PM,027XX W ADAMS ST,0810,THEFT,OVER $500,RESIDENCE,false,false,1125,011,2,27,06,1157824,1898864,2004,12/04/2014 12:43:35 PM,41.878236913,-87.695969096,"(41.878236913, -87.695969096)" -3636205,HK727534,11/02/2004 10:48:00 PM,007XX W MELROSE ST,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,2332,019,44,6,03,1170939,1921831,2004,02/25/2006 12:14:30 AM,41.940982262,-87.647139354,"(41.940982262, -87.647139354)" -3627641,HK723383,10/31/2004 11:00:00 PM,006XX N LOCKWOOD AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,RESIDENCE,true,false,1524,015,37,25,08B,1140866,1903936,2004,06/11/2007 03:52:33 PM,41.892483808,-87.758110896,"(41.892483808, -87.758110896)" -3630621,HK725963,10/31/2004 10:00:00 PM,052XX S TROY ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0911,009,14,63,06,1156219,1869979,2004,12/04/2014 12:43:35 PM,41.799005594,-87.702641088,"(41.799005594, -87.702641088)" -3744220,HK721323,10/31/2004 12:50:00 PM,018XX S HALSTED ST,2022,NARCOTICS,POSS: COCAINE,SIDEWALK,true,false,1233,012,25,31,18,1171281,1891374,2004,02/25/2006 12:14:30 AM,41.857398938,-87.646778204,"(41.857398938, -87.646778204)" -3632913,HK722125,10/31/2004 11:30:00 AM,070XX W WRIGHTWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,2512,025,36,18,14,1129124,1916545,2004,02/25/2006 12:14:30 AM,41.927292495,-87.800947855,"(41.927292495, -87.800947855)" -3626698,HK721173,10/30/2004 11:09:07 PM,100XX S COMMERCIAL AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0431,004,10,51,06,1197904,1839118,2004,02/25/2006 12:14:30 AM,41.713379903,-87.55080417,"(41.713379903, -87.55080417)" -3628115,HK721751,10/30/2004 07:30:00 PM,020XX W GRANVILLE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2413,024,50,2,14,1161860,1941216,2004,02/25/2006 12:14:30 AM,41.994370157,-87.679964647,"(41.994370157, -87.679964647)" -3629505,HK721017,10/30/2004 06:00:00 PM,001XX E 120TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0532,005,9,53,14,1179600,1825393,2004,02/25/2006 12:14:30 AM,41.676153522,-87.618256437,"(41.676153522, -87.618256437)" -3629149,HK724029,10/29/2004 10:30:00 PM,011XX N SACRAMENTO AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1311,012,26,24,06,1156210,1907640,2004,12/04/2014 12:43:35 PM,41.902351818,-87.701658141,"(41.902351818, -87.701658141)" -3628518,HK720270,10/29/2004 10:00:00 PM,031XX W 54TH PL,0820,THEFT,$500 AND UNDER,STREET,false,false,0911,009,14,63,06,1156375,1868361,2004,12/04/2014 12:43:35 PM,41.794562435,-87.702112565,"(41.794562435, -87.702112565)" -3626091,HK718983,10/29/2004 09:30:00 PM,001XX E MARQUETTE RD,0650,BURGLARY,HOME INVASION,APARTMENT,true,false,0322,003,20,69,05,1178463,1860585,2004,06/02/2010 10:34:17 AM,41.772750709,-87.621352739,"(41.772750709, -87.621352739)" -3673994,HK773541,10/29/2004 05:50:00 PM,001XX S LA SALLE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,BANK,false,false,0112,001,42,32,06,1175197,1899581,2004,02/25/2006 12:14:30 AM,41.879832659,-87.632158282,"(41.879832659, -87.632158282)" -3623236,HK715624,10/27/2004 08:30:00 PM,002XX N LAFLIN ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1333,012,27,28,07,1166464,1901781,2004,02/25/2006 12:14:30 AM,41.886060937,-87.664161515,"(41.886060937, -87.664161515)" -3624847,HK717947,10/27/2004 04:00:00 PM,005XX W 31ST ST,0810,THEFT,OVER $500,GAS STATION,false,false,0924,009,11,60,06,1173462,1884332,2004,12/04/2014 12:43:35 PM,41.838026996,-87.638981725,"(41.838026996, -87.638981725)" -3621112,HK712997,10/27/2004 09:28:33 AM,013XX E 87TH ST,0810,THEFT,OVER $500,STREET,false,false,0412,004,8,48,06,1186671,1847525,2004,12/04/2014 12:43:35 PM,41.736722418,-87.591677477,"(41.736722418, -87.591677477)" -3628458,HK718578,10/26/2004 11:59:00 PM,012XX N LA SALLE DR,1242,DECEPTIVE PRACTICE,COMPUTER FRAUD,OTHER,false,false,1821,018,43,8,11,1174870,1908551,2004,02/25/2006 12:14:30 AM,41.904454155,-87.633090172,"(41.904454155, -87.633090172)" -3623663,HK713464,10/26/2004 02:45:00 PM,014XX W 119TH ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",false,false,0524,005,34,53,06,1168712,1825787,2004,02/25/2006 12:14:30 AM,41.677475775,-87.658097817,"(41.677475775, -87.658097817)" -3617554,HK709724,10/25/2004 06:05:00 PM,003XX W 101ST PL,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,0511,005,9,49,08A,1175566,1837578,2004,02/25/2006 12:14:30 AM,41.70968191,-87.632658989,"(41.70968191, -87.632658989)" -3622039,HK712590,10/25/2004 04:30:00 PM,014XX N CLAREMONT AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1424,014,1,24,08B,1160516,1909594,2004,02/25/2006 12:14:30 AM,41.907625652,-87.685787331,"(41.907625652, -87.685787331)" -3616084,HK708943,10/25/2004 12:15:00 PM,027XX N MILWAUKEE AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1412,014,35,22,06,1153459,1918208,2004,02/25/2006 12:14:30 AM,41.931406463,-87.711481577,"(41.931406463, -87.711481577)" -3615973,HK708898,10/25/2004 11:45:00 AM,061XX N WOLCOTT AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2413,024,40,2,05,1162661,1941098,2004,02/25/2006 12:14:30 AM,41.994029554,-87.677021545,"(41.994029554, -87.677021545)" -3612927,HK707921,10/24/2004 07:00:00 PM,053XX S HAMLIN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0822,008,23,62,07,1151906,1868917,2004,02/25/2006 12:14:30 AM,41.796177059,-87.718485881,"(41.796177059, -87.718485881)" -3616726,HK707588,10/24/2004 06:15:27 PM,090XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0633,006,6,44,08B,1182442,1845181,2004,02/25/2006 12:14:30 AM,41.730389173,-87.607243461,"(41.730389173, -87.607243461)" -3614645,HK707101,10/24/2004 01:46:00 PM,034XX W EVERGREEN AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,1422,014,26,23,08A,1152905,1908722,2004,02/25/2006 12:14:30 AM,41.905387066,-87.71376928,"(41.905387066, -87.71376928)" -3611365,HK703610,10/22/2004 08:46:00 PM,051XX W CHICAGO AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,1531,015,37,25,14,1141640,1904877,2004,02/25/2006 12:14:30 AM,41.89505175,-87.755244987,"(41.89505175, -87.755244987)" -3623057,HK715772,10/22/2004 08:30:00 PM,026XX W HIRSCH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1423,014,26,24,08B,1158461,1909248,2004,02/25/2006 12:14:30 AM,41.906718522,-87.693345782,"(41.906718522, -87.693345782)" -3617295,HK703594,10/22/2004 08:10:00 PM,048XX W POLK ST,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,1533,015,24,25,18,1144049,1895813,2004,02/25/2006 12:14:30 AM,41.870134162,-87.746624842,"(41.870134162, -87.746624842)" -3617645,HK701851,10/22/2004 01:24:39 AM,058XX S INDIANA AVE,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,SIDEWALK,true,false,0233,002,20,40,22,1178640,1866222,2004,02/25/2006 12:14:30 AM,41.788215182,-87.62053262,"(41.788215182, -87.62053262)" -3618747,HK711544,10/22/2004 12:00:00 AM,057XX S MARYLAND AVE,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,false,false,2133,002,5,41,06,1182843,1867373,2004,02/25/2006 12:14:30 AM,41.791276973,-87.605086252,"(41.791276973, -87.605086252)" -3610326,HK701375,10/21/2004 07:40:00 PM,046XX N CLIFTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,OTHER,false,true,2311,019,46,3,08B,1167717,1930873,2004,02/25/2006 12:14:30 AM,41.965864037,-87.658719738,"(41.965864037, -87.658719738)" -3608455,HK701213,10/21/2004 04:00:00 PM,067XX N CALIFORNIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2412,024,50,2,08B,1156397,1944740,2004,02/25/2006 12:14:30 AM,42.004152775,-87.699964133,"(42.004152775, -87.699964133)" -3672680,HK699320,10/20/2004 08:15:00 PM,044XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,011,28,26,16,1147053,1899691,2004,02/25/2006 12:14:30 AM,41.880718981,-87.735496941,"(41.880718981, -87.735496941)" -3630078,HK721894,10/20/2004 08:00:00 PM,068XX W ARDMORE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1612,016,41,10,14,1129837,1938139,2004,02/25/2006 12:14:30 AM,41.986536606,-87.797831972,"(41.986536606, -87.797831972)" -3605776,HK698300,10/20/2004 01:11:17 PM,038XX W NORTH AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,2535,025,30,23,06,1150264,1910314,2004,02/25/2006 12:14:30 AM,41.909807601,-87.723429033,"(41.909807601, -87.723429033)" -3635772,HK726303,10/20/2004 12:00:00 PM,064XX S YALE AVE,0810,THEFT,OVER $500,STREET,false,false,0722,007,20,68,06,1175637,1862524,2004,12/04/2014 12:43:35 PM,41.77813527,-87.631654044,"(41.77813527, -87.631654044)" -3605428,HK695826,10/19/2004 12:30:00 AM,007XX N CLARK ST,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,1832,018,42,8,05,1175437,1905603,2004,02/25/2006 12:14:30 AM,41.896351977,-87.631096087,"(41.896351977, -87.631096087)" -3601459,HK694628,10/18/2004 05:35:00 PM,095XX S BENNETT AVE,0560,ASSAULT,SIMPLE,RESIDENCE,true,false,0431,004,7,51,08A,1190552,1842161,2004,02/25/2006 12:14:30 AM,41.721910415,-87.577631489,"(41.721910415, -87.577631489)" -3606514,HK694398,10/18/2004 02:00:00 PM,007XX E 107TH ST,0890,THEFT,FROM BUILDING,WAREHOUSE,true,false,0513,005,9,50,06,1182820,1833927,2004,02/25/2006 12:14:30 AM,41.69949805,-87.606206907,"(41.69949805, -87.606206907)" -3634089,HK722867,10/18/2004 01:00:00 PM,026XX W WARREN BLVD,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,RESIDENCE,true,false,1331,012,2,27,17,1158507,1900207,2004,12/04/2014 12:43:35 PM,41.881908286,-87.693424501,"(41.881908286, -87.693424501)" -3599599,HK693439,10/17/2004 10:00:00 PM,081XX S KINGSTON AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0422,004,7,46,07,1194548,1851738,2004,02/25/2006 12:14:30 AM,41.748093344,-87.562680961,"(41.748093344, -87.562680961)" -3607060,HK690759,10/16/2004 04:10:10 PM,063XX S COTTAGE GROVE AVE,1330,CRIMINAL TRESPASS,TO LAND,CURRENCY EXCHANGE,true,false,0312,003,20,42,26,1182686,1863410,2004,02/25/2006 12:14:30 AM,41.780405795,-87.605784892,"(41.780405795, -87.605784892)" -3624498,HK690560,10/16/2004 02:00:00 PM,054XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,0232,002,3,37,06,1175923,1869140,2004,12/04/2014 12:43:35 PM,41.79628385,-87.630407267,"(41.79628385, -87.630407267)" -3598006,HK689706,10/16/2004 01:17:25 AM,030XX W LAWRENCE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,true,1713,017,33,14,08B,1155496,1931698,2004,02/25/2006 12:14:30 AM,41.968383133,-87.703631707,"(41.968383133, -87.703631707)" -4278997,HL595256,10/15/2004 02:30:00 PM,015XX W FARWELL AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,2431,024,49,1,06,1164651,1945743,2004,02/25/2006 12:14:30 AM,42.006733459,-87.669569046,"(42.006733459, -87.669569046)" -3594694,HK687223,10/14/2004 08:00:00 PM,061XX S COTTAGE GROVE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0313,003,20,42,26,1182656,1864625,2004,02/25/2006 12:14:30 AM,41.783740562,-87.605857191,"(41.783740562, -87.605857191)" -3596447,HK686786,10/14/2004 01:40:00 PM,081XX S ELIZABETH ST,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,APARTMENT,false,false,0613,006,21,71,02,1169447,1850805,2004,02/25/2006 12:14:30 AM,41.746113178,-87.654685733,"(41.746113178, -87.654685733)" -3600377,HK690155,10/14/2004 01:00:00 AM,028XX W 39TH PL,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0912,009,14,58,08B,1158067,1878288,2004,02/25/2006 12:14:30 AM,41.821769154,-87.69563789,"(41.821769154, -87.69563789)" -3661402,HK685270,10/13/2004 09:10:00 PM,030XX W MADISON ST,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1331,012,2,27,16,1156036,1899902,2004,02/25/2006 12:14:30 AM,41.881121536,-87.702506237,"(41.881121536, -87.702506237)" -3598370,HK686343,10/13/2004 01:30:00 PM,037XX S ARCHER AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0913,009,12,59,06,1160938,1879845,2004,12/04/2014 12:43:35 PM,41.825982789,-87.685062384,"(41.825982789, -87.685062384)" -3607299,HK683485,10/13/2004 03:30:00 AM,037XX S GILES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0211,002,3,35,08B,1178829,1880511,2004,02/25/2006 12:14:30 AM,41.827421141,-87.619404418,"(41.827421141, -87.619404418)" -3593551,HK684114,10/12/2004 12:15:00 PM,048XX W IRVING PARK RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1624,016,45,15,06,1143366,1926193,2004,02/25/2006 12:14:30 AM,41.95351293,-87.748371698,"(41.95351293, -87.748371698)" -3588249,HK681479,10/12/2004 07:00:00 AM,040XX N MEADE AVE,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,1624,016,38,15,06,1135002,1926360,2004,02/25/2006 12:14:30 AM,41.954123736,-87.779115056,"(41.954123736, -87.779115056)" -3586756,HK678646,10/10/2004 04:15:00 PM,015XX W 87TH ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,0614,006,21,71,06,1167644,1847078,2004,12/04/2014 12:43:35 PM,41.735924587,-87.661398952,"(41.735924587, -87.661398952)" -3583269,HK672253,10/07/2004 04:50:00 PM,045XX W NORTH AVE,0810,THEFT,OVER $500,VACANT LOT/LAND,true,false,2533,025,37,23,06,1145553,1910199,2004,12/04/2014 12:43:35 PM,41.909582647,-87.740738376,"(41.909582647, -87.740738376)" -3591113,HK672162,10/07/2004 03:55:00 PM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176405,1900487,2004,02/25/2006 12:14:30 AM,41.882291607,-87.627695365,"(41.882291607, -87.627695365)" -3598082,HK690084,10/07/2004 11:50:00 AM,038XX N KEDZIE AVE,0820,THEFT,$500 AND UNDER,OTHER,true,false,1733,017,33,16,06,1154329,1925436,2004,12/04/2014 12:43:35 PM,41.951223262,-87.708090727,"(41.951223262, -87.708090727)" -3581335,HK670750,10/06/2004 10:07:00 PM,031XX S WELLS ST,0560,ASSAULT,SIMPLE,STREET,false,false,0924,009,11,34,08A,1175083,1884409,2004,02/25/2006 12:14:30 AM,41.838202178,-87.633031262,"(41.838202178, -87.633031262)" -3580548,HK670390,10/06/2004 05:00:00 PM,072XX S MAPLEWOOD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0832,008,18,66,26,1160585,1856634,2004,02/25/2006 12:14:30 AM,41.762296045,-87.686997706,"(41.762296045, -87.686997706)" -3585135,HK668652,10/05/2004 10:52:00 PM,005XX W 71ST ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0732,007,6,68,14,1173760,1857868,2004,02/25/2006 12:14:30 AM,41.76540049,-87.638673038,"(41.76540049, -87.638673038)" -3623821,HK666113,10/04/2004 05:40:00 PM,040XX S CALUMET AVE,2091,NARCOTICS,FORFEIT PROPERTY,VEHICLE NON-COMMERCIAL,true,false,0214,002,3,38,26,1179054,1878421,2004,02/25/2006 12:14:30 AM,41.821680884,-87.618642719,"(41.821680884, -87.618642719)" -3582465,HK665382,10/04/2004 12:56:00 PM,017XX N PULASKI RD,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,true,2534,025,30,23,04A,1149398,1911493,2004,02/25/2006 12:14:30 AM,41.913059745,-87.726579743,"(41.913059745, -87.726579743)" -3574839,HK664731,10/04/2004 04:41:07 AM,087XX S MARQUETTE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,0423,004,7,46,14,1195735,1847422,2004,06/11/2007 03:52:33 PM,41.736220637,-87.5584739,"(41.736220637, -87.5584739)" -3576719,HK663756,10/03/2004 02:04:42 PM,020XX S PAULINA ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,1222,012,25,31,14,1165395,1890262,2004,02/25/2006 12:14:30 AM,41.854474627,-87.668414769,"(41.854474627, -87.668414769)" -3653983,HK746992,10/03/2004 12:00:00 PM,033XX W WARREN BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,1123,011,28,27,06,1153900,1900181,2004,12/04/2014 12:43:35 PM,41.881929957,-87.710342102,"(41.881929957, -87.710342102)" -3593397,HK659854,10/01/2004 03:25:00 PM,007XX E 50TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE PORCH/HALLWAY,false,false,0223,002,4,38,14,1182082,1871733,2004,02/25/2006 12:14:30 AM,41.803258839,-87.607741702,"(41.803258839, -87.607741702)" -3593353,HK658238,09/30/2004 08:15:36 PM,068XX S RACINE AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0724,007,17,67,18,1169452,1859693,2004,02/25/2006 12:14:30 AM,41.770502908,-87.654410389,"(41.770502908, -87.654410389)" -3577799,HK654752,09/29/2004 08:36:08 AM,039XX S INDIANA AVE,502R,OTHER OFFENSE,VEHICLE TITLE/REG OFFENSE,STREET,true,false,0214,002,3,38,26,1178203,1879070,2004,02/25/2006 12:14:30 AM,41.823481174,-87.621744889,"(41.823481174, -87.621744889)" -3565833,HK654179,09/28/2004 07:30:00 PM,029XX W FULLERTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,1414,014,35,22,26,1156036,1915846,2004,02/25/2006 12:14:30 AM,41.924873277,-87.702075424,"(41.924873277, -87.702075424)" -3569259,HK653659,09/28/2004 12:00:00 PM,007XX E 61ST ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0313,003,20,42,05,1182245,1864767,2004,02/25/2006 12:14:30 AM,41.784139756,-87.607359653,"(41.784139756, -87.607359653)" -3564478,HK652424,09/28/2004 02:30:00 AM,006XX E 71ST ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0322,003,6,69,06,1181674,1858121,2004,02/25/2006 12:14:30 AM,41.765915699,-87.609658179,"(41.765915699, -87.609658179)" -3633339,HK726615,09/28/2004 12:00:00 AM,053XX N CLARK ST,1110,DECEPTIVE PRACTICE,BOGUS CHECK,CURRENCY EXCHANGE,false,false,2012,020,40,77,11,1165039,1935919,2004,02/25/2006 12:14:30 AM,41.979767881,-87.668422179,"(41.979767881, -87.668422179)" -3602950,HK652229,09/27/2004 10:35:00 PM,059XX S ASHLAND AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0713,007,15,67,16,1166722,1865588,2004,02/25/2006 12:14:30 AM,41.786738238,-87.664249369,"(41.786738238, -87.664249369)" -3561938,HK648582,09/26/2004 04:57:38 AM,076XX N ROGERS AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,2422,024,49,1,06,1165462,1950617,2004,02/25/2006 12:14:30 AM,42.020090499,-87.666445559,"(42.020090499, -87.666445559)" -3563816,HK648490,09/26/2004 03:36:31 AM,052XX W HARRISON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,1522,015,29,25,14,1141447,1896855,2004,06/11/2007 03:52:33 PM,41.873041951,-87.756151995,"(41.873041951, -87.756151995)" -3561761,HK648255,09/25/2004 11:32:00 PM,035XX N ASHLAND AVE,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,1923,019,32,6,06,1164973,1923966,2004,12/04/2014 12:43:35 PM,41.946969765,-87.669005717,"(41.946969765, -87.669005717)" -3560884,HK647303,09/25/2004 02:35:00 PM,012XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,1224,012,2,28,06,1165876,1894550,2004,12/04/2014 12:43:35 PM,41.866231046,-87.666527069,"(41.866231046, -87.666527069)" -3567981,HK645992,09/24/2004 09:25:00 PM,061XX W FULLERTON AVE,0560,ASSAULT,SIMPLE,STREET,true,false,2512,025,29,19,08A,1134939,1915257,2004,02/25/2006 12:14:30 AM,41.92365701,-87.779610301,"(41.92365701, -87.779610301)" -3560393,HK645809,09/24/2004 08:07:00 PM,067XX S BLACKSTONE AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,0332,003,5,43,08A,1187397,1860687,2004,02/25/2006 12:14:30 AM,41.772822981,-87.588600261,"(41.772822981, -87.588600261)" -3559551,HK645679,09/24/2004 07:11:00 PM,011XX W BRYN MAWR AVE,1330,CRIMINAL TRESPASS,TO LAND,CTA PLATFORM,true,false,2023,020,48,77,26,1167641,1937312,2004,02/25/2006 12:14:30 AM,41.983534487,-87.65881276,"(41.983534487, -87.65881276)" -3565345,HK645066,09/24/2004 02:30:00 PM,013XX E 93RD ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,VEHICLE NON-COMMERCIAL,true,false,0413,004,8,47,04B,1186773,1843543,2004,02/25/2006 12:14:30 AM,41.725792973,-87.591429534,"(41.725792973, -87.591429534)" -3559817,HK644409,09/24/2004 09:51:08 AM,114XX S INDIANA AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0531,005,9,49,08A,1179574,1829161,2004,02/25/2006 12:14:30 AM,41.68649406,-87.618237132,"(41.68649406, -87.618237132)" -3558292,HK643745,09/23/2004 09:50:00 PM,075XX S COLFAX AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0421,004,7,43,08B,1194802,1855075,2004,02/25/2006 12:14:30 AM,41.757244084,-87.561640565,"(41.757244084, -87.561640565)" -3558159,HK643660,09/23/2004 08:30:00 PM,054XX S DAMEN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0915,009,16,61,07,1163992,1868468,2004,02/25/2006 12:14:30 AM,41.794699184,-87.674178063,"(41.794699184, -87.674178063)" -3559059,HK643590,09/22/2004 08:03:00 PM,131XX S DANIEL DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0533,005,9,54,08B,1180242,1818478,2004,02/25/2006 12:14:30 AM,41.657163062,-87.616117217,"(41.657163062, -87.616117217)" -3556276,HK640574,09/22/2004 02:00:00 PM,022XX S STATE ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0134,001,3,33,08B,1176624,1889521,2004,02/25/2006 12:14:30 AM,41.852195267,-87.62722242,"(41.852195267, -87.62722242)" -3557831,HK639810,09/21/2004 05:00:00 PM,018XX N WOLCOTT AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1434,014,32,22,05,1163359,1912171,2004,02/25/2006 12:14:30 AM,41.91463775,-87.675271071,"(41.91463775, -87.675271071)" -3556452,HK638865,09/21/2004 01:00:00 PM,112XX S HALSTED ST,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,2233,022,34,75,06,1172953,1830284,2004,12/04/2014 12:43:35 PM,41.689724012,-87.642442424,"(41.689724012, -87.642442424)" -3558610,HK641442,09/19/2004 11:30:00 PM,034XX S WOOD ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,STREET,false,false,0922,009,11,59,26,1164956,1881721,2004,02/25/2006 12:14:30 AM,41.83104659,-87.670268101,"(41.83104659, -87.670268101)" -3550486,HK633313,09/19/2004 04:00:21 AM,011XX S MONITOR AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1513,015,29,25,14,1137601,1894423,2004,06/11/2007 03:52:33 PM,41.866438307,-87.770331278,"(41.866438307, -87.770331278)" -3552606,HK633306,09/19/2004 03:45:00 AM,028XX N MENARD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2514,025,30,19,14,1137257,1918580,2004,02/25/2006 12:14:30 AM,41.932734299,-87.771012876,"(41.932734299, -87.771012876)" -3570094,HK650589,09/18/2004 04:45:00 PM,018XX N LINDER AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,2532,025,37,25,08A,1139487,1911474,2004,02/25/2006 12:14:30 AM,41.913194232,-87.762991414,"(41.913194232, -87.762991414)" -3611493,HK701522,09/17/2004 12:00:00 AM,014XX E 53RD ST,1120,DECEPTIVE PRACTICE,FORGERY,DRUG STORE,false,false,2131,002,4,41,10,1186705,1870450,2004,02/25/2006 12:14:30 AM,41.79962985,-87.590827854,"(41.79962985, -87.590827854)" -3545306,HK627125,09/15/2004 11:00:00 AM,052XX N MARMORA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1622,016,45,11,14,1135831,1934747,2004,02/25/2006 12:14:30 AM,41.977123707,-87.775866893,"(41.977123707, -87.775866893)" -3582178,HK624150,09/14/2004 09:40:00 PM,032XX N LARAMIE AVE,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,1634,016,30,15,18,1141092,1920982,2004,02/25/2006 12:14:30 AM,41.93925574,-87.756860081,"(41.93925574, -87.756860081)" -3541257,HK624756,09/13/2004 10:00:00 PM,008XX W ALDINE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2331,019,44,6,06,1169747,1922151,2004,12/04/2014 12:43:35 PM,41.941886455,-87.651511013,"(41.941886455, -87.651511013)" -3536643,HK619341,09/12/2004 06:55:00 PM,060XX W ROSCOE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,false,1633,016,36,17,14,1135775,1921947,2004,03/28/2012 09:57:58 AM,41.942000255,-87.77637878,"(41.942000255, -87.77637878)" -3538461,HK622072,09/11/2004 07:00:00 PM,002XX W 112TH ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,true,0522,005,34,49,20,1176343,1830702,2004,02/25/2006 12:14:30 AM,41.690795785,-87.630019148,"(41.690795785, -87.630019148)" -3535713,HK616017,09/11/2004 03:40:00 AM,030XX S KEELEY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,0923,009,11,60,08B,1169711,1884816,2004,02/25/2006 12:14:30 AM,41.83943752,-87.652731757,"(41.83943752, -87.652731757)" -3535612,HK616134,09/11/2004 02:40:00 AM,067XX N OLMSTED AVE,0610,BURGLARY,FORCIBLE ENTRY,BAR OR TAVERN,false,false,1612,016,41,9,05,1124515,1943924,2004,02/25/2006 12:14:30 AM,42.002500864,-87.817278464,"(42.002500864, -87.817278464)" -3556993,HK615912,09/11/2004 01:35:00 AM,021XX N DAMEN AVE,2250,LIQUOR LAW VIOLATION,LIQUOR LICENSE VIOLATION,TAVERN/LIQUOR STORE,true,false,1432,014,32,22,22,1162711,1914438,2004,02/25/2006 12:14:30 AM,41.920872171,-87.677588046,"(41.920872171, -87.677588046)" -3536160,HK615352,09/10/2004 08:00:00 PM,062XX S WOOD ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0714,007,15,67,08B,1165376,1863429,2004,02/25/2006 12:14:30 AM,41.780842304,-87.669245667,"(41.780842304, -87.669245667)" -3535553,HK614499,09/10/2004 12:20:00 PM,035XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,STREET,false,false,1021,010,24,29,08B,1152606,1894432,2004,02/25/2006 12:14:30 AM,41.866179755,-87.715245695,"(41.866179755, -87.715245695)" -3538065,HK610686,09/08/2004 02:40:00 PM,012XX N LARRABEE ST,0460,BATTERY,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,1822,018,27,8,08B,1172063,1908621,2004,02/25/2006 12:14:30 AM,41.904708652,-87.6433989,"(41.904708652, -87.6433989)" -3530896,HK609821,09/08/2004 09:45:00 AM,023XX W DIVERSEY AVE,0460,BATTERY,SIMPLE,STREET,false,false,1432,014,1,21,08B,1159884,1918576,2004,02/25/2006 12:14:30 AM,41.932285978,-87.687860611,"(41.932285978, -87.687860611)" -3528173,HK609573,09/08/2004 12:00:00 AM,009XX N WINCHESTER AVE,0810,THEFT,OVER $500,STREET,false,false,1322,012,32,24,06,1163267,1906454,2004,12/04/2014 12:43:35 PM,41.898951828,-87.675770074,"(41.898951828, -87.675770074)" -3529204,HK609929,09/07/2004 07:00:00 PM,061XX N MILWAUKEE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,BARBERSHOP,false,false,1611,016,45,10,14,1133550,1940587,2004,02/25/2006 12:14:30 AM,41.993189614,-87.784117589,"(41.993189614, -87.784117589)" -3525751,HK606922,09/06/2004 08:59:52 PM,051XX W WASHINGTON BLVD,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1533,015,28,25,05,1142180,1899979,2004,02/25/2006 12:14:30 AM,41.881601045,-87.753383264,"(41.881601045, -87.753383264)" -3529330,HK605334,09/06/2004 03:05:00 AM,042XX W GLADYS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1132,011,28,26,08B,1147782,1898047,2004,02/25/2006 12:14:30 AM,41.876193689,-87.732862323,"(41.876193689, -87.732862323)" -3603104,HK604485,09/05/2004 05:07:00 PM,074XX S DORCHESTER AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0324,003,5,43,18,1186801,1855547,2004,02/25/2006 12:14:30 AM,41.758732501,-87.590947632,"(41.758732501, -87.590947632)" -3528892,HK607783,09/05/2004 10:00:00 AM,013XX S CALIFORNIA BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1023,010,28,29,14,1157933,1893883,2004,02/25/2006 12:14:30 AM,41.86456633,-87.695704729,"(41.86456633, -87.695704729)" -3525970,HK603504,09/04/2004 06:00:00 PM,012XX N NOBLE ST,0820,THEFT,$500 AND UNDER,OTHER COMMERCIAL TRANSPORTATION,false,false,1433,014,32,24,06,1166864,1908503,2004,12/04/2014 12:43:35 PM,41.904498008,-87.662499628,"(41.904498008, -87.662499628)" -3522701,HK601469,09/04/2004 03:53:17 AM,098XX S MANISTEE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0431,004,10,51,14,1196380,1840047,2004,02/25/2006 12:14:30 AM,41.715967037,-87.556354773,"(41.715967037, -87.556354773)" -3523835,HK601444,09/04/2004 02:58:15 AM,003XX E 130TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0533,005,9,54,14,1180471,1818843,2004,02/25/2006 12:14:30 AM,41.658159448,-87.615268148,"(41.658159448, -87.615268148)" -3541450,HK623485,09/03/2004 12:00:00 PM,093XX S BISHOP ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2222,022,21,73,08B,1168258,1843054,2004,02/25/2006 12:14:30 AM,41.724868962,-87.659264929,"(41.724868962, -87.659264929)" -4887254,HK597418,09/02/2004 09:32:00 AM,061XX S NORMAL BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0711,,20,68,07,,,2004,06/11/2007 03:52:33 PM,,, -3518119,HK596813,09/01/2004 02:30:00 PM,031XX S WENTWORTH AVE,0820,THEFT,$500 AND UNDER,CHA PARKING LOT/GROUNDS,false,false,0924,009,11,34,06,1175427,1883894,2004,12/04/2014 12:43:35 PM,41.836781273,-87.631784407,"(41.836781273, -87.631784407)" -3617119,HK711060,09/01/2004 03:00:00 AM,024XX W FLOURNOY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,1135,011,2,28,26,1160289,1897003,2004,02/25/2006 12:14:30 AM,41.873079567,-87.68696962,"(41.873079567, -87.68696962)" -3517926,HK593721,08/31/2004 03:40:00 PM,124XX S PERRY AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0523,005,9,53,08B,1177899,1822263,2004,02/25/2006 12:14:30 AM,41.667602886,-87.6245767,"(41.667602886, -87.6245767)" -3516293,HK593850,08/31/2004 03:00:00 PM,024XX E 78TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0421,004,7,43,08B,1193729,1853680,2004,02/25/2006 12:14:30 AM,41.753442439,-87.565618491,"(41.753442439, -87.565618491)" -3517979,HK592099,08/30/2004 07:45:00 PM,040XX W BARRY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2523,025,31,21,08B,1148539,1920337,2004,02/25/2006 12:14:30 AM,41.937345122,-87.729506741,"(41.937345122, -87.729506741)" -3513686,HK591502,08/30/2004 02:35:00 PM,026XX S PULASKI RD,0880,THEFT,PURSE-SNATCHING,STREET,false,false,1031,010,22,30,06,1150087,1886420,2004,02/25/2006 12:14:30 AM,41.844243241,-87.724701712,"(41.844243241, -87.724701712)" -3511425,HK590158,08/29/2004 10:00:00 PM,053XX W WARWICK AVE,0560,ASSAULT,SIMPLE,RESIDENTIAL YARD (FRONT/BACK),false,false,1634,016,38,15,08A,1139867,1924371,2004,02/25/2006 12:14:30 AM,41.948578005,-87.761279229,"(41.948578005, -87.761279229)" -3513346,HK589215,08/29/2004 01:55:00 PM,039XX W VAN BUREN ST,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,1132,011,24,26,06,1150092,1897771,2004,12/04/2014 12:43:35 PM,41.875391654,-87.724387913,"(41.875391654, -87.724387913)" -3516967,HK587354,08/28/2004 02:45:00 PM,075XX S COLES AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0421,004,7,43,08A,1195590,1856007,2004,02/25/2006 12:14:30 AM,41.759782127,-87.55872197,"(41.759782127, -87.55872197)" -3702746,HK587005,08/28/2004 11:45:00 AM,046XX N RACINE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2311,019,46,3,18,1167501,1931267,2004,02/25/2006 12:14:30 AM,41.96694985,-87.65950253,"(41.96694985, -87.65950253)" -3556105,HK586248,08/28/2004 12:36:52 AM,131XX S BALTIMORE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0433,004,10,55,18,1199055,1818129,2004,02/25/2006 12:14:30 AM,41.655755194,-87.547290246,"(41.655755194, -87.547290246)" -3513682,HK585077,08/27/2004 02:37:35 PM,060XX W WABANSIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2513,025,29,25,08B,1135670,1910711,2004,02/25/2006 12:14:30 AM,41.911169263,-87.777032636,"(41.911169263, -87.777032636)" -3510558,HK581750,08/25/2004 11:44:16 PM,003XX W 64TH ST,0460,BATTERY,SIMPLE,STREET,false,false,0722,007,20,68,08B,1175160,1862549,2004,02/25/2006 12:14:30 AM,41.77821454,-87.63340199,"(41.77821454, -87.63340199)" -3507132,HK583068,08/25/2004 10:00:00 PM,029XX W SCHUBERT AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1411,014,35,22,06,1156170,1917764,2004,12/04/2014 12:43:35 PM,41.930133706,-87.701531116,"(41.930133706, -87.701531116)" -3507189,HK583438,08/25/2004 05:25:00 PM,040XX N SAWYER AVE,0820,THEFT,$500 AND UNDER,RESIDENCE-GARAGE,false,false,1724,017,33,16,06,1154034,1926888,2004,12/04/2014 12:43:35 PM,41.955213548,-87.709136265,"(41.955213548, -87.709136265)" -3542182,HK580810,08/25/2004 03:45:00 PM,024XX S HOMAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1024,010,22,30,18,1154058,1887187,2004,02/25/2006 12:14:30 AM,41.846269833,-87.710108302,"(41.846269833, -87.710108302)" -3563306,HK650737,08/25/2004 09:00:00 AM,027XX N MC VICKER AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,2512,025,29,19,06,1135639,1917476,2004,12/04/2014 12:43:35 PM,41.929733766,-87.776985289,"(41.929733766, -87.776985289)" -3505792,HK579859,08/25/2004 12:15:00 AM,073XX N CLAREMONT AVE,0810,THEFT,OVER $500,STREET,false,false,2411,024,49,2,06,1159340,1948859,2004,12/04/2014 12:43:35 PM,42.015395181,-87.689022749,"(42.015395181, -87.689022749)" -3497595,HK573008,08/21/2004 11:29:00 PM,029XX N RIDGEWAY AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2523,025,35,21,03,1151098,1919355,2004,02/25/2006 12:14:30 AM,41.934600589,-87.720127742,"(41.934600589, -87.720127742)" -3498443,HK574172,08/21/2004 07:40:00 PM,080XX W FOREST PRESERVE AVE,0820,THEFT,$500 AND UNDER,PARK PROPERTY,false,false,1631,016,36,17,06,1121872,1922596,2004,12/04/2014 12:43:35 PM,41.944017705,-87.827465398,"(41.944017705, -87.827465398)" -3497733,HK569371,08/20/2004 09:30:13 AM,017XX W 79TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,0611,006,21,71,14,1166027,1852267,2004,02/25/2006 12:14:30 AM,41.75019845,-87.667175898,"(41.75019845, -87.667175898)" -3494103,HK568107,08/19/2004 03:00:00 PM,036XX W DEVON AVE,0810,THEFT,OVER $500,STREET,false,false,1711,017,50,13,06,1150916,1942135,2004,12/04/2014 12:43:35 PM,41.997114015,-87.720197512,"(41.997114015, -87.720197512)" -3493947,HK562339,08/16/2004 09:45:00 PM,077XX S MORGAN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0612,006,17,71,08B,1170952,1853237,2004,02/25/2006 12:14:30 AM,41.752754203,-87.649100227,"(41.752754203, -87.649100227)" -3486774,HK559871,08/15/2004 07:55:00 PM,077XX S ESSEX AVE,0460,BATTERY,SIMPLE,STREET,false,false,0421,004,7,43,08B,1194238,1854378,2004,02/25/2006 12:14:30 AM,41.755345327,-87.563730349,"(41.755345327, -87.563730349)" -3491852,HK559414,08/15/2004 01:30:00 AM,014XX W 85TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0614,006,21,71,06,1168044,1848416,2004,12/04/2014 12:43:35 PM,41.739587673,-87.659895137,"(41.739587673, -87.659895137)" -3493580,HK554144,08/12/2004 10:04:07 PM,029XX S STATE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,2113,001,3,35,18,1176728,1885065,2004,02/25/2006 12:14:30 AM,41.83996533,-87.626975231,"(41.83996533, -87.626975231)" -3484859,HK553720,08/12/2004 05:30:00 PM,008XX E 63RD ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0313,003,20,42,06,1183084,1863463,2004,02/25/2006 12:14:30 AM,41.780541982,-87.604324126,"(41.780541982, -87.604324126)" -3481967,HK554024,08/11/2004 08:00:00 PM,020XX N KEDZIE AVE,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,false,false,1414,014,35,22,06,1154756,1913339,2004,02/25/2006 12:14:30 AM,41.918019625,-87.706846035,"(41.918019625, -87.706846035)" -3479334,HK551450,08/10/2004 11:00:00 PM,016XX W JUNEWAY TER,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2422,024,49,1,07,1163919,1951532,2004,02/25/2006 12:14:30 AM,42.022634122,-87.672097653,"(42.022634122, -87.672097653)" -3478051,HK549810,08/10/2004 07:30:00 PM,048XX W ARMITAGE AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,true,2533,025,31,19,06,1143325,1912809,2004,12/04/2014 12:43:35 PM,41.916786714,-87.748857849,"(41.916786714, -87.748857849)" -3475693,HK547491,08/09/2004 07:36:22 PM,073XX N ASHLAND BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,2423,024,49,1,14,1164475,1948727,2004,02/25/2006 12:14:30 AM,42.014925354,-87.670131523,"(42.014925354, -87.670131523)" -3521656,HK600285,08/09/2004 12:00:00 PM,023XX S TRUMBULL AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,1024,010,22,30,05,1153769,1888430,2004,02/25/2006 12:14:30 AM,41.849686523,-87.711135871,"(41.849686523, -87.711135871)" -3475020,HK545909,08/09/2004 04:12:41 AM,124XX S COTTAGE GROVE AVE,0610,BURGLARY,FORCIBLE ENTRY,SIDEWALK,false,false,0532,005,9,54,05,1183663,1823193,2004,02/25/2006 12:14:30 AM,41.670022919,-87.603453219,"(41.670022919, -87.603453219)" -3658510,HK546420,08/09/2004 12:01:00 AM,069XX S WOLCOTT AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,false,false,0735,007,17,67,10,1164929,1858500,2004,02/25/2006 12:14:30 AM,41.767325934,-87.671023627,"(41.767325934, -87.671023627)" -3502602,HK543459,08/07/2004 08:15:00 PM,052XX W CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1524,015,37,25,18,1141269,1904867,2004,02/25/2006 12:14:30 AM,41.895031161,-87.756607838,"(41.895031161, -87.756607838)" -3492640,HK567129,08/07/2004 07:00:00 AM,064XX S LANGLEY AVE,2830,OTHER OFFENSE,OBSCENE TELEPHONE CALLS,RESIDENCE,false,false,0312,003,20,42,17,1182039,1862479,2004,02/25/2006 12:14:30 AM,41.777866041,-87.608185661,"(41.777866041, -87.608185661)" -3470763,HK540379,08/06/2004 11:30:00 AM,054XX W DIVISION ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,false,false,2532,025,37,25,06,1139873,1907504,2004,02/25/2006 12:14:30 AM,41.902293041,-87.761670517,"(41.902293041, -87.761670517)" -3468812,HK539075,08/05/2004 04:50:00 PM,087XX S STONY ISLAND AVE,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,false,false,0412,004,8,48,08B,1188279,1847492,2004,02/25/2006 12:14:30 AM,41.736593686,-87.585787413,"(41.736593686, -87.585787413)" -3462356,HK533417,08/03/2004 08:10:00 AM,0000X N CLARK ST,0460,BATTERY,SIMPLE,STREET,false,false,0113,001,42,32,08B,1175577,1900369,2004,02/25/2006 12:14:30 AM,41.88198645,-87.6307393,"(41.88198645, -87.6307393)" -3466303,HK533157,08/03/2004 02:37:34 AM,048XX N TROY ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,1713,017,33,14,15,1154451,1932377,2004,06/11/2007 03:52:33 PM,41.970267361,-87.707455895,"(41.970267361, -87.707455895)" -3468953,HK528682,07/31/2004 11:30:00 PM,087XX S GREENWOOD AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0412,004,8,47,03,1185027,1847519,2004,02/25/2006 12:14:30 AM,41.736744672,-87.597700681,"(41.736744672, -87.597700681)" -3464202,HK528085,07/31/2004 03:45:00 PM,0000X E GRAND AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1834,018,42,8,06,1176882,1903879,2004,02/25/2006 12:14:30 AM,41.891588659,-87.625841147,"(41.891588659, -87.625841147)" -3457373,HK526093,07/30/2004 06:30:00 PM,036XX N SAWYER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENTIAL YARD (FRONT/BACK),false,false,1733,017,33,16,26,1154115,1923959,2004,02/25/2006 12:14:30 AM,41.947174553,-87.708916941,"(41.947174553, -87.708916941)" -3477895,HK526086,07/30/2004 05:55:00 PM,009XX N HUDSON AVE,2027,NARCOTICS,POSS: CRACK,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,18,1173036,1906859,2004,02/25/2006 12:14:30 AM,41.8998521,-87.639877139,"(41.8998521, -87.639877139)" -3477823,HK524597,07/30/2004 01:49:00 AM,025XX W JACKSON BLVD,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1125,011,2,28,18,1159587,1898573,2004,02/25/2006 12:14:30 AM,41.877402272,-87.689503763,"(41.877402272, -87.689503763)" -3456744,HK524058,07/29/2004 08:05:00 PM,014XX W 95TH ST,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,2222,022,21,73,26,1168235,1841776,2004,02/25/2006 12:14:30 AM,41.721362432,-87.659385827,"(41.721362432, -87.659385827)" -3455066,HK523247,07/29/2004 12:00:00 PM,038XX W 43RD ST,0810,THEFT,OVER $500,ALLEY,false,false,0821,008,14,57,06,1151264,1875817,2004,12/04/2014 12:43:35 PM,41.815124232,-87.720659797,"(41.815124232, -87.720659797)" -3464372,HK523040,07/29/2004 09:45:00 AM,016XX W HOWARD ST,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,2422,024,49,1,06,1163722,1950306,2004,12/04/2014 12:43:35 PM,42.019274133,-87.672857442,"(42.019274133, -87.672857442)" -3453617,HK522517,07/29/2004 06:07:00 AM,023XX W WASHINGTON BLVD,0580,STALKING,SIMPLE,CHA APARTMENT,false,true,1332,012,2,28,08A,1160601,1900581,2004,02/25/2006 12:14:30 AM,41.882891472,-87.685724995,"(41.882891472, -87.685724995)" -3453473,HK521604,07/28/2004 06:30:00 AM,082XX S EXCHANGE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0423,004,7,46,05,1197222,1850688,2004,02/25/2006 12:14:30 AM,41.745145927,-87.552917659,"(41.745145927, -87.552917659)" -3481194,HK518973,07/27/2004 03:20:00 PM,010XX N RIDGEWAY AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1112,011,27,23,18,1151219,1907052,2004,02/25/2006 12:14:30 AM,41.900837672,-87.720006415,"(41.900837672, -87.720006415)" -3452962,HK518347,07/26/2004 12:00:00 PM,049XX W GRAND AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2533,025,37,19,06,1142930,1912337,2004,12/04/2014 12:43:35 PM,41.915498873,-87.750320879,"(41.915498873, -87.750320879)" -3456556,HK515275,07/25/2004 09:28:21 PM,013XX N LARRABEE ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,1822,018,27,8,26,1172047,1909172,2004,02/25/2006 12:14:30 AM,41.906220979,-87.643441395,"(41.906220979, -87.643441395)" -3451527,HK513447,07/24/2004 10:20:00 PM,024XX E 73RD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0334,003,7,43,14,1193683,1856987,2004,02/25/2006 12:14:30 AM,41.76251823,-87.565678919,"(41.76251823, -87.565678919)" -3469980,HK003582,07/24/2004 10:20:00 AM,035XX W 63RD ST,0560,ASSAULT,SIMPLE,POLICE FACILITY/VEH PARKING LOT,true,false,0823,008,15,66,08A,1154004,1862576,2004,02/25/2006 12:14:30 AM,41.778734981,-87.71096061,"(41.778734981, -87.71096061)" -3458358,HK070132,07/23/2004 08:00:00 AM,007XX E 61ST ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0313,003,20,42,14,1182137,1864763,2004,02/25/2006 12:14:30 AM,41.784131281,-87.607755741,"(41.784131281, -87.607755741)" -3448690,HK003479,07/22/2004 03:00:00 AM,113XX S LOWE AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,2233,022,34,49,06,1174047,1829580,2004,12/04/2014 12:43:35 PM,41.687767979,-87.638458078,"(41.687767979, -87.638458078)" -3444117,HK512008,07/21/2004 11:30:00 PM,075XX N WESTERN AVE,0890,THEFT,FROM BUILDING,DRUG STORE,false,false,2411,024,50,2,06,1158975,1949766,2004,02/25/2006 12:14:30 AM,42.017891545,-87.690340753,"(42.017891545, -87.690340753)" -3443863,HK510707,07/21/2004 12:45:00 PM,047XX W NORTH AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,2533,025,37,25,06,1144212,1910247,2004,12/04/2014 12:43:35 PM,41.909739682,-87.745663482,"(41.909739682, -87.745663482)" -3457478,HK509743,07/20/2004 11:40:00 PM,018XX W IOWA ST,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,true,false,1322,012,32,24,07,1163575,1906065,2004,02/25/2006 12:14:30 AM,41.897877899,-87.674649773,"(41.897877899, -87.674649773)" -3450874,HK001018,07/20/2004 11:00:00 AM,014XX N LINDER AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,2532,025,37,25,08B,1139453,1909003,2004,02/25/2006 12:14:30 AM,41.906414143,-87.763176668,"(41.906414143, -87.763176668)" -3439896,HK507771,07/20/2004 06:30:00 AM,088XX S LANGLEY AVE,0498,BATTERY,AGGRAVATED DOMESTIC BATTERY: HANDS/FIST/FEET SERIOUS INJURY,APARTMENT,false,true,0632,006,6,44,04B,1182413,1846246,2004,02/25/2006 12:14:30 AM,41.733312328,-87.607316788,"(41.733312328, -87.607316788)" -3456091,HK521371,07/19/2004 03:00:00 PM,054XX S WELLS ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0934,009,3,37,06,1175593,1868501,2004,12/04/2014 12:43:35 PM,41.794537768,-87.631636522,"(41.794537768, -87.631636522)" -3436997,HK505203,07/19/2004 04:12:00 AM,031XX S ASHLAND AVE,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,0922,009,11,59,05,1166215,1883940,2004,02/25/2006 12:14:30 AM,41.837108991,-87.66558546,"(41.837108991, -87.66558546)" -3436897,HK505175,07/19/2004 03:12:03 AM,088XX S BURLEY AVE,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,0424,004,7,46,11,1199163,1847026,2004,02/25/2006 12:14:30 AM,41.735048604,-87.545928465,"(41.735048604, -87.545928465)" -3444669,HK508432,07/18/2004 02:30:00 PM,099XX S LOWE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2232,022,9,73,05,1173764,1838914,2004,02/25/2006 12:14:30 AM,41.713388136,-87.639218712,"(41.713388136, -87.639218712)" -3437416,HK504082,07/18/2004 09:00:00 AM,054XX W DIVISION ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2532,025,37,25,14,1139833,1907503,2004,02/25/2006 12:14:30 AM,41.902291028,-87.76181747,"(41.902291028, -87.76181747)" -3435872,HK504133,07/18/2004 04:30:00 AM,047XX S DAMEN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0915,009,12,61,14,1163780,1873312,2004,02/25/2006 12:14:30 AM,41.807996169,-87.674819382,"(41.807996169, -87.674819382)" -3452475,HK503060,07/17/2004 11:45:00 PM,052XX W ADDISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1634,016,38,15,18,1140572,1923468,2004,02/25/2006 12:14:30 AM,41.946087146,-87.75871,"(41.946087146, -87.75871)" -4081509,HK502690,07/17/2004 08:26:23 PM,008XX E 48TH ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,2124,002,4,39,26,1182689,1873327,2004,02/25/2006 12:14:30 AM,41.807618819,-87.605466064,"(41.807618819, -87.605466064)" -3452935,HK500819,07/16/2004 10:45:00 PM,047XX W FIFTH AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1131,011,24,25,16,1144568,1895270,2004,02/25/2006 12:14:30 AM,41.868634352,-87.744733079,"(41.868634352, -87.744733079)" -3439827,HK499702,07/16/2004 01:30:00 PM,004XX E 72ND ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0323,003,6,69,15,1180595,1857422,2004,02/25/2006 12:14:30 AM,41.764022413,-87.613634485,"(41.764022413, -87.613634485)" -3432603,HK497368,07/15/2004 08:30:00 AM,020XX W SHAKESPEARE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1432,014,32,22,05,1162403,1914362,2004,02/25/2006 12:14:30 AM,41.920670079,-87.678721836,"(41.920670079, -87.678721836)" -3431314,HK497024,07/14/2004 09:00:00 PM,017XX W PIERCE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1433,014,1,24,06,1164614,1910467,2004,12/04/2014 12:43:35 PM,41.909935345,-87.670708751,"(41.909935345, -87.670708751)" -3433294,HK495212,07/14/2004 02:15:00 PM,007XX S KARLOV AVE,0810,THEFT,OVER $500,VEHICLE-COMMERCIAL,false,false,1132,011,24,26,06,1149199,1896642,2004,12/04/2014 12:43:35 PM,41.872310886,-87.727695938,"(41.872310886, -87.727695938)" -3428071,HK494041,07/13/2004 11:02:00 PM,031XX W HOMER ST,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE,true,false,1421,014,35,22,04A,1154964,1912751,2004,02/25/2006 12:14:30 AM,41.916401932,-87.706097629,"(41.916401932, -87.706097629)" -3429837,HK491736,07/12/2004 09:40:00 PM,050XX W DICKENS AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,2522,025,31,19,24,1142310,1913530,2004,02/25/2006 12:14:30 AM,41.918784135,-87.752569051,"(41.918784135, -87.752569051)" -3428760,HK489447,07/11/2004 10:08:00 PM,031XX W FOSTER AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1713,017,33,13,06,1154343,1934335,2004,12/04/2014 12:43:35 PM,41.97564239,-87.707800448,"(41.97564239, -87.707800448)" -3424360,HK488010,07/11/2004 06:15:52 AM,031XX W 46TH ST,0810,THEFT,OVER $500,STREET,true,false,0912,009,14,58,06,1156095,1873928,2004,12/04/2014 12:43:35 PM,41.809844681,-87.702989619,"(41.809844681, -87.702989619)" -3424716,HK489085,07/10/2004 11:30:00 PM,016XX W ARTHUR AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,ALLEY,false,false,2432,024,40,1,04B,1164121,1943538,2004,02/25/2006 12:14:30 AM,42.000694147,-87.671581696,"(42.000694147, -87.671581696)" -3690634,HK490277,07/10/2004 01:00:00 PM,022XX E 75TH ST,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,false,false,0414,004,7,43,06,1192789,1855642,2004,02/25/2006 12:14:30 AM,41.758849291,-87.5689993,"(41.758849291, -87.5689993)" -3425866,HK490872,07/09/2004 03:45:00 AM,028XX N LOCKWOOD AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2514,025,31,19,26,1140519,1918346,2004,02/25/2006 12:14:30 AM,41.932032844,-87.759030941,"(41.932032844, -87.759030941)" -3462280,HK529429,07/08/2004 08:00:00 AM,001XX N LA SALLE ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,0113,001,42,32,11,1175070,1901133,2004,02/25/2006 12:14:30 AM,41.884094285,-87.632578071,"(41.884094285, -87.632578071)" -3419952,HK481857,07/07/2004 10:00:00 PM,043XX W WILCOX ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,1115,011,28,26,06,1147519,1898944,2004,12/04/2014 12:43:35 PM,41.878660207,-87.733804972,"(41.878660207, -87.733804972)" -3433470,HK479777,07/07/2004 12:00:00 PM,072XX S ASHLAND AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0735,007,17,67,07,1166900,1856520,2004,02/25/2006 12:14:30 AM,41.761850675,-87.663855549,"(41.761850675, -87.663855549)" -3420388,HK483730,07/07/2004 09:00:00 AM,090XX S KINGSTON AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0423,004,7,48,26,1194769,1845565,2004,02/25/2006 12:14:30 AM,41.731148679,-87.56207388,"(41.731148679, -87.56207388)" -3419431,HK479505,07/06/2004 06:30:00 PM,047XX N LINDER AVE,0810,THEFT,OVER $500,STREET,false,false,1623,016,45,15,06,1138769,1931133,2004,12/04/2014 12:43:35 PM,41.967153604,-87.765150522,"(41.967153604, -87.765150522)" -3439524,HK474702,07/05/2004 04:05:00 AM,0000X E CHICAGO AVE,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,SIDEWALK,true,false,1833,018,42,8,17,1176232,1905688,2004,02/25/2006 12:14:30 AM,41.896567329,-87.628173669,"(41.896567329, -87.628173669)" -3420515,HK474006,07/04/2004 08:20:00 PM,007XX E ADMINISTRATION DR,0460,BATTERY,SIMPLE,RESTAURANT,false,true,0234,002,20,40,08B,1182357,1867807,2004,02/25/2006 12:14:30 AM,41.79247919,-87.606854844,"(41.79247919, -87.606854844)" -3413667,HK473238,07/04/2004 11:00:00 AM,047XX W IRVING PARK RD,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,false,false,1722,017,45,15,06,1143749,1926204,2004,12/04/2014 12:43:35 PM,41.953535933,-87.746963462,"(41.953535933, -87.746963462)" -3419543,HK472681,07/04/2004 01:53:42 AM,049XX S FEDERAL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,false,0231,002,3,38,08B,1176577,1872007,2004,02/25/2006 12:14:30 AM,41.804136472,-87.627922736,"(41.804136472, -87.627922736)" -3436827,HK472434,07/03/2004 11:01:36 PM,050XX S WOLCOTT AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,VEHICLE NON-COMMERCIAL,true,false,0915,009,16,61,18,1164493,1871497,2004,02/25/2006 12:14:30 AM,41.803000573,-87.672255476,"(41.803000573, -87.672255476)" -3427221,HK472255,07/03/2004 09:15:00 PM,024XX S STATE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0134,001,3,33,18,1176662,1888115,2004,02/25/2006 12:14:30 AM,41.848336245,-87.627125389,"(41.848336245, -87.627125389)" -3412531,HK471939,07/03/2004 12:00:00 PM,003XX S CLARK ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0112,001,2,32,06,1175629,1898511,2004,12/04/2014 12:43:35 PM,41.876886819,-87.630604222,"(41.876886819, -87.630604222)" -3410796,HK470037,07/02/2004 01:00:00 PM,057XX S MARYLAND AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,HOSPITAL BUILDING/GROUNDS,false,false,2133,002,5,41,11,1182924,1867064,2004,02/25/2006 12:14:30 AM,41.790427167,-87.604798846,"(41.790427167, -87.604798846)" -3421147,HK468507,07/02/2004 03:30:00 AM,009XX N CLEVELAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA PARKING LOT/GROUNDS,false,true,1823,018,27,8,08B,1172857,1906778,2004,02/25/2006 12:14:30 AM,41.8996338,-87.640537005,"(41.8996338, -87.640537005)" -3409514,HK468312,07/02/2004 12:09:45 AM,022XX S UNION AVE,0453,BATTERY,AGGRAVATED PO: OTHER DANG WEAP,STREET,true,false,1233,012,25,31,04B,1171924,1889041,2004,02/25/2006 12:14:30 AM,41.850982867,-87.644486736,"(41.850982867, -87.644486736)" -3410960,HK467394,07/01/2004 02:00:00 AM,021XX W GRACE ST,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,1912,019,47,5,07,1161563,1925176,2004,02/25/2006 12:14:30 AM,41.950361913,-87.68150607,"(41.950361913, -87.68150607)" -3407571,HK466455,06/30/2004 10:00:00 PM,081XX S ELLIS AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0631,006,8,44,08B,1184343,1851425,2004,02/25/2006 12:14:30 AM,41.74747917,-87.600084676,"(41.74747917, -87.600084676)" -3410219,HK464983,06/30/2004 02:23:10 PM,030XX N CENTRAL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,false,2514,025,31,19,14,1138464,1919678,2004,02/25/2006 12:14:30 AM,41.935725517,-87.766550528,"(41.935725517, -87.766550528)" -3410334,HK464379,06/29/2004 05:45:00 PM,083XX S DREXEL AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0632,006,8,44,08B,1183644,1849547,2004,02/25/2006 12:14:30 AM,41.742342054,-87.602704417,"(41.742342054, -87.602704417)" -3409783,HK468733,06/27/2004 07:40:00 PM,048XX N SHERIDAN RD,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,APARTMENT,false,true,2024,020,48,3,20,1168798,1932398,2004,02/25/2006 12:14:30 AM,41.970025259,-87.654700724,"(41.970025259, -87.654700724)" -3404852,HK456977,06/26/2004 06:45:00 PM,058XX S CARPENTER ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,true,false,0712,007,16,68,26,1170274,1866013,2004,02/25/2006 12:14:30 AM,41.787827897,-87.651213499,"(41.787827897, -87.651213499)" -3397476,HK453325,06/24/2004 08:00:00 PM,031XX N KEATING AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2521,025,31,19,26,1144194,1920784,2004,02/25/2006 12:14:30 AM,41.938654602,-87.745464234,"(41.938654602, -87.745464234)" -3413502,HK451667,06/24/2004 08:15:00 AM,027XX S DEARBORN ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,2113,001,3,35,26,1176354,1886634,2004,06/11/2007 03:52:33 PM,41.844279217,-87.628300377,"(41.844279217, -87.628300377)" -3396064,HK450576,06/23/2004 05:22:33 PM,084XX S BURNHAM AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0423,004,7,46,14,1196328,1849682,2004,02/25/2006 12:14:30 AM,41.742407587,-87.556226634,"(41.742407587, -87.556226634)" -3394393,HK446410,06/21/2004 12:30:00 PM,0000X N MICHIGAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0122,001,42,32,14,1177259,1900830,2004,02/25/2006 12:14:30 AM,41.883213506,-87.624549106,"(41.883213506, -87.624549106)" -3391382,HK446966,06/21/2004 12:00:00 AM,068XX S ST LAWRENCE AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0321,003,20,42,06,1181374,1859915,2004,02/25/2006 12:14:30 AM,41.770845536,-87.610702525,"(41.770845536, -87.610702525)" -3395399,HK442850,06/20/2004 04:55:00 AM,124XX S UNION AVE,4388,OTHER OFFENSE,VIO BAIL BOND: DOM VIOLENCE,RESIDENCE PORCH/HALLWAY,false,false,0523,005,34,53,26,1173872,1822277,2004,02/25/2006 12:14:30 AM,41.667731242,-87.639314082,"(41.667731242, -87.639314082)" -3388632,HK441405,06/19/2004 01:05:50 PM,016XX S CHRISTIANA AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1021,010,24,29,08B,1154337,1891784,2004,02/25/2006 12:14:30 AM,41.858878973,-87.708961711,"(41.858878973, -87.708961711)" -3385179,HK437805,06/17/2004 10:30:00 AM,027XX N ELSTON AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1432,014,1,22,05,1160286,1918237,2004,02/25/2006 12:14:30 AM,41.931347425,-87.686392712,"(41.931347425, -87.686392712)" -3396524,HK435667,06/16/2004 07:30:00 PM,050XX S ASHLAND AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0931,009,16,61,16,1166558,1871562,2004,02/25/2006 12:14:30 AM,41.803135108,-87.664680309,"(41.803135108, -87.664680309)" -3384038,HK434245,06/16/2004 06:00:00 AM,017XX N NAGLE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2513,025,36,25,05,1132983,1911247,2004,02/25/2006 12:14:30 AM,41.912687513,-87.786891401,"(41.912687513, -87.786891401)" -3383601,HK432850,06/15/2004 01:00:00 PM,047XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0931,009,20,61,06,1166512,1873209,2004,12/04/2014 12:43:35 PM,41.807655646,-87.664802029,"(41.807655646, -87.664802029)" -3391869,HK431751,06/15/2004 01:58:55 AM,051XX S CALUMET AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0232,002,3,40,18,1179317,1871270,2004,02/25/2006 12:14:30 AM,41.802051931,-87.617896303,"(41.802051931, -87.617896303)" -3380871,HK432280,06/14/2004 10:30:00 PM,055XX S STATE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0233,002,3,40,07,1177174,1868423,2004,02/25/2006 12:14:30 AM,41.79428817,-87.625841426,"(41.79428817, -87.625841426)" -3389124,HK432631,06/14/2004 10:20:00 PM,061XX N WINCHESTER AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,ALLEY,false,false,2413,024,40,2,20,1162295,1941049,2004,02/25/2006 12:14:30 AM,41.993902786,-87.678369225,"(41.993902786, -87.678369225)" -3396269,HK431364,06/14/2004 08:35:00 PM,002XX S SPRINGFIELD AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1122,011,28,26,26,1150390,1898595,2004,02/25/2006 12:14:30 AM,41.877646995,-87.72327226,"(41.877646995, -87.72327226)" -3390157,HK429010,06/13/2004 02:00:00 AM,056XX W 63RD ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0812,008,13,64,06,1140110,1862269,2004,02/25/2006 12:14:30 AM,41.778157172,-87.761905407,"(41.778157172, -87.761905407)" -3382427,HK428705,06/12/2004 11:00:00 PM,026XX W OGDEN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1023,010,28,29,26,1158742,1893135,2004,02/25/2006 12:14:30 AM,41.862497215,-87.692755379,"(41.862497215, -87.692755379)" -3391062,HK426041,06/12/2004 12:46:27 PM,068XX S CAMPBELL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0832,008,15,66,18,1160938,1858849,2004,02/25/2006 12:14:30 AM,41.768367041,-87.685642774,"(41.768367041, -87.685642774)" -3376378,HK425928,06/12/2004 11:30:42 AM,054XX W CONGRESS PKWY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1522,015,29,25,08B,1140054,1897186,2004,02/25/2006 12:14:30 AM,41.873975849,-87.761258336,"(41.873975849, -87.761258336)" -3392855,HK423832,06/11/2004 01:20:00 PM,042XX W CARROLL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1114,011,28,26,18,1148227,1901924,2004,02/25/2006 12:14:30 AM,41.886824062,-87.731128533,"(41.886824062, -87.731128533)" -3376997,HK428607,06/11/2004 01:00:00 PM,063XX S WOODLAWN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0314,003,20,42,26,1185350,1863036,2004,02/25/2006 12:14:30 AM,41.77931724,-87.596030098,"(41.77931724, -87.596030098)" -3373830,HK422157,06/10/2004 04:40:00 PM,085XX S ST LAWRENCE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0632,006,6,44,05,1181777,1848216,2004,02/25/2006 12:14:30 AM,41.738732934,-87.609586053,"(41.738732934, -87.609586053)" -3374566,HK421476,06/10/2004 01:24:06 PM,055XX S LOWE AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0711,007,3,68,08B,1172947,1868139,2004,02/25/2006 12:14:30 AM,41.793603259,-87.641349983,"(41.793603259, -87.641349983)" -3370731,HK420534,06/10/2004 12:35:26 AM,117XX S MICHIGAN AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0532,005,9,53,04B,1178896,1827354,2004,02/25/2006 12:14:30 AM,41.681550804,-87.62077387,"(41.681550804, -87.62077387)" -3383133,HK431040,06/09/2004 04:00:00 PM,036XX S RHODES AVE,0810,THEFT,OVER $500,APARTMENT,false,false,0212,002,4,35,06,1180140,1880966,2004,12/04/2014 12:43:35 PM,41.828639699,-87.614580632,"(41.828639699, -87.614580632)" -3370243,HK419162,06/08/2004 08:30:00 PM,010XX N RUSH ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1824,018,42,8,06,1176359,1907211,2004,02/25/2006 12:14:30 AM,41.900743649,-87.627661215,"(41.900743649, -87.627661215)" -3371315,HK417477,06/08/2004 06:00:00 PM,044XX W THOMAS ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1111,011,37,23,06,1146675,1907000,2004,12/04/2014 12:43:35 PM,41.900782911,-87.736698324,"(41.900782911, -87.736698324)" -3370570,HK419806,06/08/2004 08:30:00 AM,0000X W 35TH ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,2113,002,3,35,06,1176748,1881839,2004,12/04/2014 12:43:35 PM,41.831112482,-87.626999184,"(41.831112482, -87.626999184)" -3372224,HK418922,06/07/2004 10:30:00 PM,116XX S STEWART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0522,005,34,53,08B,1175667,1827991,2004,02/25/2006 12:14:30 AM,41.683371507,-87.632574759,"(41.683371507, -87.632574759)" -3369282,HK415409,06/07/2004 07:05:00 PM,004XX W BELDEN AVE,0820,THEFT,$500 AND UNDER,ALLEY,false,false,1812,018,43,7,06,1172878,1915529,2004,12/04/2014 12:43:35 PM,41.923646512,-87.640200122,"(41.923646512, -87.640200122)" -3368180,HK412189,06/06/2004 10:35:00 PM,030XX S DRAKE AVE,4510,OTHER OFFENSE,PROBATION VIOLATION,SIDEWALK,true,false,1032,010,22,30,26,1153140,1884268,2004,02/25/2006 12:14:30 AM,41.83827797,-87.713554637,"(41.83827797, -87.713554637)" -3369151,HK413444,06/06/2004 09:48:00 PM,010XX W MARQUETTE RD,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,0724,007,17,68,26,1170793,1860436,2004,02/25/2006 12:14:30 AM,41.772512637,-87.649473163,"(41.772512637, -87.649473163)" -3365989,HK413234,06/06/2004 07:00:00 PM,016XX W 69TH ST,0810,THEFT,OVER $500,STREET,false,false,0725,007,17,67,06,1166446,1858991,2004,12/04/2014 12:43:35 PM,41.768641114,-87.665449192,"(41.768641114, -87.665449192)" -3367291,HK413066,06/06/2004 05:55:00 PM,066XX S STEWART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,false,0722,007,6,68,08B,1174728,1860917,2004,02/25/2006 12:14:30 AM,41.773745788,-87.635034295,"(41.773745788, -87.635034295)" -3364722,HK412824,06/06/2004 02:35:00 PM,015XX W FULLERTON AVE,0870,THEFT,POCKET-PICKING,SMALL RETAIL STORE,false,false,1931,019,32,7,06,1165799,1916071,2004,02/25/2006 12:14:30 AM,41.925287862,-87.666195414,"(41.925287862, -87.666195414)" -3368668,HK416495,06/06/2004 07:30:00 AM,054XX S TALMAN AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0911,009,14,63,06,1159595,1868298,2004,02/25/2006 12:14:30 AM,41.794324067,-87.690306545,"(41.794324067, -87.690306545)" -3380791,HK409539,06/04/2004 10:48:00 PM,057XX S ASHLAND AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0715,007,15,67,16,1166606,1866913,2004,02/25/2006 12:14:30 AM,41.790376676,-87.664636902,"(41.790376676, -87.664636902)" -3379589,HK409462,06/04/2004 09:53:00 PM,012XX N CLARK ST,2027,NARCOTICS,POSS: CRACK,CTA PLATFORM,true,false,1821,018,42,8,18,1175279,1908359,2004,02/25/2006 12:14:30 AM,41.903918127,-87.631593588,"(41.903918127, -87.631593588)" -3361054,HK407492,06/04/2004 04:00:00 AM,051XX W CHICAGO AVE,0460,BATTERY,SIMPLE,GAS STATION,false,false,1531,015,37,25,08B,1141661,1904878,2004,02/25/2006 12:14:30 AM,41.895054106,-87.755167834,"(41.895054106, -87.755167834)" -3386647,HK406084,06/03/2004 03:40:00 PM,034XX W OHIO ST,2094,NARCOTICS,ATTEMPT POSSESSION CANNABIS,STREET,true,false,1121,011,27,23,18,1153409,1903827,2004,02/25/2006 12:14:30 AM,41.891944716,-87.712048126,"(41.891944716, -87.712048126)" -3373381,HK406143,06/03/2004 12:30:00 PM,049XX S FEDERAL ST,0560,ASSAULT,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,0231,002,3,38,08A,1176577,1872007,2004,02/25/2006 12:14:30 AM,41.804136472,-87.627922736,"(41.804136472, -87.627922736)" -3373279,HK405246,06/03/2004 12:35:00 AM,056XX W WASHINGTON BLVD,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,1513,015,29,25,18,1138665,1900141,2004,02/25/2006 12:14:30 AM,41.88211005,-87.766286489,"(41.88211005, -87.766286489)" -3380952,HK405089,06/02/2004 10:15:00 PM,050XX N SHERIDAN RD,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,2024,020,46,3,16,1168686,1933596,2004,02/25/2006 12:14:30 AM,41.97331504,-87.655077675,"(41.97331504, -87.655077675)" -3357255,HK403727,06/02/2004 09:00:00 AM,008XX W MARQUETTE RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,false,true,0723,007,16,68,08B,1172119,1860471,2004,02/25/2006 12:14:30 AM,41.772579645,-87.644611403,"(41.772579645, -87.644611403)" -3371272,HK401434,06/01/2004 12:10:00 PM,008XX E 63RD ST,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,SIDEWALK,true,false,0313,003,20,42,18,1182792,1863455,2004,02/25/2006 12:14:30 AM,41.780526818,-87.605394886,"(41.780526818, -87.605394886)" -3355703,HK401972,06/01/2004 08:00:00 AM,019XX W 52ND ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0915,009,16,61,07,1164222,1870152,2004,02/25/2006 12:14:30 AM,41.799315445,-87.673287239,"(41.799315445, -87.673287239)" -4511069,HL816981,06/01/2004 12:01:00 AM,022XX S DRAKE AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1024,010,22,30,06,1153019,1888618,2004,02/25/2006 12:14:30 AM,41.850217297,-87.713883516,"(41.850217297, -87.713883516)" -3354108,HK400436,05/31/2004 07:00:00 PM,070XX W IRVING PARK RD,0820,THEFT,$500 AND UNDER,STREET,false,false,1632,016,38,17,06,1128506,1925778,2004,12/04/2014 12:43:35 PM,41.952639456,-87.803008905,"(41.952639456, -87.803008905)" -3360639,HK399073,05/31/2004 09:52:22 AM,015XX W HASTINGS ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1231,012,2,28,26,1166344,1893854,2004,02/25/2006 12:14:30 AM,41.864311174,-87.664828903,"(41.864311174, -87.664828903)" -3358150,HK398395,05/30/2004 09:07:31 PM,007XX W BITTERSWEET PL,0890,THEFT,FROM BUILDING,OTHER,false,false,2323,019,46,3,06,1170240,1927133,2004,02/25/2006 12:14:30 AM,41.955546474,-87.649552958,"(41.955546474, -87.649552958)" -3354969,HK397433,05/30/2004 10:38:00 AM,024XX W BERWYN AVE,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,2011,020,40,4,08B,1159288,1935081,2004,02/25/2006 12:14:30 AM,41.977588922,-87.689595227,"(41.977588922, -87.689595227)" -3351987,HK396972,05/30/2004 02:05:00 AM,045XX N SHERIDAN RD,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,2313,019,46,3,06,1168753,1930362,2004,12/04/2014 12:43:35 PM,41.96443939,-87.654925468,"(41.96443939, -87.654925468)" -3372557,HK388354,05/28/2004 11:55:00 PM,065XX S DR MARTIN LUTHER KING JR DR,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0312,003,20,69,16,1179998,1861992,2004,02/25/2006 12:14:30 AM,41.776576649,-87.615682846,"(41.776576649, -87.615682846)" -3368962,HK394816,05/28/2004 11:20:00 PM,032XX N CLARK ST,2027,NARCOTICS,POSS: CRACK,PARKING LOT/GARAGE(NON.RESID.),true,false,1924,019,44,6,18,1169940,1921434,2004,02/25/2006 12:14:30 AM,41.939914763,-87.650822643,"(41.939914763, -87.650822643)" -3370334,HK392749,05/28/2004 01:04:55 AM,064XX S DR MARTIN LUTHER KING JR DR,1513,PROSTITUTION,SOLICIT FOR BUSINESS,SIDEWALK,true,false,0312,003,20,42,16,1180073,1862159,2004,02/25/2006 12:14:30 AM,41.777033196,-87.615402792,"(41.777033196, -87.615402792)" -3349711,HK392433,05/27/2004 09:00:00 PM,060XX S HALSTED ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,0711,007,16,68,08B,1172051,1864544,2004,02/25/2006 12:14:30 AM,41.783757924,-87.644741116,"(41.783757924, -87.644741116)" -3348547,HK392315,05/27/2004 08:00:00 AM,017XX W 75TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0611,006,17,71,14,1165985,1854729,2004,02/25/2006 12:14:30 AM,41.756955417,-87.667259959,"(41.756955417, -87.667259959)" -3348984,HK388988,05/26/2004 11:17:38 AM,050XX S INDIANA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,ABANDONED BUILDING,false,false,0224,002,3,38,14,1178486,1871871,2004,02/25/2006 12:14:30 AM,41.803720069,-87.620925622,"(41.803720069, -87.620925622)" -3344580,HK388474,05/26/2004 01:00:00 AM,064XX S LONG AVE,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,RESIDENCE,true,true,0813,008,13,64,02,1141556,1861341,2004,02/25/2006 12:14:30 AM,41.775584087,-87.756627025,"(41.775584087, -87.756627025)" -3345606,HK387352,05/25/2004 03:45:00 PM,0000X E 111TH PL,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0531,005,9,49,06,1178586,1831007,2004,12/04/2014 12:43:35 PM,41.691582201,-87.621798187,"(41.691582201, -87.621798187)" -3345334,HK385591,05/24/2004 06:00:00 PM,004XX W 57TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0711,007,20,68,08B,1174225,1867092,2004,02/25/2006 12:14:30 AM,41.790701857,-87.636694788,"(41.790701857, -87.636694788)" -3342313,HK385569,05/23/2004 11:00:00 PM,070XX N SHERIDAN RD,0820,THEFT,$500 AND UNDER,STREET,false,false,2423,024,49,1,06,1166611,1946747,2004,12/04/2014 12:43:35 PM,42.009446526,-87.66232898,"(42.009446526, -87.66232898)" -3340403,HK383535,05/23/2004 06:00:00 PM,017XX N WELLS ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1814,018,43,7,26,1174423,1911793,2004,02/25/2006 12:14:30 AM,41.913360358,-87.634635105,"(41.913360358, -87.634635105)" -3339308,HK381934,05/22/2004 11:35:00 PM,025XX W WABANSIA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1434,014,1,24,18,1159318,1911258,2004,06/11/2007 03:52:33 PM,41.912216531,-87.690142301,"(41.912216531, -87.690142301)" -3339789,HK380021,05/22/2004 12:40:00 AM,025XX S SAWYER AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1024,010,22,30,08B,1155053,1887203,2004,02/25/2006 12:14:30 AM,41.846293867,-87.70645626,"(41.846293867, -87.70645626)" -3337749,HK375855,05/19/2004 08:00:00 PM,071XX S STATE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,GROCERY FOOD STORE,false,false,0323,003,6,69,14,1177565,1857496,2004,02/25/2006 12:14:30 AM,41.764294509,-87.624737832,"(41.764294509, -87.624737832)" -3349101,HK375008,05/19/2004 07:00:00 PM,016XX W JONQUIL TER,1310,CRIMINAL DAMAGE,TO PROPERTY,PARK PROPERTY,false,false,2422,024,49,1,14,1163973,1950959,2004,02/25/2006 12:14:30 AM,42.021060657,-87.671915226,"(42.021060657, -87.671915226)" -3338583,HK379470,05/19/2004 02:43:00 PM,057XX W CORNELIA AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1633,016,38,15,06,1137257,1922726,2004,02/25/2006 12:14:30 AM,41.94411136,-87.770912916,"(41.94411136, -87.770912916)" -3340088,HK374315,05/19/2004 11:45:00 AM,001XX S HALSTED ST,1151,DECEPTIVE PRACTICE,ILLEGAL POSSESSION CASH CARD,SMALL RETAIL STORE,true,false,1213,012,27,28,11,1171109,1899664,2004,02/25/2006 12:14:30 AM,41.880151085,-87.647166309,"(41.880151085, -87.647166309)" -3330838,HK371755,05/17/2004 05:00:00 PM,017XX N MERRIMAC AVE,0810,THEFT,OVER $500,DRIVEWAY - RESIDENTIAL,false,false,2513,025,29,25,06,1134497,1911270,2004,12/04/2014 12:43:35 PM,41.912724024,-87.7813287,"(41.912724024, -87.7813287)" -3332848,HK369289,05/17/2004 08:50:00 AM,105XX S WABASH AVE,0460,BATTERY,SIMPLE,STREET,false,false,0512,005,9,49,08B,1178392,1835331,2004,02/25/2006 12:14:30 AM,41.703452265,-87.622377765,"(41.703452265, -87.622377765)" -3337233,HK369792,05/17/2004 02:00:00 AM,047XX W ERIE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1111,011,28,25,08B,1144681,1903853,2004,02/25/2006 12:14:30 AM,41.892185009,-87.744101886,"(41.892185009, -87.744101886)" -3336877,HK368985,05/17/2004 01:47:23 AM,026XX S TROY ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,1033,010,12,30,14,1155757,1885906,2004,02/25/2006 12:14:30 AM,41.842720616,-87.703907491,"(41.842720616, -87.703907491)" -3327864,HK368367,05/16/2004 06:30:25 PM,087XX S COMMERCIAL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,0423,004,10,46,14,1197619,1847626,2004,02/25/2006 12:14:30 AM,41.736733675,-87.551564943,"(41.736733675, -87.551564943)" -3359130,HK367739,05/16/2004 01:05:00 PM,0000X N LATROBE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1522,015,28,25,18,1141331,1900172,2004,02/25/2006 12:14:30 AM,41.882146362,-87.756496043,"(41.882146362, -87.756496043)" -3336530,HK374754,05/15/2004 07:00:00 AM,001XX E WACKER DR,0810,THEFT,OVER $500,STREET,false,false,0124,001,42,32,06,1177258,1902722,2004,12/04/2014 12:43:35 PM,41.888405276,-87.624495391,"(41.888405276, -87.624495391)" -3330626,HK367449,05/14/2004 09:00:00 PM,051XX N WINTHROP AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2033,020,48,3,07,1167897,1934499,2004,02/25/2006 12:14:30 AM,41.975810003,-87.657952816,"(41.975810003, -87.657952816)" -3323631,HK362836,05/14/2004 02:51:50 AM,010XX W 14TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1232,012,25,28,08B,1169994,1893539,2004,02/25/2006 12:14:30 AM,41.863368015,-87.651439096,"(41.863368015, -87.651439096)" -3338909,HK358808,05/12/2004 12:01:00 AM,060XX S KOLMAR AVE,0810,THEFT,OVER $500,ALLEY,false,false,0813,008,13,65,06,1147025,1864389,2004,12/04/2014 12:43:35 PM,41.78384591,-87.736500367,"(41.78384591, -87.736500367)" -3323172,HK355855,05/10/2004 04:45:00 PM,070XX S INDIANA AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0322,003,6,69,26,1178777,1858192,2004,02/25/2006 12:14:30 AM,41.766176924,-87.620274433,"(41.766176924, -87.620274433)" -3313825,HK349403,05/07/2004 06:35:00 PM,006XX E 89TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0632,006,6,44,14,1181866,1846142,2004,02/25/2006 12:14:30 AM,41.733039585,-87.609323901,"(41.733039585, -87.609323901)" -3333522,HK349192,05/07/2004 04:42:40 PM,072XX S COTTAGE GROVE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0323,003,6,69,18,1182777,1856985,2004,02/25/2006 12:14:30 AM,41.762772865,-87.605650573,"(41.762772865, -87.605650573)" -3323518,HK361804,05/07/2004 02:30:00 PM,031XX W AUGUSTA BLVD,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1311,012,26,23,06,1154936,1906441,2004,02/25/2006 12:14:30 AM,41.899087299,-87.706369948,"(41.899087299, -87.706369948)" -3311978,HK347539,05/06/2004 10:50:00 PM,062XX W BELMONT AVE,1570,SEX OFFENSE,PUBLIC INDECENCY,STREET,true,false,1633,016,36,17,17,1134344,1920657,2004,02/25/2006 12:14:30 AM,41.938485747,-87.781668927,"(41.938485747, -87.781668927)" -3311503,HK347450,05/06/2004 08:45:00 PM,051XX W 64TH PL,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,0813,008,13,64,08B,1142896,1861236,2004,02/25/2006 12:14:30 AM,41.775271184,-87.75171724,"(41.775271184, -87.75171724)" -3311063,HK346750,05/06/2004 02:00:00 PM,011XX E 62ND ST,0560,ASSAULT,SIMPLE,STREET,false,true,0314,003,20,42,08A,1184840,1864167,2004,02/25/2006 12:14:30 AM,41.782432787,-87.597864324,"(41.782432787, -87.597864324)" -3310334,HK344067,05/05/2004 09:55:00 AM,009XX W 88TH ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2222,022,21,71,08A,1171640,1846443,2004,02/25/2006 12:14:30 AM,41.734095515,-87.64677763,"(41.734095515, -87.64677763)" -3307617,HK342724,05/04/2004 05:18:00 PM,043XX N SHERIDAN RD,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2322,019,46,3,06,1168852,1929250,2004,02/25/2006 12:14:30 AM,41.961385873,-87.654593862,"(41.961385873, -87.654593862)" -3309634,HK343783,05/04/2004 02:00:00 PM,020XX S LUMBER ST,1310,CRIMINAL DAMAGE,TO PROPERTY,WAREHOUSE,false,false,1233,012,25,31,14,1173384,1890679,2004,02/25/2006 12:14:30 AM,41.855445402,-87.639079663,"(41.855445402, -87.639079663)" -3339942,HK342065,05/04/2004 11:50:00 AM,068XX S MAY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0724,007,17,68,08B,1169794,1859307,2004,02/25/2006 12:14:30 AM,41.769436261,-87.653167943,"(41.769436261, -87.653167943)" -3333352,HK341892,05/04/2004 10:30:00 AM,059XX N GLENWOOD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,2013,020,48,77,18,1165872,1939292,2004,02/25/2006 12:14:30 AM,41.989005706,-87.665261991,"(41.989005706, -87.665261991)" -3306194,HK341616,05/04/2004 12:00:00 AM,056XX S PRINCETON AVE,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0711,007,3,68,07,1175295,1867293,2004,02/25/2006 12:14:30 AM,41.791229563,-87.632765373,"(41.791229563, -87.632765373)" -3303367,HK338067,05/02/2004 09:30:00 AM,107XX S AVENUE C,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0432,004,10,52,26,1204414,1834415,2004,02/25/2006 12:14:30 AM,41.700309681,-87.527124136,"(41.700309681, -87.527124136)" -3306779,HK337966,05/02/2004 08:30:00 AM,035XX S WESTERN BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0913,009,11,59,14,1161131,1881384,2004,02/25/2006 12:14:30 AM,41.830201982,-87.684311652,"(41.830201982, -87.684311652)" -3304854,HK334981,04/30/2004 05:10:00 PM,013XX N HUDSON AVE,0460,BATTERY,SIMPLE,STREET,false,false,1821,018,27,8,08B,1173105,1909581,2004,02/25/2006 12:14:30 AM,41.907319881,-87.639542844,"(41.907319881, -87.639542844)" -3306419,HK339518,04/30/2004 07:30:00 AM,040XX W 59TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CONVENIENCE STORE,false,true,0813,008,13,65,08B,1150659,1865135,2004,02/25/2006 12:14:30 AM,41.785823058,-87.723157205,"(41.785823058, -87.723157205)" -3308421,HK333667,04/30/2004 03:15:00 AM,012XX N BURLING ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA HALLWAY/STAIRWELL/ELEVATOR,false,true,1822,018,27,8,08B,1171043,1908538,2004,02/25/2006 12:14:30 AM,41.904503346,-87.647148068,"(41.904503346, -87.647148068)" -3332789,HK332194,04/29/2004 01:20:00 PM,013XX E 76TH ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0411,004,5,43,18,1186628,1854835,2004,02/25/2006 12:14:30 AM,41.756782801,-87.591604155,"(41.756782801, -87.591604155)" -3297594,HK331463,04/28/2004 09:30:00 PM,039XX W FLOURNOY ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1132,011,24,26,07,1150030,1896773,2004,02/25/2006 12:14:30 AM,41.872654235,-87.72464154,"(41.872654235, -87.72464154)" -3300577,HK330622,04/28/2004 06:10:00 PM,011XX N LAKE SHORE DR,4651,OTHER OFFENSE,SEX OFFENDER: FAIL REG NEW ADD,RESIDENCE,true,false,1824,018,42,8,26,1177039,1908369,2004,02/25/2006 12:14:30 AM,41.903905877,-87.625128448,"(41.903905877, -87.625128448)" -3298506,HK330928,04/28/2004 01:00:00 PM,047XX N SACRAMENTO AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1713,017,33,14,05,1155471,1931622,2004,02/25/2006 12:14:30 AM,41.968175089,-87.703725685,"(41.968175089, -87.703725685)" -3300946,HK329258,04/28/2004 12:30:00 AM,025XX W JACKSON BLVD,0460,BATTERY,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,1125,011,2,28,08B,1159587,1898573,2004,02/25/2006 12:14:30 AM,41.877402272,-87.689503763,"(41.877402272, -87.689503763)" -3295206,HK328800,04/27/2004 03:00:00 AM,004XX W HARRISON ST,0890,THEFT,FROM BUILDING,GOVERNMENT BUILDING/PROPERTY,false,false,0131,001,2,28,06,1173318,1897549,2004,02/25/2006 12:14:30 AM,41.874298636,-87.639118002,"(41.874298636, -87.639118002)" -3293681,HK327437,04/26/2004 06:00:00 PM,002XX S SANGAMON ST,0810,THEFT,OVER $500,STREET,false,false,1213,012,2,28,06,1170168,1899268,2004,12/04/2014 12:43:35 PM,41.879085026,-87.650633095,"(41.879085026, -87.650633095)" -3294136,HK324801,04/25/2004 08:00:00 PM,031XX S ASHLAND AVE,0460,BATTERY,SIMPLE,GROCERY FOOD STORE,false,false,0922,009,11,59,08B,1166221,1883706,2004,02/25/2006 12:14:30 AM,41.836466744,-87.665570118,"(41.836466744, -87.665570118)" -3335622,HK323914,04/25/2004 11:05:00 AM,041XX S INDIANA AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0214,002,3,38,18,1178327,1877541,2004,02/25/2006 12:14:30 AM,41.819282654,-87.621336465,"(41.819282654, -87.621336465)" -3287454,HK317897,04/22/2004 01:30:00 PM,060XX N WESTERN AVE,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,2413,024,40,2,06,1159191,1939791,2004,12/04/2014 12:43:35 PM,41.990515363,-87.689821806,"(41.990515363, -87.689821806)" -3285750,HK316100,04/21/2004 04:47:00 PM,024XX E 78TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0421,004,7,43,08B,1193627,1853758,2004,02/25/2006 12:14:30 AM,41.753658974,-87.565989726,"(41.753658974, -87.565989726)" -3283734,HK314835,04/20/2004 03:30:00 PM,037XX W 61ST PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0823,008,13,65,05,1152757,1863615,2004,02/25/2006 12:14:30 AM,41.781610832,-87.715504888,"(41.781610832, -87.715504888)" -3280222,HK310858,04/18/2004 07:00:00 PM,013XX N WOLCOTT AVE,0810,THEFT,OVER $500,SIDEWALK,false,false,1424,014,1,24,06,1163899,1909344,2004,12/04/2014 12:43:35 PM,41.906868882,-87.673367104,"(41.906868882, -87.673367104)" -3309224,HK308977,04/18/2004 10:20:00 AM,019XX W WASHINGTON BLVD,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1333,012,27,28,16,1163721,1900751,2004,02/25/2006 12:14:30 AM,41.883292787,-87.674263446,"(41.883292787, -87.674263446)" -3282517,HK309169,04/18/2004 03:30:00 AM,005XX S CANAL ST,0460,BATTERY,SIMPLE,GOVERNMENT BUILDING/PROPERTY,false,false,0131,001,2,28,08B,1173136,1897988,2004,02/25/2006 12:14:30 AM,41.875507319,-87.639773193,"(41.875507319, -87.639773193)" -3278723,HK308888,04/17/2004 05:00:00 PM,064XX N RICHMOND ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),false,false,2412,024,50,2,14,1155535,1942650,2004,02/25/2006 12:14:30 AM,41.998435183,-87.703192036,"(41.998435183, -87.703192036)" -3316333,HK299216,04/17/2004 11:30:00 AM,047XX W VAN BUREN ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1131,011,24,25,18,1144965,1897568,2004,02/25/2006 12:14:30 AM,41.874932869,-87.743217586,"(41.874932869, -87.743217586)" -3277593,HK306399,04/16/2004 11:45:00 PM,045XX W WELLINGTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,2521,025,31,20,08B,1145828,1919604,2004,02/25/2006 12:14:30 AM,41.93538567,-87.73948887,"(41.93538567, -87.73948887)" -3276357,HK305103,04/16/2004 08:00:00 AM,038XX S WOLCOTT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,false,false,0922,009,11,59,14,1164273,1879494,2004,02/25/2006 12:14:30 AM,41.8249499,-87.672836895,"(41.8249499, -87.672836895)" -3277486,HK304805,04/16/2004 02:40:00 AM,016XX W 63RD ST,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,true,false,0714,007,16,67,05,1166414,1862964,2004,02/25/2006 12:14:30 AM,41.779544224,-87.665453392,"(41.779544224, -87.665453392)" -3275409,HK302585,04/15/2004 03:21:12 AM,015XX W JUNEWAY TER,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,2422,024,49,1,26,1164943,1951438,2004,02/25/2006 12:14:30 AM,42.022354414,-87.66833196,"(42.022354414, -87.66833196)" -3268605,HK296636,04/11/2004 02:00:00 PM,020XX W PIERCE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,true,false,1424,014,1,24,05,1162579,1910201,2004,02/25/2006 12:14:30 AM,41.909248318,-87.678191961,"(41.909248318, -87.678191961)" -3268827,HK295392,04/11/2004 03:00:00 AM,020XX N MILWAUKEE AVE,0460,BATTERY,SIMPLE,STREET,true,false,1431,014,1,22,08B,1159357,1913553,2004,02/25/2006 12:14:30 AM,41.918513382,-87.689935776,"(41.918513382, -87.689935776)" -3265766,HK293644,04/10/2004 02:00:00 AM,073XX W BELMONT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1631,016,36,17,14,1126309,1920463,2004,02/25/2006 12:14:30 AM,41.938091478,-87.811204368,"(41.938091478, -87.811204368)" -3269688,HK292416,04/09/2004 03:00:00 PM,067XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0322,003,20,69,08B,1178289,1860160,2004,02/25/2006 12:14:30 AM,41.771588415,-87.622003457,"(41.771588415, -87.622003457)" -3268806,HK294217,04/09/2004 06:00:00 AM,057XX S KIMBARK AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2133,002,5,41,05,1185682,1867257,2004,02/25/2006 12:14:30 AM,41.790892196,-87.594680028,"(41.790892196, -87.594680028)" -3268487,HK290010,04/08/2004 01:00:00 PM,064XX S MAPLEWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0825,008,15,66,08B,1160441,1861877,2004,02/25/2006 12:14:30 AM,41.776686561,-87.687381167,"(41.776686561, -87.687381167)" -3266420,HK289560,04/08/2004 09:04:24 AM,002XX N LAVERGNE AVE,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,1532,015,28,25,08A,1142962,1901172,2004,02/25/2006 12:14:30 AM,41.884860245,-87.750481997,"(41.884860245, -87.750481997)" -3261672,HK288828,04/07/2004 07:30:00 PM,025XX N NORMANDY AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2512,025,36,18,06,1131354,1916450,2004,12/04/2014 12:43:35 PM,41.926993516,-87.792755563,"(41.926993516, -87.792755563)" -3268386,HK288271,04/07/2004 03:49:00 PM,081XX S ARTESIAN AVE,0460,BATTERY,SIMPLE,OTHER,false,false,0835,008,18,70,08B,1161407,1850403,2004,02/25/2006 12:14:30 AM,41.745180259,-87.684157267,"(41.745180259, -87.684157267)" -3266607,HK284726,04/05/2004 10:15:00 PM,053XX S PULASKI RD,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0815,008,23,62,06,1150567,1868924,2004,02/25/2006 12:14:30 AM,41.796222444,-87.723395965,"(41.796222444, -87.723395965)" -3278222,HK305989,04/05/2004 09:00:00 AM,035XX N LAKE SHORE DR,0810,THEFT,OVER $500,OTHER,false,false,2331,019,46,6,06,1172082,1924158,2004,12/04/2014 12:43:35 PM,41.947342449,-87.642869545,"(41.947342449, -87.642869545)" -3255295,HK280484,04/03/2004 05:15:00 PM,040XX W CULLERTON ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1012,010,24,29,08A,1149499,1890150,2004,02/25/2006 12:14:30 AM,41.854490247,-87.726762902,"(41.854490247, -87.726762902)" -3255117,HK280375,04/03/2004 04:45:00 PM,004XX S STATE ST,0870,THEFT,POCKET-PICKING,CTA BUS,false,false,0132,001,2,32,06,1176392,1898531,2004,02/25/2006 12:14:30 AM,41.876924523,-87.627802145,"(41.876924523, -87.627802145)" -3253536,HK279201,04/02/2004 12:00:00 AM,101XX S AVENUE M,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,false,false,0432,004,10,52,07,1201448,1838538,2004,02/25/2006 12:14:30 AM,41.711699217,-87.537844734,"(41.711699217, -87.537844734)" -3252581,HK276529,04/01/2004 06:55:00 PM,071XX S BLACKSTONE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0324,003,5,43,03,1187391,1858174,2004,02/25/2006 12:14:30 AM,41.765927234,-87.588702009,"(41.765927234, -87.588702009)" -3294439,HK327717,04/01/2004 12:01:00 AM,120XX S WALLACE ST,1752,OFFENSE INVOLVING CHILDREN,AGG CRIM SEX ABUSE FAM MEMBER,OTHER,false,false,0523,005,34,53,20,1174524,1824881,2004,02/25/2006 12:14:30 AM,41.674862609,-87.636850897,"(41.674862609, -87.636850897)" -3256130,HK274520,03/31/2004 06:30:00 PM,017XX W 64TH ST,0460,BATTERY,SIMPLE,STREET,false,false,0725,007,15,67,08B,1165664,1862289,2004,02/25/2006 12:14:30 AM,41.777707889,-87.668222128,"(41.777707889, -87.668222128)" -3265164,HK273367,03/31/2004 08:59:53 AM,043XX W GLADYS AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1131,011,28,26,26,1147368,1898038,2004,02/25/2006 12:14:30 AM,41.87617693,-87.734382634,"(41.87617693, -87.734382634)" -3256357,HK272892,03/30/2004 08:58:00 PM,057XX S MICHIGAN AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,0233,002,20,40,26,1178089,1867250,2004,02/25/2006 12:14:30 AM,41.791048632,-87.622521746,"(41.791048632, -87.622521746)" -3247857,HK272764,03/29/2004 05:00:00 PM,007XX N CENTRAL PARK AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1112,011,27,23,26,1152215,1904506,2004,02/25/2006 12:14:30 AM,41.8938316,-87.716415259,"(41.8938316, -87.716415259)" -3296497,HK267731,03/28/2004 01:00:00 PM,055XX W VAN BUREN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,1522,015,29,25,18,1139134,1897414,2004,02/25/2006 12:14:30 AM,41.874618288,-87.764630649,"(41.874618288, -87.764630649)" -3244833,HK267920,03/28/2004 12:01:00 AM,0000X E DIVISION ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1824,018,42,8,05,1176872,1908358,2004,02/25/2006 12:14:30 AM,41.903879475,-87.625742206,"(41.903879475, -87.625742206)" -3309007,HK263023,03/26/2004 03:15:00 AM,055XX N WINTHROP AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,2023,020,48,77,26,1167826,1937035,2004,02/25/2006 12:14:30 AM,41.982770392,-87.658140398,"(41.982770392, -87.658140398)" -3241314,HK262929,03/26/2004 01:17:07 AM,079XX S LAFAYETTE AVE,031A,ROBBERY,ARMED: HANDGUN,GAS STATION,false,false,0623,006,17,44,03,1177268,1852617,2004,02/25/2006 12:14:30 AM,41.750912681,-87.625973444,"(41.750912681, -87.625973444)" -3239530,HK261275,03/25/2004 10:45:00 AM,012XX W NORTH AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,1433,014,32,24,06,1167978,1910835,2004,12/04/2014 12:43:35 PM,41.910873182,-87.658340208,"(41.910873182, -87.658340208)" -3249331,HK260460,03/24/2004 10:20:00 PM,002XX N HOMAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1123,011,28,27,08B,1153630,1901547,2004,12/04/2014 12:43:35 PM,41.885683774,-87.711297186,"(41.885683774, -87.711297186)" -3241466,HK259826,03/24/2004 04:00:00 PM,040XX W GLADYS AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,ALLEY,false,false,1132,011,28,26,04A,1149436,1898087,2004,02/25/2006 12:14:30 AM,41.87627154,-87.726788311,"(41.87627154, -87.726788311)" -3240595,HK259514,03/24/2004 01:45:00 PM,078XX S HALSTED ST,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,0621,006,17,71,06,1172297,1852478,2004,02/25/2006 12:14:30 AM,41.750641951,-87.644193637,"(41.750641951, -87.644193637)" -3241711,HK258770,03/24/2004 08:54:00 AM,011XX N SPRINGFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1112,011,27,23,14,1150126,1907625,2004,02/25/2006 12:14:30 AM,41.902431414,-87.724006161,"(41.902431414, -87.724006161)" -3239569,HK261158,03/24/2004 08:00:00 AM,018XX N HERMITAGE AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1433,014,32,22,07,1164342,1912689,2004,02/25/2006 12:14:30 AM,41.916038423,-87.671644991,"(41.916038423, -87.671644991)" -3276005,HK256379,03/22/2004 11:00:00 PM,044XX S FEDERAL ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,0221,002,3,38,18,1176474,1875514,2004,02/25/2006 12:14:30 AM,41.813762321,-87.628194958,"(41.813762321, -87.628194958)" -3238638,HK259207,03/22/2004 02:00:00 PM,094XX S NORMAL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,2223,022,21,73,14,1174580,1842487,2004,02/25/2006 12:14:30 AM,41.723174857,-87.63612427,"(41.723174857, -87.63612427)" -3289226,HK254086,03/21/2004 09:00:00 PM,033XX W ADAMS ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1124,011,28,27,18,1153991,1898912,2004,02/25/2006 12:14:30 AM,41.878445877,-87.710041791,"(41.878445877, -87.710041791)" -3232881,HK253730,03/21/2004 11:00:00 AM,042XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0914,009,12,61,06,1166338,1876869,2004,12/04/2014 12:43:35 PM,41.817702806,-87.665335867,"(41.817702806, -87.665335867)" -3238611,HK259585,03/21/2004 09:30:00 AM,001XX W NORTH AVE,0890,THEFT,FROM BUILDING,ATHLETIC CLUB,false,false,1821,018,43,8,06,1174800,1910955,2004,02/25/2006 12:14:30 AM,41.911052413,-87.63327523,"(41.911052413, -87.63327523)" -3231452,HK250912,03/20/2004 03:55:00 AM,111XX S COTTAGE GROVE AVE,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,STREET,false,false,0531,005,9,50,03,1181881,1831457,2004,02/25/2006 12:14:30 AM,41.69274174,-87.609721067,"(41.69274174, -87.609721067)" -3228801,HK248015,03/18/2004 06:45:00 PM,056XX S FAIRFIELD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0824,008,16,63,26,1159054,1866749,2004,02/25/2006 12:14:30 AM,41.790084488,-87.692332737,"(41.790084488, -87.692332737)" -3227029,HK246069,03/17/2004 07:00:00 PM,056XX W MELROSE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1633,016,38,15,14,1138455,1921089,2004,02/25/2006 12:14:30 AM,41.939597611,-87.76654932,"(41.939597611, -87.76654932)" -3228266,HK243028,03/16/2004 07:00:00 AM,042XX W ADAMS ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1115,011,28,26,06,1148103,1898712,2004,02/25/2006 12:14:30 AM,41.878012357,-87.731666593,"(41.878012357, -87.731666593)" -3223733,HK242440,03/15/2004 11:00:00 PM,083XX S BUFFALO AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0424,004,10,46,26,1199632,1850240,2004,02/25/2006 12:14:30 AM,41.743856265,-87.544102301,"(41.743856265, -87.544102301)" -3224061,HK242560,03/15/2004 09:45:00 PM,012XX W DICKENS AVE,0810,THEFT,OVER $500,STREET,false,false,1811,018,32,7,06,1167632,1914138,2004,12/04/2014 12:43:35 PM,41.919944273,-87.65951595,"(41.919944273, -87.65951595)" -3223876,HK241685,03/15/2004 06:05:00 PM,012XX W WINNEMAC AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,2033,020,48,3,08B,1167328,1933663,2004,02/25/2006 12:14:30 AM,41.973528284,-87.660069393,"(41.973528284, -87.660069393)" -3227201,HK246587,03/15/2004 03:00:00 PM,004XX N STATE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,GROCERY FOOD STORE,false,false,1831,018,42,8,14,1176256,1903033,2004,02/25/2006 12:14:30 AM,41.889281331,-87.628165664,"(41.889281331, -87.628165664)" -3222969,HK241089,03/15/2004 12:30:00 PM,030XX N MENARD AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2514,025,30,19,06,1137219,1919748,2004,02/25/2006 12:14:30 AM,41.9359401,-87.771124377,"(41.9359401, -87.771124377)" -3224519,HK240798,03/15/2004 11:00:00 AM,003XX E 115TH ST,0560,ASSAULT,SIMPLE,STREET,false,false,0531,005,9,49,08A,1180761,1828818,2004,02/25/2006 12:14:30 AM,41.685525699,-87.613902248,"(41.685525699, -87.613902248)" -3220617,HK238614,03/14/2004 02:31:04 AM,003XX N LARAMIE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,OTHER,false,false,1523,015,28,25,04B,1141598,1902099,2004,02/25/2006 12:14:30 AM,41.88742936,-87.755467958,"(41.88742936, -87.755467958)" -3220411,HK238011,03/13/2004 06:25:00 PM,016XX N HARLEM AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,2513,025,36,25,07,1127899,1909823,2004,02/25/2006 12:14:30 AM,41.90886723,-87.805601319,"(41.90886723, -87.805601319)" -3224334,HK240924,03/12/2004 02:30:00 PM,014XX E 70TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0332,003,5,43,08B,1186922,1858826,2004,02/25/2006 12:14:30 AM,41.767727508,-87.590400389,"(41.767727508, -87.590400389)" -3232025,HK232791,03/11/2004 08:00:00 AM,002XX S WABASH AVE,0551,ASSAULT,AGGRAVATED PO: OTHER FIREARM,CTA TRAIN,true,false,0123,001,42,32,04A,1176810,1899198,2004,02/25/2006 12:14:30 AM,41.878745371,-87.626247216,"(41.878745371, -87.626247216)" -3215317,HK231778,03/10/2004 11:00:00 AM,129XX S MARQUETTE AVE,1170,DECEPTIVE PRACTICE,IMPERSONATION,RESIDENCE,false,false,0433,004,10,55,11,1196467,1819891,2004,02/25/2006 12:14:30 AM,41.660654704,-87.556701668,"(41.660654704, -87.556701668)" -3209891,HK223334,03/06/2004 12:01:00 AM,032XX N CICERO AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,1731,017,30,15,14,1143835,1921461,2004,02/25/2006 12:14:30 AM,41.940519101,-87.746766635,"(41.940519101, -87.746766635)" -3213461,HK225856,03/05/2004 02:30:00 PM,106XX S EBERHART AVE,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,0512,005,9,49,06,1181432,1834201,2004,12/04/2014 12:43:35 PM,41.700281987,-87.611280704,"(41.700281987, -87.611280704)" -3210851,HK221745,03/05/2004 01:55:00 PM,065XX S YALE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0722,007,20,68,14,1175593,1861499,2004,02/25/2006 12:14:30 AM,41.775323543,-87.631846001,"(41.775323543, -87.631846001)" -3249186,HK221540,03/05/2004 11:40:00 AM,027XX W OGDEN AVE,2094,NARCOTICS,ATTEMPT POSSESSION CANNABIS,CHA PARKING LOT/GROUNDS,true,false,1023,010,28,29,18,1158453,1892996,2004,02/25/2006 12:14:30 AM,41.862121697,-87.693820064,"(41.862121697, -87.693820064)" -3216303,HK221307,03/05/2004 08:00:00 AM,068XX S NORMAL BLVD,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,0722,007,6,68,08A,1174172,1859434,2004,02/25/2006 12:14:30 AM,41.769688636,-87.637116474,"(41.769688636, -87.637116474)" -3296812,HK218773,03/03/2004 11:20:00 PM,112XX S HALSTED ST,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,2233,022,34,75,16,1172943,1830574,2004,02/25/2006 12:14:30 AM,41.690520037,-87.64247052,"(41.690520037, -87.64247052)" -3269042,HK218278,03/03/2004 07:13:16 PM,001XX W KINZIE ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1831,018,42,8,16,1175362,1902958,2004,02/25/2006 12:14:30 AM,41.88909564,-87.631451013,"(41.88909564, -87.631451013)" -3204339,HK217490,03/03/2004 08:30:00 AM,046XX S MOZART ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0912,009,12,58,07,1158185,1873868,2004,02/25/2006 12:14:30 AM,41.809637712,-87.695325391,"(41.809637712, -87.695325391)" -3231740,HK251850,02/29/2004 08:00:00 AM,069XX N KEDZIE AVE,1121,DECEPTIVE PRACTICE,COUNTERFEITING DOCUMENT,APARTMENT,false,false,2411,024,50,2,10,1153898,1945902,2004,02/25/2006 12:14:30 AM,42.007391713,-87.70912684,"(42.007391713, -87.70912684)" -3239810,HK210310,02/28/2004 09:02:00 PM,047XX N RACINE AVE,1512,PROSTITUTION,SOLICIT FOR PROSTITUTE,STREET,true,false,2311,019,48,3,16,1167500,1931360,2004,02/25/2006 12:14:30 AM,41.967205067,-87.659503517,"(41.967205067, -87.659503517)" -3201523,HK209622,02/28/2004 12:00:00 PM,020XX W GARFIELD BLVD,0810,THEFT,OVER $500,APARTMENT,false,false,0715,007,15,67,06,1163882,1868011,2004,12/04/2014 12:43:35 PM,41.793447433,-87.674594274,"(41.793447433, -87.674594274)" -3198080,HK208741,02/27/2004 09:03:00 PM,042XX W NORTH AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,ALLEY,true,false,2534,025,30,23,24,1147757,1910334,2004,06/11/2007 03:52:33 PM,41.909911031,-87.732638274,"(41.909911031, -87.732638274)" -3203164,HK216321,02/27/2004 05:00:00 PM,016XX N LECLAIRE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2533,025,37,25,06,1142346,1910322,2004,12/04/2014 12:43:35 PM,41.909980368,-87.752516602,"(41.909980368, -87.752516602)" -3200964,HK207679,02/27/2004 12:01:00 PM,0000X W WALTON ST,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,"SCHOOL, PUBLIC, GROUNDS",true,false,1832,018,42,8,20,1175909,1906947,2004,06/02/2010 10:34:17 AM,41.900029366,-87.629322033,"(41.900029366, -87.629322033)" -3197425,HK207217,02/27/2004 08:00:00 AM,088XX S PAXTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0412,004,8,48,14,1192408,1847009,2004,02/25/2006 12:14:30 AM,41.735168878,-87.570676047,"(41.735168878, -87.570676047)" -3201660,HK207852,02/27/2004 07:30:00 AM,072XX S RHODES AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0323,003,6,69,07,1181204,1856894,2004,02/25/2006 12:14:30 AM,41.762559522,-87.611418619,"(41.762559522, -87.611418619)" -3197827,HK206903,02/27/2004 12:05:00 AM,003XX W 105TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0512,005,34,49,08B,1175666,1835252,2004,02/25/2006 12:14:30 AM,41.7032968,-87.632362114,"(41.7032968, -87.632362114)" -3198741,HK209388,02/26/2004 04:00:00 PM,060XX S VERNON AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0313,003,20,42,26,1180352,1864963,2004,02/25/2006 12:14:30 AM,41.784721247,-87.614294037,"(41.784721247, -87.614294037)" -3194253,HK200736,02/23/2004 08:50:00 PM,018XX W 51ST ST,0810,THEFT,OVER $500,STREET,false,false,0931,009,16,61,06,1165198,1870913,2004,12/04/2014 12:43:35 PM,41.801383099,-87.669686449,"(41.801383099, -87.669686449)" -3193509,HK200451,02/23/2004 06:45:00 PM,065XX N SHERIDAN RD,1330,CRIMINAL TRESPASS,TO LAND,COLLEGE/UNIVERSITY GROUNDS,true,false,2432,024,49,1,26,1167110,1943634,2004,02/25/2006 12:14:30 AM,42.000893656,-87.660583014,"(42.000893656, -87.660583014)" -3192906,HK200608,02/23/2004 04:35:00 PM,012XX E 95TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0511,005,8,50,06,1186053,1842186,2004,12/04/2014 12:43:35 PM,41.722086211,-87.594109588,"(41.722086211, -87.594109588)" -3200880,HK211318,02/23/2004 01:00:00 PM,049XX N WHIPPLE ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,APARTMENT,true,false,1713,017,33,14,26,1155104,1932800,2004,02/25/2006 12:14:30 AM,41.971414982,-87.705043361,"(41.971414982, -87.705043361)" -3193759,HK198855,02/22/2004 11:45:00 PM,092XX S PRINCETON AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0634,006,21,49,08A,1176331,1843776,2004,02/25/2006 12:14:30 AM,41.72667295,-87.629671948,"(41.72667295, -87.629671948)" -3195137,HK201207,02/22/2004 09:00:00 PM,070XX N WOLCOTT AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2424,024,49,1,05,1162291,1946688,2004,02/25/2006 12:14:30 AM,42.009376443,-87.678225232,"(42.009376443, -87.678225232)" -3216261,HK217632,02/21/2004 03:00:00 AM,012XX W 74TH PL,0820,THEFT,$500 AND UNDER,STREET,false,false,0734,007,17,67,06,1169304,1855419,2004,12/04/2014 12:43:35 PM,41.758777708,-87.655076435,"(41.758777708, -87.655076435)" -3190327,HK195439,02/21/2004 02:05:00 AM,027XX W BELDEN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,1431,014,1,22,08B,1157569,1915199,2004,02/25/2006 12:14:30 AM,41.923066754,-87.696460137,"(41.923066754, -87.696460137)" -3188580,HK191683,02/19/2004 08:57:00 AM,017XX E 73RD ST,2860,PUBLIC PEACE VIOLATION,FALSE POLICE REPORT,VEHICLE NON-COMMERCIAL,true,false,0324,003,8,43,24,1189407,1856967,2004,02/25/2006 12:14:30 AM,41.762566994,-87.581351469,"(41.762566994, -87.581351469)" -3184616,HK190601,02/18/2004 06:00:00 PM,019XX N CICERO AVE,0890,THEFT,FROM BUILDING,DEPARTMENT STORE,true,false,2533,025,31,19,06,1144131,1912403,2004,02/25/2006 12:14:30 AM,41.915657496,-87.7459068,"(41.915657496, -87.7459068)" -3184815,HK189632,02/17/2004 02:15:00 PM,053XX S JUSTINE ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,0932,009,16,61,04A,1166863,1869578,2004,02/25/2006 12:14:30 AM,41.797684265,-87.663618423,"(41.797684265, -87.663618423)" -3207716,HK221658,02/17/2004 09:00:00 AM,031XX W 63RD ST,2830,OTHER OFFENSE,OBSCENE TELEPHONE CALLS,COMMERCIAL / BUSINESS OFFICE,false,false,0823,008,15,66,17,1156418,1862645,2004,02/25/2006 12:14:30 AM,41.778876043,-87.702108767,"(41.778876043, -87.702108767)" -3181799,HK186257,02/16/2004 01:30:00 AM,051XX S HONORE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0932,009,16,61,14,1164933,1870318,2004,02/25/2006 12:14:30 AM,41.799755958,-87.670675126,"(41.799755958, -87.670675126)" -3228395,HK185471,02/16/2004 12:12:59 AM,033XX N CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1634,016,38,15,16,1143753,1921514,2004,02/25/2006 12:14:30 AM,41.940666077,-87.747066685,"(41.940666077, -87.747066685)" -3179843,HK183169,02/14/2004 03:30:00 PM,0000X N HALSTED ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1212,012,27,28,06,1171091,1900261,2004,02/25/2006 12:14:30 AM,41.881789688,-87.647214877,"(41.881789688, -87.647214877)" -3226794,HK181670,02/13/2004 06:30:28 PM,007XX S ST LOUIS AVE,2091,NARCOTICS,FORFEIT PROPERTY,STREET,true,false,1133,011,24,27,26,1153126,1896298,2004,02/25/2006 12:14:30 AM,41.871289975,-87.71328724,"(41.871289975, -87.71328724)" -3176184,HK179735,02/12/2004 06:35:00 PM,015XX W CHICAGO AVE,031A,ROBBERY,ARMED: HANDGUN,BARBERSHOP,false,false,1323,012,1,24,03,1166057,1905476,2004,02/25/2006 12:14:30 AM,41.896208989,-87.665550503,"(41.896208989, -87.665550503)" -3176060,HK179710,02/12/2004 06:20:00 PM,001XX W RANDOLPH ST,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,false,false,0113,001,42,32,06,1174907,1901229,2004,02/25/2006 12:14:30 AM,41.884361366,-87.633173743,"(41.884361366, -87.633173743)" -3176652,HK178660,02/11/2004 07:00:00 PM,014XX E 47TH DR,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,2123,002,4,39,05,1186238,1874150,2004,02/25/2006 12:14:30 AM,41.809793973,-87.592423474,"(41.809793973, -87.592423474)" -3175596,HK178765,02/11/2004 02:00:00 PM,018XX S HOMAN AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1024,010,24,29,26,1153961,1890476,2004,02/25/2006 12:14:30 AM,41.855297166,-87.710376724,"(41.855297166, -87.710376724)" -3183023,HK188267,02/10/2004 04:00:00 PM,047XX S DREXEL BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2124,002,4,39,05,1182953,1873507,2004,02/25/2006 12:14:30 AM,41.808106614,-87.604492198,"(41.808106614, -87.604492198)" -3217938,HK172970,02/09/2004 08:27:48 AM,001XX W 109TH PL,2094,NARCOTICS,ATTEMPT POSSESSION CANNABIS,STREET,true,false,0513,005,34,49,18,1177126,1832298,2004,02/25/2006 12:14:30 AM,41.695157864,-87.627104636,"(41.695157864, -87.627104636)" -3171404,HK173605,02/07/2004 07:00:00 PM,133XX S BURLEY AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0433,004,10,55,06,1199803,1817281,2004,02/25/2006 12:14:30 AM,41.653409436,-87.544581706,"(41.653409436, -87.544581706)" -3183652,HK168204,02/06/2004 11:45:00 AM,027XX W OGDEN AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,1023,010,28,29,18,1158453,1892996,2004,02/25/2006 12:14:30 AM,41.862121697,-87.693820064,"(41.862121697, -87.693820064)" -3164995,HK165541,02/04/2004 11:00:00 PM,090XX S UNION AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,2223,022,21,71,26,1173191,1844695,2004,02/25/2006 12:14:30 AM,41.729264673,-87.641147005,"(41.729264673, -87.641147005)" -3165220,HK164289,02/04/2004 01:53:30 PM,081XX S HOUSTON AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0422,004,7,46,08A,1197941,1851647,2004,02/25/2006 12:14:30 AM,41.747759569,-87.55025121,"(41.747759569, -87.55025121)" -3164992,HK163825,02/04/2004 12:01:00 AM,052XX N KENMORE AVE,0610,BURGLARY,FORCIBLE ENTRY,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,2023,020,48,77,05,1168337,1935302,2004,02/25/2006 12:14:30 AM,41.978003927,-87.656311442,"(41.978003927, -87.656311442)" -3160217,HK159089,02/01/2004 05:57:00 PM,078XX S SAGINAW AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,true,0421,004,7,43,04B,1195332,1853111,2004,02/25/2006 12:14:30 AM,41.751841658,-87.559762954,"(41.751841658, -87.559762954)" -3160031,HK158648,02/01/2004 01:10:00 PM,026XX W POTOMAC AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,true,false,1423,014,26,24,26,1158385,1908581,2004,06/11/2007 03:52:33 PM,41.904889775,-87.693643233,"(41.904889775, -87.693643233)" -3163032,HK157927,02/01/2004 01:12:54 AM,012XX S CHRISTIANA AVE,0460,BATTERY,SIMPLE,STREET,false,false,1021,010,24,29,08B,1154197,1893866,2004,02/25/2006 12:14:30 AM,41.864595006,-87.709420069,"(41.864595006, -87.709420069)" -3160137,HK158072,02/01/2004 12:15:00 AM,059XX S UNION AVE,0498,BATTERY,AGGRAVATED DOMESTIC BATTERY: HANDS/FIST/FEET SERIOUS INJURY,STREET,true,true,0711,007,20,68,04B,1172603,1865748,2004,02/25/2006 12:14:30 AM,41.787049686,-87.642681833,"(41.787049686, -87.642681833)" -3167303,HK157770,01/31/2004 11:02:48 PM,011XX N LARRABEE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1823,018,27,8,26,1172160,1908064,2004,02/25/2006 12:14:30 AM,41.903178073,-87.643059058,"(41.903178073, -87.643059058)" -3159489,HK157499,01/31/2004 08:17:07 PM,051XX S PULASKI RD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0822,008,23,62,06,1150609,1870257,2004,02/25/2006 12:14:30 AM,41.799879577,-87.72320725,"(41.799879577, -87.72320725)" -3157915,HK154767,01/30/2004 03:08:43 PM,031XX N BROADWAY,1310,CRIMINAL DAMAGE,TO PROPERTY,GROCERY FOOD STORE,false,false,2332,019,44,6,14,1171755,1920630,2004,02/25/2006 12:14:30 AM,41.937668709,-87.64417576,"(41.937668709, -87.64417576)" -3158414,HK154713,01/30/2004 02:30:00 PM,028XX W 45TH ST,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0912,009,14,58,03,1157915,1874722,2004,02/25/2006 12:14:30 AM,41.811986695,-87.696292495,"(41.811986695, -87.696292495)" -3157233,HK149887,01/28/2004 09:05:00 PM,018XX S KOMENSKY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1012,010,24,29,08B,1149718,1890681,2004,02/25/2006 12:14:30 AM,41.855943129,-87.725945287,"(41.855943129, -87.725945287)" -3153466,HK150018,01/27/2004 08:00:00 PM,090XX S BISHOP ST,0810,THEFT,OVER $500,STREET,false,false,2222,022,21,73,06,1168218,1844583,2004,12/04/2014 12:43:35 PM,41.729065625,-87.659367598,"(41.729065625, -87.659367598)" -3161007,HK145958,01/25/2004 08:12:27 PM,007XX W DIVISION ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,STREET,true,false,1822,018,27,8,26,1171193,1908272,2004,02/25/2006 12:14:30 AM,41.903770133,-87.646604902,"(41.903770133, -87.646604902)" -3189633,HK198176,01/25/2004 02:00:00 PM,012XX N CLARK ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,CONVENIENCE STORE,false,false,1821,018,42,8,11,1175279,1908359,2004,02/25/2006 12:14:30 AM,41.903918127,-87.631593588,"(41.903918127, -87.631593588)" -3149083,HK144701,01/24/2004 11:45:00 PM,023XX N CLARK ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1812,018,43,7,06,1172847,1916039,2004,02/25/2006 12:14:30 AM,41.925046662,-87.640298882,"(41.925046662, -87.640298882)" -3196203,HK142844,01/24/2004 08:10:00 AM,044XX S FEDERAL ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,0221,002,3,38,18,1176474,1875514,2004,02/25/2006 12:14:30 AM,41.813762321,-87.628194958,"(41.813762321, -87.628194958)" -3194573,HK142325,01/23/2004 09:15:00 PM,027XX W 24TH PL,2022,NARCOTICS,POSS: COCAINE,SIDEWALK,true,false,1034,010,12,30,18,1158475,1887662,2004,02/25/2006 12:14:30 AM,41.847484182,-87.693885122,"(41.847484182, -87.693885122)" -3148540,HK141411,01/23/2004 01:19:14 PM,003XX N CENTRAL AVE,0560,ASSAULT,SIMPLE,HOTEL/MOTEL,true,false,1512,015,29,25,08A,1138946,1901599,2004,02/25/2006 12:14:30 AM,41.88610589,-87.765219199,"(41.88610589, -87.765219199)" -3151752,HK141077,01/23/2004 11:04:20 AM,051XX W HARRISON ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1533,015,24,25,08A,1142226,1896793,2004,02/25/2006 12:14:30 AM,41.872857405,-87.753293415,"(41.872857405, -87.753293415)" -3146671,HK140331,01/22/2004 08:33:00 PM,060XX W IRVING PARK RD,0460,BATTERY,SIMPLE,STREET,true,false,1624,016,38,15,08B,1135310,1926004,2004,02/25/2006 12:14:30 AM,41.953141365,-87.77799127,"(41.953141365, -87.77799127)" -3157654,HK139307,01/22/2004 11:30:00 AM,062XX S CALUMET AVE,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0311,003,20,40,14,1179606,1863772,2004,02/25/2006 12:14:30 AM,41.781470114,-87.617065534,"(41.781470114, -87.617065534)" -3145208,HK139069,01/21/2004 10:00:00 PM,026XX N HAMPDEN CT,0810,THEFT,OVER $500,STREET,false,false,2333,019,43,7,06,1172703,1917559,2004,12/04/2014 12:43:35 PM,41.929220799,-87.640782888,"(41.929220799, -87.640782888)" -3192322,HK138648,01/21/2004 09:46:27 PM,079XX S WESTERN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0835,008,18,70,18,1161714,1852078,2004,02/25/2006 12:14:30 AM,41.749770353,-87.682985974,"(41.749770353, -87.682985974)" -3143725,HK136387,01/20/2004 06:25:00 PM,048XX N ELSTON AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,1712,017,39,14,06,1145056,1931887,2004,12/04/2014 12:43:35 PM,41.969105903,-87.742014585,"(41.969105903, -87.742014585)" -3142754,HK134781,01/19/2004 07:00:00 AM,037XX W GEORGE ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2523,025,30,21,05,1150640,1918976,2004,02/25/2006 12:14:30 AM,41.933569558,-87.721820842,"(41.933569558, -87.721820842)" -3438281,HK505708,01/19/2004 12:01:00 AM,050XX N OTTAWA AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1613,016,41,10,06,1124207,1932755,2004,02/25/2006 12:14:30 AM,41.97185706,-87.818658523,"(41.97185706, -87.818658523)" -3140432,HK131856,01/18/2004 03:18:37 AM,134XX S INDIANA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0533,005,9,54,08B,1179913,1816521,2004,02/25/2006 12:14:30 AM,41.651800249,-87.61738055,"(41.651800249, -87.61738055)" -3139904,HK132996,01/17/2004 10:00:00 PM,031XX S LAWNDALE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1031,010,22,30,06,1152170,1883274,2004,12/04/2014 12:43:35 PM,41.835569458,-87.71714023,"(41.835569458, -87.71714023)" -3142676,HK130199,01/17/2004 09:15:56 AM,023XX S DR MARTIN LUTHER KING JR DR,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0133,001,2,33,26,1178918,1889132,2004,02/25/2006 12:14:30 AM,41.851075753,-87.618814775,"(41.851075753, -87.618814775)" -3138665,HK127915,01/16/2004 12:42:58 AM,003XX W 116TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0522,005,34,53,08B,1175955,1828041,2004,02/25/2006 12:14:30 AM,41.683502281,-87.631519004,"(41.683502281, -87.631519004)" -3131294,HK121598,01/12/2004 09:58:00 AM,026XX N WHIPPLE ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,1411,014,35,22,05,1155540,1917767,2004,02/25/2006 12:14:30 AM,41.930154654,-87.703846136,"(41.930154654, -87.703846136)" -3129204,HK120151,01/12/2004 04:30:00 AM,059XX S EMERALD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0711,007,20,68,26,1172358,1865275,2004,02/25/2006 12:14:30 AM,41.785757118,-87.643594047,"(41.785757118, -87.643594047)" -3168491,HK120074,01/12/2004 01:20:00 AM,052XX S HONORE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0932,009,16,61,18,1164938,1870137,2004,02/25/2006 12:14:30 AM,41.799259167,-87.670661907,"(41.799259167, -87.670661907)" -3149794,HK145096,01/10/2004 03:00:00 PM,031XX W MONTROSE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,OTHER,false,false,1724,017,33,14,26,1154711,1929112,2004,02/25/2006 12:14:30 AM,41.961302788,-87.706587676,"(41.961302788, -87.706587676)" -3127683,HK116163,01/09/2004 08:45:00 PM,079XX S LANGLEY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,0624,006,6,44,26,1182227,1852684,2004,02/25/2006 12:14:30 AM,41.750983222,-87.607799338,"(41.750983222, -87.607799338)" -3126820,HK115829,01/09/2004 05:10:00 PM,073XX S SOUTH SHORE DR,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0334,003,7,43,26,1195030,1857536,2004,02/25/2006 12:14:30 AM,41.763991633,-87.560723992,"(41.763991633, -87.560723992)" -3126480,HK114352,01/08/2004 11:45:00 PM,130XX S DREXEL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,0533,005,9,54,08B,1184514,1818772,2004,02/25/2006 12:14:30 AM,41.657871236,-87.600476266,"(41.657871236, -87.600476266)" -3126210,HK114343,01/08/2004 11:15:00 PM,047XX W NORTH AVE,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,2533,025,37,25,06,1144212,1910247,2004,12/04/2014 12:43:35 PM,41.909739682,-87.745663482,"(41.909739682, -87.745663482)" -3127474,HK113817,01/08/2004 08:33:00 AM,022XX E 69TH ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0331,003,5,43,05,1192189,1859608,2004,02/25/2006 12:14:30 AM,41.769746912,-87.571069417,"(41.769746912, -87.571069417)" -3124277,HK112300,01/07/2004 09:16:46 PM,015XX E 62ND ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0314,003,5,42,14,1187696,1864402,2004,02/25/2006 12:14:30 AM,41.783010134,-87.587386093,"(41.783010134, -87.587386093)" -3123828,HK112200,01/07/2004 08:00:00 PM,062XX N WINTHROP AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,2433,024,48,77,14,1167762,1941706,2004,02/25/2006 12:14:30 AM,41.995589106,-87.658240357,"(41.995589106, -87.658240357)" -3124173,HK112101,01/07/2004 06:30:00 PM,017XX N MOZART ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1421,014,1,24,08B,1157192,1911471,2004,02/25/2006 12:14:30 AM,41.912844504,-87.697946855,"(41.912844504, -87.697946855)" -3803237,HL111553,01/07/2004 02:10:00 PM,016XX E 69TH ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,true,false,0332,003,5,43,18,1188393,1859601,2004,02/25/2006 12:14:30 AM,41.769819181,-87.584983883,"(41.769819181, -87.584983883)" -3122382,HK110888,01/06/2004 04:00:00 PM,044XX S FAIRFIELD AVE,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PUBLIC, BUILDING",false,false,0912,009,12,58,05,1158734,1875141,2004,02/25/2006 12:14:30 AM,41.813119784,-87.693276959,"(41.813119784, -87.693276959)" -3121857,HK108998,01/05/2004 09:40:00 PM,100XX W OHARE ST,0460,BATTERY,SIMPLE,RESTAURANT,false,false,1651,016,41,76,08B,1100629,1934213,2004,02/25/2006 12:14:30 AM,41.976213976,-87.905334384,"(41.976213976, -87.905334384)" -3117967,HK106689,01/04/2004 10:00:00 AM,018XX N PAULINA ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,1433,014,32,22,26,1164762,1912384,2004,02/25/2006 12:14:30 AM,41.915192581,-87.670110606,"(41.915192581, -87.670110606)" -3117956,HK106632,01/04/2004 09:00:00 AM,054XX S MAY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0934,009,16,61,26,1169617,1868715,2004,02/25/2006 12:14:30 AM,41.795256774,-87.65354411,"(41.795256774, -87.65354411)" -3157710,HK154877,01/03/2004 12:00:00 PM,068XX W ARCHER AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,COMMERCIAL / BUSINESS OFFICE,false,false,0811,008,23,56,26,1131658,1867267,2004,02/25/2006 12:14:30 AM,41.792022571,-87.792776327,"(41.792022571, -87.792776327)" -3117075,HK104427,01/03/2004 02:00:00 AM,013XX W OHIO ST,0880,THEFT,PURSE-SNATCHING,OTHER,false,false,1324,012,27,24,06,1167578,1904182,2004,02/25/2006 12:14:30 AM,41.892625542,-87.660001491,"(41.892625542, -87.660001491)" -3121008,HK101714,01/01/2004 09:15:30 PM,0000X N HAMLIN BLVD,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,false,false,1122,011,28,26,03,1151026,1899791,2004,02/25/2006 12:14:30 AM,41.88091652,-87.720905679,"(41.88091652, -87.720905679)" -4210993,HL539831,01/01/2004 12:00:00 PM,007XX W BRIAR PL,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,2332,019,44,6,06,1170623,1921101,2004,02/25/2006 12:14:30 AM,41.938986048,-87.648322203,"(41.938986048, -87.648322203)" -3114467,HK100746,01/01/2004 10:00:00 AM,012XX S LAFLIN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,1231,012,2,28,14,1166525,1894570,2004,02/25/2006 12:14:30 AM,41.86627207,-87.66414397,"(41.86627207, -87.66414397)" -6011605,HP115597,01/01/2004 12:00:00 AM,028XX S UNION AVE,0266,CRIM SEXUAL ASSAULT,PREDATORY,RESIDENCE,false,true,0914,,11,60,02,,,2004,08/26/2013 12:39:43 AM,,, -7128645,HR475388,01/01/2004 12:00:00 AM,079XX S SANGAMON ST,1751,OFFENSE INVOLVING CHILDREN,CRIM SEX ABUSE BY FAM MEMBER,RESIDENCE,false,false,0621,,17,71,20,,,2004,12/05/2009 01:04:41 AM,,, -3113221,HJ848031,12/31/2003 04:00:00 PM,068XX S CARPENTER ST,0560,ASSAULT,SIMPLE,STREET,false,false,0724,007,17,68,08A,1170449,1859609,2003,03/22/2006 09:58:07 PM,41.770250747,-87.650758229,"(41.770250747, -87.650758229)" -3108632,HJ842520,12/28/2003 05:45:00 PM,019XX W MADISON ST,1330,CRIMINAL TRESPASS,TO LAND,SPORTS ARENA/STADIUM,true,false,1211,012,27,28,26,1163736,1900003,2003,03/22/2006 09:58:07 PM,41.881239897,-87.674229461,"(41.881239897, -87.674229461)" -3122309,HJ841770,12/28/2003 09:15:00 AM,036XX S FEDERAL ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0211,002,3,35,26,1176248,1880524,2003,03/22/2006 09:58:07 PM,41.827515281,-87.628873268,"(41.827515281, -87.628873268)" -3144204,HJ839541,12/26/2003 10:25:00 PM,008XX N PINE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1524,015,37,25,18,1139398,1905308,2003,03/22/2006 09:58:07 PM,41.896275624,-87.76346887,"(41.896275624, -87.76346887)" -3109598,HJ843146,12/26/2003 09:00:00 PM,053XX N WASHTENAW AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2011,020,40,4,26,1157338,1935664,2003,03/22/2006 09:58:07 PM,41.979228691,-87.696750388,"(41.979228691, -87.696750388)" -3151329,HK147281,12/25/2003 12:00:00 AM,077XX S ABERDEEN ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0612,006,17,71,26,1170279,1853704,2003,03/22/2006 09:58:07 PM,41.754050374,-87.651552935,"(41.754050374, -87.651552935)" -3104084,HJ834909,12/23/2003 05:30:00 PM,063XX S INGLESIDE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,true,false,0314,003,20,42,04B,1183779,1862977,2003,03/22/2006 09:58:07 PM,41.779192158,-87.601791321,"(41.779192158, -87.601791321)" -3158399,HJ834406,12/23/2003 03:00:00 PM,013XX W 98TH PL,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,2213,022,21,73,18,1169137,1839496,2003,03/22/2006 09:58:07 PM,41.715086342,-87.656147659,"(41.715086342, -87.656147659)" -3103377,HJ834306,12/23/2003 01:28:05 PM,091XX S COMMERCIAL AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,SIDEWALK,false,false,0423,004,10,46,11,1197702,1844538,2003,03/22/2006 09:58:07 PM,41.728257885,-87.551363649,"(41.728257885, -87.551363649)" -3104544,HJ834178,12/23/2003 11:20:00 AM,049XX W NORTH AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,2533,025,37,25,06,1143008,1910138,2003,03/22/2006 09:58:07 PM,41.909463125,-87.750089249,"(41.909463125, -87.750089249)" -3102234,HJ832452,12/22/2003 01:48:00 PM,062XX S KILPATRICK AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,true,false,0813,008,13,64,04A,1146071,1862877,2003,03/22/2006 09:58:07 PM,41.779714849,-87.740036384,"(41.779714849, -87.740036384)" -3100619,HJ829469,12/20/2003 05:30:00 PM,077XX S EMERALD AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0621,006,17,71,05,1172691,1853191,2003,03/22/2006 09:58:07 PM,41.752589845,-87.642728866,"(41.752589845, -87.642728866)" -3099238,HJ829083,12/20/2003 03:48:00 PM,023XX W MADISON ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1332,012,2,28,06,1160622,1899995,2003,12/04/2014 12:43:35 PM,41.881283001,-87.685664122,"(41.881283001, -87.685664122)" -3099873,HJ830525,12/20/2003 02:00:00 PM,051XX S DORCHESTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2124,002,4,41,07,1186376,1871459,2003,03/22/2006 09:58:07 PM,41.802406412,-87.592002453,"(41.802406412, -87.592002453)" -3099453,HJ828897,12/20/2003 01:13:00 PM,021XX W HOWARD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,true,2424,024,49,1,08B,1160601,1950317,2003,03/22/2006 09:58:07 PM,42.019369828,-87.684342026,"(42.019369828, -87.684342026)" -3099903,HJ829793,12/19/2003 07:00:00 PM,046XX W WRIGHTWOOD AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2521,025,31,19,05,1144841,1917156,2003,03/22/2006 09:58:07 PM,41.928686828,-87.743178112,"(41.928686828, -87.743178112)" -3100798,HJ827025,12/19/2003 11:14:59 AM,004XX S JEFFERSON ST,0261,CRIM SEXUAL ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE,false,false,0131,001,2,28,02,1172435,1898247,2003,06/02/2010 10:34:17 AM,41.876233548,-87.64233932,"(41.876233548, -87.64233932)" -3096748,HJ825628,12/18/2003 09:00:00 AM,018XX W CUYLER AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,1923,019,47,5,05,1163155,1926890,2003,03/22/2006 09:58:07 PM,41.95503184,-87.675605674,"(41.95503184, -87.675605674)" -3095952,HJ824093,12/17/2003 11:30:00 PM,100XX S EMERALD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2232,022,34,73,14,1173033,1838503,2003,03/22/2006 09:58:07 PM,41.712276432,-87.641907974,"(41.712276432, -87.641907974)" -3110664,HJ823083,12/17/2003 02:30:00 PM,002XX N PINE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,"SCHOOL, PUBLIC, BUILDING",true,false,1523,015,28,25,14,1139494,1901281,2003,03/22/2006 09:58:07 PM,41.885223285,-87.763214548,"(41.885223285, -87.763214548)" -3097328,HJ821897,12/16/2003 08:31:38 PM,073XX S KIMBARK AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0324,003,5,43,08B,1186191,1856473,2003,03/22/2006 09:58:07 PM,41.761287956,-87.59315401,"(41.761287956, -87.59315401)" -3094135,HJ821312,12/16/2003 03:12:00 PM,083XX S COMMERCIAL AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0423,004,10,46,08B,1197504,1850185,2003,03/22/2006 09:58:07 PM,41.743758634,-87.551901126,"(41.743758634, -87.551901126)" -3113019,HJ816289,12/13/2003 07:30:00 PM,121XX S WALLACE ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,true,0523,005,34,53,06,1174537,1824458,2003,03/22/2006 09:58:07 PM,41.67370154,-87.63681583,"(41.67370154, -87.63681583)" -3089756,HJ815796,12/12/2003 11:00:00 PM,009XX W FULTON MARKET,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,BAR OR TAVERN,false,false,1212,012,27,28,26,1169755,1902014,2003,03/22/2006 09:58:07 PM,41.886629247,-87.652069506,"(41.886629247, -87.652069506)" -3089126,HJ814458,12/12/2003 09:29:00 PM,046XX S DREXEL BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2123,002,4,39,08B,1183141,1874431,2003,03/22/2006 09:58:07 PM,41.810637764,-87.6037739,"(41.810637764, -87.6037739)" -3089439,HJ816412,12/12/2003 04:00:00 PM,054XX S INGLESIDE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,2131,002,4,41,14,1183491,1869617,2003,03/22/2006 09:58:07 PM,41.797419609,-87.602640262,"(41.797419609, -87.602640262)" -3098643,HJ826089,12/11/2003 11:00:00 PM,049XX N WHIPPLE ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1713,017,33,14,05,1155099,1932943,2003,03/22/2006 09:58:07 PM,41.971807482,-87.70505789,"(41.971807482, -87.70505789)" -3090487,HJ812565,12/11/2003 09:00:00 PM,061XX S WESTERN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,false,false,0825,008,15,66,06,1161473,1863548,2003,03/22/2006 09:58:07 PM,41.78125068,-87.68355159,"(41.78125068, -87.68355159)" -3099614,HJ830227,12/11/2003 04:40:00 PM,010XX N LAKE SHORE DR,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1824,018,42,8,06,1177294,1907219,2003,03/22/2006 09:58:07 PM,41.900744446,-87.624226699,"(41.900744446, -87.624226699)" -3085851,HJ810579,12/10/2003 07:30:00 PM,024XX W BALMORAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2011,020,40,4,08B,1159316,1935745,2003,03/22/2006 09:58:07 PM,41.979410391,-87.689473903,"(41.979410391, -87.689473903)" -3086439,HJ811429,12/10/2003 06:20:00 PM,023XX N WESTERN AVE,0560,ASSAULT,SIMPLE,GAS STATION,false,false,1432,014,32,22,08A,1160008,1915715,2003,03/22/2006 09:58:07 PM,41.924432637,-87.687484121,"(41.924432637, -87.687484121)" -3086749,HJ808614,12/09/2003 09:15:00 PM,055XX W GRAND AVE,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,POLICE FACILITY/VEH PARKING LOT,false,false,2515,025,29,19,14,1138772,1913442,2003,03/22/2006 09:58:07 PM,41.918607665,-87.765570341,"(41.918607665, -87.765570341)" -3084888,HJ807700,12/09/2003 01:20:00 PM,132XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,true,0533,005,9,54,08B,1183295,1817732,2003,03/22/2006 09:58:07 PM,41.655045673,-87.60496895,"(41.655045673, -87.60496895)" -3079620,HJ804904,12/07/2003 07:30:00 PM,054XX S LAFLIN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0932,009,16,61,14,1167216,1868831,2003,03/22/2006 09:58:07 PM,41.795626855,-87.662345298,"(41.795626855, -87.662345298)" -3089015,HJ801155,12/06/2003 12:36:00 AM,064XX S MARYLAND AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,0312,003,20,42,03,1183046,1862401,2003,03/22/2006 09:58:07 PM,41.777628641,-87.604496439,"(41.777628641, -87.604496439)" -3130346,HK114596,12/05/2003 10:00:00 AM,046XX W JACKSON BLVD,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,1113,011,28,25,08B,1145163,1898318,2003,03/22/2006 09:58:07 PM,41.876987223,-87.742471647,"(41.876987223, -87.742471647)" -3077774,HJ799187,12/05/2003 06:30:00 AM,002XX E 93RD ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0633,006,6,49,04B,1179231,1843400,2003,03/22/2006 09:58:07 PM,41.725575615,-87.619060429,"(41.725575615, -87.619060429)" -3126666,HJ797513,12/04/2003 11:09:00 AM,054XX S HALSTED ST,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0934,009,3,61,16,1171937,1868690,2003,03/22/2006 09:58:07 PM,41.795137512,-87.645037386,"(41.795137512, -87.645037386)" -3072621,HJ794459,12/02/2003 06:54:00 PM,031XX S ASHLAND AVE,0460,BATTERY,SIMPLE,POLICE FACILITY/VEH PARKING LOT,false,false,0922,009,11,59,08B,1166149,1883443,2003,03/22/2006 09:58:07 PM,41.835746581,-87.665841812,"(41.835746581, -87.665841812)" -3073273,HJ794056,12/02/2003 03:05:00 PM,065XX S ASHLAND AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0725,007,15,67,03,1166766,1860952,2003,03/22/2006 09:58:07 PM,41.774015529,-87.664220308,"(41.774015529, -87.664220308)" -3071356,HJ792343,12/01/2003 05:30:00 PM,049XX S COTTAGE GROVE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2124,002,4,39,08B,1182469,1872152,2003,03/22/2006 09:58:07 PM,41.804399635,-87.606309408,"(41.804399635, -87.606309408)" -3088371,HJ813973,12/01/2003 12:00:00 PM,042XX S FAIRFIELD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,0912,009,12,58,26,1158695,1876420,2003,03/22/2006 09:58:07 PM,41.816630318,-87.693385076,"(41.816630318, -87.693385076)" -3073316,HJ790496,11/30/2003 05:00:00 PM,038XX W CHICAGO AVE,0460,BATTERY,SIMPLE,STREET,false,false,1112,011,27,23,08B,1150906,1905112,2003,03/22/2006 09:58:07 PM,41.895520252,-87.721206936,"(41.895520252, -87.721206936)" -3069547,HJ789940,11/27/2003 10:45:00 AM,013XX N HUDSON AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1821,018,27,8,06,1173105,1909581,2003,03/22/2006 09:58:07 PM,41.907319881,-87.639542844,"(41.907319881, -87.639542844)" -3064361,HJ784066,11/26/2003 09:54:41 PM,021XX E 75TH ST,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,0414,004,8,43,26,1191894,1855620,2003,03/22/2006 09:58:07 PM,41.758810695,-87.572280075,"(41.758810695, -87.572280075)" -3059529,HJ778359,11/24/2003 05:26:00 AM,010XX W 35TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,0924,009,11,60,05,1170212,1881670,2003,03/22/2006 09:58:07 PM,41.830793697,-87.650985027,"(41.830793697, -87.650985027)" -3059470,HJ778304,11/24/2003 03:15:10 AM,012XX W HASTINGS ST,0460,BATTERY,SIMPLE,CHA APARTMENT,true,false,1231,012,2,28,08B,1168170,1893828,2003,03/22/2006 09:58:07 PM,41.864200615,-87.65812648,"(41.864200615, -87.65812648)" -3066213,HJ778021,11/23/2003 07:30:00 PM,021XX W 52ND PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0915,009,16,61,08B,1162888,1869697,2003,03/22/2006 09:58:07 PM,41.798094873,-87.678192083,"(41.798094873, -87.678192083)" -3058924,HJ777029,11/23/2003 03:30:00 AM,059XX S SACRAMENTO AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0824,008,16,66,07,1157433,1865273,2003,03/22/2006 09:58:07 PM,41.786067147,-87.698316511,"(41.786067147, -87.698316511)" -3058947,HJ777147,11/22/2003 07:00:00 PM,045XX N KILDARE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1722,017,45,16,14,1146744,1929673,2003,03/22/2006 09:58:07 PM,41.962998383,-87.735864534,"(41.962998383, -87.735864534)" -3058879,HJ777022,11/22/2003 03:00:00 PM,020XX W FLETCHER ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1913,019,32,5,05,1162258,1920873,2003,03/22/2006 09:58:07 PM,41.938539708,-87.679072047,"(41.938539708, -87.679072047)" -3057068,HJ774115,11/21/2003 09:55:00 PM,048XX W NORTH AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2533,025,37,25,06,1143880,1910159,2003,03/22/2006 09:58:07 PM,41.909504436,-87.746885335,"(41.909504436, -87.746885335)" -3056851,HJ774667,11/21/2003 09:00:00 PM,108XX S VERNON AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0513,005,9,49,06,1181217,1832846,2003,12/04/2014 12:43:35 PM,41.696568627,-87.61210949,"(41.696568627, -87.61210949)" -3056778,HJ774015,11/21/2003 08:33:00 PM,008XX W HUTCHINSON ST,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,2322,019,46,3,03,1169857,1928451,2003,03/22/2006 09:58:07 PM,41.959171487,-87.650922352,"(41.959171487, -87.650922352)" -3057084,HJ773746,11/21/2003 05:00:00 PM,027XX N ST LOUIS AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1412,014,35,22,03,1152546,1917734,2003,03/22/2006 09:58:07 PM,41.930123891,-87.714849274,"(41.930123891, -87.714849274)" -3055168,HJ772307,11/20/2003 12:00:00 PM,068XX S DR MARTIN LUTHER KING JR DR,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0322,003,20,69,26,1180144,1859530,2003,03/22/2006 09:58:07 PM,41.769817328,-87.615222985,"(41.769817328, -87.615222985)" -3056151,HJ770510,11/20/2003 09:35:41 AM,081XX S MARYLAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0631,006,8,44,08B,1183290,1850809,2003,03/22/2006 09:58:07 PM,41.745813359,-87.603962267,"(41.745813359, -87.603962267)" -3056154,HJ770174,11/20/2003 02:00:00 AM,006XX W DIVISION ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,1822,018,27,8,08B,1171458,1908280,2003,03/22/2006 09:58:07 PM,41.90378626,-87.645631266,"(41.90378626, -87.645631266)" -3054179,HJ770558,11/19/2003 11:25:00 PM,065XX S DREXEL AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0321,003,20,42,14,1183317,1861534,2003,03/22/2006 09:58:07 PM,41.775243205,-87.603529935,"(41.775243205, -87.603529935)" -3114765,HJ766109,11/18/2003 11:50:00 PM,071XX S YATES BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0334,003,7,43,18,1193492,1857923,2003,03/22/2006 09:58:07 PM,41.765091359,-87.56634836,"(41.765091359, -87.56634836)" -3053664,HJ766869,11/18/2003 02:00:00 PM,046XX N CLARK ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,1922,019,47,3,26,1165499,1930635,2003,06/11/2007 03:52:33 PM,41.965258587,-87.66688166,"(41.965258587, -87.66688166)" -3051021,HJ766771,11/18/2003 07:30:00 AM,054XX N EAST RIVER RD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1614,016,41,76,26,1116672,1934794,2003,03/22/2006 09:58:07 PM,41.977573197,-87.846323947,"(41.977573197, -87.846323947)" -3069375,HJ791370,11/17/2003 08:00:00 PM,004XX E 42ND ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0213,002,3,38,26,1179688,1877285,2003,03/22/2006 09:58:07 PM,41.818549115,-87.616351671,"(41.818549115, -87.616351671)" -3057049,HJ773062,11/16/2003 09:00:00 PM,014XX W ARTHUR AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,2432,024,40,1,07,1165244,1943313,2003,03/22/2006 09:58:07 PM,42.000052851,-87.667456846,"(42.000052851, -87.667456846)" -3048817,HJ763326,11/16/2003 03:38:39 PM,077XX S MARSHFIELD AVE,2900,WEAPONS VIOLATION,UNLAWFUL USE/SALE AIR RIFLE,SIDEWALK,true,false,0611,006,17,71,15,1166724,1853493,2003,06/11/2007 03:52:33 PM,41.753547929,-87.664586853,"(41.753547929, -87.664586853)" -3047258,HJ761947,11/15/2003 10:15:00 PM,062XX N WINTHROP AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,SIDEWALK,true,false,2433,024,48,77,08B,1167691,1941391,2003,03/22/2006 09:58:07 PM,41.994726276,-87.658510661,"(41.994726276, -87.658510661)" -3045959,HJ760282,11/15/2003 04:30:00 AM,060XX N WINTHROP AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,2433,024,48,77,14,1167810,1940135,2003,03/22/2006 09:58:07 PM,41.991277212,-87.658109356,"(41.991277212, -87.658109356)" -3112358,HJ759713,11/14/2003 08:30:00 PM,109XX S AVENUE H,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,STREET,true,false,0432,004,10,52,18,1202820,1832751,2003,03/22/2006 09:58:07 PM,41.695784322,-87.533017202,"(41.695784322, -87.533017202)" -3044910,HJ757320,11/13/2003 06:10:00 PM,036XX W DOUGLAS BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,ALLEY,false,true,1011,010,24,29,14,1152195,1893249,2003,03/22/2006 09:58:07 PM,41.862941578,-87.71678571,"(41.862941578, -87.71678571)" -3042492,HJ756266,11/12/2003 06:00:00 PM,042XX N SAWYER AVE,0810,THEFT,OVER $500,STREET,false,false,1724,017,33,16,06,1154001,1927960,2003,12/04/2014 12:43:35 PM,41.958155847,-87.709228879,"(41.958155847, -87.709228879)" -3056172,HJ752437,11/11/2003 11:45:00 AM,034XX W CONGRESS PKWY,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,true,false,1133,011,28,27,26,1153235,1897513,2003,03/22/2006 09:58:07 PM,41.874621905,-87.712854812,"(41.874621905, -87.712854812)" -3040996,HJ751828,11/10/2003 08:45:00 PM,015XX W 79TH ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0612,006,17,71,06,1167703,1852390,2003,12/04/2014 12:43:35 PM,41.750500206,-87.661030752,"(41.750500206, -87.661030752)" -3045446,HJ749375,11/09/2003 10:00:00 PM,028XX W WILCOX ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1124,011,2,27,18,1157192,1899262,2003,03/22/2006 09:58:07 PM,41.879341919,-87.698278851,"(41.879341919, -87.698278851)" From 03cbb6a3a2e1cfe25f42df1b44dabb4db6cccfdd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:33:12 -0700 Subject: [PATCH 059/248] Delete part-00006-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 971 ------------------ 1 file changed, 971 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00006-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00006-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00006-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index b9b3b6c8..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00006-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,971 +0,0 @@ -3036924,HJ743735,11/06/2003 09:00:00 PM,021XX N MENARD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,2515,025,29,19,14,1137341,1913578,2003,03/22/2006 09:58:07 PM,41.919006741,-87.770824767,"(41.919006741, -87.770824767)" -3033313,HJ743098,11/06/2003 04:16:00 PM,072XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,CTA BUS,false,false,0735,007,17,67,06,1166889,1856966,2003,12/04/2014 12:43:35 PM,41.763074794,-87.663883144,"(41.763074794, -87.663883144)" -3038481,HJ751044,11/06/2003 12:00:00 PM,064XX S CICERO AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0813,008,13,64,06,1145536,1861346,2003,12/04/2014 12:43:35 PM,41.77552364,-87.742036389,"(41.77552364, -87.742036389)" -3031339,HJ741747,11/05/2003 10:20:00 PM,052XX W ALTGELD ST,1020,ARSON,BY FIRE,VEHICLE NON-COMMERCIAL,false,false,2515,025,31,19,09,1140658,1916082,2003,03/22/2006 09:58:07 PM,41.925817636,-87.7585759,"(41.925817636, -87.7585759)" -3058833,HJ741638,11/05/2003 10:00:16 PM,053XX W CHICAGO AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,false,false,1524,015,37,25,15,1140875,1904780,2003,06/11/2007 03:52:33 PM,41.894799681,-87.758057059,"(41.894799681, -87.758057059)" -3031396,HJ741466,11/05/2003 07:20:00 PM,027XX W FRANCIS PL,051A,ASSAULT,AGGRAVATED: HANDGUN,APARTMENT,true,true,1431,014,1,22,04A,1157995,1913691,2003,03/22/2006 09:58:07 PM,41.918919995,-87.694936112,"(41.918919995, -87.694936112)" -3121280,HJ740219,11/05/2003 12:38:00 PM,001XX N LARAMIE AVE,2094,NARCOTICS,ATTEMPT POSSESSION CANNABIS,STREET,true,false,1532,015,28,25,18,1141716,1900943,2003,03/22/2006 09:58:07 PM,41.884254972,-87.755063227,"(41.884254972, -87.755063227)" -3029145,HJ737645,11/04/2003 05:30:00 AM,061XX S RACINE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,POLICE FACILITY/VEH PARKING LOT,false,false,0713,007,16,67,07,1169331,1864110,2003,03/22/2006 09:58:07 PM,41.782626318,-87.654726162,"(41.782626318, -87.654726162)" -3025222,HJ734928,11/02/2003 09:00:00 PM,059XX W FULTON ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1512,015,29,25,26,1136719,1901439,2003,03/22/2006 09:58:07 PM,41.885706996,-87.773401211,"(41.885706996, -87.773401211)" -3028674,HJ734567,11/02/2003 05:00:00 PM,065XX S LOWE AVE,0460,BATTERY,SIMPLE,CHA APARTMENT,true,true,0723,007,20,68,08B,1173195,1861783,2003,03/22/2006 09:58:07 PM,41.776156212,-87.640628359,"(41.776156212, -87.640628359)" -3024325,HJ733593,11/01/2003 09:00:00 PM,051XX N OAKLEY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2031,020,47,4,07,1160117,1934304,2003,03/22/2006 09:58:07 PM,41.975439664,-87.68656817,"(41.975439664, -87.68656817)" -3034175,HJ732932,11/01/2003 08:25:00 PM,011XX W LAWRENCE AVE,2025,NARCOTICS,POSS: HALLUCINOGENS,OTHER,true,false,2033,020,46,3,18,1167933,1932075,2003,03/22/2006 09:58:07 PM,41.969157694,-87.657890711,"(41.969157694, -87.657890711)" -3143445,HK137177,11/01/2003 09:00:00 AM,011XX S FRANCISCO AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1135,011,28,29,06,1157154,1895097,2003,03/22/2006 09:58:07 PM,41.867913513,-87.698531485,"(41.867913513, -87.698531485)" -3023609,HJ730948,10/31/2003 09:00:00 PM,119XX S PRINCETON AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0522,005,34,53,04B,1176398,1825491,2003,03/22/2006 09:58:07 PM,41.676494773,-87.629973543,"(41.676494773, -87.629973543)" -3028145,HJ730793,10/31/2003 07:15:00 PM,063XX S ALBANY AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0823,008,15,66,08B,1156841,1862694,2003,03/22/2006 09:58:07 PM,41.779001975,-87.700556679,"(41.779001975, -87.700556679)" -3074956,HJ729537,10/31/2003 11:00:00 AM,023XX S STATE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA APARTMENT,true,false,0134,001,3,33,18,1176650,1888540,2003,03/22/2006 09:58:07 PM,41.849502747,-87.627156603,"(41.849502747, -87.627156603)" -3024003,HJ732588,10/30/2003 11:00:00 PM,010XX N RUSH ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1824,018,42,8,06,1176261,1907708,2003,03/22/2006 09:58:07 PM,41.902109652,-87.628006162,"(41.902109652, -87.628006162)" -3019778,HJ727115,10/30/2003 08:25:00 AM,026XX W 63RD ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,GROCERY FOOD STORE,false,false,0825,008,15,66,04A,1159823,1862738,2003,03/22/2006 09:58:07 PM,41.779061982,-87.689623116,"(41.779061982, -87.689623116)" -3019820,HJ725960,10/29/2003 02:00:00 PM,009XX E 104TH ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0512,005,9,50,08B,1184181,1836149,2003,03/22/2006 09:58:07 PM,41.705563859,-87.601154398,"(41.705563859, -87.601154398)" -3019339,HJ725462,10/28/2003 03:15:00 PM,040XX N GREENVIEW AVE,0460,BATTERY,SIMPLE,STREET,false,false,1923,019,47,6,08B,1165314,1926668,2003,03/22/2006 09:58:07 PM,41.954376919,-87.667675164,"(41.954376919, -87.667675164)" -3017115,HJ723892,10/28/2003 07:30:00 AM,074XX N ROGERS AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2422,024,49,1,05,1163370,1949260,2003,03/22/2006 09:58:07 PM,42.016411337,-87.674182398,"(42.016411337, -87.674182398)" -3015098,HJ722453,10/28/2003 12:51:29 AM,096XX S MERRION AVE,0271,CRIM SEXUAL ASSAULT,ATTEMPT AGG: HANDGUN,RESIDENCE,true,false,0431,004,7,51,02,1192729,1841233,2003,03/22/2006 09:58:07 PM,41.719311174,-87.569687782,"(41.719311174, -87.569687782)" -3015360,HJ722677,10/27/2003 10:00:00 PM,003XX W 24TH ST,0810,THEFT,OVER $500,STREET,false,false,2111,009,25,34,06,1174090,1888411,2003,12/04/2014 12:43:35 PM,41.849206145,-87.636555884,"(41.849206145, -87.636555884)" -3022322,HJ725031,10/27/2003 03:15:00 PM,068XX S CREGIER AVE,1792,KIDNAPPING,CHILD ABDUCTION/STRANGER,STREET,false,false,0332,003,5,43,20,1189333,1860240,2003,03/22/2006 09:58:07 PM,41.771550153,-87.581517832,"(41.771550153, -87.581517832)" -3013422,HJ720554,10/26/2003 02:00:00 PM,017XX W BELMONT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,1924,019,32,6,14,1164309,1921336,2003,03/22/2006 09:58:07 PM,41.939767004,-87.671521025,"(41.939767004, -87.671521025)" -3013082,HJ718791,10/26/2003 05:40:48 AM,028XX S SPAULDING AVE,0820,THEFT,$500 AND UNDER,APARTMENT,false,true,1032,010,22,30,06,1154877,1884553,2003,12/04/2014 12:43:35 PM,41.839025473,-87.707173078,"(41.839025473, -87.707173078)" -3011269,HJ717524,10/25/2003 02:30:00 PM,031XX W 26TH ST,0810,THEFT,OVER $500,STREET,false,false,1033,010,12,30,06,1156116,1886536,2003,12/04/2014 12:43:35 PM,41.844442183,-87.702573069,"(41.844442183, -87.702573069)" -3009951,HJ716645,10/25/2003 06:05:00 AM,107XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0513,005,9,50,08B,1182769,1834147,2003,03/22/2006 09:58:07 PM,41.70010294,-87.606386846,"(41.70010294, -87.606386846)" -3013019,HJ720032,10/24/2003 08:00:00 AM,018XX W OHIO ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1324,012,1,24,08A,1163830,1904082,2003,03/22/2006 09:58:07 PM,41.89243102,-87.673769176,"(41.89243102, -87.673769176)" -3040299,HJ712766,10/23/2003 12:50:00 PM,033XX N MENARD AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1633,016,38,15,18,1137077,1921630,2003,03/22/2006 09:58:07 PM,41.941107061,-87.771600925,"(41.941107061, -87.771600925)" -3009929,HJ711930,10/23/2003 12:25:00 AM,071XX S KEDZIE AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,GAS STATION,false,false,0831,008,18,66,04B,1156224,1857359,2003,03/22/2006 09:58:07 PM,41.764374364,-87.702962032,"(41.764374364, -87.702962032)" -3011805,HJ712765,10/22/2003 09:00:00 PM,079XX S MARQUETTE AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0422,004,7,46,26,1195598,1852810,2003,03/22/2006 09:58:07 PM,41.751009124,-87.558798137,"(41.751009124, -87.558798137)" -3005822,HJ710801,10/22/2003 09:00:00 AM,003XX N ORLEANS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1831,018,42,8,07,1173830,1902814,2003,03/22/2006 09:58:07 PM,41.888734745,-87.637081359,"(41.888734745, -87.637081359)" -3003959,HJ709745,10/22/2003 12:00:00 AM,061XX N ST LOUIS AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1711,017,50,13,26,1151892,1940609,2003,03/22/2006 09:58:07 PM,41.992907359,-87.716647602,"(41.992907359, -87.716647602)" -3005866,HJ710139,10/21/2003 02:30:00 PM,011XX W 66TH ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0724,007,17,68,08B,1169683,1861069,2003,03/22/2006 09:58:07 PM,41.774273815,-87.653523766,"(41.774273815, -87.653523766)" -3004936,HJ710098,10/21/2003 07:00:00 AM,035XX W MEDILL AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1413,014,26,22,06,1152075,1915347,2003,12/04/2014 12:43:35 PM,41.923583072,-87.716643179,"(41.923583072, -87.716643179)" -3002590,HJ707543,10/21/2003 12:59:00 AM,064XX S DR MARTIN LUTHER KING JR DR,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,true,false,0312,003,20,69,04A,1179988,1862346,2003,03/22/2006 09:58:07 PM,41.777548289,-87.615708676,"(41.777548289, -87.615708676)" -3014189,HJ717331,10/20/2003 06:00:00 PM,010XX N FRANCISCO AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1311,012,26,24,06,1156820,1906978,2003,12/04/2014 12:43:35 PM,41.900522885,-87.699435477,"(41.900522885, -87.699435477)" -3005658,HJ710499,10/20/2003 08:00:00 AM,001XX W ELM ST,0620,BURGLARY,UNLAWFUL ENTRY,CHA APARTMENT,false,false,1824,018,42,8,05,1175108,1908108,2003,03/22/2006 09:58:07 PM,41.903233207,-87.632229241,"(41.903233207, -87.632229241)" -3004681,HJ702646,10/18/2003 04:45:00 PM,072XX S ROCKWELL ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE PORCH/HALLWAY,false,false,0831,008,18,66,26,1160257,1856403,2003,03/22/2006 09:58:07 PM,41.761668903,-87.688206228,"(41.761668903, -87.688206228)" -2997859,HJ700260,10/17/2003 02:00:00 PM,062XX N ARTESIAN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2413,024,50,2,06,1158802,1941722,2003,12/04/2014 12:43:35 PM,41.995822114,-87.691199376,"(41.995822114, -87.691199376)" -2998123,HJ698853,10/17/2003 08:36:26 AM,083XX S MACKINAW AVE,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0424,004,10,46,08A,1199962,1850229,2003,06/11/2007 03:52:33 PM,41.743817769,-87.542893553,"(41.743817769, -87.542893553)" -2996459,HJ698179,10/16/2003 08:35:00 PM,042XX W LAWRENCE AVE,031A,ROBBERY,ARMED: HANDGUN,RESTAURANT,false,false,1722,017,39,14,03,1147518,1931528,2003,03/22/2006 09:58:07 PM,41.968073796,-87.732971001,"(41.968073796, -87.732971001)" -2995772,HJ698077,10/16/2003 12:00:00 PM,026XX W BELMONT AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,false,false,1411,014,1,21,06,1158147,1921120,2003,03/22/2006 09:58:07 PM,41.939302594,-87.694174176,"(41.939302594, -87.694174176)" -2995156,HJ696114,10/16/2003 02:40:38 AM,052XX S ASHLAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0932,009,16,61,08B,1166529,1869729,2003,03/22/2006 09:58:07 PM,41.798105761,-87.664838947,"(41.798105761, -87.664838947)" -2994355,HJ696323,10/15/2003 07:00:00 PM,061XX N WOLCOTT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2413,024,40,2,14,1162659,1941154,2003,03/22/2006 09:58:07 PM,41.994183262,-87.677027324,"(41.994183262, -87.677027324)" -3230042,HJ693315,10/14/2003 05:48:10 PM,083XX S DR MARTIN LUTHER KING JR DR,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,0632,006,6,44,05,1180313,1850048,2003,06/11/2007 03:52:33 PM,41.743793816,-87.614893767,"(41.743793816, -87.614893767)" -2991728,HJ691257,10/13/2003 07:56:20 PM,074XX S RHODES AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0323,003,6,69,03,1181146,1856066,2003,03/22/2006 09:58:07 PM,41.760288739,-87.611656655,"(41.760288739, -87.611656655)" -2998010,HJ691993,10/13/2003 05:00:00 PM,079XX S ST LAWRENCE AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,0624,006,6,44,06,1181574,1852408,2003,03/22/2006 09:58:07 PM,41.750240934,-87.610200729,"(41.750240934, -87.610200729)" -2990311,HJ691917,10/12/2003 10:00:00 PM,104XX S GREEN BAY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0432,004,10,52,14,1200556,1836057,2003,03/22/2006 09:58:07 PM,41.704913709,-87.541194969,"(41.704913709, -87.541194969)" -2994180,HJ689522,10/12/2003 09:00:00 PM,032XX W EASTWOOD AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1713,017,33,14,08B,1154206,1930628,2003,03/22/2006 09:58:07 PM,41.965472908,-87.708403687,"(41.965472908, -87.708403687)" -2997130,HJ689363,10/12/2003 03:15:00 PM,031XX N ELSTON AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,1411,014,1,21,26,1157452,1920696,2003,03/22/2006 09:58:07 PM,41.938153301,-87.696740071,"(41.938153301, -87.696740071)" -2998815,HJ687209,10/11/2003 07:27:14 PM,050XX W CRYSTAL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2533,025,37,25,08B,1142251,1907885,2003,03/22/2006 09:58:07 PM,41.903294731,-87.752926174,"(41.903294731, -87.752926174)" -2987821,HJ687001,10/11/2003 05:21:00 PM,026XX S KEELER AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,1031,010,22,30,04A,1148777,1885857,2003,03/22/2006 09:58:07 PM,41.84272367,-87.729523757,"(41.84272367, -87.729523757)" -2986905,HJ685583,10/11/2003 12:33:01 AM,052XX S WOOD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0932,009,16,61,14,1165267,1870211,2003,03/22/2006 09:58:07 PM,41.799455265,-87.669453285,"(41.799455265, -87.669453285)" -2986295,HJ685553,10/10/2003 06:30:00 PM,021XX W 83RD ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0614,006,18,71,07,1163673,1849550,2003,03/22/2006 09:58:07 PM,41.742792287,-87.675878115,"(41.742792287, -87.675878115)" -2988700,HJ685045,10/10/2003 04:00:00 PM,024XX N WASHTENAW AVE,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,false,false,1431,014,1,22,26,1158003,1916028,2003,03/22/2006 09:58:07 PM,41.925332735,-87.694842787,"(41.925332735, -87.694842787)" -3030013,HJ736333,10/10/2003 12:00:00 AM,078XX S HERMITAGE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0611,006,17,71,06,1166077,1852876,2003,12/04/2014 12:43:35 PM,41.75186857,-87.666975392,"(41.75186857, -87.666975392)" -2984720,HJ683202,10/09/2003 09:45:00 PM,011XX N MAYFIELD AVE,0550,ASSAULT,AGGRAVATED PO: HANDGUN,VACANT LOT/LAND,true,false,1511,015,29,25,04A,1136850,1907250,2003,03/22/2006 09:58:07 PM,41.901650775,-87.772780731,"(41.901650775, -87.772780731)" -2984657,HJ682215,10/09/2003 09:00:00 AM,007XX W 15TH PL,0810,THEFT,OVER $500,STREET,false,false,1232,012,25,28,06,1171442,1892769,2003,12/04/2014 12:43:35 PM,41.861223393,-87.646146262,"(41.861223393, -87.646146262)" -2984908,HJ680347,10/08/2003 04:52:07 PM,037XX S WELLS ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0925,009,3,34,08B,1175209,1880313,2003,03/22/2006 09:58:07 PM,41.826959594,-87.632691501,"(41.826959594, -87.632691501)" -3010516,HJ677312,10/08/2003 04:49:00 PM,034XX W MONROE ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1123,011,28,27,18,1153735,1899287,2003,03/22/2006 09:58:07 PM,41.879480014,-87.710971788,"(41.879480014, -87.710971788)" -2982128,HJ680336,10/08/2003 04:00:00 PM,076XX S CICERO AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0833,008,13,65,06,1145766,1853744,2003,12/04/2014 12:43:35 PM,41.754658085,-87.741385006,"(41.754658085, -87.741385006)" -2983188,HJ679970,10/08/2003 02:10:00 PM,084XX S VINCENNES AVE,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,0622,006,21,71,26,1173661,1848602,2003,03/22/2006 09:58:07 PM,41.73997562,-87.639309868,"(41.73997562, -87.639309868)" -3050711,HJ765276,10/08/2003 10:00:00 AM,115XX S MAY ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0524,005,34,53,06,1170768,1828330,2003,03/22/2006 09:58:07 PM,41.684409728,-87.650498431,"(41.684409728, -87.650498431)" -2983727,HJ677145,10/07/2003 10:00:00 AM,047XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1113,011,28,25,11,1144325,1901863,2003,03/22/2006 09:58:07 PM,41.886730919,-87.745459408,"(41.886730919, -87.745459408)" -3019413,HJ723148,10/07/2003 06:00:00 AM,035XX W 47TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,"SCHOOL, PUBLIC, GROUNDS",false,false,0821,008,14,58,14,1153485,1872807,2003,03/22/2006 09:58:07 PM,41.806820635,-87.712592498,"(41.806820635, -87.712592498)" -3006475,HJ674300,10/05/2003 10:45:00 PM,060XX W GRAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2512,025,37,19,18,1136034,1914176,2003,03/22/2006 09:58:07 PM,41.920671147,-87.775612621,"(41.920671147, -87.775612621)" -3003608,HJ674142,10/05/2003 09:00:00 PM,097XX S BRENNAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0431,004,7,51,18,1193195,1841004,2003,03/22/2006 09:58:07 PM,41.718671421,-87.567988455,"(41.718671421, -87.567988455)" -2979226,HJ673410,10/05/2003 01:35:32 PM,0000X W 95TH ST,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,PARKING LOT/GARAGE(NON.RESID.),false,false,0634,006,21,49,14,1177568,1842013,2003,03/22/2006 09:58:07 PM,41.72180721,-87.625193832,"(41.72180721, -87.625193832)" -2975976,HJ672194,10/04/2003 08:00:00 PM,016XX E 53RD ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,true,2132,002,5,41,05,1188182,1870409,2003,03/22/2006 09:58:07 PM,41.799482205,-87.585412695,"(41.799482205, -87.585412695)" -3010714,HJ670224,10/04/2003 04:30:00 PM,055XX W CONGRESS PKWY,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1522,015,29,25,18,1139939,1897183,2003,03/22/2006 09:58:07 PM,41.873969719,-87.761680642,"(41.873969719, -87.761680642)" -2973276,HJ667230,10/02/2003 02:00:51 PM,128XX S GREEN ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,true,0523,005,34,53,06,1172974,1819480,2003,03/22/2006 09:58:07 PM,41.660075598,-87.642682573,"(41.660075598, -87.642682573)" -3004478,HJ666001,10/01/2003 08:08:00 PM,076XX S EXCHANGE AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0421,004,7,43,16,1195669,1855067,2003,03/22/2006 09:58:07 PM,41.757200746,-87.558463473,"(41.757200746, -87.558463473)" -2971150,HJ665319,10/01/2003 04:00:05 PM,082XX S SAGINAW AVE,143B,WEAPONS VIOLATION,UNLAWFUL POSS OTHER FIREARM,RESIDENCE,false,false,0423,004,7,46,15,1195231,1850748,2003,03/22/2006 09:58:07 PM,41.745359891,-87.560210871,"(41.745359891, -87.560210871)" -2974369,HJ670183,10/01/2003 01:00:00 PM,023XX W HURON ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1313,012,1,24,06,1160828,1904657,2003,03/22/2006 09:58:07 PM,41.894071662,-87.684778317,"(41.894071662, -87.684778317)" -2971811,HJ665117,10/01/2003 12:45:00 PM,079XX S HERMITAGE AVE,1330,CRIMINAL TRESPASS,TO LAND,SIDEWALK,true,false,0611,006,21,71,26,1166095,1852216,2003,03/22/2006 09:58:07 PM,41.750057054,-87.666928163,"(41.750057054, -87.666928163)" -2974068,HJ665839,10/01/2003 12:04:00 PM,020XX N ORCHARD ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, GROUNDS",false,false,1812,018,43,7,06,1171322,1913569,2003,03/22/2006 09:58:07 PM,41.918302548,-87.645975132,"(41.918302548, -87.645975132)" -3486614,HK554700,10/01/2003 09:00:00 AM,062XX S MARSHFIELD AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,0714,007,15,67,11,1166363,1863592,2003,03/22/2006 09:58:07 PM,41.781268622,-87.665622487,"(41.781268622, -87.665622487)" -3016671,HJ659634,09/28/2003 07:55:00 PM,021XX S KEDZIE AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1022,010,24,30,16,1155396,1889517,2003,03/22/2006 09:58:07 PM,41.852636872,-87.705135339,"(41.852636872, -87.705135339)" -2966103,HJ659720,09/28/2003 06:00:00 PM,002XX S WOOD ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1211,012,2,28,06,1164489,1898665,2003,12/04/2014 12:43:35 PM,41.877552412,-87.671502378,"(41.877552412, -87.671502378)" -2984947,HJ658493,09/28/2003 08:30:00 AM,005XX E BROWNING AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,true,true,0212,002,4,35,08B,1180799,1881383,2003,03/22/2006 09:58:07 PM,41.829768822,-87.612149993,"(41.829768822, -87.612149993)" -2965440,HJ658355,09/28/2003 04:38:00 AM,043XX S CALIFORNIA AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0912,009,12,58,08A,1158466,1875617,2003,03/22/2006 09:58:07 PM,41.814431462,-87.694247015,"(41.814431462, -87.694247015)" -2993438,HJ658073,09/27/2003 11:30:00 PM,012XX N CAMPBELL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1423,014,26,24,18,1159471,1908257,2003,03/22/2006 09:58:07 PM,41.903978401,-87.689662952,"(41.903978401, -87.689662952)" -2965420,HJ657798,09/27/2003 08:30:00 PM,017XX W EDMAIRE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,2234,022,34,75,08B,1166853,1828882,2003,03/22/2006 09:58:07 PM,41.68600877,-87.664814459,"(41.68600877, -87.664814459)" -2975614,HJ657861,09/27/2003 07:15:00 PM,039XX W COLUMBUS AVE,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,SIDEWALK,false,false,0834,008,18,70,07,1151955,1847528,2003,03/22/2006 09:58:07 PM,41.737481219,-87.718866526,"(41.737481219, -87.718866526)" -2966330,HJ660252,09/27/2003 03:00:00 PM,044XX N CLIFTON AVE,0810,THEFT,OVER $500,CTA GARAGE / OTHER PROPERTY,false,false,2311,019,46,3,06,1167946,1929378,2003,12/04/2014 12:43:35 PM,41.961756754,-87.657921084,"(41.961756754, -87.657921084)" -2969386,HJ657265,09/27/2003 02:30:00 PM,055XX S PRAIRIE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,0233,002,20,40,14,1178948,1868168,2003,03/22/2006 09:58:07 PM,41.793548179,-87.619344055,"(41.793548179, -87.619344055)" -2965915,HJ655580,09/27/2003 08:00:00 AM,035XX N WILTON AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2331,019,44,6,05,1169274,1923481,2003,03/22/2006 09:58:07 PM,41.945546341,-87.653210692,"(41.945546341, -87.653210692)" -2965812,HJ657216,09/26/2003 11:30:00 PM,025XX W ALTGELD ST,0810,THEFT,OVER $500,STREET,false,false,1431,014,35,22,06,1159272,1916573,2003,12/04/2014 12:43:35 PM,41.926802229,-87.690164852,"(41.926802229, -87.690164852)" -2968344,HJ655844,09/26/2003 07:35:00 PM,017XX W HOWARD ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,2422,024,49,1,06,1163121,1950306,2003,03/22/2006 09:58:07 PM,42.019286838,-87.675069044,"(42.019286838, -87.675069044)" -2964281,HJ655954,09/26/2003 07:00:00 PM,007XX N PINE AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1524,015,37,25,08B,1139417,1904701,2003,03/22/2006 09:58:07 PM,41.894609596,-87.763413895,"(41.894609596, -87.763413895)" -2964173,HJ655646,09/26/2003 06:21:58 PM,100XX S LAFAYETTE AVE,0880,THEFT,PURSE-SNATCHING,STREET,false,false,0511,005,9,49,06,1177664,1838047,2003,03/22/2006 09:58:07 PM,41.710921807,-87.624961722,"(41.710921807, -87.624961722)" -3020440,HJ727733,09/25/2003 10:00:00 PM,100XX W OHARE ST,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",OTHER,false,false,1651,016,41,76,11,1100629,1934213,2003,03/22/2006 09:58:07 PM,41.976213976,-87.905334384,"(41.976213976, -87.905334384)" -2991475,HJ649656,09/23/2003 10:40:00 PM,034XX W HURON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1121,011,27,23,18,1153252,1904412,2003,03/22/2006 09:58:07 PM,41.893553131,-87.712609178,"(41.893553131, -87.712609178)" -2984007,HJ648497,09/23/2003 05:25:00 PM,016XX W 78TH ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,0611,006,17,71,18,1166616,1853024,2003,03/22/2006 09:58:07 PM,41.75226323,-87.664995986,"(41.75226323, -87.664995986)" -2957803,HJ647319,09/22/2003 09:00:00 PM,007XX S WOOD ST,0460,BATTERY,SIMPLE,STREET,false,false,1224,012,2,28,08B,1164456,1896915,2003,03/22/2006 09:58:07 PM,41.872750962,-87.671673078,"(41.872750962, -87.671673078)" -2961166,HJ646854,09/22/2003 06:43:00 PM,048XX N WINTHROP AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,PARKING LOT/GARAGE(NON.RESID.),true,false,2024,020,46,3,08B,1168044,1932174,2003,03/22/2006 09:58:07 PM,41.969426952,-87.657479696,"(41.969426952, -87.657479696)" -2956646,HJ647819,09/22/2003 03:00:00 PM,049XX W BYRON ST,0560,ASSAULT,SIMPLE,STREET,false,false,1634,016,45,15,08A,1142888,1925509,2003,03/22/2006 09:58:07 PM,41.951644913,-87.750146003,"(41.951644913, -87.750146003)" -2958229,HJ647903,09/22/2003 02:30:00 PM,038XX W LELAND AVE,0460,BATTERY,SIMPLE,STREET,false,false,1723,017,39,14,08B,1150202,1931003,2003,03/22/2006 09:58:07 PM,41.966581127,-87.723115792,"(41.966581127, -87.723115792)" -2956261,HJ646337,09/22/2003 02:10:00 PM,049XX N MARINE DR,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,PARK PROPERTY,false,false,2024,020,48,3,04B,1169933,1933241,2003,03/22/2006 09:58:07 PM,41.972313728,-87.650502603,"(41.972313728, -87.650502603)" -2961473,HJ645668,09/22/2003 09:57:40 AM,024XX N RUTHERFORD AVE,0810,THEFT,OVER $500,STREET,true,false,2512,025,36,18,06,1131040,1915813,2003,12/04/2014 12:43:35 PM,41.925250937,-87.793924125,"(41.925250937, -87.793924125)" -2974280,HJ670349,09/22/2003 09:20:00 AM,083XX S SOUTH CHICAGO AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0412,004,8,45,07,1191382,1849948,2003,03/22/2006 09:58:07 PM,41.743258652,-87.574339865,"(41.743258652, -87.574339865)" -2961928,HJ645077,09/21/2003 11:10:00 PM,069XX S MAPLEWOOD AVE,0460,BATTERY,SIMPLE,STREET,true,false,0832,008,18,66,08B,1160524,1858805,2003,03/22/2006 09:58:07 PM,41.768254843,-87.687161505,"(41.768254843, -87.687161505)" -2956042,HJ646237,09/21/2003 07:00:00 PM,093XX S ELIZABETH ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,2222,022,21,73,06,1169589,1842964,2003,03/22/2006 09:58:07 PM,41.724593285,-87.654392064,"(41.724593285, -87.654392064)" -2956441,HJ644679,09/21/2003 01:30:00 PM,054XX W VAN BUREN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,1522,015,29,25,08B,1140257,1897520,2003,03/22/2006 09:58:07 PM,41.874888673,-87.760504821,"(41.874888673, -87.760504821)" -2957826,HJ644455,09/21/2003 05:30:00 AM,021XX W HUBBARD ST,0460,BATTERY,SIMPLE,WAREHOUSE,false,false,1313,012,26,24,08B,1162316,1903108,2003,03/22/2006 09:58:07 PM,41.889790086,-87.679356731,"(41.889790086, -87.679356731)" -2952401,HJ642620,09/20/2003 04:30:00 PM,014XX E 53RD ST,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,false,false,2132,002,4,41,08B,1187131,1870381,2003,03/22/2006 09:58:07 PM,41.7994304,-87.589267812,"(41.7994304, -87.589267812)" -2969573,HJ663441,09/20/2003 09:00:00 AM,008XX S WELLS ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,COMMERCIAL / BUSINESS OFFICE,false,false,0131,001,2,32,11,1174794,1896769,2003,03/22/2006 09:58:07 PM,41.87212538,-87.633722191,"(41.87212538, -87.633722191)" -2953187,HJ641131,09/19/2003 11:40:00 PM,083XX S BRANDON AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0424,004,10,46,08A,1198978,1849961,2003,03/22/2006 09:58:07 PM,41.743107104,-87.546507903,"(41.743107104, -87.546507903)" -3033465,HJ638420,09/18/2003 06:00:00 PM,085XX S HERMITAGE AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,0614,006,18,71,18,1166127,1847991,2003,03/22/2006 09:58:07 PM,41.738462361,-87.6669308,"(41.738462361, -87.6669308)" -2949876,HJ633280,09/16/2003 12:46:48 PM,002XX N PINE AVE,0484,BATTERY,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,1523,015,28,25,08B,1139494,1901281,2003,03/22/2006 09:58:07 PM,41.885223285,-87.763214548,"(41.885223285, -87.763214548)" -2944484,HJ631651,09/15/2003 04:40:00 PM,035XX N ELSTON AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1733,017,35,21,06,1154312,1923546,2003,03/22/2006 09:58:07 PM,41.946037311,-87.708203891,"(41.946037311, -87.708203891)" -2946268,HJ630802,09/15/2003 09:00:00 AM,0000X E 99TH PL,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,0511,005,9,49,06,1178338,1839052,2003,03/22/2006 09:58:07 PM,41.71366442,-87.622463018,"(41.71366442, -87.622463018)" -2978017,HJ628757,09/14/2003 07:45:00 AM,036XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1122,011,28,27,16,1152271,1899735,2003,03/22/2006 09:58:07 PM,41.88073838,-87.716335577,"(41.88073838, -87.716335577)" -2941703,HJ629085,09/14/2003 04:00:00 AM,043XX W LE MOYNE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2534,025,37,23,07,1146781,1909455,2003,03/22/2006 09:58:07 PM,41.907517665,-87.73624621,"(41.907517665, -87.73624621)" -2972135,HJ625956,09/12/2003 08:07:39 PM,056XX W CHICAGO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1511,015,29,25,18,1138747,1904822,2003,03/22/2006 09:58:07 PM,41.894953821,-87.76587171,"(41.894953821, -87.76587171)" -2946735,HJ634352,09/12/2003 05:00:00 PM,021XX E 69TH ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,APARTMENT,false,false,0331,003,5,43,26,1191938,1859683,2003,03/22/2006 09:58:07 PM,41.769958818,-87.571987022,"(41.769958818, -87.571987022)" -2943361,HJ623863,09/11/2003 09:30:00 PM,032XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,true,1022,010,24,29,08B,1154747,1894483,2003,03/22/2006 09:58:07 PM,41.866277135,-87.707384498,"(41.866277135, -87.707384498)" -2939477,HJ625917,09/11/2003 09:00:00 PM,004XX E ONTARIO ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1834,018,42,8,06,1179087,1904534,2003,03/22/2006 09:58:07 PM,41.893335832,-87.617723243,"(41.893335832, -87.617723243)" -2951577,HJ637705,09/11/2003 08:30:00 PM,046XX W PATTERSON AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,false,1731,017,38,15,08B,1144442,1923809,2003,03/22/2006 09:58:07 PM,41.946950805,-87.74447639,"(41.946950805, -87.74447639)" -2936904,HJ622021,09/11/2003 02:50:00 AM,122XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0523,005,9,53,08B,1178422,1823742,2003,03/22/2006 09:58:07 PM,41.671649672,-87.622618017,"(41.671649672, -87.622618017)" -2931267,HJ615846,09/08/2003 09:15:00 AM,015XX E 53RD ST,2851,PUBLIC PEACE VIOLATION,ARSON THREAT,NURSING HOME/RETIREMENT HOME,false,false,2132,002,4,41,26,1187460,1870388,2003,03/22/2006 09:58:07 PM,41.799441788,-87.588061081,"(41.799441788, -87.588061081)" -2931759,HJ614204,09/07/2003 08:11:10 PM,050XX W SUPERIOR ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1531,015,28,25,08B,1142472,1904460,2003,03/22/2006 09:58:07 PM,41.89389203,-87.752199603,"(41.89389203, -87.752199603)" -2930366,HJ613734,09/07/2003 03:40:00 PM,011XX E 67TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,false,false,0321,003,5,42,14,1185034,1860852,2003,03/22/2006 09:58:07 PM,41.77333158,-87.597257105,"(41.77333158, -87.597257105)" -2929363,HJ614200,09/07/2003 03:00:00 PM,065XX S PULASKI RD,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0833,008,13,65,06,1150792,1860766,2003,03/22/2006 09:58:07 PM,41.773831242,-87.722783294,"(41.773831242, -87.722783294)" -2979446,HJ670771,09/07/2003 12:01:00 AM,082XX S LANGLEY AVE,1754,OFFENSE INVOLVING CHILDREN,AGG SEX ASSLT OF CHILD FAM MBR,RESIDENCE,false,false,0631,006,6,44,02,1182362,1850779,2003,03/22/2006 09:58:07 PM,41.745752571,-87.607363535,"(41.745752571, -87.607363535)" -2974418,HJ664840,09/06/2003 09:00:00 PM,030XX W 21ST PL,0820,THEFT,$500 AND UNDER,STREET,false,false,1022,010,24,30,06,1156483,1889520,2003,12/04/2014 12:43:35 PM,41.852623213,-87.701145616,"(41.852623213, -87.701145616)" -2949405,HJ638460,09/06/2003 06:00:00 PM,021XX N HAMLIN AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2525,025,26,22,06,1150647,1914256,2003,12/04/2014 12:43:35 PM,41.920617332,-87.721918803,"(41.920617332, -87.721918803)" -2928490,HJ611783,09/06/2003 04:32:53 PM,093XX S MICHIGAN AVE,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,STREET,false,true,0634,006,6,49,04B,1178759,1842881,2003,03/22/2006 09:58:07 PM,41.724162147,-87.620805111,"(41.724162147, -87.620805111)" -2932225,HJ610463,09/05/2003 11:35:00 PM,012XX N BURLING ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,1822,018,27,8,26,1171043,1908538,2003,03/22/2006 09:58:07 PM,41.904503346,-87.647148068,"(41.904503346, -87.647148068)" -2926752,HJ610784,09/05/2003 11:00:00 PM,035XX N CLARK ST,0890,THEFT,FROM BUILDING,BAR OR TAVERN,false,false,1923,019,44,6,06,1168534,1923731,2003,03/22/2006 09:58:07 PM,41.946248432,-87.655923383,"(41.946248432, -87.655923383)" -2945548,HJ609242,09/05/2003 01:02:53 PM,016XX W 78TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0611,006,17,71,18,1166463,1853020,2003,03/22/2006 09:58:07 PM,41.752255514,-87.665556779,"(41.752255514, -87.665556779)" -2924758,HJ606510,09/03/2003 10:36:00 PM,127XX S HALSTED ST,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,STREET,false,true,0523,,34,53,20,,,2003,06/11/2007 03:52:33 PM,,, -2933964,HJ605059,09/03/2003 01:01:00 PM,039XX W WILCOX ST,141A,WEAPONS VIOLATION,UNLAWFUL USE HANDGUN,SIDEWALK,false,false,1122,011,28,26,15,1150371,1899011,2003,03/22/2006 09:58:07 PM,41.878788915,-87.723331167,"(41.878788915, -87.723331167)" -2921625,HJ603225,09/02/2003 04:20:00 PM,026XX S AVERS AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1031,010,22,30,06,1151084,1886444,2003,12/04/2014 12:43:35 PM,41.844289653,-87.721042236,"(41.844289653, -87.721042236)" -2931062,HJ609281,09/02/2003 07:30:00 AM,050XX N MOZART ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2031,020,40,4,14,1156419,1933285,2003,03/22/2006 09:58:07 PM,41.972719283,-87.700194749,"(41.972719283, -87.700194749)" -2921506,HJ602119,09/02/2003 07:00:00 AM,063XX S PARNELL AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0722,007,20,68,05,1173753,1862624,2003,03/22/2006 09:58:07 PM,41.778451658,-87.638557871,"(41.778451658, -87.638557871)" -2920250,HJ599048,08/31/2003 12:00:00 PM,055XX W IOWA ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1524,015,37,25,05,1139106,1905494,2003,03/22/2006 09:58:07 PM,41.896791348,-87.764536817,"(41.896791348, -87.764536817)" -3015620,HJ589066,08/29/2003 05:10:00 PM,010XX N LAWNDALE AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1112,011,27,23,18,1151474,1906939,2003,03/22/2006 09:58:07 PM,41.900522582,-87.719072748,"(41.900522582, -87.719072748)" -2915376,HJ594321,08/28/2003 03:00:00 PM,078XX S EMERALD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0621,006,17,71,07,1172620,1852874,2003,03/22/2006 09:58:07 PM,41.75172152,-87.642998372,"(41.75172152, -87.642998372)" -2916696,HJ592214,08/28/2003 09:42:01 AM,023XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,CTA PLATFORM,true,false,0134,001,3,33,26,1176732,1888450,2003,03/22/2006 09:58:07 PM,41.849253929,-87.626858373,"(41.849253929, -87.626858373)" -2915079,HJ591995,08/27/2003 10:00:00 PM,051XX W AINSLIE ST,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",RESIDENCE,false,false,1623,016,45,11,07,1141183,1932135,2003,03/22/2006 09:58:07 PM,41.969858904,-87.756249603,"(41.969858904, -87.756249603)" -2911245,HJ588892,08/26/2003 07:30:00 PM,029XX W LAWRENCE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,1713,017,33,14,08B,1155672,1931781,2003,03/22/2006 09:58:07 PM,41.968607339,-87.702982317,"(41.968607339, -87.702982317)" -2934055,HJ584712,08/24/2003 08:40:00 PM,083XX W CATHERINE AVE,2220,LIQUOR LAW VIOLATION,ILLEGAL POSSESSION BY MINOR,PARK PROPERTY,true,false,1614,016,41,10,22,1119999,1934739,2003,03/22/2006 09:58:07 PM,41.977369714,-87.834089837,"(41.977369714, -87.834089837)" -2907592,HJ583396,08/24/2003 09:27:32 AM,0000X E 111TH ST,0560,ASSAULT,SIMPLE,OTHER,true,false,0531,005,9,49,08A,1177617,1831314,2003,03/22/2006 09:58:07 PM,41.692446564,-87.625336551,"(41.692446564, -87.625336551)" -2910339,HJ583776,08/24/2003 06:00:00 AM,035XX W WRIGHTWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1413,014,26,22,14,1152130,1917013,2003,03/22/2006 09:58:07 PM,41.928153631,-87.716397043,"(41.928153631, -87.716397043)" -2906394,HJ581665,08/23/2003 10:00:00 AM,065XX S BISHOP ST,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,RESIDENCE,false,false,0725,007,17,67,20,1167752,1861301,2003,03/22/2006 09:58:07 PM,41.774952121,-87.660595813,"(41.774952121, -87.660595813)" -2912762,HJ590773,08/23/2003 02:00:00 AM,070XX S PAXTON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,true,0331,003,5,43,26,1192060,1858602,2003,03/22/2006 09:58:07 PM,41.766989507,-87.571574925,"(41.766989507, -87.571574925)" -2907859,HJ580830,08/23/2003 12:05:00 AM,030XX S HAMLIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,true,false,1031,010,22,30,14,1151473,1884443,2003,03/22/2006 09:58:07 PM,41.838791037,-87.719667129,"(41.838791037, -87.719667129)" -2904350,HJ581298,08/22/2003 06:00:00 PM,010XX N LAWLER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1531,015,37,25,14,1142545,1906385,2003,03/22/2006 09:58:07 PM,41.899173097,-87.751883581,"(41.899173097, -87.751883581)" -2903845,HJ579777,08/22/2003 12:30:00 PM,073XX S YALE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0731,007,17,69,06,1175852,1856336,2003,12/04/2014 12:43:35 PM,41.761149887,-87.631051083,"(41.761149887, -87.631051083)" -2930960,HJ576185,08/20/2003 11:47:00 PM,103XX S PRINCETON AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0512,005,34,49,16,1176068,1836625,2003,03/22/2006 09:58:07 PM,41.707055519,-87.630849072,"(41.707055519, -87.630849072)" -2901008,HJ576545,08/20/2003 10:30:00 PM,021XX N LINCOLN PARK WEST,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",STREET,false,false,1814,018,43,7,07,1173864,1914841,2003,03/22/2006 09:58:07 PM,41.921736684,-87.63659776,"(41.921736684, -87.63659776)" -2901871,HJ576208,08/20/2003 10:00:00 PM,054XX W WASHINGTON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1522,015,28,25,08B,1139839,1900171,2003,03/22/2006 09:58:07 PM,41.882171007,-87.761974768,"(41.882171007, -87.761974768)" -2901733,HJ573916,08/19/2003 11:00:00 PM,012XX W LAWRENCE AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,false,2311,019,46,3,08B,1166879,1931967,2003,03/22/2006 09:58:07 PM,41.968884075,-87.661769355,"(41.968884075, -87.661769355)" -2902597,HJ572180,08/19/2003 09:29:53 AM,036XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0211,002,3,35,26,1176849,1880942,2003,03/22/2006 09:58:07 PM,41.828648762,-87.626655684,"(41.828648762, -87.626655684)" -2900787,HJ571285,08/18/2003 05:58:41 PM,047XX S COTTAGE GROVE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,false,0223,002,4,38,08B,1182343,1874014,2003,03/22/2006 09:58:07 PM,41.809512036,-87.606713778,"(41.809512036, -87.606713778)" -2894615,HJ566529,08/16/2003 03:30:00 PM,064XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0312,003,20,69,08B,1179989,1862315,2003,03/22/2006 09:58:07 PM,41.777463199,-87.615705959,"(41.777463199, -87.615705959)" -2894119,HJ564426,08/15/2003 05:10:00 PM,028XX W DEVON AVE,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,false,false,2412,024,50,2,06,1156401,1942375,2003,03/22/2006 09:58:07 PM,41.997663039,-87.700013774,"(41.997663039, -87.700013774)" -2908315,HJ563226,08/15/2003 04:25:00 AM,055XX W WASHINGTON BLVD,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1522,015,29,25,18,1139188,1900156,2003,03/22/2006 09:58:07 PM,41.882141713,-87.76436564,"(41.882141713, -87.76436564)" -2890689,HJ562116,08/14/2003 04:54:50 PM,010XX W MONTROSE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,true,false,2311,019,46,3,14,1168507,1929424,2003,03/22/2006 09:58:07 PM,41.961870827,-87.655857204,"(41.961870827, -87.655857204)" -2891264,HJ561376,08/14/2003 10:50:00 AM,032XX S WELLS ST,0810,THEFT,OVER $500,VEHICLE-COMMERCIAL,false,false,0924,009,11,34,06,1175108,1883442,2003,12/04/2014 12:43:35 PM,41.835548092,-87.632968458,"(41.835548092, -87.632968458)" -2889624,HJ559983,08/13/2003 08:00:00 AM,051XX S HYDE PARK BLVD,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2132,002,4,41,05,1188257,1871311,2003,03/22/2006 09:58:07 PM,41.801955564,-87.585108861,"(41.801955564, -87.585108861)" -2890169,HJ558659,08/13/2003 03:27:00 AM,025XX N ST LOUIS AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,SIDEWALK,true,false,1413,014,26,22,26,1152576,1916693,2003,03/22/2006 09:58:07 PM,41.927266707,-87.714766629,"(41.927266707, -87.714766629)" -2885083,HJ556590,08/11/2003 07:30:00 PM,006XX N NOBLE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,false,false,1324,012,27,24,07,1166986,1904326,2003,03/22/2006 09:58:07 PM,41.893033416,-87.662171523,"(41.893033416, -87.662171523)" -2886712,HJ554329,08/11/2003 07:43:22 AM,050XX S TRIPP AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0815,008,23,57,08B,1148924,1870764,2003,03/22/2006 09:58:07 PM,41.801303516,-87.729373636,"(41.801303516, -87.729373636)" -2889240,HJ552511,08/10/2003 07:56:25 AM,080XX S EVANS AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,false,0631,006,6,44,26,1182659,1851917,2003,03/22/2006 09:58:07 PM,41.748868485,-87.606240045,"(41.748868485, -87.606240045)" -2881720,HJ550930,08/08/2003 11:30:00 PM,009XX W DIVERSEY PKWY,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1932,019,44,6,05,1169598,1918829,2003,03/22/2006 09:58:07 PM,41.932773992,-87.652155664,"(41.932773992, -87.652155664)" -2891486,HJ548112,08/08/2003 06:55:00 AM,035XX W NORTH AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1422,014,26,23,16,1152341,1910360,2003,03/22/2006 09:58:07 PM,41.909893049,-87.715797734,"(41.909893049, -87.715797734)" -2887565,HJ548010,08/08/2003 03:12:18 AM,011XX N LARRABEE ST,041A,BATTERY,AGGRAVATED: HANDGUN,CHA PARKING LOT/GROUNDS,true,false,1823,018,27,8,04B,1172160,1908064,2003,03/22/2006 09:58:07 PM,41.903178073,-87.643059058,"(41.903178073, -87.643059058)" -2879815,HJ546914,08/07/2003 10:00:00 AM,069XX S ADA ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0734,007,17,67,14,1168576,1858368,2003,03/22/2006 09:58:07 PM,41.766885869,-87.657659614,"(41.766885869, -87.657659614)" -2878526,HJ545169,08/06/2003 07:30:00 PM,047XX N SHERIDAN RD,0460,BATTERY,SIMPLE,SIDEWALK,true,false,2312,019,46,3,08B,1168730,1931931,2003,03/22/2006 09:58:07 PM,41.968745275,-87.654964358,"(41.968745275, -87.654964358)" -2877187,HJ543563,08/06/2003 02:10:00 AM,093XX S MERRILL AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0413,004,7,48,08B,1192103,1843328,2003,03/22/2006 09:58:07 PM,41.725075276,-87.571912717,"(41.725075276, -87.571912717)" -2876565,HJ545089,08/06/2003 12:00:00 AM,003XX N LARAMIE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1523,015,28,25,07,1141619,1901449,2003,03/22/2006 09:58:07 PM,41.885645292,-87.755406914,"(41.885645292, -87.755406914)" -2878658,HJ542950,08/05/2003 05:58:00 PM,065XX S PAULINA ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,true,0725,007,15,67,20,1166090,1861030,2003,03/22/2006 09:58:07 PM,41.774243977,-87.666696181,"(41.774243977, -87.666696181)" -2875689,HJ541387,08/05/2003 08:49:06 AM,008XX N LAVERGNE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1531,015,37,25,08B,1142824,1905299,2003,03/22/2006 09:58:07 PM,41.896187794,-87.750885888,"(41.896187794, -87.750885888)" -2876114,HJ541280,08/05/2003 04:00:00 AM,065XX S DAMEN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,ALLEY,true,true,0726,007,15,67,03,1164113,1861288,2003,03/22/2006 09:58:07 PM,41.774993789,-87.673936273,"(41.774993789, -87.673936273)" -2873875,HJ538520,08/03/2003 09:40:58 PM,077XX S NORMAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0621,006,17,69,08B,1174256,1853855,2003,03/22/2006 09:58:07 PM,41.754377328,-87.636974117,"(41.754377328, -87.636974117)" -2872666,HJ536779,08/03/2003 12:41:03 AM,036XX S CALUMET AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0211,,4,35,14,,,2003,03/22/2006 09:58:07 PM,,, -2871375,HJ536363,08/02/2003 08:15:00 PM,045XX S DAMEN AVE,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,0914,009,12,61,06,1163722,1874119,2003,12/04/2014 12:43:35 PM,41.810211892,-87.675009439,"(41.810211892, -87.675009439)" -3010103,HJ715484,08/01/2003 10:00:00 AM,065XX N RICHMOND ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,2412,024,50,2,05,1155521,1943184,2003,03/22/2006 09:58:07 PM,41.999900784,-87.703229082,"(41.999900784, -87.703229082)" -2866263,HJ531123,07/31/2003 01:13:42 PM,030XX E 79TH ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0421,004,7,46,15,1197863,1853211,2003,03/22/2006 09:58:07 PM,41.752053244,-87.550484876,"(41.752053244, -87.550484876)" -3402803,HJ530935,07/31/2003 11:50:00 AM,040XX W GLADYS AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),ALLEY,true,false,1132,011,24,26,18,1149438,1898007,2003,08/21/2009 09:11:30 AM,41.876051972,-87.726783043,"(41.876051972, -87.726783043)" -2875579,HJ530439,07/31/2003 04:40:00 AM,075XX S EGGLESTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0621,006,17,69,08B,1174564,1854734,2003,03/22/2006 09:58:07 PM,41.756782565,-87.635819281,"(41.756782565, -87.635819281)" -2866751,HJ530147,07/30/2003 11:44:16 PM,112XX S MICHIGAN AVE,0334,ROBBERY,ATTEMPT: ARMED-KNIFE/CUT INSTR,SIDEWALK,false,false,0531,005,9,49,03,1178758,1830717,2003,03/22/2006 09:58:07 PM,41.690782499,-87.621177257,"(41.690782499, -87.621177257)" -2865660,HJ529692,07/30/2003 07:33:42 PM,006XX E 51ST ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0223,002,4,38,06,1181460,1871377,2003,12/04/2014 12:43:35 PM,41.802296332,-87.610033833,"(41.802296332, -87.610033833)" -2869952,HJ527028,07/29/2003 02:50:00 PM,080XX S WESTERN AVE,0890,THEFT,FROM BUILDING,NURSING HOME/RETIREMENT HOME,false,false,0835,008,18,70,06,1161807,1851535,2003,03/22/2006 09:58:07 PM,41.748278349,-87.682660228,"(41.748278349, -87.682660228)" -2875808,HJ526580,07/29/2003 01:15:00 PM,028XX W WILCOX ST,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,1124,011,2,27,18,1157142,1899260,2003,03/22/2006 09:58:07 PM,41.879337446,-87.698462498,"(41.879337446, -87.698462498)" -2865228,HJ524436,07/28/2003 02:10:00 PM,021XX S ALBANY AVE,501A,OTHER OFFENSE,ANIMAL ABUSE/NEGLECT,OTHER,false,false,1022,010,24,30,26,1155976,1889628,2003,03/22/2006 09:58:07 PM,41.852929805,-87.70300356,"(41.852929805, -87.70300356)" -2864022,HJ524729,07/28/2003 12:03:00 AM,003XX E 134TH ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,false,true,0533,005,9,54,26,1181010,1816583,2003,03/22/2006 09:58:07 PM,41.651945315,-87.613364914,"(41.651945315, -87.613364914)" -2858393,HJ522313,07/27/2003 01:35:33 PM,026XX W GRAND AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1313,012,26,24,07,1158967,1904048,2003,06/11/2007 03:52:33 PM,41.892438911,-87.691629914,"(41.892438911, -87.691629914)" -2862973,HJ522070,07/27/2003 10:42:41 AM,035XX W 63RD ST,1320,CRIMINAL DAMAGE,TO VEHICLE,POLICE FACILITY/VEH PARKING LOT,false,false,0823,008,15,66,14,1154004,1862576,2003,03/22/2006 09:58:07 PM,41.778734981,-87.71096061,"(41.778734981, -87.71096061)" -2859484,HJ521943,07/27/2003 10:00:00 AM,100XX S STATE ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0511,005,9,49,08B,1177989,1838334,2003,03/22/2006 09:58:07 PM,41.711702031,-87.623762848,"(41.711702031, -87.623762848)" -2857602,HJ521890,07/27/2003 02:30:00 AM,034XX W BELLE PLAINE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1723,017,33,16,14,1152585,1927078,2003,03/22/2006 09:58:07 PM,41.955763759,-87.71445805,"(41.955763759, -87.71445805)" -2864469,HJ521380,07/27/2003 12:30:00 AM,060XX S RICHMOND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,true,false,0823,008,15,66,08B,1157796,1864165,2003,03/22/2006 09:58:07 PM,41.783019273,-87.697015629,"(41.783019273, -87.697015629)" -2868886,HJ535536,07/27/2003 12:00:00 AM,038XX N CLAREMONT AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,false,false,1912,019,47,5,14,1159973,1925682,2003,03/22/2006 09:58:07 PM,41.951783439,-87.687336751,"(41.951783439, -87.687336751)" -2861000,HJ516999,07/25/2003 12:45:00 PM,014XX S DRAKE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1021,010,24,29,08B,1152899,1892797,2003,03/22/2006 09:58:07 PM,41.861687336,-87.714213347,"(41.861687336, -87.714213347)" -3159379,HJ516160,07/24/2003 04:49:00 PM,079XX S LAFAYETTE AVE,0810,THEFT,OVER $500,OTHER,false,false,0623,006,17,44,06,1177268,1852617,2003,12/04/2014 12:43:35 PM,41.750912681,-87.625973444,"(41.750912681, -87.625973444)" -2863103,HJ526942,07/24/2003 10:00:00 AM,053XX N NEENAH AVE,0620,BURGLARY,UNLAWFUL ENTRY,PARKING LOT/GARAGE(NON.RESID.),false,false,1613,016,41,10,05,1131876,1935042,2003,03/22/2006 09:58:07 PM,41.978002921,-87.790404602,"(41.978002921, -87.790404602)" -2850982,HJ512818,07/23/2003 12:30:00 AM,022XX S HOMAN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1024,010,22,30,07,1154018,1888506,2003,11/21/2006 05:02:11 AM,41.849890122,-87.710219977,"(41.849890122, -87.710219977)" -2850944,HJ511737,07/22/2003 04:50:00 PM,008XX N LATROBE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,1524,015,37,25,08B,1141169,1904829,2003,03/22/2006 09:58:07 PM,41.894928728,-87.756976055,"(41.894928728, -87.756976055)" -2851676,HJ513318,07/22/2003 10:00:00 AM,122XX S LOOMIS ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0524,005,34,53,05,1169174,1823635,2003,03/22/2006 09:58:07 PM,41.671560368,-87.656468624,"(41.671560368, -87.656468624)" -2907852,HJ552404,07/20/2003 04:00:00 AM,039XX W FLOURNOY ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,1132,011,24,26,14,1150486,1896784,2003,03/22/2006 09:58:07 PM,41.872675535,-87.722967056,"(41.872675535, -87.722967056)" -2859640,HJ507350,07/20/2003 01:30:00 AM,011XX N PULASKI RD,0460,BATTERY,SIMPLE,RESTAURANT,false,false,1112,011,27,23,08B,1149540,1907707,2003,03/22/2006 09:58:07 PM,41.902667832,-87.726156519,"(41.902667832, -87.726156519)" -2856151,HJ504148,07/19/2003 02:30:00 AM,048XX N KEDZIE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,VEHICLE NON-COMMERCIAL,false,false,1713,017,39,14,03,1154139,1931720,2003,03/22/2006 09:58:07 PM,41.968470763,-87.708620757,"(41.968470763, -87.708620757)" -2838216,HJ501920,07/17/2003 09:30:00 PM,004XX W 103RD PL,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),false,false,2232,022,34,49,06,1175120,1836312,2003,12/04/2014 12:43:35 PM,41.706217772,-87.634329933,"(41.706217772, -87.634329933)" -2837227,HJ499136,07/16/2003 09:50:00 PM,077XX S CICERO AVE,031A,ROBBERY,ARMED: HANDGUN,HOTEL/MOTEL,false,false,0834,008,13,70,03,1145778,1853078,2003,03/22/2006 09:58:07 PM,41.752830235,-87.741357823,"(41.752830235, -87.741357823)" -2837059,HJ499975,07/16/2003 09:00:00 PM,071XX S WASHTENAW AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0831,008,18,66,07,1159654,1856958,2003,03/22/2006 09:58:07 PM,41.763204295,-87.690401096,"(41.763204295, -87.690401096)" -2835767,HJ496423,07/15/2003 06:42:00 PM,017XX W 66TH ST,051B,ASSAULT,AGGRAVATED: OTHER FIREARM,RESIDENCE,false,false,0725,007,15,67,04A,1165829,1860966,2003,03/22/2006 09:58:07 PM,41.774073901,-87.667654777,"(41.774073901, -87.667654777)" -3039099,HJ752013,07/15/2003 12:00:00 PM,046XX W ADAMS ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1113,011,28,25,06,1145622,1898765,2003,12/04/2014 12:43:35 PM,41.878205161,-87.740774986,"(41.878205161, -87.740774986)" -2835780,HJ494154,07/14/2003 06:38:07 PM,037XX S INDIANA AVE,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,OTHER,true,false,0211,002,3,35,26,1178175,1880239,2003,03/22/2006 09:58:07 PM,41.82668964,-87.621812093,"(41.82668964, -87.621812093)" -2832936,HJ491353,07/13/2003 01:30:00 PM,014XX N HUMBOLDT DR,0820,THEFT,$500 AND UNDER,OTHER,false,false,1423,014,26,24,06,1156234,1909164,2003,12/04/2014 12:43:35 PM,41.906533322,-87.701528756,"(41.906533322, -87.701528756)" -2828480,HJ489251,07/12/2003 12:00:00 PM,019XX W HARRISON ST,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,false,false,1224,012,2,28,06,1163812,1897354,2003,03/22/2006 09:58:07 PM,41.873969214,-87.674025114,"(41.873969214, -87.674025114)" -2875811,HJ528328,07/11/2003 05:30:00 PM,075XX S CALUMET AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0623,006,6,69,14,1179815,1855308,2003,03/22/2006 09:58:07 PM,41.758239243,-87.616557906,"(41.758239243, -87.616557906)" -2827614,HJ486624,07/11/2003 11:36:51 AM,058XX S WABASH AVE,0810,THEFT,OVER $500,RESIDENCE PORCH/HALLWAY,false,false,0233,002,20,40,06,1177749,1866437,2003,12/04/2014 12:43:35 PM,41.788825388,-87.623793044,"(41.788825388, -87.623793044)" -2830289,HJ488785,07/11/2003 11:30:00 AM,007XX N SACRAMENTO BLVD,0820,THEFT,$500 AND UNDER,OTHER,false,false,1313,012,27,23,06,1156139,1904505,2003,12/04/2014 12:43:35 PM,41.893750529,-87.702003675,"(41.893750529, -87.702003675)" -2839570,HJ486015,07/11/2003 12:20:00 AM,054XX W CORTLAND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,false,2532,025,37,25,08B,1139738,1911957,2003,03/22/2006 09:58:07 PM,41.914515055,-87.762057463,"(41.914515055, -87.762057463)" -2828302,HJ485741,07/10/2003 04:35:00 PM,056XX S WOOD ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,0715,007,15,67,03,1165264,1867548,2003,03/22/2006 09:58:07 PM,41.792147733,-87.669539696,"(41.792147733, -87.669539696)" -2864078,HJ529527,07/09/2003 02:00:00 PM,066XX S WABASH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0322,003,20,69,07,1177797,1860729,2003,03/22/2006 09:58:07 PM,41.773160964,-87.623789744,"(41.773160964, -87.623789744)" -2823283,HJ480284,07/08/2003 11:22:34 AM,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,0122,001,42,32,06,1176335,1900391,2003,03/22/2006 09:58:07 PM,41.882029756,-87.6279553,"(41.882029756, -87.6279553)" -2822205,HJ479975,07/08/2003 08:35:32 AM,045XX S MICHIGAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,0221,002,3,38,14,1177872,1875172,2003,03/22/2006 09:58:07 PM,41.81279225,-87.623077399,"(41.81279225, -87.623077399)" -2823443,HJ479080,07/07/2003 07:40:00 PM,006XX N LA SALLE DR,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,1832,018,42,8,26,1175066,1904462,2003,03/22/2006 09:58:07 PM,41.893229338,-87.632492917,"(41.893229338, -87.632492917)" -2819285,HJ477421,07/07/2003 03:00:00 AM,011XX N NORTH BRANCH ST,0810,THEFT,OVER $500,OTHER,false,false,1822,018,32,8,06,1169019,1907862,2003,12/04/2014 12:43:35 PM,41.902692547,-87.654602385,"(41.902692547, -87.654602385)" -2819546,HJ476197,07/06/2003 02:30:09 PM,012XX S WABASH AVE,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,0132,001,2,33,26,1177002,1894869,2003,03/22/2006 09:58:07 PM,41.866861994,-87.625673284,"(41.866861994, -87.625673284)" -2817745,HJ474286,07/05/2003 02:15:00 PM,097XX S CALUMET AVE,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,0511,005,6,49,08A,1180255,1840545,2003,03/22/2006 09:58:07 PM,41.717717758,-87.615396712,"(41.717717758, -87.615396712)" -2817826,HJ473247,07/05/2003 01:19:27 AM,050XX W LAKE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,false,1532,015,28,25,08B,1142976,1901959,2003,03/22/2006 09:58:07 PM,41.887019607,-87.750410954,"(41.887019607, -87.750410954)" -2828556,HJ487268,07/03/2003 05:00:00 PM,021XX E 71ST ST,1120,DECEPTIVE PRACTICE,FORGERY,OTHER,false,false,0333,003,5,43,10,1191447,1858232,2003,03/22/2006 09:58:07 PM,41.765989074,-87.573833752,"(41.765989074, -87.573833752)" -2814770,HJ470954,07/03/2003 03:00:00 PM,025XX S MICHIGAN AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,2112,001,2,33,07,1177689,1887544,2003,03/22/2006 09:58:07 PM,41.846746144,-87.623373603,"(41.846746144, -87.623373603)" -2814742,HJ469340,07/02/2003 03:15:00 AM,058XX N WINTHROP AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,2022,020,48,77,08B,1167775,1938696,2003,03/22/2006 09:58:07 PM,41.98732932,-87.658279816,"(41.98732932, -87.658279816)" -2808608,HJ464943,07/01/2003 12:01:00 AM,065XX S PULASKI RD,0610,BURGLARY,FORCIBLE ENTRY,GROCERY FOOD STORE,false,false,0833,008,13,65,05,1150790,1860818,2003,03/22/2006 09:58:07 PM,41.773973977,-87.722789273,"(41.773973977, -87.722789273)" -2814025,HJ467751,07/01/2003 12:01:00 AM,016XX N KILDARE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2534,025,30,23,05,1147432,1910570,2003,03/22/2006 09:58:07 PM,41.910564878,-87.733826142,"(41.910564878, -87.733826142)" -2810240,HJ464059,06/30/2003 05:44:46 PM,002XX S STATE ST,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,0123,001,42,32,26,1176460,1899032,2003,03/22/2006 09:58:07 PM,41.878297763,-87.627537345,"(41.878297763, -87.627537345)" -2807800,HJ460881,06/29/2003 02:00:00 AM,019XX N KEDZIE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1421,014,35,22,14,1154696,1912714,2003,03/22/2006 09:58:07 PM,41.916305775,-87.707083247,"(41.916305775, -87.707083247)" -2825502,HJ460047,06/28/2003 06:55:57 PM,024XX N LAVERGNE AVE,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,STREET,true,false,2521,025,31,19,26,1142701,1915504,2003,03/22/2006 09:58:07 PM,41.924193722,-87.751083217,"(41.924193722, -87.751083217)" -2806423,HJ458377,06/28/2003 12:39:02 AM,072XX S HALSTED ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,0732,007,17,68,15,1172268,1856553,2003,03/22/2006 09:58:07 PM,41.761824903,-87.644180287,"(41.761824903, -87.644180287)" -2804858,HJ458342,06/28/2003 12:15:00 AM,015XX N WELLS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1821,018,43,8,08B,1174455,1910790,2003,03/22/2006 09:58:07 PM,41.910607365,-87.634547566,"(41.910607365, -87.634547566)" -2820446,HJ478932,06/27/2003 10:00:00 PM,028XX W SHAKESPEARE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1414,014,35,22,06,1156749,1914262,2003,12/04/2014 12:43:35 PM,41.920512225,-87.699498555,"(41.920512225, -87.699498555)" -2804167,HJ457871,06/27/2003 07:00:00 PM,077XX N HERMITAGE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2422,024,49,1,08B,1163377,1951256,2003,03/22/2006 09:58:07 PM,42.021888247,-87.674100071,"(42.021888247, -87.674100071)" -2803099,HJ456252,06/27/2003 12:45:00 AM,061XX S LANGLEY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0313,003,20,42,14,1181988,1864543,2003,03/22/2006 09:58:07 PM,41.78353103,-87.608308828,"(41.78353103, -87.608308828)" -2802788,HJ455475,06/26/2003 05:05:00 PM,029XX N LEAVITT ST,1330,CRIMINAL TRESPASS,TO LAND,SIDEWALK,true,false,1913,019,1,5,26,1161228,1919302,2003,03/22/2006 09:58:07 PM,41.934250296,-87.682901341,"(41.934250296, -87.682901341)" -2802055,HJ453750,06/25/2003 09:20:00 PM,001XX W 87TH ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,0622,006,21,44,06,1176932,1847317,2003,03/22/2006 09:58:07 PM,41.736376406,-87.627364041,"(41.736376406, -87.627364041)" -2804532,HJ455051,06/25/2003 04:00:00 PM,009XX E 104TH ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0512,005,9,50,08B,1184181,1836149,2003,03/22/2006 09:58:07 PM,41.705563859,-87.601154398,"(41.705563859, -87.601154398)" -2824987,HJ452621,06/25/2003 12:45:00 PM,039XX W GRENSHAW ST,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),STREET,true,false,1132,011,24,29,18,1150418,1894713,2003,03/22/2006 09:58:07 PM,41.866993799,-87.723270756,"(41.866993799, -87.723270756)" -2804205,HJ452938,06/25/2003 09:00:00 AM,016XX W SHERWIN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE PORCH/HALLWAY,false,false,2423,024,49,1,14,1163943,1948670,2003,03/22/2006 09:58:07 PM,42.014780239,-87.672090699,"(42.014780239, -87.672090699)" -2809059,HJ451882,06/25/2003 03:49:41 AM,037XX S VINCENNES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,false,false,0212,002,4,35,08B,1180841,1880237,2003,03/22/2006 09:58:07 PM,41.826623147,-87.6120312,"(41.826623147, -87.6120312)" -2801436,HJ451230,06/24/2003 07:35:00 PM,065XX W FULLERTON AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2512,025,36,19,06,1132458,1915278,2003,12/04/2014 12:43:35 PM,41.923758237,-87.788726112,"(41.923758237, -87.788726112)" -2801724,HJ451245,06/24/2003 06:40:00 PM,001XX S KILDARE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,1115,011,28,26,04B,1147714,1898798,2003,03/22/2006 09:58:07 PM,41.878255826,-87.733092714,"(41.878255826, -87.733092714)" -2799616,HJ450372,06/24/2003 12:20:00 PM,026XX S CENTRAL PARK AVE,1565,SEX OFFENSE,INDECENT SOLICITATION/CHILD,STREET,false,false,1032,010,22,30,17,1152748,1886486,2003,03/22/2006 09:58:07 PM,41.84437219,-87.714934485,"(41.84437219, -87.714934485)" -2801094,HJ449678,06/24/2003 06:50:00 AM,069XX W GEORGE ST,0850,THEFT,ATTEMPT THEFT,STREET,false,false,2511,025,36,18,06,1129555,1918541,2003,03/22/2006 09:58:07 PM,41.932762409,-87.799318393,"(41.932762409, -87.799318393)" -2797776,HJ448915,06/23/2003 07:58:27 PM,001XX N STATE ST,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,0122,001,42,32,06,1176299,1901295,2003,12/04/2014 12:43:35 PM,41.884511195,-87.62806021,"(41.884511195, -87.62806021)" -2799702,HJ448302,06/23/2003 03:37:56 PM,062XX S COTTAGE GROVE AVE,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,0313,003,20,42,26,1182592,1863962,2003,03/22/2006 09:58:07 PM,41.781922716,-87.606112394,"(41.781922716, -87.606112394)" -2795753,HJ447662,06/23/2003 09:00:00 AM,0000X E 8TH ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0132,001,2,32,26,1176482,1896706,2003,03/22/2006 09:58:07 PM,41.871914584,-87.627526797,"(41.871914584, -87.627526797)" -2794810,HJ446532,06/22/2003 07:33:59 PM,050XX S PAULINA ST,0460,BATTERY,SIMPLE,STREET,false,false,0931,,16,61,08B,1165815,1871547,2003,03/22/2006 09:58:07 PM,41.803109775,-87.667405667,"(41.803109775, -87.667405667)" -2794951,HJ445698,06/21/2003 07:00:00 PM,043XX N KEYSTONE AVE,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,1722,017,39,16,08B,1148467,1928709,2003,03/22/2006 09:58:07 PM,41.960319954,-87.729554605,"(41.960319954, -87.729554605)" -2793702,HJ443234,06/21/2003 02:54:00 AM,006XX W BARRY AVE,0291,CRIM SEXUAL ASSAULT,ATTEMPT NON-AGGRAVATED,SIDEWALK,true,false,2332,019,44,6,02,1171641,1920673,2003,03/22/2006 09:58:07 PM,41.937789216,-87.644593458,"(41.937789216, -87.644593458)" -2792895,HJ442622,06/20/2003 07:40:00 PM,002XX W 119TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,0522,,34,53,14,1176941,1826072,2003,03/22/2006 09:58:07 PM,41.678076946,-87.627968622,"(41.678076946, -87.627968622)" -2813381,HJ441188,06/20/2003 08:05:00 AM,005XX W DIVISION ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,1821,018,27,8,18,1172311,1908305,2003,03/22/2006 09:58:07 PM,41.903836054,-87.64249728,"(41.903836054, -87.64249728)" -2794409,HJ440860,06/20/2003 12:05:00 AM,071XX S CORNELL AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,0324,,8,43,04A,1188517,1857704,2003,03/22/2006 09:58:07 PM,41.76461069,-87.584589891,"(41.76461069, -87.584589891)" -2790031,HJ439961,06/19/2003 03:54:36 PM,008XX E 103RD ST,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,"SCHOOL, PUBLIC, BUILDING",false,false,0512,,9,50,26,1183529,1836806,2003,03/22/2006 09:58:07 PM,41.707381937,-87.603521549,"(41.707381937, -87.603521549)" -2788903,HJ438572,06/18/2003 11:39:00 PM,033XX S LOWE AVE,0810,THEFT,OVER $500,STREET,true,false,0924,,11,60,06,1172464,1882994,2003,12/04/2014 12:43:35 PM,41.834377488,-87.642683307,"(41.834377488, -87.642683307)" -2791499,HJ438772,06/18/2003 12:00:00 PM,020XX N ORLEANS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1814,018,43,7,07,1173535,1913606,2003,03/22/2006 09:58:07 PM,41.918355118,-87.637843384,"(41.918355118, -87.637843384)" -2786955,HJ436223,06/17/2003 11:42:25 PM,043XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,0222,,3,38,08B,1179623,1876246,2003,03/22/2006 09:58:07 PM,41.815699503,-87.616621901,"(41.815699503, -87.616621901)" -2800085,HJ434896,06/17/2003 01:37:58 PM,078XX S SAGINAW AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0421,004,7,43,18,1195251,1853128,2003,03/22/2006 09:58:07 PM,41.751890305,-87.560059216,"(41.751890305, -87.560059216)" -2795842,HJ446366,06/16/2003 09:00:00 PM,029XX S DR MARTIN LUTHER KING JR DR,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,2122,001,4,35,05,1179425,1885823,2003,03/22/2006 09:58:07 PM,41.841984044,-87.617055292,"(41.841984044, -87.617055292)" -2785556,HJ433502,06/16/2003 07:20:00 PM,001XX W 113TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0522,,34,49,08B,1177202,1829729,2003,03/22/2006 09:58:07 PM,41.68810644,-87.626903516,"(41.68810644, -87.626903516)" -2889358,HJ524560,06/16/2003 05:53:00 PM,062XX S WESTERN AVE,1120,DECEPTIVE PRACTICE,FORGERY,OTHER,false,false,0825,008,15,66,10,1161493,1862851,2003,03/22/2006 09:58:07 PM,41.779337602,-87.683497577,"(41.779337602, -87.683497577)" -2808088,HJ432451,06/16/2003 03:00:00 AM,030XX S HAMLIN AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,true,1031,010,22,30,08B,1151489,1883889,2003,06/02/2010 10:34:17 AM,41.837270476,-87.719622941,"(41.837270476, -87.719622941)" -2781435,HJ429520,06/14/2003 09:40:00 PM,023XX W ADAMS ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1211,,2,28,14,1161041,1898987,2003,03/22/2006 09:58:07 PM,41.878508272,-87.684153572,"(41.878508272, -87.684153572)" -2781390,HJ428085,06/14/2003 08:15:00 AM,087XX S ESCANABA AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,0423,,10,46,08A,1196869,1847446,2003,03/22/2006 09:58:07 PM,41.736258403,-87.554318613,"(41.736258403, -87.554318613)" -2780504,HJ427170,06/13/2003 07:50:00 PM,015XX S CALIFORNIA BLVD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1022,,12,29,06,1157889,1892642,2003,03/22/2006 09:58:07 PM,41.861161794,-87.695900078,"(41.861161794, -87.695900078)" -2784040,HJ426673,06/13/2003 03:45:00 PM,060XX S PRAIRIE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0311,,20,40,05,1179041,1864806,2003,03/22/2006 09:58:07 PM,41.784320408,-87.619105448,"(41.784320408, -87.619105448)" -2784643,HJ425169,06/12/2003 08:30:00 PM,030XX W POLK ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1134,,28,27,14,1155966,1896168,2003,03/22/2006 09:58:07 PM,41.870876474,-87.702863989,"(41.870876474, -87.702863989)" -2778096,HJ425014,06/12/2003 06:50:00 PM,054XX N CLARK ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2012,,40,77,06,1165023,1936158,2003,12/04/2014 12:43:35 PM,41.980424045,-87.668474198,"(41.980424045, -87.668474198)" -2801290,HJ423973,06/12/2003 10:20:38 AM,050XX W ERIE ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1532,015,28,25,26,1142908,1903815,2003,03/22/2006 09:58:07 PM,41.892113959,-87.750614386,"(41.892113959, -87.750614386)" -2777154,HJ423283,06/11/2003 11:02:40 PM,003XX N CENTRAL AVE,0460,BATTERY,SIMPLE,STREET,false,false,1523,,28,25,08B,1139029,1901505,2003,03/22/2006 09:58:07 PM,41.885846434,-87.764916687,"(41.885846434, -87.764916687)" -2792942,HJ443548,06/11/2003 09:50:00 PM,048XX N DAMEN AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,false,2032,,47,4,04A,1162102,1931886,2003,03/22/2006 09:58:07 PM,41.968763213,-87.679336508,"(41.968763213, -87.679336508)" -2776590,HJ422220,06/11/2003 02:38:12 PM,031XX S RACINE AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0924,,11,60,06,1168788,1883916,2003,12/04/2014 12:43:35 PM,41.836987856,-87.656144776,"(41.836987856, -87.656144776)" -2776143,HJ423012,06/11/2003 01:30:00 PM,002XX W ADAMS ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,0112,,2,32,06,1174679,1899372,2003,12/04/2014 12:43:35 PM,41.879270748,-87.634066541,"(41.879270748, -87.634066541)" -2774846,HJ420999,06/10/2003 10:17:57 PM,001XX N CARPENTER ST,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,1212,,27,28,06,1169484,1900823,2003,03/22/2006 09:58:07 PM,41.88336696,-87.65309935,"(41.88336696, -87.65309935)" -2774598,HJ419923,06/10/2003 01:45:00 PM,049XX N LINCOLN AVE,0460,BATTERY,SIMPLE,OTHER,false,false,2031,,47,4,08B,1159133,1932853,2003,03/22/2006 09:58:07 PM,41.97147838,-87.690226746,"(41.97147838, -87.690226746)" -2776723,HJ418525,06/09/2003 04:10:00 PM,054XX S BISHOP ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE PORCH/HALLWAY,false,false,0933,,16,61,04B,1167552,1868632,2003,03/22/2006 09:58:07 PM,41.795073572,-87.661118879,"(41.795073572, -87.661118879)" -2772755,HJ416939,06/09/2003 03:00:00 AM,004XX W 79TH ST,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,HOTEL/MOTEL,false,false,0621,,17,44,02,1174715,1852503,2003,06/02/2010 10:34:17 AM,41.750657067,-87.635332229,"(41.750657067, -87.635332229)" -2771288,HJ416675,06/09/2003 01:05:00 AM,081XX S EUCLID AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0414,,8,46,08B,1190565,1851601,2003,03/22/2006 09:58:07 PM,41.747814369,-87.57728013,"(41.747814369, -87.57728013)" -2780975,HJ420632,06/08/2003 02:00:00 PM,031XX W HARRISON ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1134,,24,27,06,1155221,1897148,2003,03/22/2006 09:58:07 PM,41.873580679,-87.705572846,"(41.873580679, -87.705572846)" -2786981,HJ415332,06/08/2003 01:00:00 PM,008XX E 63RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0312,,20,42,18,1182652,1863371,2003,03/22/2006 09:58:07 PM,41.780299565,-87.60591075,"(41.780299565, -87.60591075)" -2774519,HJ413255,06/07/2003 01:14:34 PM,053XX W HARRISON ST,0560,ASSAULT,SIMPLE,ALLEY,false,false,1522,,29,25,08A,1140796,1896839,2003,03/22/2006 09:58:07 PM,41.873010032,-87.758542553,"(41.873010032, -87.758542553)" -2770700,HJ416502,06/07/2003 01:00:00 PM,016XX S MILLER ST,0890,THEFT,FROM BUILDING,APARTMENT,false,true,1233,,25,31,06,1169831,1892033,2003,03/22/2006 09:58:07 PM,41.859238981,-87.65208132,"(41.859238981, -87.65208132)" -2768672,HJ409666,06/06/2003 07:35:00 PM,032XX W 26TH ST,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,false,false,1024,,22,30,08B,1155109,1886590,2003,03/22/2006 09:58:07 PM,41.844610601,-87.706267168,"(41.844610601, -87.706267168)" -2768751,HJ412734,06/06/2003 07:00:00 PM,058XX S STATE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0233,,20,40,06,1177320,1866043,2003,12/04/2014 12:43:35 PM,41.787753917,-87.625377921,"(41.787753917, -87.625377921)" -2773907,HJ410562,06/06/2003 04:40:00 PM,049XX W WELLINGTON AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,"SCHOOL, PUBLIC, GROUNDS",true,false,2521,,31,19,04A,1143177,1919539,2003,03/22/2006 09:58:07 PM,41.935257279,-87.749233173,"(41.935257279, -87.749233173)" -2770531,HJ410013,06/05/2003 11:10:00 PM,018XX N MONITOR AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,2531,,29,25,08B,1137091,1911853,2003,03/22/2006 09:58:07 PM,41.914277637,-87.771784808,"(41.914277637, -87.771784808)" -2773478,HJ410975,06/05/2003 08:00:00 PM,068XX S MORGAN ST,0460,BATTERY,SIMPLE,STREET,false,false,0724,,17,68,08B,1170776,1859726,2003,03/22/2006 09:58:07 PM,41.770564681,-87.649556173,"(41.770564681, -87.649556173)" -2788811,HJ000041,06/05/2003 02:30:00 AM,130XX S DR MARTIN LUTHER KING JR DR,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0533,,9,54,18,1180990,1819139,2003,03/22/2006 09:58:07 PM,41.658959837,-87.613359979,"(41.658959837, -87.613359979)" -2764599,HJ407575,06/04/2003 05:00:00 AM,065XX S CAMPBELL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0832,,15,66,05,1160874,1861160,2003,03/22/2006 09:58:07 PM,41.774710076,-87.68581359,"(41.774710076, -87.68581359)" -2763515,HJ405870,06/03/2003 09:42:49 PM,008XX W 71ST ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,true,0733,,17,68,14,1171834,1857812,2003,03/22/2006 09:58:07 PM,41.765289285,-87.645734055,"(41.765289285, -87.645734055)" -2763904,HJ403715,06/02/2003 09:18:52 PM,030XX S KEELEY ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0923,,11,60,14,1170072,1884411,2003,03/22/2006 09:58:07 PM,41.838318306,-87.651418855,"(41.838318306, -87.651418855)" -2798954,HJ451204,06/02/2003 07:00:00 AM,016XX W WOLFRAM ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1931,019,32,6,26,1164921,1918941,2003,03/22/2006 09:58:07 PM,41.933182007,-87.669339922,"(41.933182007, -87.669339922)" -2758768,HJ401987,06/02/2003 12:00:00 AM,047XX W CORNELIA AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1731,,30,15,05,1144348,1923025,2003,03/22/2006 09:58:07 PM,41.944801211,-87.744841697,"(41.944801211, -87.744841697)" -2757829,HJ400230,06/01/2003 02:30:00 AM,020XX N SEMINARY AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),false,false,1811,,43,7,06,1168591,1914056,2003,12/04/2014 12:43:35 PM,41.919698529,-87.655994825,"(41.919698529, -87.655994825)" -2757523,HJ400150,06/01/2003 01:00:00 AM,049XX S WESTERN AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,CTA TRAIN,false,false,0915,,12,63,14,1161225,1872072,2003,03/22/2006 09:58:07 PM,41.804646794,-87.684224857,"(41.804646794, -87.684224857)" -2765831,HJ398612,05/31/2003 12:00:48 PM,057XX S THROOP ST,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,0713,,16,67,18,1168678,1866716,2003,03/22/2006 09:58:07 PM,41.78979161,-87.657045102,"(41.78979161, -87.657045102)" -2789621,HJ439266,05/30/2003 04:00:00 PM,011XX S WABASH AVE,0890,THEFT,FROM BUILDING,COLLEGE/UNIVERSITY GROUNDS,false,false,0132,,2,32,06,1176901,1895697,2003,03/22/2006 09:58:07 PM,41.869136362,-87.626019018,"(41.869136362, -87.626019018)" -2757112,HJ399264,05/29/2003 10:30:00 PM,050XX W ERIE ST,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,STREET,true,false,1532,015,28,25,26,1142906,1903895,2003,03/22/2006 09:58:07 PM,41.892333526,-87.750619736,"(41.892333526, -87.750619736)" -2754350,HJ395098,05/29/2003 06:59:21 PM,014XX S BLUE ISLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,true,1231,,2,28,14,1168439,1893306,2003,03/22/2006 09:58:07 PM,41.862762394,-87.657154087,"(41.862762394, -87.657154087)" -2755595,HJ394133,05/29/2003 12:30:00 PM,065XX S STONY ISLAND AVE,0560,ASSAULT,SIMPLE,RESTAURANT,true,false,0321,,5,42,08A,1187979,1861565,2003,03/22/2006 09:58:07 PM,41.775218436,-87.586438883,"(41.775218436, -87.586438883)" -2763870,HJ392344,05/28/2003 02:25:00 PM,047XX S UNION AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,"SCHOOL, PUBLIC, BUILDING",false,false,0935,,11,61,14,1172475,1873200,2003,03/22/2006 09:58:07 PM,41.807501584,-87.642931704,"(41.807501584, -87.642931704)" -2764492,HJ407985,05/27/2003 05:30:00 PM,041XX N LEAVITT ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1912,,47,5,05,1160905,1927668,2003,03/22/2006 09:58:07 PM,41.957213801,-87.683855398,"(41.957213801, -87.683855398)" -2788215,HJ437233,05/26/2003 05:30:00 PM,035XX N WILTON AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,2331,,44,6,11,,,2003,03/22/2006 09:58:07 PM,,, -2748594,HJ387869,05/25/2003 11:00:00 PM,052XX S NORMANDY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0811,,23,56,14,1132562,1869080,2003,03/22/2006 09:58:07 PM,41.796982129,-87.789419367,"(41.796982129, -87.789419367)" -2767259,HJ386134,05/25/2003 01:50:00 PM,052XX W NORTH AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,CURRENCY EXCHANGE,false,false,2532,,37,25,11,1141443,1910181,2003,03/22/2006 09:58:07 PM,41.909610179,-87.755837389,"(41.909610179, -87.755837389)" -2752497,HJ386709,05/25/2003 08:45:00 AM,022XX S SPAULDING AVE,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,1024,,22,30,06,1154748,1889010,2003,12/04/2014 12:43:35 PM,41.85125859,-87.707527272,"(41.85125859, -87.707527272)" -2746347,HJ385265,05/24/2003 07:00:00 PM,006XX W FULLERTON PKWY,0820,THEFT,$500 AND UNDER,ALLEY,false,false,1812,,43,7,06,1171501,1916157,2003,12/04/2014 12:43:35 PM,41.925400204,-87.645241182,"(41.925400204, -87.645241182)" -2885741,HJ382661,05/23/2003 06:40:28 PM,036XX S FEDERAL ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0211,002,3,35,18,1176248,1880524,2003,03/22/2006 09:58:07 PM,41.827515281,-87.628873268,"(41.827515281, -87.628873268)" -2745307,HJ381391,05/22/2003 10:00:00 PM,024XX W BRYN MAWR AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2011,,40,2,06,1159159,1937152,2003,12/04/2014 12:43:35 PM,41.983274498,-87.690012421,"(41.983274498, -87.690012421)" -2806403,HJ448897,05/22/2003 07:45:00 PM,029XX N LAWNDALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2523,025,30,21,08B,1150788,1919457,2003,06/11/2007 03:52:33 PM,41.934886564,-87.721264326,"(41.934886564, -87.721264326)" -2744658,HJ379539,05/22/2003 11:15:00 AM,001XX N KILDARE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1114,,28,26,08B,1147662,1900449,2003,03/22/2006 09:58:07 PM,41.882787357,-87.73324126,"(41.882787357, -87.73324126)" -2750694,HJ391100,05/21/2003 10:00:00 PM,018XX E 93RD ST,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,true,false,0413,,8,48,08A,1189972,1843627,2003,03/22/2006 09:58:07 PM,41.725947222,-87.579708892,"(41.725947222, -87.579708892)" -2741254,HJ377511,05/21/2003 12:22:00 PM,004XX N CLARK ST,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1831,,42,8,06,1175501,1903229,2003,12/04/2014 12:43:35 PM,41.889836158,-87.630932408,"(41.889836158, -87.630932408)" -2742309,HJ377016,05/21/2003 08:38:03 AM,011XX E 132ND ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,0533,,9,54,26,1186088,1817988,2003,03/22/2006 09:58:07 PM,41.655682958,-87.594741325,"(41.655682958, -87.594741325)" -2732394,HJ364902,05/15/2003 12:15:00 PM,080XX S CHAPPEL AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0414,,8,46,08B,1191225,1851783,2003,03/22/2006 09:58:07 PM,41.748297854,-87.574855847,"(41.748297854, -87.574855847)" -2731529,HJ363997,05/14/2003 11:04:11 PM,036XX S FEDERAL ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,STREET,true,false,0211,,3,35,26,1176261,1880543,2003,03/22/2006 09:58:07 PM,41.827567126,-87.628825001,"(41.827567126, -87.628825001)" -2729923,HJ363535,05/14/2003 04:00:00 PM,046XX N CENTRAL PARK AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1723,,33,14,05,1151585,1930797,2003,03/22/2006 09:58:07 PM,41.965988708,-87.718036122,"(41.965988708, -87.718036122)" -2726766,HJ359444,05/12/2003 06:45:00 PM,065XX S MARYLAND AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0321,,20,42,05,1182982,1861691,2003,03/22/2006 09:58:07 PM,41.775681823,-87.604753113,"(41.775681823, -87.604753113)" -2726169,HJ358117,05/12/2003 12:07:59 PM,026XX W PERSHING RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,true,false,0912,,12,58,08B,1159650,1878663,2003,03/22/2006 09:58:07 PM,41.822765812,-87.689820267,"(41.822765812, -87.689820267)" -2726125,HJ357703,05/12/2003 11:00:00 AM,033XX W WARNER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1724,017,33,16,07,1153598,1927446,2003,03/22/2006 09:58:07 PM,41.956753441,-87.710724189,"(41.956753441, -87.710724189)" -2726843,HJ357663,05/11/2003 10:30:00 PM,009XX W 32ND PL,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,0924,,11,60,06,1170205,1883382,2003,12/04/2014 12:43:35 PM,41.835491737,-87.650960813,"(41.835491737, -87.650960813)" -2722301,HJ353912,05/10/2003 09:15:00 AM,012XX N MILWAUKEE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,DEPARTMENT STORE,false,false,1433,,1,24,26,1165098,1908710,2003,03/22/2006 09:58:07 PM,41.905103744,-87.668980729,"(41.905103744, -87.668980729)" -2721644,HJ352983,05/09/2003 08:20:00 PM,076XX S CICERO AVE,0890,THEFT,FROM BUILDING,DEPARTMENT STORE,false,false,0833,,13,65,06,1145766,1853744,2003,03/22/2006 09:58:07 PM,41.754658085,-87.741385006,"(41.754658085, -87.741385006)" -2721905,HJ352769,05/09/2003 07:15:00 PM,027XX N MILWAUKEE AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,true,false,1412,,35,22,06,1153493,1918181,2003,12/04/2014 12:43:35 PM,41.931331697,-87.711357352,"(41.931331697, -87.711357352)" -2723552,HJ351202,05/09/2003 03:14:00 AM,052XX W GRAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,GROCERY FOOD STORE,false,false,2515,,37,19,14,1141369,1912898,2003,03/22/2006 09:58:07 PM,41.917067294,-87.756042055,"(41.917067294, -87.756042055)" -2732465,HJ350468,05/08/2003 06:16:25 PM,010XX N ST LOUIS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1121,,27,23,08B,1152812,1906658,2003,03/22/2006 09:58:07 PM,41.899725097,-87.714165624,"(41.899725097, -87.714165624)" -2736686,HJ350474,05/08/2003 06:02:57 PM,006XX E 131ST ST,1661,GAMBLING,GAME/DICE,STREET,true,false,0533,,9,54,19,1182781,1818517,2003,03/22/2006 09:58:07 PM,41.657211735,-87.606825473,"(41.657211735, -87.606825473)" -2720303,HJ350211,05/08/2003 02:36:00 PM,098XX S CARPENTER ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2223,,21,73,26,1171094,1839486,2003,03/22/2006 09:58:07 PM,41.715016439,-87.648980535,"(41.715016439, -87.648980535)" -2719030,HJ348125,05/07/2003 01:30:00 PM,067XX S LANGLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0321,,6,42,08B,1182016,1860399,2003,03/22/2006 09:58:07 PM,41.772158853,-87.608334263,"(41.772158853, -87.608334263)" -2720093,HJ351113,05/07/2003 12:00:00 PM,018XX W 21ST ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,1223,012,25,31,07,1164493,1890146,2003,03/22/2006 09:58:07 PM,41.854175431,-87.671728755,"(41.854175431, -87.671728755)" -2717743,HJ347712,05/07/2003 10:00:00 AM,039XX N JANSSEN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1923,,47,6,14,1165772,1926644,2003,03/22/2006 09:58:07 PM,41.954301288,-87.665992184,"(41.954301288, -87.665992184)" -2717026,HJ346962,05/07/2003 03:28:00 AM,077XX N HASKINS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,CTA GARAGE / OTHER PROPERTY,false,false,2422,,49,1,14,1163046,1951395,2003,03/22/2006 09:58:07 PM,42.022276655,-87.675314225,"(42.022276655, -87.675314225)" -2730246,HJ344561,05/06/2003 11:45:00 PM,048XX S KILDARE AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0815,,23,57,16,1148543,1872422,2003,03/22/2006 09:58:07 PM,41.805860655,-87.730728289,"(41.805860655, -87.730728289)" -2716389,HJ346742,05/06/2003 09:00:00 PM,095XX S BALTIMORE AVE,1020,ARSON,BY FIRE,VEHICLE NON-COMMERCIAL,false,false,0431,004,10,51,09,1198604,1841934,2003,03/22/2006 09:58:07 PM,41.721089762,-87.548146527,"(41.721089762, -87.548146527)" -2716495,HJ344385,05/05/2003 10:15:00 PM,007XX W 92ND ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,2223,,21,73,14,1173006,1843813,2003,03/22/2006 09:58:07 PM,41.726848424,-87.641850661,"(41.726848424, -87.641850661)" -2717554,HJ342919,05/05/2003 11:35:00 AM,002XX W 57TH ST,141C,WEAPONS VIOLATION,UNLAWFUL USE OTHER DANG WEAPON,"SCHOOL, PUBLIC, BUILDING",false,false,0711,,20,68,15,1175432,1867127,2003,03/22/2006 09:58:07 PM,41.790770977,-87.632267989,"(41.790770977, -87.632267989)" -2718002,HJ340534,05/04/2003 12:30:00 AM,039XX W ADAMS ST,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,1122,,28,26,03,1150423,1898767,2003,03/22/2006 09:58:07 PM,41.878118338,-87.723146602,"(41.878118338, -87.723146602)" -2710684,HJ339008,05/02/2003 09:35:00 PM,036XX W 57TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0822,,14,62,14,1153133,1866279,2003,03/22/2006 09:58:07 PM,41.788913828,-87.714056021,"(41.788913828, -87.714056021)" -2710340,HJ335726,05/01/2003 02:00:00 PM,066XX S OAKLEY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0832,,15,66,08B,1162253,1860679,2003,03/22/2006 09:58:07 PM,41.773361542,-87.680771744,"(41.773361542, -87.680771744)" -2737208,HJ334055,04/30/2003 07:30:00 PM,033XX W CHICAGO AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1121,,27,23,18,1153604,1905086,2003,03/22/2006 09:58:07 PM,41.895395657,-87.711298451,"(41.895395657, -87.711298451)" -2707800,HJ334007,04/30/2003 06:30:00 PM,030XX E CHELTENHAM PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0421,,7,43,08B,1197634,1853415,2003,03/22/2006 09:58:07 PM,41.75261875,-87.551317244,"(41.75261875, -87.551317244)" -2705645,HJ332245,04/29/2003 10:45:00 PM,087XX S COLFAX AVE,0330,ROBBERY,AGGRAVATED,RESIDENCE,false,false,0423,,7,46,03,1195050,1847403,2003,03/22/2006 09:58:07 PM,41.736185395,-87.560984074,"(41.736185395, -87.560984074)" -2706676,HJ334303,04/29/2003 07:20:00 PM,020XX W HADDON AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1312,,32,24,26,1162699,1907610,2003,03/22/2006 09:58:07 PM,41.902135907,-87.67782387,"(41.902135907, -87.67782387)" -2706125,HJ332722,04/29/2003 07:00:00 PM,009XX N PARKSIDE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1511,015,29,25,07,1138546,1905986,2003,03/22/2006 09:58:07 PM,41.898151626,-87.7665817,"(41.898151626, -87.7665817)" -2704766,HJ331372,04/29/2003 07:00:00 AM,050XX W CRYSTAL ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,2533,,37,25,14,1142412,1907809,2003,03/22/2006 09:58:07 PM,41.903083188,-87.75233667,"(41.903083188, -87.75233667)" -2704035,HJ328886,04/28/2003 03:00:00 PM,064XX S EVANS AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,false,true,0312,,20,42,04A,1182279,1862734,2003,03/22/2006 09:58:07 PM,41.778560228,-87.607297932,"(41.778560228, -87.607297932)" -2703305,HJ327392,04/27/2003 09:30:00 PM,036XX W 59TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,0822,,13,65,08B,1153126,1864953,2003,03/22/2006 09:58:07 PM,41.785275224,-87.714116704,"(41.785275224, -87.714116704)" -2701752,HJ328204,04/27/2003 07:30:00 PM,066XX W 64TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0812,,23,64,14,1132916,1861051,2003,03/22/2006 09:58:07 PM,41.774942902,-87.788307818,"(41.774942902, -87.788307818)" -2703206,HJ326429,04/26/2003 07:35:00 PM,024XX N LINCOLN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1933,,43,7,14,1170158,1916472,2003,03/22/2006 09:58:07 PM,41.926294047,-87.650166749,"(41.926294047, -87.650166749)" -2702975,HJ323783,04/26/2003 12:15:00 AM,044XX S KEATING AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0815,,23,56,14,1145467,1875041,2003,03/22/2006 09:58:07 PM,41.81310622,-87.741943967,"(41.81310622, -87.741943967)" -2699556,HJ322914,04/25/2003 04:35:36 PM,003XX E 57TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0234,,20,40,07,1179721,1867345,2003,03/22/2006 09:58:07 PM,41.791272138,-87.616534714,"(41.791272138, -87.616534714)" -2707944,HJ321543,04/24/2003 10:40:00 PM,108XX S THROOP ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2234,,34,75,18,1169640,1832489,2003,03/22/2006 09:58:07 PM,41.695847166,-87.654507737,"(41.695847166, -87.654507737)" -2697221,HJ319692,04/24/2003 12:00:00 AM,074XX N WINCHESTER AVE,0320,ROBBERY,STRONGARM - NO WEAPON,ALLEY,false,false,2424,,49,1,03,1162083,1949532,2003,03/22/2006 09:58:07 PM,42.017184808,-87.67891053,"(42.017184808, -87.67891053)" -2699944,HJ317710,04/23/2003 08:33:32 AM,045XX S PRAIRIE AVE,0325,ROBBERY,VEHICULAR HIJACKING,STREET,false,false,0221,002,3,38,03,1178762,1874943,2003,03/22/2006 09:58:07 PM,41.812143623,-87.619819865,"(41.812143623, -87.619819865)" -2801758,HJ454880,04/23/2003 07:50:00 AM,011XX N MONTICELLO AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1112,011,27,23,26,1151794,1907311,2003,03/22/2006 09:58:07 PM,41.901537093,-87.717887561,"(41.901537093, -87.717887561)" -2710030,HJ317238,04/22/2003 09:42:17 PM,019XX W BELMONT AVE,2220,LIQUOR LAW VIOLATION,ILLEGAL POSSESSION BY MINOR,STREET,true,false,1924,,32,5,22,1162870,1921300,2003,03/22/2006 09:58:07 PM,41.939698582,-87.67681079,"(41.939698582, -87.67681079)" -2694984,HJ318760,04/22/2003 07:30:00 PM,037XX W AINSLIE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1712,017,39,14,07,1150500,1932338,2003,03/22/2006 09:58:07 PM,41.970238627,-87.721985059,"(41.970238627, -87.721985059)" -2694742,HJ316017,04/22/2003 08:00:00 AM,009XX N AVERS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1112,011,27,23,05,1150585,1906125,2003,03/22/2006 09:58:07 PM,41.898306305,-87.722359407,"(41.898306305, -87.722359407)" -2695340,HJ315800,04/21/2003 05:30:00 PM,016XX E 87TH ST,0560,ASSAULT,SIMPLE,DRUG STORE,false,false,0412,,8,45,08A,1188760,1847661,2003,03/22/2006 09:58:07 PM,41.73704596,-87.584019822,"(41.73704596, -87.584019822)" -2691549,HJ315396,04/21/2003 01:30:00 PM,0000X E ELM ST,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1824,,42,8,06,1176876,1908081,2003,03/22/2006 09:58:07 PM,41.903119284,-87.625735906,"(41.903119284, -87.625735906)" -2725442,HJ312473,04/20/2003 03:35:00 PM,006XX N LATROBE AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),RESIDENCE,true,false,1524,,28,25,18,1141292,1903601,2003,03/22/2006 09:58:07 PM,41.89155668,-87.756554621,"(41.89155668, -87.756554621)" -2703414,HJ310904,04/19/2003 06:40:00 PM,055XX S MAY ST,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,true,false,0712,,16,68,18,1169633,1868161,2003,03/22/2006 09:58:07 PM,41.793736188,-87.653501504,"(41.793736188, -87.653501504)" -2689357,HJ309579,04/19/2003 03:15:00 AM,056XX W WEST END AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1512,,29,25,03,1139007,1900957,2003,03/22/2006 09:58:07 PM,41.884343051,-87.765010804,"(41.884343051, -87.765010804)" -2689007,HJ309503,04/19/2003 02:05:45 AM,021XX W 83RD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0614,,18,71,14,1163799,1849554,2003,03/22/2006 09:58:07 PM,41.742800621,-87.675416333,"(41.742800621, -87.675416333)" -2688217,HJ308151,04/18/2003 12:11:59 PM,002XX W 95TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,ABANDONED BUILDING,false,false,0511,,21,49,14,1176141,1841898,2003,03/22/2006 09:58:07 PM,41.721523727,-87.630424107,"(41.721523727, -87.630424107)" -2686320,HJ304874,04/16/2003 05:37:18 PM,087XX S SOUTH CHICAGO AVE,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,STREET,false,false,0423,,7,48,14,1193741,1847722,2003,03/22/2006 09:58:07 PM,41.737092895,-87.565769275,"(41.737092895, -87.565769275)" -2695929,HJ319946,04/16/2003 11:24:00 AM,012XX S MICHIGAN AVE,1170,DECEPTIVE PRACTICE,IMPERSONATION,RESIDENCE,false,false,0132,,2,33,11,1177377,1894963,2003,03/22/2006 09:58:07 PM,41.867111445,-87.624293779,"(41.867111445, -87.624293779)" -2682474,HJ302793,04/15/2003 06:35:00 PM,015XX W WASHBURNE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1231,,2,28,14,1166073,1894507,2003,03/22/2006 09:58:07 PM,41.866108849,-87.665805095,"(41.866108849, -87.665805095)" -2683064,HJ303009,04/15/2003 09:00:00 AM,018XX W GARFIELD BLVD,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PRIVATE, BUILDING",false,false,0932,,16,61,05,1165282,1868251,2003,03/22/2006 09:58:07 PM,41.79407647,-87.669453787,"(41.79407647, -87.669453787)" -2680921,HJ301524,04/14/2003 11:50:00 PM,033XX W POLK ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1134,,24,27,14,1154400,1896216,2003,03/22/2006 09:58:07 PM,41.87103961,-87.708612073,"(41.87103961, -87.708612073)" -2681070,HJ301460,04/14/2003 06:00:00 PM,003XX E 87TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0632,006,6,44,07,1180284,1846902,2003,03/22/2006 09:58:07 PM,41.735161487,-87.615096229,"(41.735161487, -87.615096229)" -2722206,HJ341386,04/14/2003 01:00:00 PM,076XX S CICERO AVE,0860,THEFT,RETAIL THEFT,RESTAURANT,true,false,0833,,13,65,06,1145766,1853744,2003,06/02/2010 10:34:17 AM,41.754658085,-87.741385006,"(41.754658085, -87.741385006)" -2678916,HJ299127,04/14/2003 02:40:00 AM,058XX S SACRAMENTO AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,false,false,0824,,14,63,03,1157341,1865679,2003,03/22/2006 09:58:07 PM,41.787183133,-87.698642843,"(41.787183133, -87.698642843)" -2681644,HJ298689,04/13/2003 09:06:30 PM,042XX S RICHMOND ST,0460,BATTERY,SIMPLE,STREET,true,false,0912,,14,58,08B,1157370,1876018,2003,03/22/2006 09:58:07 PM,41.815554154,-87.698256423,"(41.815554154, -87.698256423)" -2679905,HJ298553,04/13/2003 07:54:25 PM,112XX S EDBROOKE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0531,,9,49,08B,1179251,1830138,2003,03/22/2006 09:58:07 PM,41.689182441,-87.619389929,"(41.689182441, -87.619389929)" -2680572,HJ301111,04/13/2003 03:00:00 PM,122XX S PRINCETON AVE,0890,THEFT,FROM BUILDING,RESIDENCE,false,true,0523,,34,53,06,1176525,1823975,2003,03/22/2006 09:58:07 PM,41.672331785,-87.629554013,"(41.672331785, -87.629554013)" -2678193,HJ297284,04/13/2003 02:55:45 AM,103XX S EWING AVE,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,STREET,true,false,0432,,10,52,11,1202117,1837266,2003,06/11/2007 03:52:33 PM,41.70819176,-87.535437913,"(41.70819176, -87.535437913)" -2678094,HJ295467,04/11/2003 11:00:00 PM,0000X E 102ND PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0511,005,9,49,07,1178734,1837071,2003,03/22/2006 09:58:07 PM,41.708219309,-87.621072742,"(41.708219309, -87.621072742)" -2687576,HJ292511,04/10/2003 08:15:09 PM,059XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,0233,,20,40,26,1177324,1865895,2003,03/22/2006 09:58:07 PM,41.7873477,-87.625367723,"(41.7873477, -87.625367723)" -2675688,HJ290805,04/10/2003 03:40:00 AM,057XX S LAFLIN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0713,,16,67,14,1167277,1866686,2003,03/22/2006 09:58:07 PM,41.789739413,-87.662183016,"(41.789739413, -87.662183016)" -2673824,HJ290578,04/09/2003 10:00:00 PM,004XX W 45TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0935,,3,37,08B,1173979,1875053,2003,03/22/2006 09:58:07 PM,41.812553109,-87.637360446,"(41.812553109, -87.637360446)" -2672809,HJ290727,04/09/2003 05:51:00 PM,046XX S CICERO AVE,0460,BATTERY,SIMPLE,RESTAURANT,false,false,0814,,23,56,08B,1145094,1873703,2003,03/22/2006 09:58:07 PM,41.809441579,-87.74334586,"(41.809441579, -87.74334586)" -2675782,HJ289926,04/09/2003 05:22:00 PM,020XX N KIMBALL AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,false,false,1413,,35,22,26,1153417,1913438,2003,03/22/2006 09:58:07 PM,41.918318026,-87.711762983,"(41.918318026, -87.711762983)" -2690953,HJ313839,04/07/2003 12:00:00 PM,054XX S KIMBARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2131,,4,41,14,1185534,1869843,2003,03/22/2006 09:58:07 PM,41.797991872,-87.595141278,"(41.797991872, -87.595141278)" -2667583,HJ283299,04/06/2003 11:05:00 AM,025XX E 79TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0421,,7,43,08B,1194397,1853116,2003,03/22/2006 09:58:07 PM,41.751878396,-87.563189066,"(41.751878396, -87.563189066)" -2665041,HJ280666,04/04/2003 06:00:00 PM,053XX S BLACKSTONE AVE,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,STREET,false,false,2131,,4,41,11,1186771,1870408,2003,03/22/2006 09:58:07 PM,41.799513034,-87.590587149,"(41.799513034, -87.590587149)" -2663492,HJ278703,04/03/2003 04:00:00 PM,028XX W SHERWIN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2411,,50,2,14,1156278,1948571,2003,03/22/2006 09:58:07 PM,42.014667592,-87.700297714,"(42.014667592, -87.700297714)" -2665045,HJ280676,04/03/2003 02:25:00 PM,073XX S CARPENTER ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0733,,17,68,08B,1170629,1855953,2003,03/22/2006 09:58:07 PM,41.760214302,-87.650204856,"(41.760214302, -87.650204856)" -2663850,HJ276078,04/02/2003 04:25:50 PM,049XX W MADISON ST,0560,ASSAULT,SIMPLE,RESTAURANT,false,false,1533,,28,25,08A,1143161,1899522,2003,03/22/2006 09:58:07 PM,41.880328732,-87.749792429,"(41.880328732, -87.749792429)" -2766902,HJ407382,04/01/2003 06:00:00 AM,015XX N HARDING AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2535,,30,23,07,1149719,1910147,2003,03/22/2006 09:58:07 PM,41.909359954,-87.7254355,"(41.909359954, -87.7254355)" -2663646,HJ271347,03/31/2003 01:17:50 PM,054XX W DIVISION ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,ALLEY,false,false,1524,015,37,25,07,1139875,1907424,2003,03/22/2006 09:58:07 PM,41.902073475,-87.761665129,"(41.902073475, -87.761665129)" -2668893,HJ271106,03/31/2003 11:45:00 AM,065XX S WOOD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0725,,15,67,18,1165516,1860921,2003,03/22/2006 09:58:07 PM,41.773957058,-87.668803452,"(41.773957058, -87.668803452)" -2656378,HJ270450,03/31/2003 02:00:00 AM,015XX N MILWAUKEE AVE,0810,THEFT,OVER $500,BAR OR TAVERN,false,false,1424,,1,24,06,1163167,1910229,2003,12/04/2014 12:43:35 PM,41.909312808,-87.676031127,"(41.909312808, -87.676031127)" -2656737,HJ269927,03/30/2003 05:00:00 PM,032XX W 38TH PL,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0913,009,12,58,05,1155023,1878842,2003,03/22/2006 09:58:07 PM,41.823350855,-87.70679017,"(41.823350855, -87.70679017)" -2675147,HJ269204,03/30/2003 11:30:00 AM,095XX S BISHOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2213,,21,73,18,1168361,1841632,2003,03/22/2006 09:58:07 PM,41.720964566,-87.658928445,"(41.720964566, -87.658928445)" -2656632,HJ267146,03/28/2003 07:00:00 PM,030XX N PARKSIDE AVE,0810,THEFT,OVER $500,DRIVEWAY - RESIDENTIAL,false,false,2514,,31,19,06,1138213,1919702,2003,12/04/2014 12:43:35 PM,41.935795925,-87.767472403,"(41.935795925, -87.767472403)" -2657511,HJ266236,03/28/2003 05:21:00 PM,030XX N KILPATRICK AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,2521,,31,19,26,1144481,1919605,2003,03/22/2006 09:58:07 PM,41.93541391,-87.744439194,"(41.93541391, -87.744439194)" -2653961,HJ266576,03/28/2003 04:00:00 PM,023XX S LAKE SHORE DR E,0890,THEFT,FROM BUILDING,OTHER,false,false,0133,,2,33,06,1180538,1889157,2003,03/22/2006 09:58:07 PM,41.851107212,-87.612868333,"(41.851107212, -87.612868333)" -2731317,HJ365741,03/28/2003 12:00:00 PM,011XX E 100TH PL,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,GAS STATION,false,false,0511,,8,50,11,1185335,1838328,2003,03/22/2006 09:58:07 PM,41.711516297,-87.596860359,"(41.711516297, -87.596860359)" -2653783,HJ265222,03/28/2003 07:50:00 AM,061XX S PEORIA ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,true,true,0712,,16,68,04A,1171397,1864203,2003,03/22/2006 09:58:07 PM,41.782836528,-87.647148887,"(41.782836528, -87.647148887)" -2672532,HJ264027,03/27/2003 04:21:10 PM,076XX S GREENWOOD AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0624,,8,69,18,1185024,1854708,2003,03/22/2006 09:58:07 PM,41.7564721,-87.597486436,"(41.7564721, -87.597486436)" -2656840,HJ263692,03/27/2003 12:57:06 PM,015XX S WABASH AVE,1570,SEX OFFENSE,PUBLIC INDECENCY,VEHICLE NON-COMMERCIAL,true,false,0132,,2,33,17,1177052,1892908,2003,03/22/2006 09:58:07 PM,41.861479754,-87.625549082,"(41.861479754, -87.625549082)" -2962974,HJ654724,03/27/2003 12:00:00 AM,001XX W DIVERSEY PKWY,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,OTHER,true,false,2333,019,44,6,11,1174773,1919031,2003,03/22/2006 09:58:07 PM,41.933213888,-87.633132166,"(41.933213888, -87.633132166)" -2650916,HJ262745,03/26/2003 11:15:00 PM,028XX N DRAKE AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,1412,,35,21,04A,1152181,1919065,2003,03/22/2006 09:58:07 PM,41.93378348,-87.716155357,"(41.93378348, -87.716155357)" -2653043,HJ262169,03/26/2003 05:20:00 PM,019XX W GARFIELD BLVD,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,0915,,16,61,26,1164031,1868223,2003,03/22/2006 09:58:07 PM,41.794026053,-87.67404194,"(41.794026053, -87.67404194)" -2651117,HJ261038,03/26/2003 08:00:00 AM,054XX W AUGUSTA BLVD,0440,BATTERY,AGG: HANDS/FIST/FEET NO/MINOR INJURY,RESIDENCE,false,false,1524,,37,25,08B,1139397,1906164,2003,03/22/2006 09:58:07 PM,41.898624611,-87.76345166,"(41.898624611, -87.76345166)" -2654534,HJ257295,03/24/2003 11:25:00 AM,063XX S MARYLAND AVE,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,0312,,20,42,03,1182961,1863189,2003,03/22/2006 09:58:07 PM,41.779792962,-87.604783572,"(41.779792962, -87.604783572)" -2645118,HJ256258,03/23/2003 04:00:00 PM,041XX W NEWPORT AVE,0560,ASSAULT,SIMPLE,ALLEY,false,false,1731,,30,16,08A,1148150,1922696,2003,03/22/2006 09:58:07 PM,41.943825928,-87.730875462,"(41.943825928, -87.730875462)" -2646462,HJ255666,03/23/2003 03:02:12 PM,026XX S TROY ST,0460,BATTERY,SIMPLE,STREET,false,false,1033,,12,30,08B,1155820,1886451,2003,03/22/2006 09:58:07 PM,41.844214893,-87.703661633,"(41.844214893, -87.703661633)" -2668879,HJ254390,03/22/2003 07:00:00 PM,0000X N KENTON AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1113,,28,25,16,1145748,1900020,2003,03/22/2006 09:58:07 PM,41.881646642,-87.740280495,"(41.881646642, -87.740280495)" -2649281,HJ260295,03/22/2003 10:00:00 AM,046XX S SPRINGFIELD AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0821,008,14,57,07,1151110,1873275,2003,03/22/2006 09:58:07 PM,41.808151635,-87.721291107,"(41.808151635, -87.721291107)" -2642154,HJ252327,03/21/2003 05:45:00 PM,034XX N NAGLE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1632,,36,17,26,1132797,1922290,2003,03/22/2006 09:58:07 PM,41.942994059,-87.787316383,"(41.942994059, -87.787316383)" -2645649,HJ257061,03/21/2003 04:00:00 PM,015XX W 99TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,2213,,19,72,14,1167675,1839122,2003,03/22/2006 09:58:07 PM,41.714091457,-87.661512859,"(41.714091457, -87.661512859)" -2642766,HJ252752,03/21/2003 04:00:00 PM,078XX S ESSEX AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0421,,7,43,05,1194255,1853642,2003,03/22/2006 09:58:07 PM,41.753325268,-87.563692178,"(41.753325268, -87.563692178)" -2643265,HJ251084,03/21/2003 04:55:00 AM,076XX S COLFAX AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0421,,7,43,14,1194806,1854932,2003,03/22/2006 09:58:07 PM,41.756851583,-87.561630607,"(41.756851583, -87.561630607)" -2640432,HJ250177,03/20/2003 03:30:00 PM,001XX N STATE ST,0890,THEFT,FROM BUILDING,DEPARTMENT STORE,false,false,0122,,42,32,06,1176391,1900924,2003,03/22/2006 09:58:07 PM,41.883491075,-87.627733579,"(41.883491075, -87.627733579)" -2638580,HJ248460,03/19/2003 06:00:00 PM,048XX S PRAIRIE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0224,,3,38,08A,1178828,1872640,2003,03/22/2006 09:58:07 PM,41.805822488,-87.619647929,"(41.805822488, -87.619647929)" -2642493,HJ244030,03/17/2003 04:00:00 PM,091XX S SOUTH CHICAGO AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0423,,7,48,06,1196850,1844785,2003,03/22/2006 09:58:07 PM,41.728956871,-87.554476439,"(41.728956871, -87.554476439)" -2637544,HJ242939,03/17/2003 08:00:00 AM,056XX W FULLERTON AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,2515,,30,19,06,1138640,1915439,2003,03/22/2006 09:58:07 PM,41.924090052,-87.766006787,"(41.924090052, -87.766006787)" -2633487,HJ242361,03/16/2003 09:34:28 PM,007XX S HOLDEN CT,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0132,,2,32,26,1176651,1897119,2003,03/22/2006 09:58:07 PM,41.873044066,-87.626893856,"(41.873044066, -87.626893856)" -2632271,HJ240944,03/16/2003 04:02:14 AM,012XX S LAFLIN ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,1231,,2,28,15,1166519,1894782,2003,03/22/2006 09:58:07 PM,41.866853944,-87.66415993,"(41.866853944, -87.66415993)" -2632002,HJ238968,03/15/2003 07:06:44 AM,064XX N RIDGE BLVD,0560,ASSAULT,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2412,,50,2,08A,1162480,1943037,2003,03/22/2006 09:58:07 PM,41.999354032,-87.677632723,"(41.999354032, -87.677632723)" -2632794,HJ239704,03/14/2003 07:00:00 PM,067XX S COTTAGE GROVE AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0321,,20,42,06,1182672,1860755,2003,12/04/2014 12:43:35 PM,41.773120551,-87.605918552,"(41.773120551, -87.605918552)" -2651293,HJ235155,03/13/2003 11:35:00 AM,065XX S STEWART AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,0722,,20,68,18,1174791,1861551,2003,03/22/2006 09:58:07 PM,41.775484151,-87.634784474,"(41.775484151, -87.634784474)" -2627298,HJ234372,03/12/2003 07:00:00 PM,008XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1833,,42,8,06,1177297,1906280,2003,03/22/2006 09:58:07 PM,41.898167718,-87.624244187,"(41.898167718, -87.624244187)" -2641731,HJ231947,03/11/2003 08:14:00 PM,035XX W 13TH PL,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1021,,24,29,18,1152611,1893627,2003,03/22/2006 09:58:07 PM,41.863970645,-87.715248617,"(41.863970645, -87.715248617)" -2628382,HJ231891,03/11/2003 05:30:00 PM,076XX S INGLESIDE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0624,,8,69,14,1183846,1854523,2003,03/22/2006 09:58:07 PM,41.755992009,-87.601809291,"(41.755992009, -87.601809291)" -2646370,HJ230007,03/10/2003 08:30:00 PM,016XX N AUSTIN AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,2531,,29,25,18,1136199,1910235,2003,03/22/2006 09:58:07 PM,41.90985363,-87.775100617,"(41.90985363, -87.775100617)" -2623302,HJ227459,03/09/2003 02:12:12 PM,002XX W 103RD ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,false,true,0512,,34,49,08B,1176732,1836606,2003,03/22/2006 09:58:07 PM,41.706988491,-87.628418088,"(41.706988491, -87.628418088)" -2620618,HJ224040,03/07/2003 04:45:00 PM,063XX S ASHLAND AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0725,,16,67,08A,1166795,1862762,2003,03/22/2006 09:58:07 PM,41.778981782,-87.664062362,"(41.778981782, -87.664062362)" -2617018,HJ220750,03/06/2003 12:55:00 AM,031XX W PALMER BLVD,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,false,false,1414,,35,22,03,1155104,1914639,2003,03/22/2006 09:58:07 PM,41.921579948,-87.705532493,"(41.921579948, -87.705532493)" -2616705,HJ218791,03/04/2003 10:00:00 PM,069XX S LAFAYETTE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,0731,,6,69,26,1176984,1859268,2003,03/22/2006 09:58:07 PM,41.769170188,-87.626813981,"(41.769170188, -87.626813981)" -2625740,HJ217467,03/04/2003 10:45:00 AM,020XX W CHICAGO AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1313,,1,24,06,1162716,1905296,2003,03/22/2006 09:58:07 PM,41.895785757,-87.67782637,"(41.895785757, -87.67782637)" -2619027,HJ216531,03/03/2003 07:00:27 PM,040XX S PRAIRIE AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0214,,3,38,26,1178663,1878377,2003,03/22/2006 09:58:07 PM,41.82156906,-87.62007844,"(41.82156906, -87.62007844)" -2640033,HJ247251,03/03/2003 09:00:00 AM,038XX S ASHLAND AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,0922,,11,59,26,1166214,1879402,2003,03/22/2006 09:58:07 PM,41.824656274,-87.665718539,"(41.824656274, -87.665718539)" -2612763,HJ215058,03/03/2003 12:08:00 AM,010XX W BALMORAL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2023,,48,77,26,1168456,1936084,2003,03/22/2006 09:58:07 PM,41.980147173,-87.655851076,"(41.980147173, -87.655851076)" -2616094,HJ213353,03/02/2003 01:53:00 AM,057XX S THROOP ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0713,,16,67,18,1168593,1866881,2003,03/22/2006 09:58:07 PM,41.790246223,-87.657352015,"(41.790246223, -87.657352015)" -2615265,HJ213132,03/02/2003 12:15:00 AM,022XX W MADISON ST,0460,BATTERY,SIMPLE,STREET,true,false,1211,,2,28,08B,1161094,1899928,2003,03/22/2006 09:58:07 PM,41.881089359,-87.683932823,"(41.881089359, -87.683932823)" -2612167,HJ213932,03/01/2003 10:00:00 PM,012XX S KEELER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1011,,24,29,14,1148538,1894071,2003,03/22/2006 09:58:07 PM,41.865268529,-87.730189101,"(41.865268529, -87.730189101)" -2611611,HJ211723,03/01/2003 07:20:00 AM,005XX E 92ND ST,0320,ROBBERY,STRONGARM - NO WEAPON,RESIDENCE,true,true,0633,,6,44,03,1181572,1844056,2003,03/22/2006 09:58:07 PM,41.727322134,-87.61046513,"(41.727322134, -87.61046513)" -2613254,HJ211363,03/01/2003 12:36:40 AM,048XX W HADDON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1531,,37,25,08B,1143977,1907176,2003,03/22/2006 09:58:07 PM,41.901316937,-87.746603948,"(41.901316937, -87.746603948)" -6487344,HP563459,03/01/2003 12:01:00 AM,042XX N KILDARE AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1722,,38,16,06,,,2003,09/18/2008 01:03:58 AM,,, -2633041,HJ211415,02/28/2003 11:55:00 PM,028XX W 23RD PL,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,true,false,1033,,12,30,15,1157832,1888309,2003,03/22/2006 09:58:07 PM,41.849272736,-87.696227332,"(41.849272736, -87.696227332)" -2615943,HJ211206,02/28/2003 10:20:00 PM,079XX S EAST END AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0414,,8,46,18,1188982,1852928,2003,03/22/2006 09:58:07 PM,41.751493803,-87.583038241,"(41.751493803, -87.583038241)" -2612514,HJ210022,02/28/2003 11:51:01 AM,065XX W DIVERSEY AVE,0820,THEFT,$500 AND UNDER,OTHER,true,false,2512,,36,19,06,1132544,1917860,2003,12/04/2014 12:43:35 PM,41.930842052,-87.788349809,"(41.930842052, -87.788349809)" -2610440,HJ209311,02/28/2003 12:15:00 AM,003XX N CENTRAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1523,,28,25,08B,1139018,1901829,2003,03/22/2006 09:58:07 PM,41.886735731,-87.764949201,"(41.886735731, -87.764949201)" -2631190,HJ239109,02/27/2003 07:00:00 PM,020XX W 62ND ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0714,,15,67,26,1163846,1863489,2003,03/22/2006 09:58:07 PM,41.78103924,-87.674853278,"(41.78103924, -87.674853278)" -2613592,HJ216746,02/27/2003 01:45:00 PM,030XX W ADDISON ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE PORCH/HALLWAY,false,false,1733,,33,21,26,1155568,1923739,2003,03/22/2006 09:58:07 PM,41.946541687,-87.703582028,"(41.946541687, -87.703582028)" -2606792,HJ206875,02/25/2003 12:00:00 PM,055XX W JACKSON BLVD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1522,,29,25,26,1139174,1898073,2003,03/22/2006 09:58:07 PM,41.876425944,-87.764467747,"(41.876425944, -87.764467747)" -2602745,HJ201395,02/24/2003 02:20:03 AM,108XX S HALSTED ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,2233,,34,49,14,1172939,1833227,2003,03/22/2006 09:58:07 PM,41.697800369,-87.642407253,"(41.697800369, -87.642407253)" -2602312,HJ201560,02/24/2003 12:00:00 AM,060XX N CLAREMONT AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2413,,40,2,14,1159508,1940398,2003,03/22/2006 09:58:07 PM,41.992174452,-87.688639001,"(41.992174452, -87.688639001)" -2602012,HJ201247,02/23/2003 10:30:00 PM,076XX S EBERHART AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0624,,6,69,26,1180930,1854727,2003,03/22/2006 09:58:07 PM,41.756619351,-87.612489414,"(41.756619351, -87.612489414)" -2601585,HJ200124,02/22/2003 05:00:00 PM,054XX S UNIVERSITY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2131,,4,41,14,1184756,1869741,2003,03/22/2006 09:58:07 PM,41.797730274,-87.5979975,"(41.797730274, -87.5979975)" -2600574,HJ198379,02/22/2003 12:45:00 AM,016XX W FULLERTON AVE,0870,THEFT,POCKET-PICKING,TAVERN/LIQUOR STORE,false,false,1811,,32,7,06,1164575,1915959,2003,03/22/2006 09:58:07 PM,41.925006571,-87.670696134,"(41.925006571, -87.670696134)" -2605695,HJ193227,02/19/2003 06:50:00 PM,001XX N PINE AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1523,,29,25,18,1139449,1900204,2003,03/22/2006 09:58:07 PM,41.882268679,-87.763406064,"(41.882268679, -87.763406064)" -2598959,HJ192819,02/19/2003 02:30:00 PM,025XX N RIDGEWAY AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,2524,,35,22,06,1150920,1916428,2003,12/04/2014 12:43:35 PM,41.926572145,-87.720858739,"(41.926572145, -87.720858739)" -2592685,HJ187855,02/17/2003 02:38:42 AM,005XX E 51ST ST,0560,ASSAULT,SIMPLE,HOSPITAL BUILDING/GROUNDS,true,false,0223,,3,38,08A,1180379,1871346,2003,03/22/2006 09:58:07 PM,41.802236159,-87.613999224,"(41.802236159, -87.613999224)" -2604624,HJ187157,02/16/2003 04:10:39 PM,061XX S EVANS AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0313,,20,42,18,1182326,1864087,2003,03/22/2006 09:58:07 PM,41.782271896,-87.607083736,"(41.782271896, -87.607083736)" -2591672,HJ186851,02/16/2003 11:00:00 AM,091XX S BURNSIDE AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0633,,6,49,06,1179896,1844301,2003,12/04/2014 12:43:35 PM,41.728032903,-87.616597041,"(41.728032903, -87.616597041)" -2594743,HJ190667,02/16/2003 12:00:00 AM,017XX W NEWPORT AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1924,,32,6,06,1164088,1922910,2003,12/04/2014 12:43:35 PM,41.944090823,-87.672288653,"(41.944090823, -87.672288653)" -2591201,HJ186052,02/15/2003 09:57:00 PM,056XX S MARSHFIELD AVE,2860,PUBLIC PEACE VIOLATION,FALSE POLICE REPORT,RESIDENCE,true,false,0715,,15,67,24,1166268,1867147,2003,03/22/2006 09:58:07 PM,41.791026008,-87.6658696,"(41.791026008, -87.6658696)" -2604309,HJ183992,02/14/2003 06:55:00 PM,0000X N LATROBE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1522,,28,25,18,1141346,1899733,2003,03/22/2006 09:58:07 PM,41.880941414,-87.756451798,"(41.880941414, -87.756451798)" -2590465,HJ184879,02/14/2003 06:30:00 PM,032XX N KIMBALL AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,1732,,35,21,06,1153112,1921344,2003,03/22/2006 09:58:07 PM,41.940018791,-87.712673315,"(41.940018791, -87.712673315)" -2597316,HJ183689,02/14/2003 04:25:00 PM,0000X E JACKSON BLVD,0820,THEFT,$500 AND UNDER,OTHER,false,false,0123,,42,32,06,1176557,1899045,2003,12/04/2014 12:43:35 PM,41.878331246,-87.627180794,"(41.878331246, -87.627180794)" -2593378,HJ189239,02/14/2003 03:00:00 PM,040XX W SCHOOL ST,0810,THEFT,OVER $500,STREET,false,false,1731,,31,16,06,1148689,1921578,2003,12/04/2014 12:43:35 PM,41.940747631,-87.728923305,"(41.940747631, -87.728923305)" -2593088,HJ183259,02/14/2003 12:20:00 PM,023XX W MADISON ST,1330,CRIMINAL TRESPASS,TO LAND,DRUG STORE,true,false,1332,,2,28,26,1160633,1899995,2003,03/22/2006 09:58:07 PM,41.881282773,-87.68562373,"(41.881282773, -87.68562373)" -2589667,HJ183549,02/14/2003 09:50:00 AM,023XX W JACKSON BLVD,0560,ASSAULT,SIMPLE,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,1211,,2,28,08A,1160775,1898600,2003,03/22/2006 09:58:07 PM,41.877451825,-87.685141,"(41.877451825, -87.685141)" -2601053,HJ183083,02/14/2003 09:15:00 AM,056XX S ROCKWELL ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0824,,16,63,08B,1159963,1867082,2003,03/22/2006 09:58:07 PM,41.790979639,-87.688990515,"(41.790979639, -87.688990515)" -2589773,HJ183889,02/14/2003 07:00:00 AM,041XX W IRVING PARK RD,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,1722,,38,16,06,1147749,1926295,2003,12/04/2014 12:43:35 PM,41.953709602,-87.732256595,"(41.953709602, -87.732256595)" -2589250,HJ181411,02/13/2003 01:50:00 PM,035XX S WALLACE ST,2840,PUBLIC PEACE VIOLATION,FALSE FIRE ALARM,"SCHOOL, PUBLIC, BUILDING",false,false,0925,,11,60,24,1172909,1881666,2003,03/22/2006 09:58:07 PM,41.830723509,-87.641089764,"(41.830723509, -87.641089764)" -2588116,HJ181489,02/13/2003 11:00:00 AM,070XX S LOWE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0732,,6,68,26,1173144,1858192,2003,03/22/2006 09:58:07 PM,41.766303214,-87.640921304,"(41.766303214, -87.640921304)" -2606162,HJ202732,02/12/2003 12:00:00 PM,001XX E PEARSON ST,0890,THEFT,FROM BUILDING,RESIDENCE,true,false,1833,,42,8,06,1177734,1906117,2003,03/22/2006 09:58:07 PM,41.897710516,-87.622644102,"(41.897710516, -87.622644102)" -2590248,HJ177528,02/11/2003 01:20:00 PM,035XX E 114TH ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0433,,10,52,08B,1201607,1829942,2003,03/22/2006 09:58:07 PM,41.688107014,-87.537553324,"(41.688107014, -87.537553324)" -2587570,HJ176689,02/11/2003 12:20:00 AM,026XX N PULASKI RD,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,COMMERCIAL / BUSINESS OFFICE,true,false,2524,,30,22,17,1149317,1917019,2003,03/22/2006 09:58:07 PM,41.928225171,-87.726733718,"(41.928225171, -87.726733718)" -2584502,HJ176455,02/10/2003 09:20:00 PM,007XX N WELLS ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,GAS STATION,true,false,1831,,42,8,04A,1174553,1905589,2003,03/22/2006 09:58:07 PM,41.89633337,-87.634343239,"(41.89633337, -87.634343239)" -2582674,HJ174847,02/10/2003 07:08:00 AM,047XX W 47TH ST,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,SIDEWALK,false,false,0815,,23,56,03,1145751,1873014,2003,03/22/2006 09:58:07 PM,41.807538456,-87.740953479,"(41.807538456, -87.740953479)" -2581790,HJ173340,02/09/2003 03:30:00 AM,010XX N DEARBORN ST,0460,BATTERY,SIMPLE,APARTMENT,true,false,1824,,42,8,08B,1175702,1907500,2003,03/22/2006 09:58:07 PM,41.901551484,-87.630065689,"(41.901551484, -87.630065689)" -2613053,HJ215215,02/08/2003 12:00:00 PM,001XX E CHICAGO AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,SMALL RETAIL STORE,false,false,1833,,42,8,11,1177130,1905711,2003,03/22/2006 09:58:07 PM,41.896610141,-87.624874814,"(41.896610141, -87.624874814)" -2584848,HJ176985,02/07/2003 05:00:00 PM,029XX W GRAND AVE,0810,THEFT,OVER $500,DRIVEWAY - RESIDENTIAL,false,false,1311,,26,24,06,1156658,1905262,2003,12/04/2014 12:43:35 PM,41.895817311,-87.700077036,"(41.895817311, -87.700077036)" -2628499,HJ170607,02/07/2003 03:23:13 PM,005XX N LARAMIE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,ALLEY,true,false,1532,,28,25,26,1141649,1902910,2003,03/22/2006 09:58:07 PM,41.8896539,-87.755260604,"(41.8896539, -87.755260604)" -2579928,HJ169412,02/06/2003 08:00:00 PM,031XX W HARRISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,true,false,1134,,28,27,08B,1155221,1897228,2003,03/22/2006 09:58:07 PM,41.873800207,-87.705570698,"(41.873800207, -87.705570698)" -2577532,HJ165466,02/04/2003 05:40:00 PM,105XX S COTTAGE GROVE AVE,0880,THEFT,PURSE-SNATCHING,STREET,false,false,0512,,9,50,06,1182451,1835465,2003,03/22/2006 09:58:07 PM,41.703727064,-87.607510551,"(41.703727064, -87.607510551)" -2574997,HJ164218,02/04/2003 02:00:00 AM,071XX S RHODES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0323,,6,69,08B,1181106,1857617,2003,03/22/2006 09:58:07 PM,41.764545766,-87.611755571,"(41.764545766, -87.611755571)" -2573719,HJ162443,02/03/2003 08:30:00 AM,093XX S MERRILL AVE,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,OTHER,true,false,0413,,7,48,02,1192110,1843094,2003,03/22/2006 09:58:07 PM,41.724432987,-87.571894658,"(41.724432987, -87.571894658)" -2574299,HJ164547,01/31/2003 07:50:00 AM,077XX S COLFAX AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0421,,7,43,14,1194910,1853905,2003,03/22/2006 09:58:07 PM,41.754030856,-87.561283249,"(41.754030856, -87.561283249)" -2576546,HJ155022,01/30/2003 09:31:12 AM,052XX W QUINCY ST,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,SIDEWALK,true,false,1522,,29,25,18,1141287,1898535,2003,03/22/2006 09:58:07 PM,41.877655038,-87.756698001,"(41.877655038, -87.756698001)" -2574150,HJ154439,01/29/2003 09:16:00 PM,023XX N NEWLAND AVE,0560,ASSAULT,SIMPLE,APARTMENT,false,true,2512,,36,18,08A,1129729,1915121,2003,03/22/2006 09:58:07 PM,41.923374532,-87.798757305,"(41.923374532, -87.798757305)" -2577230,HJ154409,01/29/2003 08:45:00 PM,056XX S SACRAMENTO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0824,,14,63,18,1157293,1867321,2003,03/22/2006 09:58:07 PM,41.791689984,-87.698774403,"(41.791689984, -87.698774403)" -2566433,HJ151111,01/28/2003 09:20:40 AM,006XX W WASHINGTON BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,COMMERCIAL / BUSINESS OFFICE,false,false,0111,,27,28,14,1171775,1900726,2003,03/22/2006 09:58:07 PM,41.883050646,-87.644689562,"(41.883050646, -87.644689562)" -2567646,HJ154510,01/28/2003 01:30:00 AM,032XX S EMERALD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0924,,11,60,26,1171788,1883417,2003,03/22/2006 09:58:07 PM,41.835553126,-87.645151277,"(41.835553126, -87.645151277)" -2561777,HJ148794,01/27/2003 02:38:00 AM,018XX S THROOP ST,1570,SEX OFFENSE,PUBLIC INDECENCY,RESIDENCE PORCH/HALLWAY,true,false,1222,,25,31,17,1168024,1891511,2003,03/22/2006 09:58:07 PM,41.857845721,-87.658729272,"(41.857845721, -87.658729272)" -2562567,HJ148802,01/27/2003 01:47:00 AM,0000X W DIVISION ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,true,false,1824,,42,8,08B,1175999,1908331,2003,03/22/2006 09:58:07 PM,41.903825101,-87.628949725,"(41.903825101, -87.628949725)" -2562672,HJ149434,01/25/2003 10:00:00 PM,006XX S ASHLAND AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1213,,25,28,26,1165885,1896981,2003,03/22/2006 09:58:07 PM,41.872901724,-87.666424695,"(41.872901724, -87.666424695)" -2560395,HJ146078,01/25/2003 11:00:00 AM,062XX S UNIVERSITY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0314,,20,42,26,1184884,1863921,2003,06/11/2007 03:52:33 PM,41.781756709,-87.597710726,"(41.781756709, -87.597710726)" -2569549,HJ144969,01/24/2003 07:55:55 PM,015XX S SAWYER AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1022,,24,29,18,,,2003,03/22/2006 09:58:07 PM,,, -2564670,HJ144000,01/24/2003 11:01:02 AM,022XX S BLUE ISLAND AVE,0460,BATTERY,SIMPLE,SIDEWALK,true,true,1034,,25,31,08B,1165336,1889137,2003,03/22/2006 09:58:07 PM,41.851388775,-87.668663285,"(41.851388775, -87.668663285)" -2560282,HJ143622,01/24/2003 01:30:00 AM,073XX S GREEN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,false,true,0733,,17,68,08B,1171860,1856442,2003,03/22/2006 09:58:07 PM,41.761529265,-87.6456789,"(41.761529265, -87.6456789)" -3762471,HL122910,01/24/2003 12:01:00 AM,072XX S HALSTED ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0732,007,17,68,06,1172264,1856669,2003,03/22/2006 09:58:07 PM,41.76214331,-87.644191541,"(41.76214331, -87.644191541)" -2567809,HJ142661,01/23/2003 03:00:00 PM,005XX W 104TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2232,,34,49,18,1174673,1835971,2003,03/22/2006 09:58:07 PM,41.705291963,-87.63597693,"(41.705291963, -87.63597693)" -2554173,HJ138832,01/20/2003 06:00:00 PM,036XX N LAMON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1634,,38,15,07,1142984,1923868,2003,03/22/2006 09:58:07 PM,41.947140068,-87.749834172,"(41.947140068, -87.749834172)" -2553663,HJ136924,01/20/2003 01:30:00 PM,115XX S PEORIA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,0524,,34,53,08B,1172114,1828300,2003,03/22/2006 09:58:07 PM,41.684298022,-87.645571997,"(41.684298022, -87.645571997)" -2558398,HJ136522,01/20/2003 09:02:56 AM,098XX S ABERDEEN ST,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,RESIDENCE,false,false,2223,,21,73,26,1170756,1839674,2003,03/22/2006 09:58:07 PM,41.715539704,-87.650212979,"(41.715539704, -87.650212979)" -2548751,HJ130419,01/16/2003 10:40:00 PM,034XX W FLOURNOY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1133,,24,27,08B,1153173,1896770,2003,03/22/2006 09:58:07 PM,41.872584262,-87.713102163,"(41.872584262, -87.713102163)" -2549237,HJ131334,01/14/2003 09:28:00 AM,028XX W DEVON AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,2413,,50,2,06,1156200,1942288,2003,03/22/2006 09:58:07 PM,41.997428385,-87.700755546,"(41.997428385, -87.700755546)" -2558340,HJ122611,01/12/2003 10:30:00 PM,070XX N CLARK ST,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,SIDEWALK,true,false,2424,,49,1,18,1163345,1946915,2003,03/22/2006 09:58:07 PM,42.009977138,-87.67434082,"(42.009977138, -87.67434082)" -2540841,HJ122404,01/12/2003 07:40:00 PM,020XX W CHICAGO AVE,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),true,false,1313,,1,24,08B,1162818,1905299,2003,03/22/2006 09:58:07 PM,41.89579185,-87.677451663,"(41.89579185, -87.677451663)" -2544325,HJ125744,01/11/2003 08:00:00 AM,037XX N WILTON AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,STREET,false,false,2324,,44,6,11,,,2003,03/22/2006 09:58:07 PM,,, -2541751,HJ118014,01/10/2003 10:54:00 AM,029XX W NELSON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,1411,,33,21,08B,1156245,1920288,2003,03/22/2006 09:58:07 PM,41.937058229,-87.701187121,"(41.937058229, -87.701187121)" -2538749,HJ117606,01/10/2003 05:18:11 AM,059XX N BROADWAY,1310,CRIMINAL DAMAGE,TO PROPERTY,BAR OR TAVERN,false,false,2433,,48,77,14,1167262,1939807,2003,03/22/2006 09:58:07 PM,41.990389011,-87.660134519,"(41.990389011, -87.660134519)" -2537091,HJ117671,01/09/2003 05:30:00 PM,021XX S MICHIGAN AVE,0820,THEFT,$500 AND UNDER,OTHER,false,false,0134,,2,33,06,1177576,1890278,2003,12/04/2014 12:43:35 PM,41.854250992,-87.62370539,"(41.854250992, -87.62370539)" -2537440,HJ115617,01/09/2003 03:40:00 AM,029XX W PALMER ST,0820,THEFT,$500 AND UNDER,STREET,true,false,1414,,35,22,06,1156384,1914636,2003,12/04/2014 12:43:35 PM,41.921545906,-87.700829506,"(41.921545906, -87.700829506)" -2546024,HJ115438,01/08/2003 11:30:00 PM,023XX N ST LOUIS AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1413,,26,22,18,1152923,1915077,2003,03/22/2006 09:58:07 PM,41.922825392,-87.713534462,"(41.922825392, -87.713534462)" -2536552,HJ116438,01/08/2003 06:00:00 PM,025XX W LUNT AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,PARK PROPERTY,false,false,2411,,50,2,14,1158392,1946418,2003,03/22/2006 09:58:07 PM,42.00871653,-87.692578297,"(42.00871653, -87.692578297)" -2533629,HJ113743,01/08/2003 05:30:00 AM,024XX N LOTUS AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2515,,30,19,26,1139678,1915748,2003,03/22/2006 09:58:07 PM,41.924919073,-87.762185138,"(41.924919073, -87.762185138)" -2535553,HJ113016,01/07/2003 06:45:00 PM,067XX S WOOD ST,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,OTHER,true,true,0725,,15,67,14,1165546,1860071,2003,03/22/2006 09:58:07 PM,41.771623909,-87.668717558,"(41.771623909, -87.668717558)" -2547609,HJ112783,01/07/2003 05:06:00 PM,025XX W MOFFAT ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1434,,1,22,18,1158771,1912240,2003,03/22/2006 09:58:07 PM,41.914922454,-87.692124859,"(41.914922454, -87.692124859)" -2531987,HJ109966,01/06/2003 10:50:00 AM,010XX N ORLEANS ST,0453,BATTERY,AGGRAVATED PO: OTHER DANG WEAP,STREET,true,false,1823,,27,8,04B,1173678,1907393,2003,03/22/2006 09:58:07 PM,41.90130316,-87.637503178,"(41.90130316, -87.637503178)" -2565168,HJ152702,01/05/2003 12:01:00 AM,056XX W BELMONT AVE,0810,THEFT,OVER $500,COMMERCIAL / BUSINESS OFFICE,false,false,2514,,30,19,06,1137859,1920662,2003,12/04/2014 12:43:35 PM,41.938436671,-87.768750165,"(41.938436671, -87.768750165)" -2538968,HJ105381,01/03/2003 07:30:00 PM,036XX W FRANKLIN BLVD,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,false,1122,,27,23,04B,1152213,1903133,2003,03/22/2006 09:58:07 PM,41.890063989,-87.716458857,"(41.890063989, -87.716458857)" -2532846,HJ112424,01/03/2003 11:00:00 AM,100XX W OHARE ST,0890,THEFT,FROM BUILDING,AIRPORT/AIRCRAFT,false,false,1651,,41,76,06,1100629,1934213,2003,03/22/2006 09:58:07 PM,41.976213976,-87.905334384,"(41.976213976, -87.905334384)" -2530489,HJ104429,01/03/2003 10:55:00 AM,021XX N CENTRAL PARK AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,2525,,26,22,08B,1151993,1913819,2003,03/22/2006 09:58:07 PM,41.919391725,-87.716984833,"(41.919391725, -87.716984833)" -2526271,HJ104402,01/03/2003 08:00:00 AM,110XX S GREEN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,2233,,34,75,08B,1172579,1831572,2003,03/22/2006 09:58:07 PM,41.693266709,-87.643773893,"(41.693266709, -87.643773893)" -2524228,HJ102134,01/02/2003 05:35:00 AM,031XX E 80TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0422,,7,46,14,1198843,1852575,2003,03/22/2006 09:58:07 PM,41.750283491,-87.546915002,"(41.750283491, -87.546915002)" -2605167,HJ202312,01/01/2003 09:50:00 AM,023XX N AUSTIN AVE,0810,THEFT,OVER $500,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,2512,,37,19,06,1135979,1914664,2003,12/04/2014 12:43:35 PM,41.922011257,-87.775803049,"(41.922011257, -87.775803049)" -6455763,HP535578,01/01/2003 12:01:00 AM,015XX N LINDER AVE,1751,OFFENSE INVOLVING CHILDREN,CRIM SEX ABUSE BY FAM MEMBER,RESIDENCE,false,false,2532,,37,25,20,,,2003,08/29/2008 01:05:02 AM,,, -5929786,HN730079,01/01/2003 12:00:00 AM,009XX N CENTRAL PARK AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1112,,27,23,06,,,2003,03/11/2010 03:22:37 PM,,, -2526052,HJ102292,12/31/2002 10:44:00 PM,0000X W 103RD PL,1720,OFFENSE INVOLVING CHILDREN,CONTRIBUTE DELINQUENCY OF A CHILD,RESIDENCE,false,false,0512,,34,49,20,1177934,1836304,2002,03/30/2006 09:10:16 PM,41.706132676,-87.624025509,"(41.706132676, -87.624025509)" -2531817,HH870090,12/31/2002 04:00:00 PM,0000X E ELM ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1824,,42,8,14,1176247,1908142,2002,03/30/2006 09:10:16 PM,41.903300884,-87.628044479,"(41.903300884, -87.628044479)" -2521368,HH867092,12/30/2002 02:15:00 AM,105XX S WESTERN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,2212,,19,72,05,1162291,1834849,2002,03/30/2006 09:10:16 PM,41.702479207,-87.681349774,"(41.702479207, -87.681349774)" -2519782,HH866489,12/29/2002 08:30:00 PM,078XX S PEORIA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0621,,17,71,08B,1171626,1852829,2002,03/30/2006 09:10:16 PM,41.751619863,-87.646642228,"(41.751619863, -87.646642228)" -2518745,HH863929,12/28/2002 10:50:00 AM,077XX S EXCHANGE AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,RESIDENCE PORCH/HALLWAY,true,false,0421,,7,43,08B,1196358,1854454,2002,03/30/2006 09:10:16 PM,41.755501573,-87.555958748,"(41.755501573, -87.555958748)" -2533660,HH862933,12/27/2002 08:15:00 PM,009XX N KEYSTONE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1111,,37,23,18,1149244,1906364,2002,03/30/2006 09:10:16 PM,41.898988246,-87.727278637,"(41.898988246, -87.727278637)" -2517225,HH862777,12/27/2002 05:00:00 PM,012XX E 47TH ST,031A,ROBBERY,ARMED: HANDGUN,VACANT LOT/LAND,false,false,2123,,4,39,03,1185306,1874130,2002,03/30/2006 09:10:16 PM,41.80976109,-87.595842488,"(41.80976109, -87.595842488)" -2518186,HH861140,12/26/2002 05:03:00 PM,039XX N KILBOURN AVE,4310,OTHER OFFENSE,POSSESSION OF BURGLARY TOOLS,STREET,true,false,1731,,38,16,26,1145342,1926111,2002,03/30/2006 09:10:16 PM,41.953250675,-87.741109742,"(41.953250675, -87.741109742)" -2514477,HH858337,12/24/2002 09:30:00 PM,045XX S DREXEL BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2123,,4,39,14,1182918,1874946,2002,03/30/2006 09:10:16 PM,41.812056155,-87.604575812,"(41.812056155, -87.604575812)" -2514268,HH859026,12/24/2002 09:00:00 PM,066XX S FRANCISCO AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0831,,15,66,05,1158233,1860348,2002,03/30/2006 09:10:16 PM,41.772535988,-87.695517231,"(41.772535988, -87.695517231)" -2513791,HH857919,12/24/2002 04:39:44 PM,003XX W 106TH ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0512,,34,49,26,1175632,1834587,2002,03/30/2006 09:10:16 PM,41.701472702,-87.63250643,"(41.701472702, -87.63250643)" -2513870,HH857371,12/24/2002 10:40:00 AM,006XX N LA SALLE DR,0810,THEFT,OVER $500,SIDEWALK,false,false,1832,,42,8,06,1174974,1904917,2002,12/04/2014 12:43:35 PM,41.894479944,-87.632817153,"(41.894479944, -87.632817153)" -2513876,HH857200,12/24/2002 07:00:00 AM,013XX S WABASH AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0132,,2,33,06,1176943,1894052,2002,12/04/2014 12:43:35 PM,41.864621429,-87.625914593,"(41.864621429, -87.625914593)" -2512061,HH856745,12/23/2002 08:00:00 PM,037XX W 86TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0834,,18,70,07,1153102,1846916,2002,03/30/2006 09:10:16 PM,41.735779235,-87.714680301,"(41.735779235, -87.714680301)" -2511781,HH856104,12/23/2002 03:30:00 AM,034XX N HALSTED ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,false,false,2331,,44,6,14,1170348,1923243,2002,03/30/2006 09:10:16 PM,41.944869808,-87.649270069,"(41.944869808, -87.649270069)" -2510185,HH855090,12/23/2002 03:00:00 AM,015XX N KINGSBURY ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1822,,32,8,07,1169404,1910487,2002,03/30/2006 09:10:16 PM,41.909887336,-87.65311176,"(41.909887336, -87.65311176)" -2512729,HH854997,12/23/2002 01:01:00 AM,072XX S SOUTH SHORE DR,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,false,false,0334,,7,43,05,1194960,1857761,2002,03/30/2006 09:10:16 PM,41.764610774,-87.560973148,"(41.764610774, -87.560973148)" -1937,HH854889,12/22/2002 11:00:00 PM,008XX N CHRISTIANA AVE,0110,HOMICIDE,FIRST DEGREE MURDER,YARD,false,false,1121,011,27,23,01A,1153931,1905480,2002,10/31/2014 03:20:56 PM,41.896470319,-87.710086941,"(41.896470319, -87.710086941)" -2516690,HH858068,12/22/2002 07:15:00 PM,014XX W 73RD ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0734,,17,67,26,1167593,1856367,2002,03/30/2006 09:10:16 PM,41.761415994,-87.661320005,"(41.761415994, -87.661320005)" -2510755,HH854393,12/22/2002 03:15:00 PM,086XX S MORGAN ST,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0613,,21,71,04B,1171110,1847793,2002,03/30/2006 09:10:16 PM,41.737811688,-87.648679956,"(41.737811688, -87.648679956)" -2512193,HH854445,12/22/2002 01:45:00 PM,083XX S CICERO AVE,0870,THEFT,POCKET-PICKING,GROCERY FOOD STORE,false,false,0834,,18,70,06,1145914,1849091,2002,03/30/2006 09:10:16 PM,41.741886611,-87.740960017,"(41.741886611, -87.740960017)" -2507754,HH850581,12/19/2002 10:00:00 PM,086XX S PRAIRIE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0632,,6,44,05,1179584,1847669,2002,03/30/2006 09:10:16 PM,41.737282229,-87.617637356,"(41.737282229, -87.617637356)" -2509619,HH847938,12/19/2002 12:00:00 PM,003XX W HILL ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1823,,27,8,08A,1173393,1907630,2002,03/30/2006 09:10:16 PM,41.901959839,-87.63854295,"(41.901959839, -87.63854295)" -2510391,HH847443,12/19/2002 04:25:00 AM,015XX W ESTES AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2423,,49,1,14,1164623,1947439,2002,03/30/2006 09:10:16 PM,42.011387912,-87.669623686,"(42.011387912, -87.669623686)" -2503498,HH844490,12/17/2002 01:30:00 PM,058XX N SHERIDAN RD,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2022,,48,77,08B,1168531,1939122,2002,03/30/2006 09:10:16 PM,41.988481889,-87.655486834,"(41.988481889, -87.655486834)" -2504902,HH845634,12/15/2002 02:00:00 PM,108XX S AVENUE H,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,"SCHOOL, PUBLIC, BUILDING",false,false,0432,,10,52,14,1202811,1833840,2002,03/30/2006 09:10:16 PM,41.69877286,-87.533013104,"(41.69877286, -87.533013104)" -2499115,HH839607,12/15/2002 12:00:00 AM,092XX S ADA ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,2222,,21,73,05,1168908,1843616,2002,03/30/2006 09:10:16 PM,41.726397182,-87.656867795,"(41.726397182, -87.656867795)" -2513969,HH858958,12/14/2002 03:00:00 PM,050XX S RACINE AVE,0810,THEFT,OVER $500,OTHER,false,false,0921,,16,61,06,1169208,1871630,2002,12/04/2014 12:43:35 PM,41.803264725,-87.654959559,"(41.803264725, -87.654959559)" -2498424,HH837501,12/14/2002 04:55:00 AM,023XX S WENTWORTH AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,2111,,25,34,14,1175298,1888863,2002,03/30/2006 09:10:16 PM,41.850419484,-87.632108886,"(41.850419484, -87.632108886)" -2575739,HH837142,12/13/2002 11:42:12 PM,009XX S CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,SIDEWALK,true,false,1533,,24,25,16,1144491,1895516,2002,03/30/2006 09:10:16 PM,41.869310855,-87.745009577,"(41.869310855, -87.745009577)" -2510956,HH835744,12/13/2002 12:15:00 PM,065XX S ARTESIAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0832,,15,66,18,1161118,1861461,2002,03/30/2006 09:10:16 PM,41.775531017,-87.684910799,"(41.775531017, -87.684910799)" -2496434,HH834968,12/13/2002 01:24:59 AM,031XX W 51ST ST,0460,BATTERY,SIMPLE,RESTAURANT,true,false,0911,,14,63,08B,1156100,1870603,2002,03/30/2006 09:10:16 PM,41.800720331,-87.703060713,"(41.800720331, -87.703060713)" -2496446,HH834343,12/12/2002 06:20:00 PM,014XX S WABASH AVE,0890,THEFT,FROM BUILDING,OTHER,false,false,0132,,2,33,06,1176952,1893703,2002,03/30/2006 09:10:16 PM,41.863663547,-87.625892112,"(41.863663547, -87.625892112)" -2493841,HH832655,12/11/2002 08:00:00 PM,009XX W VAN BUREN ST,0810,THEFT,OVER $500,STREET,false,false,1213,,2,28,06,1170162,1898329,2002,12/04/2014 12:43:35 PM,41.876508473,-87.650682549,"(41.876508473, -87.650682549)" -2497567,HH832823,12/11/2002 01:00:00 PM,075XX S VERNON AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0624,,6,69,05,1180506,1855314,2002,03/30/2006 09:10:16 PM,41.75823988,-87.614025294,"(41.75823988, -87.614025294)" -2498009,HH831280,12/11/2002 11:30:00 AM,062XX S HAMLIN AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",true,false,0823,,13,65,08B,1152065,1863220,2002,03/30/2006 09:10:16 PM,41.780540507,-87.718052317,"(41.780540507, -87.718052317)" -2505199,HH830183,12/10/2002 06:39:51 PM,067XX N CALIFORNIA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2412,,50,2,18,1156483,1944536,2002,03/30/2006 09:10:16 PM,42.003591245,-87.699653292,"(42.003591245, -87.699653292)" -2490693,HH828798,12/09/2002 03:00:00 PM,017XX W 80TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0611,,21,71,07,1165990,1851682,2002,03/30/2006 09:10:16 PM,41.748593912,-87.667328077,"(41.748593912, -87.667328077)" -2496776,HH824751,12/08/2002 12:17:34 AM,056XX N ORIOLE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1613,,41,10,18,1124716,1936542,2002,03/30/2006 09:10:16 PM,41.98224059,-87.816702825,"(41.98224059, -87.816702825)" -2558304,HH820450,12/05/2002 08:11:53 PM,052XX N KENMORE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,2023,,48,77,14,1168345,1934982,2002,03/30/2006 09:10:16 PM,41.977125665,-87.656291323,"(41.977125665, -87.656291323)" -2486284,HH821532,12/05/2002 07:00:00 PM,036XX W 63RD PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0823,,13,65,05,1153171,1862215,2002,06/11/2007 03:52:33 PM,41.777760845,-87.714024014,"(41.777760845, -87.714024014)" -2484265,HH818086,12/04/2002 03:45:00 PM,008XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1833,,42,8,06,1177374,1906115,2002,03/30/2006 09:10:16 PM,41.897713204,-87.623966387,"(41.897713204, -87.623966387)" -2482767,HH817411,12/04/2002 09:48:37 AM,012XX N MONTICELLO AVE,1025,ARSON,AGGRAVATED,"SCHOOL, PUBLIC, BUILDING",false,false,2535,,26,23,09,1151766,1908151,2002,03/30/2006 09:10:16 PM,41.903842685,-87.717968276,"(41.903842685, -87.717968276)" -2479058,HH812198,12/01/2002 05:19:24 PM,081XX S ASHLAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0614,,21,71,14,1167127,1850821,2002,03/30/2006 09:10:16 PM,41.746206981,-87.663186267,"(41.746206981, -87.663186267)" -2479384,HH811456,12/01/2002 07:44:17 AM,035XX S INDIANA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0211,,3,35,14,1178140,1881613,2002,03/30/2006 09:10:16 PM,41.8304608,-87.621898755,"(41.8304608, -87.621898755)" -2487106,HH820777,12/01/2002 01:00:00 AM,028XX E 77TH ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0421,,7,43,08A,1196312,1854409,2002,03/30/2006 09:10:16 PM,41.75537923,-87.556128813,"(41.75537923, -87.556128813)" -2482915,HH810587,11/30/2002 04:34:00 PM,064XX S EVANS AVE,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0312,,20,42,18,1182282,1862603,2002,03/30/2006 09:10:16 PM,41.778200682,-87.607290989,"(41.778200682, -87.607290989)" -2476656,HH810042,11/29/2002 06:30:00 PM,016XX N CLAREMONT AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,false,false,1434,,1,24,06,1160395,1911107,2002,12/04/2014 12:43:35 PM,41.911779945,-87.686189886,"(41.911779945, -87.686189886)" -2476626,HH808899,11/29/2002 05:00:00 PM,066XX S SANGAMON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,false,0723,,17,68,08B,1171162,1860686,2002,03/30/2006 09:10:16 PM,41.773190608,-87.648113214,"(41.773190608, -87.648113214)" -2479558,HH807358,11/28/2002 04:30:00 PM,047XX W CHICAGO AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,1111,,37,25,26,1144253,1904918,2002,06/11/2007 03:52:33 PM,41.895115546,-87.745646975,"(41.895115546, -87.745646975)" -2477477,HH806733,11/28/2002 05:30:00 AM,066XX S JUSTINE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,0725,,17,67,08B,1167184,1860884,2002,03/30/2006 09:10:16 PM,41.773819994,-87.662689944,"(41.773819994, -87.662689944)" -2480845,HH806364,11/27/2002 10:05:00 PM,005XX E BROWNING AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0212,,4,35,18,1180603,1881458,2002,03/30/2006 09:10:16 PM,41.829979141,-87.6128668,"(41.829979141, -87.6128668)" -2476765,HH808557,11/27/2002 05:30:00 PM,064XX S DREXEL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0314,,20,42,05,1183544,1862305,2002,03/30/2006 09:10:16 PM,41.777353611,-87.602673777,"(41.777353611, -87.602673777)" -2474450,HH805951,11/27/2002 02:00:00 PM,098XX S CALHOUN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0431,,7,51,14,1194806,1839891,2002,03/30/2006 09:10:16 PM,41.715577792,-87.56212455,"(41.715577792, -87.56212455)" -2560772,HJ144657,11/26/2002 09:00:00 AM,057XX N LINCOLN AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,COMMERCIAL / BUSINESS OFFICE,false,false,2011,,40,2,11,1156408,1938196,2002,03/30/2006 09:10:16 PM,41.986195537,-87.700101698,"(41.986195537, -87.700101698)" -2480623,HH799963,11/24/2002 09:15:00 PM,064XX W BELMONT AVE,0560,ASSAULT,SIMPLE,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,2511,,36,19,08A,1132817,1920538,2002,03/30/2006 09:10:16 PM,41.938186026,-87.787283892,"(41.938186026, -87.787283892)" -2468676,HH799680,11/24/2002 06:15:00 PM,0000X N HAMLIN BLVD,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1122,,28,26,26,1151025,1899809,2002,03/30/2006 09:10:16 PM,41.880965934,-87.72090888,"(41.880965934, -87.72090888)" -2471864,HH798984,11/24/2002 09:45:00 AM,051XX S DR MARTIN LUTHER KING JR DR,0560,ASSAULT,SIMPLE,OTHER,false,false,0234,,3,40,08A,1179755,1871159,2002,03/30/2006 09:10:16 PM,41.801737322,-87.616293391,"(41.801737322, -87.616293391)" -2468695,HH798404,11/24/2002 12:45:00 AM,0000X E 68TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,0322,,20,69,14,1178246,1859995,2002,03/30/2006 09:10:16 PM,41.771136613,-87.622166081,"(41.771136613, -87.622166081)" -2468020,HH797920,11/23/2002 06:50:00 PM,043XX N KEELER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,1722,,45,16,14,1147654,1928757,2002,03/30/2006 09:10:16 PM,41.96046735,-87.732542376,"(41.96046735, -87.732542376)" -2466751,HH796854,11/23/2002 12:00:00 AM,022XX W 72ND ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,0832,,18,66,26,1162425,1856913,2002,03/30/2006 09:10:16 PM,41.763023525,-87.680246054,"(41.763023525, -87.680246054)" -2467140,HH795446,11/22/2002 02:46:49 PM,012XX W 87TH ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,OTHER,true,true,0613,,21,71,26,1169825,1847138,2002,03/30/2006 09:10:16 PM,41.736042231,-87.653406822,"(41.736042231, -87.653406822)" -2462986,HH791932,11/20/2002 03:00:00 PM,021XX S TAN CT,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2111,,25,34,14,1174990,1890844,2002,03/30/2006 09:10:16 PM,41.85586239,-87.633180007,"(41.85586239, -87.633180007)" -2474591,HH789087,11/19/2002 01:22:13 PM,046XX S UNION AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,false,false,0935,,11,61,14,1172379,1873749,2002,03/30/2006 09:10:16 PM,41.809010211,-87.643267636,"(41.809010211, -87.643267636)" -2463018,HH791499,11/19/2002 09:00:00 AM,044XX N WOLCOTT AVE,0890,THEFT,FROM BUILDING,APARTMENT,false,false,1922,,47,4,06,1163061,1929525,2002,03/30/2006 09:10:16 PM,41.962264384,-87.675876915,"(41.962264384, -87.675876915)" -2460373,HH788713,11/19/2002 12:00:00 AM,055XX N CHRISTIANA AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1712,,40,13,07,,,2002,03/30/2006 09:10:16 PM,,, -2459369,HH787904,11/18/2002 08:30:00 PM,007XX S CLAREMONT AVE,031A,ROBBERY,ARMED: HANDGUN,ALLEY,false,false,1224,,2,28,03,1160800,1896544,2002,03/30/2006 09:10:16 PM,41.871809453,-87.685106219,"(41.871809453, -87.685106219)" -2475048,HH787819,11/18/2002 08:00:00 PM,085XX S COTTAGE GROVE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0632,,6,44,18,1183005,1848752,2002,03/30/2006 09:10:16 PM,41.74017535,-87.605070339,"(41.74017535, -87.605070339)" -2463058,HH792390,11/18/2002 07:30:00 AM,001XX W 115TH ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0522,,34,53,26,1177108,1828653,2002,03/30/2006 09:10:16 PM,41.68515585,-87.627279925,"(41.68515585, -87.627279925)" -2456654,HH784108,11/16/2002 09:30:00 PM,062XX N LINCOLN AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,1711,,50,13,06,1152513,1941309,2002,03/30/2006 09:10:16 PM,41.994815901,-87.714344716,"(41.994815901, -87.714344716)" -2460428,HH783928,11/16/2002 07:10:00 PM,013XX N RIDGEWAY AVE,0460,BATTERY,SIMPLE,RESIDENCE,true,false,2535,,26,23,08B,1151091,1908550,2002,03/30/2006 09:10:16 PM,41.90495084,-87.72043726,"(41.90495084, -87.72043726)" -2458133,HH783700,11/16/2002 05:24:01 PM,028XX S KEDVALE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,1031,,22,30,14,1149214,1884920,2002,03/30/2006 09:10:16 PM,41.840143978,-87.727944302,"(41.840143978, -87.727944302)" -2457521,HH785219,11/16/2002 05:00:00 PM,072XX W RASCHER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1613,,41,10,08B,1127114,1935210,2002,03/30/2006 09:10:16 PM,41.978545417,-87.807913445,"(41.978545417, -87.807913445)" -2455395,HH782404,11/16/2002 12:14:00 AM,023XX E 79TH ST,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,true,false,0414,,7,46,26,1193505,1853012,2002,03/30/2006 09:10:16 PM,41.751614875,-87.566461172,"(41.751614875, -87.566461172)" -2456040,HH782959,11/16/2002 12:00:00 AM,076XX S CORNELL AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0414,,8,43,05,1188605,1854514,2002,03/30/2006 09:10:16 PM,41.755854945,-87.58436915,"(41.755854945, -87.58436915)" -2461128,HH790067,11/15/2002 08:00:00 PM,065XX S CALIFORNIA AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0831,,15,66,26,1158878,1861115,2002,03/30/2006 09:10:16 PM,41.774627597,-87.693131894,"(41.774627597, -87.693131894)" -2462682,HH780195,11/14/2002 11:27:02 PM,042XX W 77TH PL,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0834,,13,70,18,1149298,1852972,2002,03/30/2006 09:10:16 PM,41.752472167,-87.728460976,"(41.752472167, -87.728460976)" -2452421,HH777229,11/13/2002 04:00:00 PM,027XX W 38TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,false,false,0913,,12,58,08B,1158906,1879052,2002,03/30/2006 09:10:16 PM,41.823848534,-87.69253907,"(41.823848534, -87.69253907)" -2456673,HH776707,11/13/2002 12:00:00 PM,020XX W 63RD ST,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,0714,,15,67,26,1164017,1862900,2002,03/30/2006 09:10:16 PM,41.779419351,-87.674242906,"(41.779419351, -87.674242906)" -2453981,HH777373,11/13/2002 02:00:00 AM,037XX S KEDZIE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,SIDEWALK,false,false,0913,,12,58,07,,,2002,03/30/2006 09:10:16 PM,,, -2452535,HH777358,11/12/2002 05:00:00 PM,023XX S MARSHALL BLVD,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,1033,,12,30,08A,1157036,1888145,2002,03/30/2006 09:10:16 PM,41.84883887,-87.699153199,"(41.84883887, -87.699153199)" -2450273,HH771405,11/11/2002 11:00:00 AM,027XX W LAWRENCE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1911,,47,4,08A,1157317,1931730,2002,03/30/2006 09:10:16 PM,41.968434022,-87.696935093,"(41.968434022, -87.696935093)" -2449088,HH772157,11/11/2002 09:17:05 AM,045XX S CALUMET AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,0222,,3,38,08B,1179151,1875076,2002,03/30/2006 09:10:16 PM,41.812499715,-87.618388975,"(41.812499715, -87.618388975)" -2453508,HH780506,11/11/2002 09:00:00 AM,020XX N KOSTNER AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,2522,,31,20,06,1146694,1912942,2002,03/30/2006 09:10:16 PM,41.917088007,-87.736476666,"(41.917088007, -87.736476666)" -2452212,HH777624,11/10/2002 08:00:00 PM,012XX E 55TH ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,CHA APARTMENT,false,false,2133,,5,41,26,1185294,1868736,2002,03/30/2006 09:10:16 PM,41.79495983,-87.596056205,"(41.79495983, -87.596056205)" -2445568,HH770191,11/10/2002 04:45:00 AM,008XX W GRAND AVE,0460,BATTERY,SIMPLE,STREET,false,false,1323,,27,24,08B,1170617,1903715,2002,03/30/2006 09:10:16 PM,41.89127808,-87.648854217,"(41.89127808, -87.648854217)" -2448722,HH769952,11/10/2002 01:40:00 AM,013XX N WELLS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1821,,43,8,08B,1174507,1909115,2002,03/30/2006 09:10:16 PM,41.906009922,-87.634406678,"(41.906009922, -87.634406678)" -2445171,HH770026,11/09/2002 11:00:00 PM,037XX N HALSTED ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,2324,,46,6,06,1170291,1925092,2002,03/30/2006 09:10:16 PM,41.949944781,-87.649425348,"(41.949944781, -87.649425348)" -2446543,HH769469,11/09/2002 08:20:00 PM,132XX S CORLISS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA PARKING LOT/GROUNDS,false,true,0533,,9,54,08B,1183974,1817992,2002,03/30/2006 09:10:16 PM,41.655743381,-87.602476417,"(41.655743381, -87.602476417)" -2449085,HH768625,11/09/2002 12:22:00 PM,038XX W DIVERSEY AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,2524,,35,22,24,1150305,1918304,2002,06/11/2007 03:52:33 PM,41.931732084,-87.723069536,"(41.931732084, -87.723069536)" -2444171,HH768078,11/09/2002 02:00:00 AM,032XX N HARLEM AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,BAR OR TAVERN,false,false,1632,,36,17,14,1127556,1920613,2002,03/30/2006 09:10:16 PM,41.938482163,-87.806617897,"(41.938482163, -87.806617897)" -2446305,HH771318,11/07/2002 04:00:00 PM,0000X N HAMLIN BLVD,0820,THEFT,$500 AND UNDER,STREET,false,false,1122,,28,26,06,1151025,1899809,2002,12/04/2014 12:43:35 PM,41.880965934,-87.72090888,"(41.880965934, -87.72090888)" -2441854,HH764490,11/07/2002 12:59:02 PM,066XX S RHODES AVE,1754,OFFENSE INVOLVING CHILDREN,AGG SEX ASSLT OF CHILD FAM MBR,RESIDENCE,true,false,0321,,20,42,02,1181084,1861031,2002,03/30/2006 09:10:16 PM,41.773914633,-87.611731222,"(41.773914633, -87.611731222)" -2452975,HH763777,11/07/2002 01:25:00 AM,042XX W JACKSON BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1115,,28,26,08B,1148340,1898392,2002,03/30/2006 09:10:16 PM,41.877129678,-87.730804627,"(41.877129678, -87.730804627)" -2442351,HH762811,11/06/2002 03:10:00 PM,040XX N CLARK ST,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,1923,,47,6,14,1166424,1927359,2002,03/30/2006 09:10:16 PM,41.956249321,-87.66357481,"(41.956249321, -87.66357481)" -2441475,HH761970,11/06/2002 12:30:00 AM,051XX S ADA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0933,,16,61,14,1168237,1870745,2002,03/30/2006 09:10:16 PM,41.80085716,-87.658546155,"(41.80085716, -87.658546155)" -2438791,HH761033,11/05/2002 05:03:16 PM,082XX S EXCHANGE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0423,,7,46,08A,1197221,1850710,2002,03/30/2006 09:10:16 PM,41.745206322,-87.552920592,"(41.745206322, -87.552920592)" -2436937,HH757775,11/04/2002 09:11:17 AM,091XX S GREENWOOD AVE,0460,BATTERY,SIMPLE,STREET,false,false,0413,,8,47,08B,1185097,1844831,2002,03/30/2006 09:10:16 PM,41.729366864,-87.597528416,"(41.729366864, -87.597528416)" -2437198,HH757722,11/04/2002 08:15:00 AM,002XX E 121ST PL,0560,ASSAULT,SIMPLE,STREET,false,false,0532,,9,53,08A,1179798,1824481,2002,03/30/2006 09:10:16 PM,41.673646347,-87.617559443,"(41.673646347, -87.617559443)" -2435695,HH756001,11/03/2002 08:52:30 AM,025XX W FLOURNOY ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1135,,2,28,07,1159458,1896912,2002,03/30/2006 09:10:16 PM,41.872846985,-87.690023126,"(41.872846985, -87.690023126)" -2437667,HH754725,11/02/2002 03:00:00 PM,042XX W POTOMAC AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,true,2534,,37,23,08B,1147775,1908358,2002,03/30/2006 09:10:16 PM,41.90448834,-87.732622985,"(41.90448834, -87.732622985)" -2439271,HH762210,11/02/2002 12:00:00 PM,085XX S ADA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0613,,21,71,14,1168863,1847933,2002,03/30/2006 09:10:16 PM,41.738244626,-87.656908356,"(41.738244626, -87.656908356)" -2434414,HH753383,11/01/2002 07:11:00 PM,087XX S ESCANABA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,CTA BUS,false,false,0423,,10,46,14,1196858,1847808,2002,03/30/2006 09:10:16 PM,41.737252033,-87.554346908,"(41.737252033, -87.554346908)" -2433483,HH753076,11/01/2002 06:00:00 PM,052XX W CHICAGO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1524,,37,25,14,1141525,1904873,2002,03/30/2006 09:10:16 PM,41.895042899,-87.755667457,"(41.895042899, -87.755667457)" -2432947,HH751922,11/01/2002 09:10:00 AM,014XX E 53RD ST,0560,ASSAULT,SIMPLE,STREET,true,false,2131,,4,41,08A,1186700,1870370,2002,03/30/2006 09:10:16 PM,41.799410442,-87.590848724,"(41.799410442, -87.590848724)" -2430480,HH750912,10/31/2002 05:30:00 PM,002XX N CICERO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1532,,28,25,14,1144300,1901040,2002,03/30/2006 09:10:16 PM,41.884472979,-87.745571916,"(41.884472979, -87.745571916)" -2431783,HH748830,10/30/2002 07:10:00 PM,059XX N BROADWAY,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,2013,,48,77,03,,,2002,03/30/2006 09:10:16 PM,,, -2428664,HH749465,10/30/2002 03:00:00 PM,052XX S STATE ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0232,,3,40,08B,1177203,1870284,2002,03/30/2006 09:10:16 PM,41.799394278,-87.625678907,"(41.799394278, -87.625678907)" -2432151,HH742607,10/27/2002 10:06:30 PM,004XX N DRAKE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,1123,,27,23,14,1152676,1902816,2002,03/30/2006 09:10:16 PM,41.889184963,-87.714766894,"(41.889184963, -87.714766894)" -2423257,HH741291,10/27/2002 08:30:00 AM,034XX N KENTON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1731,,30,16,08B,1145154,1922534,2002,03/30/2006 09:10:16 PM,41.94343864,-87.74189159,"(41.94343864, -87.74189159)" -2438040,HH740633,10/26/2002 09:55:00 PM,016XX N HERMITAGE AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1433,,32,24,16,1164475,1910734,2002,03/30/2006 09:10:16 PM,41.910670957,-87.671211807,"(41.910670957, -87.671211807)" -2422556,HH741899,10/26/2002 08:00:00 PM,035XX N KARLOV AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1731,,30,16,06,1148559,1923354,2002,12/04/2014 12:43:35 PM,41.945623636,-87.729355113,"(41.945623636, -87.729355113)" -2420885,HH738970,10/26/2002 12:01:00 AM,028XX S HARDING AVE,0810,THEFT,OVER $500,STREET,false,false,1031,,22,30,06,1150538,1885057,2002,12/04/2014 12:43:35 PM,41.840494212,-87.723082146,"(41.840494212, -87.723082146)" -2425905,HH738621,10/25/2002 10:00:00 PM,026XX W EVERGREEN AVE,0560,ASSAULT,SIMPLE,STREET,false,true,1423,,26,24,08A,1158354,1908833,2002,03/30/2006 09:10:16 PM,41.905581918,-87.693750204,"(41.905581918, -87.693750204)" -2420553,HH738208,10/25/2002 07:05:00 PM,034XX W DOUGLAS BLVD,0460,BATTERY,SIMPLE,APARTMENT,false,false,1021,,24,29,08B,1153785,1893285,2002,03/30/2006 09:10:16 PM,41.863008884,-87.710947989,"(41.863008884, -87.710947989)" -2419154,HH736960,10/25/2002 09:00:00 AM,075XX S COLFAX AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0421,,7,43,06,1194799,1855207,2002,12/04/2014 12:43:35 PM,41.757606376,-87.56164722,"(41.757606376, -87.56164722)" -2418777,HH736198,10/24/2002 08:00:00 PM,057XX S SHIELDS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0711,,20,68,07,1174904,1867090,2002,03/30/2006 09:10:16 PM,41.790681244,-87.634205132,"(41.790681244, -87.634205132)" -2416416,HH732272,10/23/2002 02:00:00 AM,103XX S WESTERN AVE,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,2211,,19,72,06,1162167,1836233,2002,03/30/2006 09:10:16 PM,41.706279717,-87.681765488,"(41.706279717, -87.681765488)" -2427625,HH731783,10/22/2002 08:30:00 PM,005XX W WINNECONNA PKWY,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0621,,17,69,18,1174065,1852887,2002,03/30/2006 09:10:16 PM,41.751725256,-87.637702751,"(41.751725256, -87.637702751)" -2412712,HH728431,10/21/2002 11:10:00 AM,043XX N CICERO AVE,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1624,,45,15,08B,1143548,1928403,2002,03/30/2006 09:10:16 PM,41.959573948,-87.747647117,"(41.959573948, -87.747647117)" -2423914,HH743424,10/21/2002 08:20:00 AM,040XX N PONTIAC AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1614,,36,17,26,1119712,1925819,2002,03/30/2006 09:10:16 PM,41.952896739,-87.835335956,"(41.952896739, -87.835335956)" -2424816,HH741846,10/21/2002 12:01:00 AM,009XX W 19TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,1233,,25,31,14,1170289,1891064,2002,03/30/2006 09:10:16 PM,41.856569981,-87.650428447,"(41.856569981, -87.650428447)" -2413672,HH727382,10/20/2002 08:04:00 PM,035XX W PALMER ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1413,,26,22,08B,1152375,1914353,2002,03/30/2006 09:10:16 PM,41.920849525,-87.715567171,"(41.920849525, -87.715567171)" -2413592,HH728030,10/20/2002 06:00:00 PM,079XX S KEDVALE AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0834,,13,70,07,1150176,1851286,2002,03/30/2006 09:10:16 PM,41.747828507,-87.725287095,"(41.747828507, -87.725287095)" -2408446,HH723618,10/18/2002 11:30:12 PM,088XX S HERMITAGE AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,SIDEWALK,false,false,2221,,21,71,26,1166269,1845844,2002,03/30/2006 09:10:16 PM,41.732567655,-87.666471491,"(41.732567655, -87.666471491)" -2417549,HH722334,10/18/2002 01:30:00 PM,013XX S FAIRFIELD AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1023,,28,29,18,1158204,1893671,2002,03/30/2006 09:10:16 PM,41.863979053,-87.694715677,"(41.863979053, -87.694715677)" -2412730,HH721588,10/18/2002 05:12:00 AM,014XX W 13TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,true,true,1231,,2,28,08B,1166838,1894194,2002,03/30/2006 09:10:16 PM,41.865233593,-87.663005702,"(41.865233593, -87.663005702)" -2421048,HH729070,10/17/2002 06:00:00 PM,063XX S CAMPBELL AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,false,true,0825,,15,66,20,1160746,1862770,2002,10/24/2010 12:46:39 AM,41.779130785,-87.68623841,"(41.779130785, -87.68623841)" -2403879,HH718814,10/16/2002 06:45:00 PM,0000X W SUPERIOR ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1832,,42,8,26,1176213,1905323,2002,03/30/2006 09:10:16 PM,41.895566179,-87.628254468,"(41.895566179, -87.628254468)" -2406000,HH720548,10/16/2002 06:30:00 PM,061XX S MELVINA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,"SCHOOL, PUBLIC, BUILDING",false,false,0812,,23,64,14,1136092,1862988,2002,03/30/2006 09:10:16 PM,41.780202564,-87.776618816,"(41.780202564, -87.776618816)" -2406376,HH718843,10/15/2002 07:30:00 PM,041XX N KENMORE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2322,,46,3,14,1168389,1927546,2002,03/30/2006 09:10:16 PM,41.956720087,-87.656345586,"(41.956720087, -87.656345586)" -2413705,HH730637,10/14/2002 12:00:00 PM,067XX W TALCOTT AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1613,,41,10,07,1130292,1935999,2002,03/30/2006 09:10:16 PM,41.980656424,-87.796207811,"(41.980656424, -87.796207811)" -2398367,HH711369,10/13/2002 01:00:00 AM,042XX S CAMPBELL AVE,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,0914,,12,58,07,1160434,1876563,2002,03/30/2006 09:10:16 PM,41.816987011,-87.687002031,"(41.816987011, -87.687002031)" -2398100,HH710565,10/12/2002 10:00:00 PM,005XX N LA SALLE DR,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,1831,,42,8,06,1175015,1903591,2002,03/30/2006 09:10:16 PM,41.890840409,-87.63270634,"(41.890840409, -87.63270634)" -2396808,HH707799,10/11/2002 06:25:00 PM,069XX S PEORIA ST,041A,BATTERY,AGGRAVATED: HANDGUN,OTHER,false,false,0733,,17,68,04B,1171549,1858584,2002,03/30/2006 09:10:16 PM,41.767413995,-87.646756079,"(41.767413995, -87.646756079)" -2400707,HH713055,10/11/2002 06:00:00 PM,085XX S SEELEY AVE,0560,ASSAULT,SIMPLE,STREET,false,false,0614,,18,71,08A,1164143,1847756,2002,03/30/2006 09:10:16 PM,41.737859414,-87.674206361,"(41.737859414, -87.674206361)" -2405009,HH709843,10/11/2002 01:30:00 PM,033XX W MADISON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1124,,28,27,08B,1153915,1899773,2002,03/30/2006 09:10:16 PM,41.880810064,-87.710297898,"(41.880810064, -87.710297898)" -2413504,HH709661,10/11/2002 09:00:00 AM,052XX W PALMER ST,0560,ASSAULT,SIMPLE,STREET,true,true,2515,,37,19,08A,1140773,1914158,2002,03/30/2006 09:10:16 PM,41.920535859,-87.758200743,"(41.920535859, -87.758200743)" -2392705,HH703542,10/09/2002 06:40:00 PM,051XX W DAKIN ST,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,STREET,false,false,1634,,45,15,03,1141622,1925808,2002,03/30/2006 09:10:16 PM,41.952488941,-87.75479244,"(41.952488941, -87.75479244)" -2396986,HH703409,10/09/2002 06:20:00 PM,008XX N STATE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,1832,,42,8,11,1176184,1905742,2002,03/30/2006 09:10:16 PM,41.89671659,-87.628348332,"(41.89671659, -87.628348332)" -2404002,HH701905,10/09/2002 01:15:00 AM,062XX S ROCKWELL ST,0460,BATTERY,SIMPLE,STREET,false,false,0825,,15,66,08B,1160065,1863415,2002,03/30/2006 09:10:16 PM,41.78091479,-87.688717311,"(41.78091479, -87.688717311)" -2390963,HH701243,10/08/2002 06:10:00 PM,128XX S PEORIA ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0523,,34,53,14,1172635,1819663,2002,03/30/2006 09:10:16 PM,41.660585229,-87.643917728,"(41.660585229, -87.643917728)" -2387947,HH699710,10/08/2002 02:40:00 AM,037XX N OSCEOLA AVE,0810,THEFT,OVER $500,RESIDENCE PORCH/HALLWAY,false,false,1631,,36,17,06,1125695,1924139,2002,12/04/2014 12:43:35 PM,41.948189112,-87.813379046,"(41.948189112, -87.813379046)" -2481388,HH815941,10/07/2002 02:00:00 PM,066XX S LANGLEY AVE,0842,THEFT,AGG: FINANCIAL ID THEFT,RESIDENCE,false,false,0321,,20,42,06,1181998,1860922,2002,03/30/2006 09:10:16 PM,41.773594432,-87.608384084,"(41.773594432, -87.608384084)" -2389913,HH698119,10/07/2002 12:00:00 PM,063XX S HALSTED ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0723,,20,68,06,1172093,1862948,2002,03/30/2006 09:10:16 PM,41.779377394,-87.644633996,"(41.779377394, -87.644633996)" -2394215,HH696093,10/06/2002 11:51:30 AM,049XX W NORTH AVE,0560,ASSAULT,SIMPLE,DEPARTMENT STORE,false,true,2533,,37,25,08A,1142980,1910137,2002,03/30/2006 09:10:16 PM,41.909460903,-87.750192135,"(41.909460903, -87.750192135)" -2397463,HH710241,10/06/2002 10:00:00 AM,045XX N CLARENDON AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,true,2313,,46,3,26,,,2002,03/30/2006 09:10:16 PM,,, -2395310,HH695128,10/05/2002 10:46:00 PM,032XX W 21ST ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1022,,24,30,18,1154974,1889817,2002,03/30/2006 09:10:16 PM,41.853468568,-87.706676181,"(41.853468568, -87.706676181)" -2386969,HH697263,10/05/2002 10:00:00 PM,026XX N EMMETT ST,0810,THEFT,OVER $500,STREET,false,false,1412,,35,22,06,1154238,1918113,2002,12/04/2014 12:43:35 PM,41.931130236,-87.708621419,"(41.931130236, -87.708621419)" -2385339,HH694823,10/05/2002 07:00:00 PM,112XX S PARNELL AVE,0460,BATTERY,SIMPLE,OTHER,false,false,2233,,34,49,08B,1174594,1830586,2002,03/30/2006 09:10:16 PM,41.690516472,-87.636425777,"(41.690516472, -87.636425777)" -2395835,HH703430,10/05/2002 02:00:00 AM,018XX N HUMBOLDT BLVD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1421,,35,22,26,1156043,1912098,2002,03/30/2006 09:10:16 PM,41.914588323,-87.702151065,"(41.914588323, -87.702151065)" -2385235,HH693705,10/05/2002 12:01:00 AM,0000X E DIVISION ST,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1824,,43,8,06,1176393,1908423,2002,03/30/2006 09:10:16 PM,41.904068666,-87.627499704,"(41.904068666, -87.627499704)" -2380679,HH689065,10/03/2002 02:00:00 AM,026XX W 64TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE,false,false,0825,,15,66,07,1159545,1862042,2002,03/30/2006 09:10:16 PM,41.777157766,-87.690661366,"(41.777157766, -87.690661366)" -2382040,HH688138,10/02/2002 07:45:00 PM,012XX W PRATT BLVD,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,2431,,49,1,26,1166529,1945352,2002,03/30/2006 09:10:16 PM,42.005620386,-87.66267089,"(42.005620386, -87.66267089)" -2395757,HH687531,10/02/2002 04:00:00 PM,035XX W 74TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0835,,18,66,08B,1154085,1855268,2002,03/30/2006 09:10:16 PM,41.758679074,-87.710857554,"(41.758679074, -87.710857554)" -2376690,HH683480,09/30/2002 10:00:00 PM,066XX S STEWART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,true,false,0722,,6,68,08B,1174739,1860550,2002,03/30/2006 09:10:16 PM,41.772738453,-87.635004896,"(41.772738453, -87.635004896)" -2374112,HH681471,09/30/2002 01:43:58 AM,018XX S KARLOV AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,1012,,24,29,04B,1149322,1890428,2002,03/30/2006 09:10:16 PM,41.855256543,-87.72740537,"(41.855256543, -87.72740537)" -2391706,HH680476,09/29/2002 02:55:00 PM,063XX S FAIRFIELD AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,false,false,0825,,15,66,06,1159095,1862424,2002,03/30/2006 09:10:16 PM,41.778215245,-87.692300631,"(41.778215245, -87.692300631)" -2372741,HH679354,09/29/2002 12:31:05 AM,122XX S EGGLESTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0523,,34,53,14,1175462,1823870,2002,03/30/2006 09:10:16 PM,41.672067407,-87.633447726,"(41.672067407, -87.633447726)" -2381584,HH679431,09/29/2002 12:15:00 AM,062XX S COTTAGE GROVE AVE,0460,BATTERY,SIMPLE,STREET,false,false,0313,,20,42,08B,1182676,1863795,2002,03/30/2006 09:10:16 PM,41.781462503,-87.605809612,"(41.781462503, -87.605809612)" -2389072,HH679057,09/28/2002 09:15:00 PM,020XX E 71ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0333,,5,43,18,1190791,1858215,2002,03/30/2006 09:10:16 PM,41.765958295,-87.576238726,"(41.765958295, -87.576238726)" -2375140,HH678777,09/28/2002 02:00:00 AM,076XX S DR MARTIN LUTHER KING JR DR,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,0623,,6,69,03,1180183,1854673,2002,03/30/2006 09:10:16 PM,41.756488312,-87.615228658,"(41.756488312, -87.615228658)" -2372772,HH676860,09/27/2002 08:40:00 PM,032XX N CENTRAL AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,STREET,true,false,1633,,38,15,26,1138419,1921064,2002,03/30/2006 09:10:16 PM,41.939529661,-87.76668224,"(41.939529661, -87.76668224)" -2371120,HH676777,09/27/2002 06:50:00 PM,098XX S PARNELL AVE,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,2223,,21,73,08B,1174321,1839885,2002,03/30/2006 09:10:16 PM,41.716040358,-87.637150032,"(41.716040358, -87.637150032)" -2395263,HH706733,09/27/2002 12:00:00 PM,003XX W OAK ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,1823,,27,8,26,1173432,1907132,2002,03/30/2006 09:10:16 PM,41.900592434,-87.638414517,"(41.900592434, -87.638414517)" -2372352,HH672652,09/25/2002 10:18:30 PM,116XX S HALSTED ST,031A,ROBBERY,ARMED: HANDGUN,RESTAURANT,false,false,0524,,34,53,03,1173110,1827835,2002,03/30/2006 09:10:16 PM,41.683000111,-87.641939603,"(41.683000111, -87.641939603)" -2378164,HH673878,09/25/2002 02:00:00 PM,065XX S WOOD ST,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",false,false,0726,,15,67,06,1165424,1861341,2002,12/04/2014 12:43:35 PM,41.775111543,-87.669128816,"(41.775111543, -87.669128816)" -2367898,HH671129,09/25/2002 09:30:00 AM,111XX S HALE AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),true,false,2212,,19,75,06,1165164,1830576,2002,12/04/2014 12:43:35 PM,41.690693201,-87.670949891,"(41.690693201, -87.670949891)" -2370144,HH672021,09/25/2002 07:30:00 AM,008XX N CAMBRIDGE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1823,,27,8,14,1172483,1905989,2002,03/30/2006 09:10:16 PM,41.897477018,-87.64193405,"(41.897477018, -87.64193405)" -2368779,HH670346,09/24/2002 08:53:33 PM,019XX N LA CROSSE AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,2533,,31,19,08A,1143778,1912780,2002,03/30/2006 09:10:16 PM,41.916698651,-87.747194243,"(41.916698651, -87.747194243)" -2368154,HH669941,09/24/2002 04:50:00 PM,008XX N SEDGWICK ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA APARTMENT,true,false,1823,,27,8,08B,1173307,1906333,2002,03/30/2006 09:10:16 PM,41.898402712,-87.6388974,"(41.898402712, -87.6388974)" -2380269,HH668185,09/23/2002 08:15:00 PM,051XX S NARRAGANSETT AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,true,false,0811,,23,56,26,1134532,1869996,2002,03/30/2006 09:10:16 PM,41.799461363,-87.782173444,"(41.799461363, -87.782173444)" -2370483,HH668102,09/23/2002 07:45:00 PM,055XX N WINTHROP AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,true,false,2023,,48,77,24,1167820,1937324,2002,03/30/2006 09:10:16 PM,41.983563545,-87.658154086,"(41.983563545, -87.658154086)" -2364004,HH666245,09/22/2002 10:45:00 PM,0000X W 87TH ST,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,true,false,0634,,21,44,26,1177043,1847234,2002,03/30/2006 09:10:16 PM,41.736146144,-87.626959873,"(41.736146144, -87.626959873)" -2365392,HH665580,09/22/2002 04:50:00 PM,060XX S WESTERN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,CAR WASH,false,false,0825,,16,66,03,1161438,1864785,2002,03/30/2006 09:10:16 PM,41.784645902,-87.683645642,"(41.784645902, -87.683645642)" -2360911,HH665403,09/22/2002 06:30:00 AM,005XX W WEBSTER AVE,0820,THEFT,$500 AND UNDER,HOSPITAL BUILDING/GROUNDS,false,false,1812,,43,7,06,1172020,1914923,2002,12/04/2014 12:43:35 PM,41.922002608,-87.643370627,"(41.922002608, -87.643370627)" -2361957,HH663073,09/21/2002 12:52:54 PM,045XX S DAMEN AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,0914,,12,61,06,1163704,1874123,2002,03/30/2006 09:10:16 PM,41.810223247,-87.675075348,"(41.810223247, -87.675075348)" -2362440,HH663557,09/21/2002 11:45:00 AM,025XX S MICHIGAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,OTHER,false,false,2112,,2,33,08B,1177690,1887533,2002,03/30/2006 09:10:16 PM,41.846715936,-87.623370267,"(41.846715936, -87.623370267)" -2360023,HH662073,09/21/2002 12:10:00 AM,025XX N CLYBOURN AVE,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,true,false,1931,,32,7,06,1163869,1916997,2002,03/30/2006 09:10:16 PM,41.927869849,-87.673260933,"(41.927869849, -87.673260933)" -2358540,HH661790,09/20/2002 08:30:00 PM,059XX S MOZART ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0824,,16,66,26,1158353,1865176,2002,03/30/2006 09:10:16 PM,41.78578227,-87.694945953,"(41.78578227, -87.694945953)" -2377163,HH661546,09/20/2002 06:05:00 PM,032XX W HARRISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1134,,24,27,18,1155010,1897223,2002,03/30/2006 09:10:16 PM,41.873790719,-87.706345526,"(41.873790719, -87.706345526)" -2380592,HH678050,09/20/2002 12:15:00 PM,044XX S WENTWORTH AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0935,,3,37,18,1175628,1875758,2002,03/30/2006 09:10:16 PM,41.814450887,-87.631290816,"(41.814450887, -87.631290816)" -2359024,HH661964,09/20/2002 12:00:00 PM,027XX S CALIFORNIA AVE,0820,THEFT,$500 AND UNDER,GOVERNMENT BUILDING/PROPERTY,false,false,1033,,12,30,06,1158103,1885845,2002,12/04/2014 12:43:35 PM,41.842505723,-87.695299912,"(41.842505723, -87.695299912)" -2359970,HH664247,09/19/2002 10:20:00 PM,077XX S ESSEX AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0421,,7,43,26,1194250,1853870,2002,03/30/2006 09:10:16 PM,41.753951041,-87.563703027,"(41.753951041, -87.563703027)" -2357745,HH659307,09/19/2002 08:10:00 PM,005XX W GARFIELD BLVD,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,VACANT LOT/LAND,true,false,0934,,3,61,15,1173668,1868481,2002,03/30/2006 09:10:16 PM,41.794525787,-87.63869601,"(41.794525787, -87.63869601)" -2355459,HH657970,09/19/2002 08:30:00 AM,003XX W 100TH ST,0560,ASSAULT,SIMPLE,STREET,false,false,0511,,9,49,08A,1175536,1838650,2002,03/30/2006 09:10:16 PM,41.712624299,-87.632736911,"(41.712624299, -87.632736911)" -2355968,HH658230,09/18/2002 05:45:00 PM,002XX S STATE ST,0610,BURGLARY,FORCIBLE ENTRY,COMMERCIAL / BUSINESS OFFICE,false,false,0123,,42,32,05,1176370,1899426,2002,03/30/2006 09:10:16 PM,41.879380952,-87.62785591,"(41.879380952, -87.62785591)" -2351893,HH652606,09/16/2002 09:04:00 PM,020XX W 70TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0735,,17,67,08B,1164036,1858194,2002,03/30/2006 09:10:16 PM,41.766505051,-87.674305456,"(41.766505051, -87.674305456)" -2362738,HH651452,09/16/2002 12:40:26 PM,053XX W VAN BUREN ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1522,,29,25,26,1140541,1897526,2002,03/30/2006 09:10:16 PM,41.874899932,-87.759461929,"(41.874899932, -87.759461929)" -2353113,HH648159,09/14/2002 07:10:00 PM,053XX N BROADWAY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,GROCERY FOOD STORE,false,false,2023,,48,77,08B,1167382,1935813,2002,03/30/2006 09:10:16 PM,41.979426783,-87.659808661,"(41.979426783, -87.659808661)" -2346533,HH646881,09/14/2002 05:45:00 AM,094XX S EWING AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,true,0432,,10,52,26,1201329,1843258,2002,03/30/2006 09:10:16 PM,41.724654285,-87.538120872,"(41.724654285, -87.538120872)" -2353600,HH645547,09/13/2002 07:00:00 AM,044XX S WALLACE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,false,0935,,11,61,08B,1173074,1875591,2002,03/30/2006 09:10:16 PM,41.814049497,-87.640664069,"(41.814049497, -87.640664069)" -2357322,HH644137,09/12/2002 09:29:00 PM,075XX N CLAREMONT AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE,true,false,2411,,49,2,18,1159307,1949719,2002,03/30/2006 09:10:16 PM,42.017755726,-87.689120361,"(42.017755726, -87.689120361)" -2350169,HH643076,09/12/2002 01:51:00 PM,020XX W PETERSON AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,true,false,2413,,40,2,06,1161364,1939893,2002,03/30/2006 09:10:16 PM,41.99075017,-87.681826178,"(41.99075017, -87.681826178)" -2353181,HH643047,09/12/2002 12:50:40 PM,033XX N CLIFTON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,1924,,44,6,14,1167988,1922303,2002,03/30/2006 09:10:16 PM,41.942341761,-87.657971647,"(41.942341761, -87.657971647)" -2344555,HH642695,09/12/2002 09:30:00 AM,012XX W LUNT AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,false,2431,,49,1,08B,1166229,1946598,2002,03/30/2006 09:10:16 PM,42.009045875,-87.663738759,"(42.009045875, -87.663738759)" -2357321,HH641781,09/11/2002 09:00:00 PM,022XX W 50TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0915,,16,63,18,1162172,1871516,2002,03/30/2006 09:10:16 PM,41.803101382,-87.680767151,"(41.803101382, -87.680767151)" -2349976,HH641412,09/11/2002 06:15:00 PM,015XX N PULASKI RD,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,SIDEWALK,true,false,2534,,30,23,16,1149401,1909710,2002,03/30/2006 09:10:16 PM,41.908166962,-87.726615056,"(41.908166962, -87.726615056)" -2340441,HH639459,09/10/2002 02:45:00 PM,038XX N PIONEER AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1631,,36,17,08A,1120678,1924264,2002,03/30/2006 09:10:16 PM,41.948614164,-87.831818242,"(41.948614164, -87.831818242)" -2352088,HH636171,09/09/2002 11:38:38 AM,044XX S FEDERAL ST,2027,NARCOTICS,POSS: CRACK,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0221,,3,38,18,1176474,1875517,2002,03/30/2006 09:10:16 PM,41.813770553,-87.628194868,"(41.813770553, -87.628194868)" -2340953,HH637011,09/09/2002 05:30:00 AM,013XX W 81ST ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0612,,21,71,05,1169050,1851099,2002,03/30/2006 09:10:16 PM,41.746928537,-87.656131948,"(41.746928537, -87.656131948)" -2362789,HH635409,09/09/2002 12:26:53 AM,012XX S KEELER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1011,,24,29,08B,1148533,1894257,2002,03/30/2006 09:10:16 PM,41.865779032,-87.730202659,"(41.865779032, -87.730202659)" -2337085,HH635005,09/08/2002 08:15:00 PM,015XX W 81ST ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0614,,21,71,06,1167237,1850969,2002,12/04/2014 12:43:35 PM,41.746610762,-87.662778976,"(41.746610762, -87.662778976)" -2345843,HH633010,09/07/2002 08:08:27 PM,038XX W LAKE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1122,,27,26,18,1150652,1901418,2002,03/30/2006 09:10:16 PM,41.885388499,-87.722236449,"(41.885388499, -87.722236449)" -2334905,HH632071,09/07/2002 08:30:00 AM,056XX S WOLCOTT AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0715,,15,67,26,1164610,1867273,2002,03/30/2006 09:10:16 PM,41.79140693,-87.671945573,"(41.79140693, -87.671945573)" -2332387,HH628167,09/05/2002 05:20:00 PM,070XX S PERRY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,0731,,6,69,08B,1176581,1858108,2002,03/30/2006 09:10:16 PM,41.765996093,-87.628326032,"(41.765996093, -87.628326032)" -2336756,HH625413,09/04/2002 01:18:11 PM,048XX S LAMON AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,0814,,23,56,06,1144558,1871771,2002,12/04/2014 12:43:35 PM,41.80414995,-87.745360326,"(41.80414995, -87.745360326)" -2330627,HH625149,09/04/2002 11:30:51 AM,035XX S PARNELL AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0925,,11,60,26,1173175,1881199,2002,03/30/2006 09:10:16 PM,41.829436134,-87.64012763,"(41.829436134, -87.64012763)" -2325805,HH620806,09/01/2002 11:30:00 PM,020XX W 67TH PL,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0726,,15,67,07,1163889,1859847,2002,03/30/2006 09:10:16 PM,41.7710442,-87.674797878,"(41.7710442, -87.674797878)" -2323780,HH616662,08/30/2002 10:00:00 PM,011XX W POLK ST,0917,MOTOR VEHICLE THEFT,"CYCLE, SCOOTER, BIKE W-VIN",STREET,false,false,1213,,25,28,07,1168968,1896646,2002,03/30/2006 09:10:16 PM,41.871916169,-87.655115331,"(41.871916169, -87.655115331)" -2322635,HH614300,08/30/2002 08:20:00 AM,019XX N KARLOV AVE,2851,PUBLIC PEACE VIOLATION,ARSON THREAT,RESIDENCE,false,true,2534,,30,20,26,1148776,1912714,2002,03/30/2006 09:10:16 PM,41.916422338,-87.728833231,"(41.916422338, -87.728833231)" -2321716,HH612838,08/29/2002 02:28:03 PM,059XX W ADDISON ST,0860,THEFT,RETAIL THEFT,DRUG STORE,false,false,1633,,38,15,06,1136013,1923287,2002,03/30/2006 09:10:16 PM,41.945673109,-87.775471959,"(41.945673109, -87.775471959)" -2320805,HH609528,08/28/2002 11:45:00 PM,035XX W CORTLAND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,false,true,1422,,26,22,08B,1152475,1912358,2002,03/30/2006 09:10:16 PM,41.915373093,-87.715252576,"(41.915373093, -87.715252576)" -2320088,HH612613,08/28/2002 07:00:00 PM,025XX N KEDZIE BLVD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1413,,35,22,14,1154571,1916647,2002,03/30/2006 09:10:16 PM,41.927100753,-87.707437029,"(41.927100753, -87.707437029)" -2320647,HH613451,08/28/2002 06:00:00 PM,054XX N KENMORE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,false,false,2023,,48,77,26,1168224,1936443,2002,03/30/2006 09:10:16 PM,41.981137311,-87.656693851,"(41.981137311, -87.656693851)" -2318149,HH609451,08/27/2002 10:50:00 PM,105XX S YATES AVE,1790,OFFENSE INVOLVING CHILDREN,CHILD ABDUCTION,CHA APARTMENT,true,true,0434,,10,51,20,1194165,1835740,2002,03/30/2006 09:10:16 PM,41.704202765,-87.564607875,"(41.704202765, -87.564607875)" -2317586,HH608906,08/27/2002 06:45:00 PM,106XX S TORRENCE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0434,,10,51,14,1195503,1834893,2002,03/30/2006 09:10:16 PM,41.701845634,-87.559736302,"(41.701845634, -87.559736302)" -2320621,HH613303,08/27/2002 06:00:00 PM,027XX N MOZART ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1411,,35,22,05,1156870,1917941,2002,03/30/2006 09:10:16 PM,41.930605224,-87.698953971,"(41.930605224, -87.698953971)" -2322167,HH606435,08/26/2002 03:45:00 PM,064XX W DIVERSEY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,PARKING LOT/GARAGE(NON.RESID.),false,true,2512,,36,19,26,,,2002,03/30/2006 09:10:16 PM,,, -2313708,HH603693,08/25/2002 11:30:02 AM,0000X E 112TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0531,,9,49,14,1178550,1830425,2002,03/30/2006 09:10:16 PM,41.689985925,-87.621947584,"(41.689985925, -87.621947584)" -2316190,HH603573,08/25/2002 05:00:00 AM,018XX W 37TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0922,,11,59,14,1164381,1880118,2002,03/30/2006 09:10:16 PM,41.826659945,-87.672423063,"(41.826659945, -87.672423063)" -2312075,HH602985,08/23/2002 10:00:00 PM,028XX S KILDARE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1031,,22,30,14,1148138,1884998,2002,03/30/2006 09:10:16 PM,41.840378764,-87.731890819,"(41.840378764, -87.731890819)" -2319934,HH600685,08/23/2002 09:53:15 PM,036XX W GRENSHAW ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,1133,,24,29,08B,1152295,1894757,2002,03/30/2006 09:10:16 PM,41.86707773,-87.716378835,"(41.86707773, -87.716378835)" -2311047,HH599963,08/23/2002 04:00:00 PM,036XX S FEDERAL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,0211,,3,35,08B,1176249,1880526,2002,03/30/2006 09:10:16 PM,41.827520746,-87.628869539,"(41.827520746, -87.628869539)" -2311615,HH602592,08/23/2002 02:00:00 PM,012XX N CAMPBELL AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1423,,26,24,08B,1159556,1908077,2002,03/30/2006 09:10:16 PM,41.903482716,-87.689355689,"(41.903482716, -87.689355689)" -2309806,HH598648,08/22/2002 11:45:00 PM,024XX S BLUE ISLAND AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1034,,25,31,06,1163400,1888120,2002,12/04/2014 12:43:35 PM,41.848638927,-87.675797435,"(41.848638927, -87.675797435)" -2318268,HH598259,08/22/2002 08:23:39 PM,047XX N CENTRAL PARK AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1723,,33,14,18,1151489,1931334,2002,03/30/2006 09:10:16 PM,41.967464162,-87.718374927,"(41.967464162, -87.718374927)" -2307573,HH596570,08/22/2002 01:35:00 AM,003XX W 105TH PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,0512,,34,49,08B,1175584,1834918,2002,03/30/2006 09:10:16 PM,41.702382086,-87.632672329,"(41.702382086, -87.632672329)" -2315267,HH595760,08/21/2002 05:35:52 PM,006XX N LOCKWOOD AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1524,,28,25,26,1140941,1904086,2002,03/30/2006 09:10:16 PM,41.892894046,-87.757831752,"(41.892894046, -87.757831752)" -2304720,HH593283,08/20/2002 12:00:00 PM,016XX E 73RD ST,0890,THEFT,FROM BUILDING,OTHER,false,false,0324,,8,43,06,1188396,1856865,2002,03/30/2006 09:10:16 PM,41.76231129,-87.585060133,"(41.76231129, -87.585060133)" -2306805,HH592605,08/20/2002 09:35:00 AM,052XX W MONROE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,true,true,1522,,29,25,08B,1141368,1899197,2002,03/30/2006 09:10:16 PM,41.879470157,-87.756384245,"(41.879470157, -87.756384245)" -2303462,HH592054,08/20/2002 12:31:46 AM,003XX W 110TH PL,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,RESIDENCE,false,true,0513,,34,49,03,1176092,1831609,2002,03/30/2006 09:10:16 PM,41.693290349,-87.630910995,"(41.693290349, -87.630910995)" -2304704,HH591092,08/19/2002 04:10:00 PM,019XX E 71ST ST,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,true,0332,,5,43,06,1190109,1858344,2002,12/04/2014 12:43:35 PM,41.766328727,-87.578734301,"(41.766328727, -87.578734301)" -2316159,HH592269,08/18/2002 03:00:00 AM,052XX W DRUMMOND PL,0820,THEFT,$500 AND UNDER,STREET,false,false,2514,,31,19,06,1140732,1917157,2002,12/04/2014 12:43:35 PM,41.928766187,-87.758277491,"(41.928766187, -87.758277491)" -2302371,HH587825,08/18/2002 01:03:42 AM,057XX S STATE ST,0820,THEFT,$500 AND UNDER,SIDEWALK,false,false,0233,,20,40,06,1177288,1867209,2002,12/04/2014 12:43:35 PM,41.79095426,-87.625460051,"(41.79095426, -87.625460051)" -2300002,HH587482,08/17/2002 09:25:00 PM,100XX S LUELLA AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,PARK PROPERTY,false,false,0431,,7,51,04B,1193195,1838865,2002,03/30/2006 09:10:16 PM,41.712801792,-87.56805809,"(41.712801792, -87.56805809)" -2298772,HH584997,08/16/2002 06:45:00 PM,082XX S COTTAGE GROVE AVE,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0631,,6,44,03,1182944,1850766,2002,03/30/2006 09:10:16 PM,41.745703403,-87.605231399,"(41.745703403, -87.605231399)" -2297629,HH581376,08/15/2002 02:29:00 AM,048XX S DR MARTIN LUTHER KING JR DR,1330,CRIMINAL TRESPASS,TO LAND,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,true,false,0223,,3,38,26,1179723,1872754,2002,03/30/2006 09:10:16 PM,41.806114873,-87.616361952,"(41.806114873, -87.616361952)" -2295544,HH581123,08/14/2002 10:10:00 PM,103XX S AVENUE M,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0432,,10,52,14,1201541,1836947,2002,03/30/2006 09:10:16 PM,41.707331024,-87.537558,"(41.707331024, -87.537558)" -2294590,HH580832,08/14/2002 01:45:00 PM,061XX N MOZART ST,0890,THEFT,FROM BUILDING,OTHER,false,true,2413,,50,2,06,1156190,1940567,2002,03/30/2006 09:10:16 PM,41.992706089,-87.700839094,"(41.992706089, -87.700839094)" -2316041,HH579645,08/14/2002 10:05:00 AM,044XX W CONGRESS PKWY,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1131,,24,26,18,1147085,1897286,2002,03/30/2006 09:10:16 PM,41.874118767,-87.735440957,"(41.874118767, -87.735440957)" -2292912,HH578603,08/13/2002 07:20:00 PM,032XX E 91ST ST,0850,THEFT,ATTEMPT THEFT,ALLEY,false,false,0424,,10,46,06,1199340,1845280,2002,03/30/2006 09:10:16 PM,41.730253001,-87.545338588,"(41.730253001, -87.545338588)" -2297001,HH575783,08/12/2002 05:20:00 PM,062XX S HALSTED ST,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0712,,16,68,06,1172008,1863169,2002,03/30/2006 09:10:16 PM,41.779985712,-87.644939128,"(41.779985712, -87.644939128)" -2286961,HH571121,08/10/2002 03:18:00 PM,015XX W MORSE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,OTHER,true,false,2431,,49,1,26,1164762,1946192,2002,03/30/2006 09:10:16 PM,42.007963162,-87.669147845,"(42.007963162, -87.669147845)" -2297927,HH568736,08/09/2002 02:15:00 PM,048XX W ERIE ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1532,,28,25,18,1144187,1903918,2002,03/30/2006 09:10:16 PM,41.892372672,-87.745914524,"(41.892372672, -87.745914524)" -2291551,HH567395,08/08/2002 08:55:00 PM,012XX N STATE PKWY,0820,THEFT,$500 AND UNDER,SIDEWALK,true,false,1824,,43,8,06,1176098,1908774,2002,12/04/2014 12:43:35 PM,41.905038482,-87.628572709,"(41.905038482, -87.628572709)" -2284139,HH568053,08/08/2002 03:30:00 PM,023XX S LAKE SHORE DR E,0820,THEFT,$500 AND UNDER,OTHER,false,false,0133,,2,33,06,1180538,1889157,2002,12/04/2014 12:43:35 PM,41.851107212,-87.612868333,"(41.851107212, -87.612868333)" -2296085,HH566113,08/08/2002 11:29:42 AM,008XX N SPRINGFIELD AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1112,,27,23,18,1150201,1905174,2002,03/30/2006 09:10:16 PM,41.89570416,-87.723794637,"(41.89570416, -87.723794637)" -2287709,HH566183,08/08/2002 11:20:00 AM,074XX S ASHLAND AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0735,,17,67,08A,1166926,1855615,2002,03/30/2006 09:10:16 PM,41.759366677,-87.663786073,"(41.759366677, -87.663786073)" -2286871,HH565125,08/07/2002 08:30:00 PM,0000X E 13TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,0132,,2,33,14,1176993,1894508,2002,06/11/2007 03:52:33 PM,41.865871591,-87.625717248,"(41.865871591, -87.625717248)" -2282644,HH564556,08/07/2002 04:13:24 PM,111XX S MICHIGAN AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,false,false,0531,,9,49,06,1178838,1830760,2002,03/30/2006 09:10:16 PM,41.690898682,-87.620883071,"(41.690898682, -87.620883071)" -2284042,HH563403,08/07/2002 03:27:58 AM,104XX S MICHIGAN AVE,0460,BATTERY,SIMPLE,STREET,false,false,0512,,9,49,08B,1178933,1835951,2002,03/30/2006 09:10:16 PM,41.705141357,-87.620377954,"(41.705141357, -87.620377954)" -2284899,HH561920,08/06/2002 01:45:00 PM,012XX W CARMEN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,2033,,46,3,14,1167236,1934097,2002,03/30/2006 09:10:16 PM,41.974721177,-87.660395161,"(41.974721177, -87.660395161)" -2284208,HH561844,08/06/2002 12:30:00 PM,009XX N LATROBE AVE,143C,WEAPONS VIOLATION,UNLAWFUL POSS AMMUNITION,STREET,true,false,1524,,37,25,15,1141152,1905524,2002,03/30/2006 09:10:16 PM,41.896836204,-87.757021346,"(41.896836204, -87.757021346)" -2278102,HH561103,08/06/2002 05:05:00 AM,064XX S KENWOOD AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,true,0314,,20,42,04A,1186221,1862360,2002,03/30/2006 09:10:16 PM,41.777441701,-87.592858302,"(41.777441701, -87.592858302)" -2283979,HH560412,08/05/2002 07:42:46 PM,066XX S MORGAN ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0724,,17,68,08B,1170753,1860572,2002,03/30/2006 09:10:16 PM,41.77288671,-87.649615829,"(41.77288671, -87.649615829)" -2284108,HH566337,08/05/2002 01:00:00 PM,013XX W LUNT AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2431,,49,1,07,1165741,1946585,2002,03/30/2006 09:10:16 PM,42.009020662,-87.665534617,"(42.009020662, -87.665534617)" -2278100,HH559368,08/05/2002 03:30:00 AM,080XX S MICHIGAN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0623,,6,44,14,1178509,1851672,2002,03/30/2006 09:10:16 PM,41.748291404,-87.621454496,"(41.748291404, -87.621454496)" -2277898,HH558122,08/04/2002 07:30:00 PM,076XX S LOWE AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,true,0621,,17,71,04A,1173339,1853901,2002,03/30/2006 09:10:16 PM,41.754523876,-87.640333265,"(41.754523876, -87.640333265)" -2272249,HH554110,08/02/2002 10:30:00 PM,062XX S NARRAGANSETT AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0812,,23,64,05,1134776,1862484,2002,03/30/2006 09:10:16 PM,41.778842773,-87.781455449,"(41.778842773, -87.781455449)" -2282997,HH552923,08/02/2002 01:52:12 PM,049XX S FEDERAL ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,CHA APARTMENT,true,false,0231,,3,38,18,1176576,1872029,2002,03/30/2006 09:10:16 PM,41.804196865,-87.627925741,"(41.804196865, -87.627925741)" -2330843,HH552016,08/02/2002 12:47:55 AM,036XX W DOUGLAS BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1011,,24,29,18,1152552,1893259,2002,03/30/2006 09:10:16 PM,41.862961976,-87.715474927,"(41.862961976, -87.715474927)" -2276916,HH551838,08/01/2002 11:25:00 PM,015XX N WELLS ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,RESTAURANT,true,false,1821,,27,8,11,1174375,1910774,2002,03/30/2006 09:10:16 PM,41.910565248,-87.634841932,"(41.910565248, -87.634841932)" -2276152,HH551849,08/01/2002 10:00:00 PM,003XX W NORTH AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,true,false,1821,,27,8,07,1173724,1910936,2002,03/30/2006 09:10:16 PM,41.911024307,-87.63722861,"(41.911024307, -87.63722861)" -2289911,HH551104,08/01/2002 05:20:00 PM,048XX S MARSHFIELD AVE,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0931,,20,61,08A,1166110,1872849,2002,03/30/2006 09:10:16 PM,41.806676336,-87.666286704,"(41.806676336, -87.666286704)" -2274378,HH548605,07/31/2002 10:45:00 AM,101XX S WOODLAWN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),false,false,0511,,8,50,06,1186320,1838097,2002,12/04/2014 12:43:35 PM,41.71085923,-87.593260361,"(41.71085923, -87.593260361)" -2269536,HH550466,07/31/2002 01:00:00 AM,060XX W 64TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0812,,13,64,14,1136961,1861092,2002,03/30/2006 09:10:16 PM,41.774984109,-87.773478108,"(41.774984109, -87.773478108)" -2271008,HH547490,07/31/2002 12:50:00 AM,014XX W OHIO ST,0460,BATTERY,SIMPLE,STREET,false,false,1324,,27,24,08B,1166485,1904157,2002,03/30/2006 09:10:16 PM,41.892580407,-87.66401634,"(41.892580407, -87.66401634)" -2271767,HH001238,07/30/2002 03:50:00 AM,001XX N LOCKWOOD AVE,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,ALLEY,true,false,1523,,28,25,18,1141062,1900591,2002,03/30/2006 09:10:16 PM,41.883301108,-87.7574735,"(41.883301108, -87.7574735)" -2380894,HH542060,07/28/2002 07:18:18 PM,030XX W TAYLOR ST,0460,BATTERY,SIMPLE,STREET,false,false,1134,,28,27,08B,1156479,1895596,2002,06/11/2007 03:52:33 PM,41.869296492,-87.700996048,"(41.869296492, -87.700996048)" -2261977,HH540869,07/28/2002 02:30:00 AM,025XX S WASHTENAW AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,false,1034,,12,30,04B,1158722,1887282,2002,03/30/2006 09:10:16 PM,41.84643637,-87.692989025,"(41.84643637, -87.692989025)" -2260713,HH540232,07/27/2002 04:00:00 PM,045XX W LAWRENCE AVE,0810,THEFT,OVER $500,STREET,false,false,1712,,39,14,06,1145020,1931556,2002,12/04/2014 12:43:35 PM,41.968198295,-87.742155357,"(41.968198295, -87.742155357)" -2257593,HH534933,07/25/2002 02:25:00 PM,036XX N ELSTON AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,PARKING LOT/GARAGE(NON.RESID.),false,false,1733,,35,16,11,1154035,1923795,2002,03/30/2006 09:10:16 PM,41.946726124,-87.709215391,"(41.946726124, -87.709215391)" -2259968,HH534723,07/25/2002 10:00:00 AM,0000X N LECLAIRE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1533,,28,25,14,1142344,1899734,2002,03/30/2006 09:10:16 PM,41.880925691,-87.752787139,"(41.880925691, -87.752787139)" -2255440,HH534039,07/24/2002 04:30:00 AM,023XX W JACKSON BLVD,0890,THEFT,FROM BUILDING,RESIDENCE,false,false,1211,,2,28,06,1160898,1898682,2002,03/30/2006 09:10:16 PM,41.877674291,-87.684687102,"(41.877674291, -87.684687102)" -2261192,HH533322,07/24/2002 12:01:00 AM,026XX W 55TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0824,,16,63,14,1159441,1868045,2002,03/30/2006 09:10:16 PM,41.793632961,-87.690878195,"(41.793632961, -87.690878195)" -2254932,HH529069,07/23/2002 12:19:29 AM,060XX S CHAMPLAIN AVE,0460,BATTERY,SIMPLE,APARTMENT,false,false,0313,,20,42,08B,1181649,1864844,2002,03/30/2006 09:10:16 PM,41.784364839,-87.609542417,"(41.784364839, -87.609542417)" -2255774,HH527396,07/22/2002 11:59:00 AM,132XX S GREEN BAY AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0433,,10,55,18,1200791,1817417,2002,03/30/2006 09:10:16 PM,41.653757771,-87.540962174,"(41.653757771, -87.540962174)" -2258360,HH524772,07/21/2002 03:40:25 AM,005XX N SAWYER AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1121,,27,23,14,1154570,1903522,2002,03/30/2006 09:10:16 PM,41.891084619,-87.707792429,"(41.891084619, -87.707792429)" -2248969,HH526148,07/20/2002 07:00:00 PM,089XX S CORNELL AVE,0820,THEFT,$500 AND UNDER,DRIVEWAY - RESIDENTIAL,false,false,0413,,8,48,06,1188846,1845685,2002,12/04/2014 12:43:35 PM,41.731621563,-87.583767797,"(41.731621563, -87.583767797)" -2250099,HH523691,07/20/2002 04:45:00 PM,008XX N MICHIGAN AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,true,false,1833,,42,8,06,1177375,1906125,2002,03/30/2006 09:10:16 PM,41.897740622,-87.62396241,"(41.897740622, -87.62396241)" -2245210,HH516148,07/16/2002 11:00:00 PM,032XX W 47TH PL,0810,THEFT,OVER $500,RESTAURANT,false,false,0821,,14,58,06,1155582,1872777,2002,12/04/2014 12:43:35 PM,41.806696492,-87.704902113,"(41.806696492, -87.704902113)" -2239457,HH513767,07/16/2002 11:00:00 AM,022XX N KEELER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2522,,31,20,26,1147972,1914654,2002,03/30/2006 09:10:16 PM,41.921761396,-87.731737124,"(41.921761396, -87.731737124)" -2238949,HH512131,07/15/2002 04:51:17 PM,114XX S HOMEWOOD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,2212,,19,75,14,1165262,1828712,2002,03/30/2006 09:10:16 PM,41.685575993,-87.670643601,"(41.685575993, -87.670643601)" -2238574,HH511931,07/15/2002 03:15:00 PM,040XX N KEDZIE AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,1724,,33,16,06,1154373,1926720,2002,12/04/2014 12:43:35 PM,41.954745763,-87.707894538,"(41.954745763, -87.707894538)" -2238460,HH510330,07/14/2002 08:30:00 PM,046XX W PATTERSON AVE,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1731,,38,15,08A,1144682,1923895,2002,03/30/2006 09:10:16 PM,41.947182269,-87.743592034,"(41.947182269, -87.743592034)" -2243502,HH511330,07/14/2002 01:10:00 AM,009XX N MICHIGAN AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1833,,42,8,04B,1177362,1906780,2002,03/30/2006 09:10:16 PM,41.899538267,-87.623990266,"(41.899538267, -87.623990266)" -2244307,HH508486,07/13/2002 11:55:00 PM,068XX S EAST END AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,false,true,0332,,5,43,26,1188681,1859682,2002,03/30/2006 09:10:16 PM,41.77003457,-87.58392563,"(41.77003457, -87.58392563)" -2232540,HH503797,07/11/2002 10:45:00 PM,060XX N NEVA AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,SIDEWALK,false,false,1612,,41,10,14,1127743,1939575,2002,03/30/2006 09:10:16 PM,41.990512799,-87.805501299,"(41.990512799, -87.805501299)" -2237727,HH503686,07/11/2002 09:05:00 PM,058XX N SHERIDAN RD,0560,ASSAULT,SIMPLE,PARK PROPERTY,true,false,2022,,48,77,08A,1168623,1938747,2002,03/30/2006 09:10:16 PM,41.987450882,-87.655159373,"(41.987450882, -87.655159373)" -2265116,HH503481,07/11/2002 08:00:00 PM,005XX W 60TH PL,0820,THEFT,$500 AND UNDER,RESIDENCE PORCH/HALLWAY,false,false,0711,,20,68,06,1173913,1864749,2002,12/04/2014 12:43:35 PM,41.784279345,-87.6379083,"(41.784279345, -87.6379083)" -2233848,HH502744,07/11/2002 02:50:00 PM,001XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,0113,,42,32,11,1175361,1901695,2002,03/30/2006 09:10:16 PM,41.88562992,-87.631492621,"(41.88562992, -87.631492621)" -2237887,HH511710,07/11/2002 02:30:00 PM,024XX W 79TH ST,0890,THEFT,FROM BUILDING,RESTAURANT,false,false,0835,,18,70,06,1161758,1852242,2002,03/30/2006 09:10:16 PM,41.750219481,-87.682820195,"(41.750219481, -87.682820195)" -2234082,HH501753,07/11/2002 02:55:00 AM,011XX E 44TH ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,2123,,4,39,26,1184462,1875856,2002,03/30/2006 09:10:16 PM,41.814517192,-87.598884003,"(41.814517192, -87.598884003)" -2229684,HH501136,07/10/2002 07:58:45 PM,062XX N OAKLEY AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,2413,,50,2,08B,1159895,1941334,2002,03/30/2006 09:10:16 PM,41.994734867,-87.687189513,"(41.994734867, -87.687189513)" -2230644,HH500966,07/10/2002 05:30:00 PM,109XX S HALSTED ST,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,true,false,2233,,34,49,08B,1172972,1832188,2002,03/30/2006 09:10:16 PM,41.694948466,-87.642316946,"(41.694948466, -87.642316946)" -2243595,HH518219,07/10/2002 12:15:00 PM,002XX S CANAL ST,0870,THEFT,POCKET-PICKING,OTHER,false,false,0111,,2,28,06,1173137,1899241,2002,03/30/2006 09:10:16 PM,41.878945611,-87.639732344,"(41.878945611, -87.639732344)" -2229282,HH501509,07/10/2002 04:45:00 AM,0000X E 102ND PL,0820,THEFT,$500 AND UNDER,STREET,true,false,0511,,9,49,06,1178744,1836991,2002,12/04/2014 12:43:35 PM,41.707999551,-87.621038545,"(41.707999551, -87.621038545)" -2824774,HJ482658,07/09/2002 05:15:00 AM,022XX S BLUE ISLAND AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,false,1034,010,25,31,08B,1164862,1888888,2002,03/30/2006 09:10:16 PM,41.850715549,-87.670410029,"(41.850715549, -87.670410029)" -2229494,HH501391,07/08/2002 10:00:00 PM,047XX N RAVENSWOOD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1922,,47,3,06,1163563,1931307,2002,12/04/2014 12:43:35 PM,41.967143685,-87.67398085,"(41.967143685, -87.67398085)" -2224740,HH495677,07/08/2002 02:45:00 PM,019XX W ELLEN ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1424,,1,24,14,1163486,1908877,2002,03/30/2006 09:10:16 PM,41.90559611,-87.67489739,"(41.90559611, -87.67489739)" -2237683,HH493966,07/07/2002 08:15:00 PM,065XX S DR MARTIN LUTHER KING JR DR,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0312,,20,69,16,1179999,1861967,2002,03/30/2006 09:10:16 PM,41.776508024,-87.615679945,"(41.776508024, -87.615679945)" -2223070,HH493350,07/07/2002 09:00:00 AM,018XX S MICHIGAN AVE,0810,THEFT,OVER $500,STREET,false,false,0133,,2,33,06,1177549,1891340,2002,12/04/2014 12:43:35 PM,41.857165803,-87.623772278,"(41.857165803, -87.623772278)" -2222960,HH492675,07/07/2002 05:00:00 AM,003XX W CHICAGO AVE,0460,BATTERY,SIMPLE,STREET,false,false,1831,,42,8,08B,1174052,1905629,2002,03/30/2006 09:10:16 PM,41.896454318,-87.636182105,"(41.896454318, -87.636182105)" -2224175,HH492127,07/06/2002 10:20:00 PM,017XX N WINCHESTER AVE,0560,ASSAULT,SIMPLE,ALLEY,false,false,1434,,32,24,08A,1163045,1911454,2002,03/30/2006 09:10:16 PM,41.912676858,-87.676444836,"(41.912676858, -87.676444836)" -2222735,HH491405,07/06/2002 03:35:02 PM,078XX S HALSTED ST,0860,THEFT,RETAIL THEFT,DRUG STORE,true,false,0621,,17,71,06,1172297,1852510,2002,03/30/2006 09:10:16 PM,41.750729763,-87.644192698,"(41.750729763, -87.644192698)" -2222388,HH491392,07/06/2002 02:55:00 PM,086XX S COLFAX AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,0423,,7,46,04B,1195035,1848073,2002,03/30/2006 09:10:16 PM,41.738024301,-87.561017,"(41.738024301, -87.561017)" -2236678,HH489713,07/05/2002 07:50:00 PM,028XX W MONROE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1124,,2,27,18,1157311,1899516,2002,03/30/2006 09:10:16 PM,41.880036502,-87.697834995,"(41.880036502, -87.697834995)" -2250434,HH489408,07/05/2002 05:39:09 PM,011XX N CENTRAL PARK AVE,0334,ROBBERY,ATTEMPT: ARMED-KNIFE/CUT INSTR,STREET,false,false,1112,,26,23,03,1152115,1907619,2002,03/30/2006 09:10:16 PM,41.902375949,-87.716700354,"(41.902375949, -87.716700354)" -2224488,HH489373,07/05/2002 05:10:00 PM,122XX S THROOP ST,0560,ASSAULT,SIMPLE,STREET,false,false,0524,,34,53,08A,1169844,1823522,2002,03/30/2006 09:10:16 PM,41.671235809,-87.654019694,"(41.671235809, -87.654019694)" -2221303,HH488465,07/04/2002 11:00:00 PM,057XX N ARTESIAN AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2011,,40,2,07,1159000,1937869,2002,03/30/2006 09:10:16 PM,41.985245252,-87.690577404,"(41.985245252, -87.690577404)" -2220024,HH487218,07/04/2002 06:52:55 PM,050XX W ADAMS ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,false,true,1533,,28,25,08B,1143003,1898825,2002,03/30/2006 09:10:16 PM,41.878419025,-87.750389979,"(41.878419025, -87.750389979)" -2232890,HH500757,07/03/2002 04:39:00 PM,001XX N LAMON AVE,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,RESIDENCE,true,false,1532,,28,25,02,1143725,1900705,2002,03/30/2006 09:10:16 PM,41.883564486,-87.747691812,"(41.883564486, -87.747691812)" -2218119,HH483661,07/02/2002 10:03:48 PM,087XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,false,true,0634,,21,44,08B,1177767,1847263,2002,03/30/2006 09:10:16 PM,41.736209387,-87.624306533,"(41.736209387, -87.624306533)" -2218047,HH482194,07/02/2002 10:45:00 AM,024XX W MADISON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1332,,2,28,14,1160384,1899988,2002,03/30/2006 09:10:16 PM,41.881268718,-87.68653824,"(41.881268718, -87.68653824)" -2214973,HH481524,07/01/2002 11:48:12 PM,049XX S FEDERAL ST,0485,BATTERY,AGGRAVATED OF A CHILD,STREET,false,false,0231,,3,38,04B,1176484,1872478,2002,03/30/2006 09:10:16 PM,41.805431035,-87.628249642,"(41.805431035, -87.628249642)" -2249507,HH481402,07/01/2002 11:00:00 PM,065XX S GREEN ST,0460,BATTERY,SIMPLE,STREET,false,true,0723,,16,68,08B,1171724,1861384,2002,03/30/2006 09:10:16 PM,41.775093697,-87.646032613,"(41.775093697, -87.646032613)" -2214324,HH481111,07/01/2002 07:45:00 PM,076XX S CICERO AVE,0460,BATTERY,SIMPLE,DEPARTMENT STORE,false,true,0833,,13,65,08B,1145766,1853744,2002,03/30/2006 09:10:16 PM,41.754658085,-87.741385006,"(41.754658085, -87.741385006)" -2224498,HH480230,07/01/2002 02:02:24 PM,020XX W 67TH PL,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,0726,,15,67,26,1163559,1859839,2002,03/30/2006 09:10:16 PM,41.771029174,-87.676007766,"(41.771029174, -87.676007766)" -2393114,HH704495,07/01/2002 12:00:00 PM,058XX S NAGLE AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0811,,23,56,26,1134438,1864943,2002,03/30/2006 09:10:16 PM,41.785596671,-87.782636877,"(41.785596671, -87.782636877)" -2214947,HH480971,07/01/2002 11:00:00 AM,037XX N WAYNE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1923,,44,6,05,1166663,1925307,2002,03/30/2006 09:10:16 PM,41.950613417,-87.662755216,"(41.950613417, -87.662755216)" -2216915,HH478938,06/30/2002 10:51:34 PM,015XX S ALBANY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1022,,24,29,14,1155926,1892156,2002,03/30/2006 09:10:16 PM,41.859867924,-87.703118974,"(41.859867924, -87.703118974)" -2213321,HH478606,06/30/2002 07:50:00 PM,022XX W PERSHING RD,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,0913,,11,59,08B,1162172,1878822,2002,03/30/2006 09:10:16 PM,41.82314992,-87.680563617,"(41.82314992, -87.680563617)" -2210968,HH476531,06/29/2002 07:35:00 PM,016XX S HOMAN AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,false,false,1021,,24,29,04B,1154012,1891492,2002,03/30/2006 09:10:16 PM,41.858084171,-87.710162464,"(41.858084171, -87.710162464)" -2211564,HH477639,06/29/2002 07:00:00 PM,004XX E 95TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0633,,9,49,05,1180748,1842114,2002,03/30/2006 09:10:16 PM,41.722011996,-87.613543019,"(41.722011996, -87.613543019)" -2245660,HH475483,06/29/2002 10:45:00 AM,028XX W FLOURNOY ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1135,,2,27,08B,1157238,1896859,2002,03/30/2006 09:10:16 PM,41.872746915,-87.698175241,"(41.872746915, -87.698175241)" -2209368,HH474258,06/28/2002 08:00:00 PM,072XX N BELL AVE,1570,SEX OFFENSE,PUBLIC INDECENCY,STREET,false,false,2411,,49,2,17,1160152,1947953,2002,03/30/2006 09:10:16 PM,42.012892283,-87.686060077,"(42.012892283, -87.686060077)" -2210991,HH477428,06/28/2002 07:00:00 PM,017XX W GRANVILLE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2433,,40,77,14,1163450,1941267,2002,03/30/2006 09:10:16 PM,41.994476665,-87.67411449,"(41.994476665, -87.67411449)" -2207778,HH472710,06/28/2002 12:00:00 AM,048XX W BERTEAU AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1624,,45,15,14,1142997,1927516,2002,03/30/2006 09:10:16 PM,41.957150261,-87.749695071,"(41.957150261, -87.749695071)" -2216841,HH471219,06/27/2002 02:15:00 PM,020XX S ALLPORT ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1222,,25,31,18,1168317,1890236,2002,03/30/2006 09:10:16 PM,41.854340689,-87.657690616,"(41.854340689, -87.657690616)" -2244396,HH518899,06/26/2002 09:00:00 AM,006XX E MARQUETTE RD,1110,DECEPTIVE PRACTICE,BOGUS CHECK,COMMERCIAL / BUSINESS OFFICE,false,false,0321,,20,42,11,1181384,1861423,2002,03/30/2006 09:10:16 PM,41.774983406,-87.610619417,"(41.774983406, -87.610619417)" -2218872,HH468095,06/26/2002 08:46:00 AM,068XX S SANGAMON ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,false,false,0723,,17,68,26,1171203,1859278,2002,03/30/2006 09:10:16 PM,41.769325988,-87.648004046,"(41.769325988, -87.648004046)" -2211289,HH469556,06/26/2002 07:00:00 AM,048XX N CENTRAL AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,1622,,45,11,05,1138079,1931871,2002,03/30/2006 09:10:16 PM,41.96919127,-87.76766969,"(41.96919127, -87.76766969)" -2204149,HH467537,06/25/2002 07:30:00 PM,043XX N GREENVIEW AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1922,,47,6,14,1165245,1928987,2002,03/30/2006 09:10:16 PM,41.960741826,-87.667862615,"(41.960741826, -87.667862615)" -2205652,HH466696,06/25/2002 04:35:00 PM,049XX W POLK ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1533,,24,25,08B,1143453,1895878,2002,03/30/2006 09:10:16 PM,41.870323688,-87.748811345,"(41.870323688, -87.748811345)" -2210402,HH469243,06/25/2002 04:00:00 PM,072XX S LOWE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0732,,17,68,05,1173363,1856709,2002,03/30/2006 09:10:16 PM,41.762228843,-87.640162396,"(41.762228843, -87.640162396)" -2211530,HH464777,06/24/2002 08:21:00 PM,071XX S KEDZIE AVE,0460,BATTERY,SIMPLE,STREET,true,false,0831,,18,66,08B,1156225,1857330,2002,03/30/2006 09:10:16 PM,41.764294764,-87.702959145,"(41.764294764, -87.702959145)" -2203330,HH464602,06/24/2002 07:23:36 PM,041XX W WABANSIA AVE,0330,ROBBERY,AGGRAVATED,STREET,false,false,2534,,30,23,03,1148419,1910935,2002,06/11/2007 03:52:33 PM,41.911547487,-87.730190811,"(41.911547487, -87.730190811)" -2211103,HH461949,06/23/2002 04:30:00 PM,062XX S FAIRFIELD AVE,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,0825,,15,66,08A,1159070,1863327,2002,03/30/2006 09:10:16 PM,41.780693717,-87.692367607,"(41.780693717, -87.692367607)" -2208492,HH472955,06/22/2002 11:00:00 PM,018XX S KARLOV AVE,0810,THEFT,OVER $500,RESIDENCE,false,false,1012,,24,29,06,1149388,1890891,2002,12/04/2014 12:43:35 PM,41.856525794,-87.72715112,"(41.856525794, -87.72715112)" -2201380,HH460481,06/22/2002 10:35:00 PM,053XX N BROADWAY,0820,THEFT,$500 AND UNDER,OTHER,false,false,2013,,48,77,06,1167315,1935377,2002,12/04/2014 12:43:35 PM,41.978231832,-87.66006766,"(41.978231832, -87.66006766)" -2213741,HH457785,06/21/2002 06:35:01 PM,034XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1133,,24,29,08B,1153749,1894539,2002,03/30/2006 09:10:16 PM,41.866450715,-87.711046775,"(41.866450715, -87.711046775)" -2208837,HH456945,06/21/2002 12:22:15 PM,057XX S CAMPBELL AVE,1661,GAMBLING,GAME/DICE,STREET,true,false,0824,,16,63,19,1160734,1866164,2002,03/30/2006 09:10:16 PM,41.788444632,-87.686188755,"(41.788444632, -87.686188755)" -2205394,HH455977,06/20/2002 10:10:00 PM,037XX W DIVISION ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2535,,27,23,18,1151118,1907777,2002,03/30/2006 09:10:16 PM,41.902829124,-87.72035837,"(41.902829124, -87.72035837)" -2198761,HH460317,06/19/2002 02:30:00 PM,090XX S CONSTANCE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0413,,8,48,14,1190131,1845418,2002,03/30/2006 09:10:16 PM,41.730858084,-87.579068986,"(41.730858084, -87.579068986)" -2193120,HH070191,06/19/2002 09:00:00 AM,082XX S KINGSTON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0423,,7,46,07,1194651,1850610,2002,03/30/2006 09:10:16 PM,41.744995488,-87.562340578,"(41.744995488, -87.562340578)" -2189847,HH449850,06/17/2002 05:30:00 PM,004XX E 111TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,0513,,9,49,14,1180898,1831487,2002,03/30/2006 09:10:16 PM,41.692846669,-87.613319061,"(41.692846669, -87.613319061)" -2189055,HH448580,06/17/2002 09:00:00 AM,022XX N SHEFFIELD AVE,0810,THEFT,OVER $500,OTHER,false,false,1811,,32,7,06,1169209,1915350,2002,12/04/2014 12:43:35 PM,41.923235916,-87.653686532,"(41.923235916, -87.653686532)" -2192372,HH447369,06/17/2002 07:39:23 AM,044XX S LA CROSSE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,CHA APARTMENT,false,false,0814,,23,56,14,1144658,1874846,2002,03/30/2006 09:10:16 PM,41.81258635,-87.744916353,"(41.81258635, -87.744916353)" -2194067,HH447036,06/16/2002 11:45:00 PM,014XX W 114TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,2234,,34,75,14,1168429,1828845,2002,03/30/2006 09:10:16 PM,41.68587353,-87.659046086,"(41.68587353, -87.659046086)" -2196509,HH446979,06/16/2002 11:15:00 PM,067XX S PARNELL AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,APARTMENT,false,true,0722,,6,68,04A,1173781,1859851,2002,03/30/2006 09:10:16 PM,41.770841609,-87.638537353,"(41.770841609, -87.638537353)" -2185890,HH444807,06/15/2002 09:30:00 PM,018XX W 22ND PL,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,1034,,25,31,08A,1164601,1889199,2002,03/30/2006 09:10:16 PM,41.851574488,-87.671359149,"(41.851574488, -87.671359149)" -2185300,HH441992,06/14/2002 04:00:00 PM,032XX E 87TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0424,,7,46,07,1199002,1847937,2002,03/30/2006 09:10:16 PM,41.737552497,-87.546487774,"(41.737552497, -87.546487774)" -2185254,HH440156,06/13/2002 07:58:48 PM,116XX S LAFAYETTE AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,true,false,0522,,34,53,06,1177961,1827683,2002,12/04/2014 12:43:35 PM,41.682474798,-87.624186549,"(41.682474798, -87.624186549)" -2183582,HH439676,06/13/2002 05:47:45 PM,003XX W 108TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0513,,34,49,05,1175872,1833265,2002,03/30/2006 09:10:16 PM,41.697839578,-87.631667068,"(41.697839578, -87.631667068)" -2181269,HH438401,06/12/2002 10:30:00 PM,035XX S ARCHER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0913,,11,59,14,1162611,1881239,2002,03/30/2006 09:10:16 PM,41.829773275,-87.678885546,"(41.829773275, -87.678885546)" -2192577,HH437298,06/12/2002 05:55:58 PM,033XX W MAYPOLE AVE,0460,BATTERY,SIMPLE,STREET,false,false,1123,,28,27,08B,1154211,1900746,2002,03/30/2006 09:10:16 PM,41.883474173,-87.709185019,"(41.883474173, -87.709185019)" -2204414,HH436248,06/12/2002 10:46:18 AM,041XX S CALIFORNIA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0912,,14,58,18,1158324,1877638,2002,03/30/2006 09:10:16 PM,41.819980236,-87.694712795,"(41.819980236, -87.694712795)" -2179285,HH433127,06/10/2002 10:50:00 PM,039XX N SHERIDAN RD,1330,CRIMINAL TRESPASS,TO LAND,CTA PLATFORM,true,false,2324,,44,6,26,1168850,1926540,2002,03/30/2006 09:10:16 PM,41.95394958,-87.65468012,"(41.95394958, -87.65468012)" -2176876,HH433480,06/10/2002 05:00:00 PM,020XX W CORTEZ ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1312,,32,24,05,1162513,1907030,2002,03/30/2006 09:10:16 PM,41.900548241,-87.678523335,"(41.900548241, -87.678523335)" -2177388,HH431428,06/10/2002 01:35:00 AM,045XX N ST LOUIS AVE,041B,BATTERY,AGGRAVATED: OTHER FIREARM,STREET,false,false,1723,,33,14,04B,,,2002,03/30/2006 09:10:16 PM,,, -2187700,HH429184,06/09/2002 08:30:00 AM,007XX N HAMLIN AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),STREET,true,false,1112,,27,23,18,1150889,1904437,2002,03/30/2006 09:10:16 PM,41.893668316,-87.721287058,"(41.893668316, -87.721287058)" -2184068,HH428940,06/09/2002 03:10:00 AM,008XX N KEDVALE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,false,true,1111,,37,23,04B,1148601,1905416,2002,03/30/2006 09:10:16 PM,41.896399275,-87.729664873,"(41.896399275, -87.729664873)" -2173466,HH428916,06/09/2002 02:00:00 AM,065XX S CAMPBELL AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,true,0832,,15,66,04B,1160882,1860910,2002,03/30/2006 09:10:16 PM,41.774023875,-87.685791164,"(41.774023875, -87.685791164)" -2189824,HH425897,06/08/2002 11:25:00 AM,027XX W LEXINGTON ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1135,,2,27,18,1158142,1896547,2002,03/30/2006 09:10:16 PM,41.871872352,-87.694864753,"(41.871872352, -87.694864753)" -2174107,HH424548,06/06/2002 11:45:00 PM,011XX N LAKE SHORE DR,0820,THEFT,$500 AND UNDER,STREET,false,false,1824,,42,8,06,1177170,1907843,2002,12/04/2014 12:43:35 PM,41.902459541,-87.62466322,"(41.902459541, -87.62466322)" -2170641,HH423037,06/06/2002 01:47:00 PM,076XX N PAULINA ST,1330,CRIMINAL TRESPASS,TO LAND,STREET,true,false,2422,,49,1,26,1163615,1950440,2002,03/30/2006 09:10:16 PM,42.019644096,-87.673247386,"(42.019644096, -87.673247386)" -2182694,HH429109,06/05/2002 10:00:00 PM,056XX W NORTH AVE,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,STREET,false,false,2531,,29,25,11,1138737,1910118,2002,03/30/2006 09:10:16 PM,41.909486864,-87.765779753,"(41.909486864, -87.765779753)" -2173922,HH421407,06/05/2002 06:03:00 PM,022XX N MILWAUKEE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,true,false,1431,,1,22,03,1158233,1914353,2002,03/30/2006 09:10:16 PM,41.920731708,-87.694043541,"(41.920731708, -87.694043541)" -2168147,HH421043,06/05/2002 03:00:00 PM,035XX W BERTEAU AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1723,,33,16,14,1151762,1927641,2002,03/30/2006 09:10:16 PM,41.95732494,-87.717468725,"(41.95732494, -87.717468725)" -2171617,HH420308,06/05/2002 10:15:00 AM,007XX W DIVISION ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,1822,,27,8,26,1171199,1908272,2002,03/30/2006 09:10:16 PM,41.903770001,-87.646582863,"(41.903770001, -87.646582863)" -2171381,HH416996,06/03/2002 08:05:00 PM,033XX S PRAIRIE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,2112,,3,35,18,1178439,1883013,2002,03/30/2006 09:10:16 PM,41.834295706,-87.620759116,"(41.834295706, -87.620759116)" -2166981,HH416427,06/03/2002 04:25:00 PM,053XX W WAVELAND AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,true,false,1634,,38,15,26,1140107,1924125,2002,03/30/2006 09:10:16 PM,41.947898559,-87.760403066,"(41.947898559, -87.760403066)" -2167082,HH416287,06/03/2002 03:30:00 PM,083XX S BURNHAM AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0423,,10,46,15,1196325,1849848,2002,03/30/2006 09:10:16 PM,41.742863179,-87.556232134,"(41.742863179, -87.556232134)" -2162224,HH413664,06/02/2002 02:00:00 AM,009XX W 86TH ST,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0613,,21,71,08B,1171257,1847840,2002,03/30/2006 09:10:16 PM,41.737937452,-87.648140015,"(41.737937452, -87.648140015)" -2161013,HH411612,06/01/2002 02:00:00 PM,107XX S HALSTED ST,0560,ASSAULT,SIMPLE,GROCERY FOOD STORE,false,true,2233,,34,75,08A,1172839,1833862,2002,03/30/2006 09:10:16 PM,41.699545107,-87.642754757,"(41.699545107, -87.642754757)" -2162672,HH414634,06/01/2002 10:30:00 AM,056XX S TROY ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0824,,14,63,05,1156311,1866797,2002,03/30/2006 09:10:16 PM,41.790271887,-87.702389345,"(41.790271887, -87.702389345)" -2160854,HH411290,06/01/2002 10:00:00 AM,007XX E 103RD PL,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0512,,9,50,08B,1183040,1836531,2002,03/30/2006 09:10:16 PM,41.706638661,-87.605320769,"(41.706638661, -87.605320769)" -2268073,HH548739,06/01/2002 09:00:00 AM,114XX S DR MARTIN LUTHER KING JR DR,0840,THEFT,FINANCIAL ID THEFT: OVER $300,APARTMENT,false,false,0531,,9,49,06,1180993,1829149,2002,03/30/2006 09:10:16 PM,41.68642869,-87.613042825,"(41.68642869, -87.613042825)" -2157849,HH407494,05/30/2002 12:10:00 PM,051XX S TRIPP AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0815,,23,57,14,1148936,1870365,2002,03/30/2006 09:10:16 PM,41.800208368,-87.729339909,"(41.800208368, -87.729339909)" -2159387,HH405454,05/29/2002 08:26:24 PM,001XX N STATE ST,0460,BATTERY,SIMPLE,DRUG STORE,true,false,0122,,42,32,08B,1176379,1901300,2002,03/30/2006 09:10:16 PM,41.884523111,-87.627766291,"(41.884523111, -87.627766291)" -2156479,HH403679,05/29/2002 08:37:05 AM,016XX N WELLS ST,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,1814,,43,7,05,1174434,1911468,2002,03/30/2006 09:10:16 PM,41.912468298,-87.634604421,"(41.912468298, -87.634604421)" -2164513,HH400911,05/28/2002 12:30:00 AM,069XX S LAFAYETTE AVE,0460,BATTERY,SIMPLE,STREET,false,false,0731,,6,69,08B,1176984,1859262,2002,03/30/2006 09:10:16 PM,41.769153723,-87.626814161,"(41.769153723, -87.626814161)" -2152206,HH401320,05/27/2002 05:00:00 PM,053XX N MILWAUKEE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,1622,,45,11,07,1137334,1935330,2002,03/30/2006 09:10:16 PM,41.978696536,-87.770325505,"(41.978696536, -87.770325505)" -2157187,HH400508,05/27/2002 05:00:00 PM,003XX N AUSTIN BLVD,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,1512,,29,25,08A,1136365,1901525,2002,03/30/2006 09:10:16 PM,41.885949322,-87.774699137,"(41.885949322, -87.774699137)" -2179629,HH435257,05/25/2002 07:00:00 PM,018XX N FREMONT ST,0810,THEFT,OVER $500,RESIDENCE,false,false,1813,,43,7,06,1170064,1911974,2002,12/04/2014 12:43:35 PM,41.913953358,-87.650643728,"(41.913953358, -87.650643728)" -2154445,HH394379,05/24/2002 08:30:00 PM,052XX N MILWAUKEE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1623,,45,11,18,1138249,1933856,2002,03/30/2006 09:10:16 PM,41.974635202,-87.766996341,"(41.974635202, -87.766996341)" -2154131,HH392503,05/24/2002 02:20:00 AM,064XX S LAWNDALE AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0823,,13,65,18,1152772,1861772,2002,03/30/2006 09:10:16 PM,41.77655306,-87.71549844,"(41.77655306, -87.71549844)" -2157609,HH405508,05/23/2002 11:59:00 PM,049XX S MICHIGAN AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,0224,,3,38,06,1178042,1871958,2002,12/04/2014 12:43:35 PM,41.803968892,-87.622551341,"(41.803968892, -87.622551341)" -2154407,HH389896,05/22/2002 09:00:00 PM,042XX W ARMITAGE AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2522,,30,20,16,1148045,1912996,2002,03/30/2006 09:10:16 PM,41.917210281,-87.731511651,"(41.917210281, -87.731511651)" -2145631,HH385319,05/20/2002 09:05:00 PM,008XX N MONTICELLO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1112,,27,23,18,1151940,1905292,2002,03/30/2006 09:10:16 PM,41.895993884,-87.717404526,"(41.895993884, -87.717404526)" -2157500,HH385432,05/20/2002 08:11:10 PM,0000X E 102ND ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0511,,9,49,18,1178178,1837387,2002,03/30/2006 09:10:16 PM,41.709099058,-87.623099291,"(41.709099058, -87.623099291)" -2138137,HH383115,05/19/2002 09:31:56 PM,025XX W THOMAS ST,0560,ASSAULT,SIMPLE,RESIDENCE,true,true,1312,,1,24,08A,1158901,1907182,2002,03/30/2006 09:10:16 PM,41.901040229,-87.691786238,"(41.901040229, -87.691786238)" -2139175,HH381665,05/19/2002 03:30:00 AM,091XX S LAFLIN ST,0460,BATTERY,SIMPLE,STREET,false,false,2222,,21,73,08B,1167987,1843842,2002,03/30/2006 09:10:16 PM,41.727037171,-87.660235035,"(41.727037171, -87.660235035)" -2137102,HH380029,05/17/2002 11:00:00 PM,015XX S KEDZIE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1022,,24,29,07,,,2002,03/30/2006 09:10:16 PM,,, -2137374,HH380687,05/17/2002 09:00:00 PM,041XX N LONG AVE,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,1624,,38,15,05,1139650,1926980,2002,03/30/2006 09:10:16 PM,41.95574132,-87.762012959,"(41.95574132, -87.762012959)" -2140524,HH376970,05/16/2002 09:51:32 PM,020XX W FOSTER AVE,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,STREET,true,false,2032,,47,4,22,1161619,1934481,2002,03/30/2006 09:10:16 PM,41.975894109,-87.681039832,"(41.975894109, -87.681039832)" -2135156,HH376158,05/16/2002 03:00:00 PM,029XX N NEWCASTLE AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2511,,36,18,05,1130201,1918900,2002,03/30/2006 09:10:16 PM,41.933736482,-87.796936104,"(41.933736482, -87.796936104)" -2133842,HH376706,05/16/2002 02:30:00 PM,001XX N STATE ST,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,false,false,0122,,42,32,06,1176391,1900935,2002,12/04/2014 12:43:35 PM,41.88352126,-87.627733247,"(41.88352126, -87.627733247)" -2142726,HH375576,05/16/2002 11:22:33 AM,004XX N LAVERGNE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,true,false,1532,,28,25,26,1142916,1902513,2002,03/30/2006 09:10:16 PM,41.888540968,-87.750617478,"(41.888540968, -87.750617478)" -2134664,HH374691,05/15/2002 11:15:00 PM,050XX S DR MARTIN LUTHER KING JR DR,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0224,,3,38,07,1179756,1871324,2002,03/30/2006 09:10:16 PM,41.802190073,-87.616284675,"(41.802190073, -87.616284675)" -2133736,HH376277,05/15/2002 12:00:00 AM,050XX W GLADYS AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,false,false,1533,,29,25,11,1142809,1897830,2002,03/30/2006 09:10:16 PM,41.875692234,-87.751127097,"(41.875692234, -87.751127097)" -2139466,HH371955,05/14/2002 07:15:00 PM,030XX W MONTROSE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1724,,33,16,18,1155573,1929047,2002,03/30/2006 09:10:16 PM,41.96110708,-87.703420243,"(41.96110708, -87.703420243)" -2133570,HH375920,05/14/2002 12:00:00 AM,004XX S HALSTED ST,1310,CRIMINAL DAMAGE,TO PROPERTY,CTA PLATFORM,false,false,1213,,2,28,14,1171079,1898067,2002,03/30/2006 09:10:16 PM,41.875769464,-87.647323335,"(41.875769464, -87.647323335)" -2131364,HH369690,05/13/2002 08:00:00 PM,059XX S GREEN ST,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0712,,16,68,08B,1171625,1865113,2002,03/30/2006 09:10:16 PM,41.785328676,-87.646286312,"(41.785328676, -87.646286312)" -2130896,HH369119,05/13/2002 04:32:10 PM,024XX S TRUMBULL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1024,,22,30,26,1153714,1887578,2002,03/30/2006 09:10:16 PM,41.847349627,-87.711360378,"(41.847349627, -87.711360378)" -2128396,HH369205,05/13/2002 03:30:00 PM,077XX S BURNHAM AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,0421,,7,43,08B,1196107,1854103,2002,03/30/2006 09:10:16 PM,41.754544623,-87.55689019,"(41.754544623, -87.55689019)" -2133080,HH368841,05/13/2002 02:32:36 PM,049XX S STATE ST,0820,THEFT,$500 AND UNDER,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,0231,,3,38,06,1177075,1872016,2002,12/04/2014 12:43:35 PM,41.804149939,-87.62609605,"(41.804149939, -87.62609605)" -2127943,HH369035,05/12/2002 11:59:00 PM,008XX N FAIRFIELD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,1311,,26,24,06,1157861,1905648,2002,12/04/2014 12:43:35 PM,41.896852079,-87.695648131,"(41.896852079, -87.695648131)" -2130991,HH366970,05/12/2002 04:27:02 PM,037XX W HURON ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,1122,,27,23,14,1151221,1904368,2002,03/30/2006 09:10:16 PM,41.893472468,-87.720069538,"(41.893472468, -87.720069538)" -2126644,HH365727,05/11/2002 10:30:00 PM,051XX W MONROE ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1533,,28,25,08A,1141941,1899210,2002,03/30/2006 09:10:16 PM,41.879495241,-87.754279928,"(41.879495241, -87.754279928)" -2125457,HH363146,05/10/2002 06:30:00 PM,003XX N WELLS ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,0113,,42,32,11,1174643,1902173,2002,03/30/2006 09:10:16 PM,41.886957663,-87.634114929,"(41.886957663, -87.634114929)" -2127942,HH360775,05/09/2002 06:43:33 PM,009XX S RACINE AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1213,,2,28,26,1168481,1895966,2002,03/30/2006 09:10:16 PM,41.870060741,-87.656922972,"(41.870060741, -87.656922972)" -2124785,HH361648,05/09/2002 02:00:00 PM,021XX N MENARD AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,true,false,2515,,29,19,07,1137349,1913339,2002,03/30/2006 09:10:16 PM,41.918350754,-87.770801134,"(41.918350754, -87.770801134)" -2128932,HH359276,05/09/2002 07:20:00 AM,040XX S FEDERAL ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,0214,,3,38,18,1176399,1878070,2002,03/30/2006 09:10:16 PM,41.820777898,-87.628393146,"(41.820777898, -87.628393146)" -2133183,HH359085,05/09/2002 01:00:00 AM,003XX S WESTERN AVE,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1125,,2,28,18,1160428,1898167,2002,03/30/2006 09:10:16 PM,41.876270818,-87.686427074,"(41.876270818, -87.686427074)" -2123340,HH362302,05/08/2002 05:00:00 PM,035XX W EVERGREEN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1422,,26,23,14,1152255,1908788,2002,03/30/2006 09:10:16 PM,41.905581034,-87.716155215,"(41.905581034, -87.716155215)" -2126874,HH357399,05/08/2002 10:32:00 AM,043XX W MAYPOLE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,true,false,1114,,28,26,26,1147429,1901141,2002,03/30/2006 09:10:16 PM,41.884690751,-87.734079108,"(41.884690751, -87.734079108)" -2120924,HH356710,05/07/2002 10:14:00 PM,019XX N MAUD AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1811,,32,7,05,1168608,1912887,2002,03/30/2006 09:10:16 PM,41.91649036,-87.655966289,"(41.91649036, -87.655966289)" -2119156,HH356627,05/07/2002 10:00:00 PM,045XX S HERMITAGE AVE,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,0914,,20,61,08B,1165401,1874537,2002,03/30/2006 09:10:16 PM,41.811323473,-87.668839217,"(41.811323473, -87.668839217)" -2123585,HH355553,05/07/2002 01:25:00 PM,015XX N LONG AVE,0460,BATTERY,SIMPLE,APARTMENT,false,true,2532,,37,25,08B,1140106,1909809,2002,03/30/2006 09:10:16 PM,41.908613965,-87.760758146,"(41.908613965, -87.760758146)" -2118296,HH352565,05/06/2002 06:45:00 AM,086XX S SACRAMENTO AVE,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,FEDERAL BUILDING,false,false,0835,,18,70,26,1157859,1846784,2002,03/30/2006 09:10:16 PM,41.735321849,-87.697255831,"(41.735321849, -87.697255831)" -2164655,HH415632,05/05/2002 11:30:00 PM,023XX W HARRISON ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1211,,2,28,14,1160548,1897341,2002,03/30/2006 09:10:16 PM,41.874001714,-87.686009347,"(41.874001714, -87.686009347)" -2255029,HH532649,05/05/2002 10:00:00 AM,002XX E 50TH ST,0890,THEFT,FROM BUILDING,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,false,false,0224,,3,38,06,1178640,1871963,2002,03/30/2006 09:10:16 PM,41.803969022,-87.620358033,"(41.803969022, -87.620358033)" -2114846,HH349313,05/04/2002 11:00:00 AM,029XX N ALLEN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1412,,35,21,03,1152619,1919435,2002,03/30/2006 09:10:16 PM,41.934790126,-87.714535901,"(41.934790126, -87.714535901)" -2240460,HH515630,05/03/2002 12:00:00 AM,076XX S PHILLIPS AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0421,,7,43,26,1193823,1854520,2002,03/30/2006 09:10:16 PM,41.755745163,-87.56524654,"(41.755745163, -87.56524654)" -2110413,HH345430,05/02/2002 03:25:00 PM,065XX N SHERIDAN RD,0820,THEFT,$500 AND UNDER,COLLEGE/UNIVERSITY GROUNDS,false,false,2432,,49,1,06,1167110,1943640,2002,12/04/2014 12:43:35 PM,42.00091012,-87.66058284,"(42.00091012, -87.66058284)" -2113113,HH344684,05/02/2002 11:00:00 AM,049XX W IOWA ST,0560,ASSAULT,SIMPLE,VEHICLE NON-COMMERCIAL,true,false,1531,,37,25,08A,1143493,1905571,2002,03/30/2006 09:10:16 PM,41.896921704,-87.748421942,"(41.896921704, -87.748421942)" -2110553,HH345891,05/02/2002 08:00:00 AM,031XX S KEELER AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1031,,22,30,26,1148923,1883471,2002,03/30/2006 09:10:16 PM,41.836173352,-87.729049572,"(41.836173352, -87.729049572)" -2109748,HH343307,05/01/2002 05:05:00 PM,033XX S MORGAN ST,0560,ASSAULT,SIMPLE,STREET,false,false,0924,,11,60,08A,1170220,1883085,2002,03/30/2006 09:10:16 PM,41.834676415,-87.650914431,"(41.834676415, -87.650914431)" -2112046,HH342261,05/01/2002 01:00:00 AM,051XX S INDIANA AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,0232,,3,40,06,1178442,1870523,2002,12/04/2014 12:43:35 PM,41.800022036,-87.621127955,"(41.800022036, -87.621127955)" -2106615,HH339948,04/30/2002 01:46:43 AM,015XX S KILBOURN AVE,0460,BATTERY,SIMPLE,SIDEWALK,false,true,1012,,24,29,08B,1146690,1891695,2002,03/30/2006 09:10:16 PM,41.858783914,-87.737033818,"(41.858783914, -87.737033818)" -2109585,HH339647,04/29/2002 09:40:00 PM,063XX S ASHLAND AVE,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,0725,,16,67,04A,1166717,1862698,2002,03/30/2006 09:10:16 PM,41.778807823,-87.664350142,"(41.778807823, -87.664350142)" -2104110,HH337639,04/29/2002 03:45:00 AM,045XX N HARDING AVE,0440,BATTERY,AGG: HANDS/FIST/FEET NO/MINOR INJURY,RESIDENCE,true,true,1723,,39,14,08B,1149284,1929759,2002,03/30/2006 09:10:16 PM,41.963185394,-87.726523555,"(41.963185394, -87.726523555)" -2104380,HH338244,04/27/2002 12:00:00 PM,036XX S EMERALD AVE,0820,THEFT,$500 AND UNDER,STREET,false,false,0925,,11,60,06,1171938,1880686,2002,12/04/2014 12:43:35 PM,41.828055716,-87.644681214,"(41.828055716, -87.644681214)" -2104578,HH334633,04/27/2002 04:35:00 AM,014XX N MILWAUKEE AVE,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1424,,1,24,08B,1163790,1909809,2002,03/30/2006 09:10:16 PM,41.908147175,-87.673754371,"(41.908147175, -87.673754371)" -2105710,HH337757,04/26/2002 10:00:00 PM,058XX N PULASKI RD,0820,THEFT,$500 AND UNDER,GOVERNMENT BUILDING/PROPERTY,false,false,1711,,39,13,06,1148723,1938044,2002,12/04/2014 12:43:35 PM,41.985930875,-87.728371059,"(41.985930875, -87.728371059)" -2104413,HH331961,04/26/2002 10:25:00 AM,015XX N NORTH PARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1821,,27,8,14,1173839,1910906,2002,03/30/2006 09:10:16 PM,41.910939423,-87.636807039,"(41.910939423, -87.636807039)" -2104450,HH338304,04/25/2002 05:00:00 PM,027XX S CALIFORNIA BLVD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,OTHER,false,true,1034,,12,30,26,1158250,1885974,2002,03/30/2006 09:10:16 PM,41.842856716,-87.694756941,"(41.842856716, -87.694756941)" From e2eb64372a7f7a308d0227a95743f8ca347d96c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:33:23 -0700 Subject: [PATCH 060/248] Delete part-00007-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv --- ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 759 ------------------ 1 file changed, 759 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00007-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00007-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00007-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv deleted file mode 100644 index ea61376c..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00007-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv +++ /dev/null @@ -1,759 +0,0 @@ -2101077,HH331686,04/25/2002 02:30:00 PM,0000X N MORGAN ST,0560,ASSAULT,SIMPLE,COMMERCIAL / BUSINESS OFFICE,false,false,1212,,27,28,08A,1169732,1900465,2002,03/30/2006 09:10:16 PM,41.882379185,-87.652199117,"(41.882379185, -87.652199117)" -2103474,HH334487,04/24/2002 11:00:00 PM,018XX E 95TH ST,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENCE,false,false,0431,,7,51,04A,1189901,1842296,2002,03/30/2006 09:10:16 PM,41.722296526,-87.580011632,"(41.722296526, -87.580011632)" -2099681,HH327994,04/24/2002 01:15:00 PM,063XX N RICHMOND ST,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,false,false,2413,,50,2,14,1155569,1941854,2002,03/30/2006 09:10:16 PM,41.996250238,-87.703088514,"(41.996250238, -87.703088514)" -2096225,HH327432,04/24/2002 06:30:00 AM,093XX S YATES BL,0810,THEFT,OVER $500,STREET,false,false,0413,,,,06,1193761,1843528,2002,12/04/2014 12:43:35 PM,41.72558369,-87.565833015,"(41.72558369, -87.565833015)" -2119786,HH325182,04/23/2002 08:15:00 AM,048XX S HALSTED ST,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,0935,,11,61,16,1171820,1873010,2002,03/30/2006 09:10:16 PM,41.806994618,-87.645339629,"(41.806994618, -87.645339629)" -2096064,HH326438,04/23/2002 07:00:00 AM,039XX W 46TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0821,,14,57,07,1151062,1873890,2002,03/30/2006 09:10:16 PM,41.809840221,-87.721451101,"(41.809840221, -87.721451101)" -2094153,HH325192,04/22/2002 09:30:00 PM,044XX S RICHMOND ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0912,,,,07,1157479,1875053,2002,03/30/2006 09:10:16 PM,41.812903859,-87.697882765,"(41.812903859, -87.697882765)" -2100649,HH322893,04/22/2002 03:50:00 AM,070XX S HALSTED ST,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0733,,6,68,08B,1172146,1858061,2002,03/30/2006 09:10:16 PM,41.765965722,-87.644583174,"(41.765965722, -87.644583174)" -2101177,HH322537,04/21/2002 08:30:00 PM,043XX S CICERO AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,CHA PARKING LOT/GROUNDS,false,false,0814,,23,56,04A,1145050,1875212,2002,03/30/2006 09:10:16 PM,41.813583335,-87.743469257,"(41.813583335, -87.743469257)" -2097671,HH322268,04/21/2002 06:00:00 PM,025XX W CERMAK RD,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,false,false,1034,,25,31,06,1159501,1889267,2002,12/04/2014 12:43:35 PM,41.851867449,-87.690075557,"(41.851867449, -87.690075557)" -2090692,HH320103,04/20/2002 03:00:00 PM,018XX N MAYFIELD AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2531,,,,26,1136844,1911449,2002,03/30/2006 09:10:16 PM,41.913173447,-87.772701964,"(41.913173447, -87.772701964)" -2098585,HH329772,04/20/2002 11:00:00 AM,043XX W MAYPOLE AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,true,1114,,28,26,06,1147223,1901137,2002,03/30/2006 09:10:16 PM,41.88468372,-87.73483568,"(41.88468372, -87.73483568)" -2091887,HH322801,04/19/2002 07:00:00 PM,025XX N CLARK ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1933,,,,06,1172258,1917323,2002,12/04/2014 12:43:35 PM,41.928583056,-87.642425103,"(41.928583056, -87.642425103)" -2094819,HH316759,04/18/2002 12:12:00 AM,080XX S COTTAGE GROVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0631,,,,16,1182988,1851977,2002,03/30/2006 09:10:16 PM,41.749025496,-87.605032618,"(41.749025496, -87.605032618)" -2094611,HH314262,04/17/2002 09:00:00 PM,021XX E 71 ST,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,0333,,,,06,1191459,1858232,2002,12/04/2014 12:43:35 PM,41.765988783,-87.573789768,"(41.765988783, -87.573789768)" -2086302,HH313833,04/17/2002 06:00:00 PM,094XX S GREENWOOD AV,0560,ASSAULT,SIMPLE,STREET,false,false,0413,,,,08A,,,2002,03/30/2006 09:10:16 PM,,, -2086922,HH313011,04/17/2002 11:51:23 AM,007XX N WABASH AV,0560,ASSAULT,SIMPLE,OTHER,false,false,1833,,,,08A,1176636,1905569,2002,03/30/2006 09:10:16 PM,41.896231666,-87.626693465,"(41.896231666, -87.626693465)" -2084322,HH310764,04/16/2002 11:20:00 AM,076XX S ESSEX AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0421,,,,08B,1194144,1854980,2002,03/30/2006 09:10:16 PM,41.756999568,-87.5640551,"(41.756999568, -87.5640551)" -2086594,HH310095,04/16/2002 01:18:11 AM,086XX S COTTAGE GROVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),true,false,0632,,,,07,1183026,1848012,2002,03/30/2006 09:10:16 PM,41.73814422,-87.605016344,"(41.73814422, -87.605016344)" -2082250,HH310256,04/15/2002 03:30:00 AM,049XX S KEDZIE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,CTA PLATFORM,false,false,0821,,,,14,1155830,1871914,2002,03/30/2006 09:10:16 PM,41.804323323,-87.704015698,"(41.804323323, -87.704015698)" -2086258,HH307761,04/14/2002 11:55:00 PM,068XX S STONY ISLAND AV,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,GROCERY FOOD STORE,false,false,0332,,,,05,1187999,1859976,2002,03/30/2006 09:10:16 PM,41.770857611,-87.586416156,"(41.770857611, -87.586416156)" -2086007,HH307462,04/14/2002 09:50:00 PM,120XX S NORMAL AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,true,false,0523,,,,18,1175106,1824720,2002,03/30/2006 09:10:16 PM,41.67440787,-87.634725464,"(41.67440787, -87.634725464)" -2085913,HH309852,04/14/2002 09:00:00 PM,086XX S STONY ISLAND AV,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,0412,,,,14,1188259,1848253,2002,03/30/2006 09:10:16 PM,41.738682423,-87.58583647,"(41.738682423, -87.58583647)" -2081280,HH307525,04/14/2002 07:00:00 PM,042XX W VAN BUREN ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",false,false,1132,,,,08B,1148424,1897730,2002,03/30/2006 09:10:16 PM,41.875311455,-87.730513272,"(41.875311455, -87.730513272)" -2084890,HH306585,04/14/2002 01:25:00 PM,063XX S ST LAWRENCE AV,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0312,,,,15,1181281,1863211,2002,03/30/2006 09:10:16 PM,41.779892225,-87.610941936,"(41.779892225, -87.610941936)" -2121803,HH353305,04/13/2002 03:00:00 PM,049XX N WESTERN AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,SMALL RETAIL STORE,false,false,2031,,47,4,11,1159499,1933026,2002,03/30/2006 09:10:16 PM,41.971945553,-87.688876131,"(41.971945553, -87.688876131)" -2079102,HH304357,04/13/2002 11:15:00 AM,068XX S BISHOP ST,0460,BATTERY,SIMPLE,STREET,true,true,0725,,,,08B,1167799,1859617,2002,03/30/2006 09:10:16 PM,41.770330001,-87.660471816,"(41.770330001, -87.660471816)" -2079024,HH303835,04/13/2002 01:54:44 AM,015XX N LUNA AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,2532,,,,04B,1139020,1909457,2002,03/30/2006 09:10:16 PM,41.907667859,-87.764756214,"(41.907667859, -87.764756214)" -2078076,HH303846,04/12/2002 11:15:00 PM,009XX W ADAMS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1213,,2,28,07,1170308,1899340,2002,03/30/2006 09:10:16 PM,41.879279542,-87.650116938,"(41.879279542, -87.650116938)" -2078048,HH303631,04/12/2002 10:45:20 PM,022XX W LELAND AV,0560,ASSAULT,SIMPLE,STREET,true,false,1911,,,,08A,1160522,1931130,2002,03/30/2006 09:10:16 PM,41.966721661,-87.685167148,"(41.966721661, -87.685167148)" -2078393,HH303643,04/12/2002 10:30:00 PM,087XX W BRYN MAWR AV,0560,ASSAULT,SIMPLE,OTHER,true,false,1614,,,,08A,,,2002,03/30/2006 09:10:16 PM,,, -2078799,HH302210,04/12/2002 08:15:00 AM,015XX W 51 ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,true,false,0932,,,,26,1167183,1870876,2002,03/30/2006 09:10:16 PM,41.80123928,-87.662407779,"(41.80123928, -87.662407779)" -2077684,HH302498,04/12/2002 08:00:00 AM,076XX S EXCHANGE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0421,,,,14,1195684,1855050,2002,03/30/2006 09:10:16 PM,41.757153726,-87.558409062,"(41.757153726, -87.558409062)" -2075971,HH130121,04/11/2002 08:00:00 PM,044XX N KIMBALL AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1723,,,,14,1152886,1929170,2002,03/30/2006 09:10:16 PM,41.961498377,-87.713295854,"(41.961498377, -87.713295854)" -2092542,HH299641,04/11/2002 08:30:00 AM,049XX S ARCHER AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,"SCHOOL, PUBLIC, BUILDING",true,false,0821,,,,18,1150928,1871413,2002,03/30/2006 09:10:16 PM,41.803045592,-87.722007222,"(41.803045592, -87.722007222)" -2075522,HH299181,04/11/2002 12:05:32 AM,019XX S TRUMBULL AV,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,1024,,,,08B,1153770,1890208,2002,03/30/2006 09:10:16 PM,41.854565544,-87.711084915,"(41.854565544, -87.711084915)" -2080768,HH298735,04/10/2002 08:00:00 PM,028XX N MILWAUKEE AV,0560,ASSAULT,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1412,,,,08A,1152677,1918942,2002,03/30/2006 09:10:16 PM,41.933436146,-87.71433583,"(41.933436146, -87.71433583)" -2088828,HH298458,04/10/2002 06:00:23 PM,027XX W JACKSON BV,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1125,,,,18,1157860,1898533,2002,03/30/2006 09:10:16 PM,41.877327883,-87.695845939,"(41.877327883, -87.695845939)" -2073834,HH298506,04/10/2002 08:15:00 AM,089XX S LOOMIS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2222,,,,07,1168518,1845657,2002,03/30/2006 09:10:16 PM,41.732006388,-87.658237765,"(41.732006388, -87.658237765)" -2081516,HH308460,04/08/2002 11:00:00 AM,091XX S SOUTH CHICAGO,0842,THEFT,AGG: FINANCIAL ID THEFT,APARTMENT,false,false,0423,,,,06,1197089,1844669,2002,03/30/2006 09:10:16 PM,41.72863262,-87.553604794,"(41.72863262, -87.553604794)" -2068545,HH291088,04/07/2002 10:43:43 AM,022XX W MONROE ST,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,1211,,,,06,1161159,1899452,2002,12/04/2014 12:43:35 PM,41.879781823,-87.683707377,"(41.879781823, -87.683707377)" -2075557,HH290654,04/07/2002 01:09:30 AM,017XX W 83 ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,0614,,,,18,1166186,1849614,2002,03/30/2006 09:10:16 PM,41.742914857,-87.666668571,"(41.742914857, -87.666668571)" -2075424,HH290461,04/06/2002 10:30:00 PM,067XX S KILDARE AV,2022,NARCOTICS,POSS: COCAINE,ALLEY,true,false,0833,,,,18,1148829,1859481,2002,03/30/2006 09:10:16 PM,41.770343007,-87.730012393,"(41.770343007, -87.730012393)" -2067379,HH290405,04/06/2002 08:00:00 PM,073XX S MICHIGAN AV,0810,THEFT,OVER $500,STREET,false,false,0323,,,,06,1178467,1856529,2002,12/04/2014 12:43:35 PM,41.761620517,-87.621461131,"(41.761620517, -87.621461131)" -2067133,HH288820,04/06/2002 05:00:00 AM,118XX S WESTERN AV,0610,BURGLARY,FORCIBLE ENTRY,RESTAURANT,false,false,2212,,,,05,1162486,1826010,2002,03/30/2006 09:10:16 PM,41.678219361,-87.680880879,"(41.678219361, -87.680880879)" -2066953,HH287533,04/05/2002 03:50:00 PM,023XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,2113,,,,26,1176649,1888559,2002,03/30/2006 09:10:16 PM,41.849554907,-87.627159699,"(41.849554907, -87.627159699)" -2071856,HH286557,04/05/2002 08:30:00 AM,043XX W WRIGHTWOOD AV,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2524,,,,08A,1146795,1916879,2002,03/30/2006 09:10:16 PM,41.927889584,-87.736004831,"(41.927889584, -87.736004831)" -8212264,HT446293,04/04/2002 12:00:00 PM,044XX S STATE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0221,,3,38,06,,,2002,08/24/2011 12:40:17 AM,,, -2064869,HH284305,04/04/2002 05:35:00 AM,027XX N WESTERN AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1411,,,,04B,1159853,1917902,2002,03/30/2006 09:10:16 PM,41.930437117,-87.687993176,"(41.930437117, -87.687993176)" -2063931,HH284929,04/03/2002 09:15:00 PM,095XX S EWING AV,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,0432,,,,05,1201944,1842278,2002,03/30/2006 09:10:16 PM,41.72194948,-87.535901442,"(41.72194948, -87.535901442)" -2075450,HH281831,04/02/2002 09:25:00 PM,063XX S HOYNE AV,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0726,,,,16,1163406,1862812,2002,03/30/2006 09:10:16 PM,41.779190696,-87.676485374,"(41.779190696, -87.676485374)" -2058666,HH280103,04/02/2002 01:45:00 AM,079XX S LA SALLE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0623,,,,14,1176621,1852135,2002,03/30/2006 09:10:16 PM,41.749604587,-87.628358827,"(41.749604587, -87.628358827)" -2053083,HH270840,03/28/2002 03:10:00 PM,002XX S LA SALLE ST,0810,THEFT,OVER $500,SMALL RETAIL STORE,false,false,0112,,,,06,1175122,1899410,2002,12/04/2014 12:43:35 PM,41.879365106,-87.632438796,"(41.879365106, -87.632438796)" -2052397,HH269609,03/27/2002 10:15:00 PM,074XX S PARNELL AV,1320,CRIMINAL DAMAGE,TO VEHICLE,VACANT LOT/LAND,false,false,0732,,,,14,1173877,1855458,2002,03/30/2006 09:10:16 PM,41.758784567,-87.638315569,"(41.758784567, -87.638315569)" -2054666,HH271549,03/27/2002 10:00:00 AM,033XX N HOYNE AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1913,,,,26,1161725,1922157,2002,03/30/2006 09:10:16 PM,41.942074225,-87.680995034,"(41.942074225, -87.680995034)" -2057807,HH266438,03/26/2002 01:33:13 PM,012XX W 71 PL,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,ALLEY,true,false,0734,,,,18,1168899,1857319,2002,03/30/2006 09:10:16 PM,41.764000309,-87.656505945,"(41.764000309, -87.656505945)" -2049210,HH264789,03/25/2002 05:35:00 PM,002XX E 42 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0214,,,,14,1178418,1877170,2002,03/30/2006 09:10:16 PM,41.81826253,-87.621013927,"(41.81826253, -87.621013927)" -2041888,HH256723,03/21/2002 12:00:00 AM,028XX W ARMITAGE AV,0810,THEFT,OVER $500,STREET,false,false,1414,,,,06,1156817,1913193,2002,12/04/2014 12:43:35 PM,41.917577425,-87.699277749,"(41.917577425, -87.699277749)" -2042526,HH255338,03/20/2002 09:30:00 PM,016XX S HOMAN AV,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,RESIDENCE,false,false,1021,,,,26,1154021,1891165,2002,03/30/2006 09:10:16 PM,41.857186667,-87.71013814,"(41.857186667, -87.71013814)" -2039670,HH251707,03/19/2002 10:10:00 PM,002XX S STATE ST,1330,CRIMINAL TRESPASS,TO LAND,CTA PLATFORM,true,false,0123,,,,26,1176376,1899166,2002,03/30/2006 09:10:16 PM,41.878667362,-87.627841726,"(41.878667362, -87.627841726)" -2039152,HH253854,03/19/2002 05:00:00 PM,022XX N LISTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1432,,32,22,07,1163258,1915073,2002,03/30/2006 09:10:16 PM,41.922603156,-87.675560356,"(41.922603156, -87.675560356)" -2038345,HH251822,03/19/2002 11:15:00 AM,031XX N BROADWAY,1110,DECEPTIVE PRACTICE,BOGUS CHECK,CURRENCY EXCHANGE,false,false,2332,,,,11,1171653,1921296,2002,03/30/2006 09:10:16 PM,41.939498488,-87.644530959,"(41.939498488, -87.644530959)" -2038721,HH251420,03/19/2002 05:55:00 AM,025XX N HAMLIN AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,true,false,2524,,,,07,1150585,1916446,2002,03/30/2006 09:10:16 PM,41.926628099,-87.722089249,"(41.926628099, -87.722089249)" -2036453,HH251387,03/18/2002 05:00:00 PM,086XX W BERWYN AV,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,false,false,1614,,,,14,1117488,1933944,2002,03/30/2006 09:10:16 PM,41.975227926,-87.843340924,"(41.975227926, -87.843340924)" -2038845,HH253668,03/18/2002 08:00:00 AM,047XX S VINCENNES AV,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0223,,,,06,1180440,1873459,2002,12/04/2014 12:43:35 PM,41.808033009,-87.613710632,"(41.808033009, -87.613710632)" -2049919,HH249244,03/18/2002 06:07:44 AM,027XX W HARRISON ST,0560,ASSAULT,SIMPLE,OTHER,false,false,1135,,,,08A,1158284,1897213,2002,03/30/2006 09:10:16 PM,41.873697022,-87.694325209,"(41.873697022, -87.694325209)" -2091310,HH246237,03/16/2002 01:15:00 PM,067XX S NORMAL AV,0460,BATTERY,SIMPLE,APARTMENT,false,true,0722,,,,08B,1174078,1859944,2002,03/30/2006 09:10:16 PM,41.771090222,-87.637445909,"(41.771090222, -87.637445909)" -2035354,HH243297,03/15/2002 04:00:00 AM,065XX S COTTAGE GROVE,0460,BATTERY,SIMPLE,APARTMENT,true,true,0321,,,,08B,1182641,1862032,2002,03/30/2006 09:10:16 PM,41.77662548,-87.605992598,"(41.77662548, -87.605992598)" -2033239,HH241029,03/14/2002 12:30:00 AM,057XX S SANGAMON ST,0460,BATTERY,SIMPLE,STREET,false,false,0712,,,,08B,1171006,1866404,2002,03/30/2006 09:10:16 PM,41.788884878,-87.648518139,"(41.788884878, -87.648518139)" -2029571,HH239668,03/13/2002 11:55:00 AM,017XX N KOSTNER AV,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,false,false,2533,,,,06,1146749,1911068,2002,12/04/2014 12:43:35 PM,41.911944513,-87.73632252,"(41.911944513, -87.73632252)" -2033751,HH246762,03/13/2002 01:00:00 AM,027XX W ARTHUR AV,0820,THEFT,$500 AND UNDER,STREET,false,false,2412,,,,06,1156705,1943050,2002,12/04/2014 12:43:35 PM,41.999509091,-87.698877068,"(41.999509091, -87.698877068)" -2031409,HH238423,03/12/2002 07:54:00 PM,059XX W DIVISION ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,VEHICLE NON-COMMERCIAL,true,false,2531,,,,15,1136162,1907412,2002,03/30/2006 09:10:16 PM,41.902107632,-87.775304006,"(41.902107632, -87.775304006)" -2027921,HH238092,03/12/2002 03:15:00 PM,019XX W POTOMAC AV,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,true,false,1424,,,,05,1163102,1908623,2002,03/30/2006 09:10:16 PM,41.904907195,-87.676315097,"(41.904907195, -87.676315097)" -2025650,HH236950,03/12/2002 07:00:00 AM,058XX S MARYLAND AV,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,2133,,,,06,1182938,1866293,2002,12/04/2014 12:43:35 PM,41.78831115,-87.604771469,"(41.78831115, -87.604771469)" -2025417,HH232433,03/09/2002 05:25:00 PM,027XX N WESTERN AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1432,,,,07,1159917,1918503,2002,03/30/2006 09:10:16 PM,41.932084979,-87.687741361,"(41.932084979, -87.687741361)" -2031235,HH229299,03/09/2002 10:40:00 AM,008XX N ST LOUIS AV,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,true,false,1121,,,,18,1152924,1905662,2002,03/30/2006 09:10:16 PM,41.896989759,-87.713780664,"(41.896989759, -87.713780664)" -2021847,HH229844,03/08/2002 02:31:01 PM,002XX S LA SALLE ST,0810,THEFT,OVER $500,SMALL RETAIL STORE,false,false,0112,,,,06,1175122,1899410,2002,12/04/2014 12:43:35 PM,41.879365106,-87.632438796,"(41.879365106, -87.632438796)" -2023129,HH229817,03/08/2002 12:00:00 PM,0000X N STATE ST,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,0122,,,,06,1176405,1900498,2002,12/04/2014 12:43:35 PM,41.882321791,-87.627695033,"(41.882321791, -87.627695033)" -2021923,HH229392,03/08/2002 10:15:00 AM,018XX S HARDING AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,1014,,,,14,1150385,1890831,2002,03/30/2006 09:10:16 PM,41.856341773,-87.723493135,"(41.856341773, -87.723493135)" -2019963,HH227662,03/07/2002 01:45:00 PM,045XX N BROADWAY,0460,BATTERY,SIMPLE,SIDEWALK,true,false,2311,,,,08B,1168117,1930491,2002,03/30/2006 09:10:16 PM,41.964807164,-87.657260107,"(41.964807164, -87.657260107)" -2019045,HH226337,03/06/2002 07:30:00 PM,035XX S LAKE PARK AV,0460,BATTERY,SIMPLE,APARTMENT,true,false,2122,,,,08B,1181825,1881875,2002,03/30/2006 09:10:16 PM,41.831095207,-87.60837042,"(41.831095207, -87.60837042)" -2028291,HH226661,03/06/2002 06:00:00 PM,056XX W DIVERSEY AV,2091,NARCOTICS,FORFEIT PROPERTY,STREET,true,false,2514,,,,26,1138539,1918097,2002,03/30/2006 09:10:16 PM,41.931385725,-87.766313321,"(41.931385725, -87.766313321)" -2014745,HH221602,03/05/2002 01:46:21 AM,091XX S COMMERCIAL AV,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,false,false,0423,,,,08B,1197686,1845166,2002,03/30/2006 09:10:16 PM,41.729981568,-87.551401361,"(41.729981568, -87.551401361)" -2066479,HH285639,03/03/2002 01:00:00 PM,049XX N MILWAUKEE AV,1110,DECEPTIVE PRACTICE,BOGUS CHECK,BANK,false,false,1623,,,,11,1139315,1932295,2002,03/30/2006 09:10:16 PM,41.970332279,-87.763114481,"(41.970332279, -87.763114481)" -2012950,HH219156,03/03/2002 03:15:00 AM,042XX N BROADWAY,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,2322,,,,14,1169089,1928494,2002,03/30/2006 09:10:16 PM,41.959306229,-87.653744569,"(41.959306229, -87.653744569)" -2017916,HH217878,03/02/2002 11:54:17 AM,047XX S KING DR,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,false,false,0224,,,,03,1179612,1873910,2002,03/30/2006 09:10:16 PM,41.809289576,-87.616733704,"(41.809289576, -87.616733704)" -2012456,HH217744,03/01/2002 08:00:00 PM,012XX S SPAULDING AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1021,,,,07,1154512,1894462,2002,03/30/2006 09:10:16 PM,41.866224207,-87.70824777,"(41.866224207, -87.70824777)" -2011616,HH216989,03/01/2002 06:40:00 PM,020XX E 79 ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0414,,,,06,1191393,1853038,2002,12/04/2014 12:43:35 PM,41.751737618,-87.574199674,"(41.751737618, -87.574199674)" -2018897,HH216389,03/01/2002 03:40:00 PM,064XX S BISHOP ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,0725,,,,18,1167734,1861940,2002,03/30/2006 09:10:16 PM,41.776706004,-87.660643475,"(41.776706004, -87.660643475)" -2011798,HH217528,03/01/2002 02:30:00 PM,0000X E ILLINOIS ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1834,,,,06,1176465,1903575,2002,12/04/2014 12:43:35 PM,41.890763892,-87.627381764,"(41.890763892, -87.627381764)" -2010536,HH215478,02/28/2002 10:00:00 PM,058XX S MELVINA AV,0820,THEFT,$500 AND UNDER,STREET,false,false,0811,,,,06,1136095,1865162,2002,12/04/2014 12:43:35 PM,41.786168363,-87.776556207,"(41.786168363, -87.776556207)" -2017294,HH212133,02/27/2002 11:59:41 AM,077XX S THROOP ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0612,,,,18,1169266,1853418,2002,03/30/2006 09:10:16 PM,41.75328752,-87.655273502,"(41.75328752, -87.655273502)" -2015868,HH212014,02/27/2002 10:35:00 AM,028XX W ROOSEVELT RD,0330,ROBBERY,AGGRAVATED,SIDEWALK,false,false,1135,,,,03,1157790,1894629,2002,03/30/2006 09:10:16 PM,41.866616344,-87.696209358,"(41.866616344, -87.696209358)" -2005751,HH209285,02/25/2002 10:23:21 PM,013XX S SPRINGFIELD AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1011,,,,26,1150557,1893353,2002,03/30/2006 09:10:16 PM,41.863259089,-87.722795972,"(41.863259089, -87.722795972)" -2008091,HH205283,02/23/2002 10:37:23 PM,011XX S INDEPENDENCE BL,0460,BATTERY,SIMPLE,SIDEWALK,false,true,1133,,,,08B,1151476,1894546,2002,03/30/2006 09:10:16 PM,41.866514834,-87.719391056,"(41.866514834, -87.719391056)" -2007837,HH205090,02/23/2002 08:05:00 PM,012XX N KEELER AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2534,,,,18,1148119,1907685,2002,03/30/2006 09:10:16 PM,41.902634942,-87.731376712,"(41.902634942, -87.731376712)" -2003174,HH204778,02/23/2002 02:00:00 PM,050XX S KEDZIE AV,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,0821,,,,06,1155853,1871106,2002,12/04/2014 12:43:35 PM,41.802105599,-87.703953044,"(41.802105599, -87.703953044)" -1997595,HH198951,02/20/2002 07:44:35 PM,016XX W 47 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0914,,,,14,1165818,1873581,2002,03/30/2006 09:10:16 PM,41.808691242,-87.66733686,"(41.808691242, -87.66733686)" -1996755,HH198612,02/20/2002 05:17:43 PM,002XX S HAMILTON AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1211,,,,08B,1162148,1898808,2002,03/30/2006 09:10:16 PM,41.877994031,-87.680093904,"(41.877994031, -87.680093904)" -1997097,HH197830,02/20/2002 10:30:00 AM,034XX N TRIPP AV,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,false,false,1731,,,,03,1147401,1922708,2002,03/30/2006 09:10:16 PM,41.94387327,-87.733628155,"(41.94387327, -87.733628155)" -1997512,HH196730,02/19/2002 06:45:00 PM,027XX W 51 ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,VACANT LOT/LAND,false,false,0911,,,,07,1158887,1870688,2002,03/30/2006 09:10:16 PM,41.800897049,-87.692837472,"(41.800897049, -87.692837472)" -2005188,HH195761,02/19/2002 11:25:00 AM,025XX W JACKSON BV,0460,BATTERY,SIMPLE,SIDEWALK,true,false,1125,,,,08B,1159583,1898573,2002,03/30/2006 09:10:16 PM,41.877402355,-87.68951845,"(41.877402355, -87.68951845)" -1994447,HH195569,02/19/2002 09:10:18 AM,007XX S WABASH AV,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,true,false,0132,,,,26,1176864,1897126,2002,03/30/2006 09:10:16 PM,41.873058461,-87.626111629,"(41.873058461, -87.626111629)" -1994272,HH196095,02/18/2002 11:00:00 PM,020XX W JACKSON BV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1211,,,,07,1162601,1898579,2002,03/30/2006 09:10:16 PM,41.877356162,-87.678437014,"(41.877356162, -87.678437014)" -1992252,HH193092,02/17/2002 10:15:00 PM,094XX S ASHLAND AV,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,2221,,,,06,1167281,1842343,2002,12/04/2014 12:43:35 PM,41.722938808,-87.662863977,"(41.722938808, -87.662863977)" -1992406,HH192385,02/17/2002 02:30:00 PM,050XX S PAULINA ST,0560,ASSAULT,SIMPLE,STREET,false,false,0931,,,,08A,1165816,1871515,2002,03/30/2006 09:10:16 PM,41.803021942,-87.667402908,"(41.803021942, -87.667402908)" -1990849,HH191819,02/17/2002 01:00:00 AM,037XX N OLEANDER AV,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,true,false,1631,,,,07,1125119,1923927,2002,03/30/2006 09:10:16 PM,41.947616927,-87.815501056,"(41.947616927, -87.815501056)" -2005161,HH187378,02/14/2002 09:40:00 PM,016XX N HERMITAGE AV,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,true,false,1433,,,,16,1164475,1910734,2002,03/30/2006 09:10:16 PM,41.910670957,-87.671211807,"(41.910670957, -87.671211807)" -1987875,HH184572,02/13/2002 02:20:42 PM,0000X E 115 ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0531,,,,08B,1178641,1828771,2002,03/30/2006 09:10:16 PM,41.685445045,-87.621664457,"(41.685445045, -87.621664457)" -1984204,HH182254,02/12/2002 09:30:00 AM,086XX S MARQUETTE AV,0560,ASSAULT,SIMPLE,STREET,true,false,0423,,,,08A,1195620,1847966,2002,03/30/2006 09:10:16 PM,41.737716258,-87.558877276,"(41.737716258, -87.558877276)" -1982487,HH180841,02/11/2002 10:00:00 AM,072XX S EBERHART AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0323,,,,07,1180868,1857150,2002,03/30/2006 09:10:16 PM,41.763269745,-87.612642237,"(41.763269745, -87.612642237)" -1981711,HH178043,02/10/2002 01:55:00 AM,015XX E 67 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,0321,,,,14,1187418,1861577,2002,03/30/2006 09:10:16 PM,41.775264717,-87.588495026,"(41.775264717, -87.588495026)" -1983814,HH182779,02/09/2002 09:00:00 PM,026XX S KARLOV AV,0820,THEFT,$500 AND UNDER,STREET,false,false,1031,,,,06,1149427,1886372,2002,12/04/2014 12:43:35 PM,41.844124332,-87.727125063,"(41.844124332, -87.727125063)" -1982694,HH176043,02/09/2002 01:52:33 AM,045XX S FEDERAL ST,041A,BATTERY,AGGRAVATED: HANDGUN,CHA PARKING LOT/GROUNDS,false,false,0221,,,,04B,1176490,1874939,2002,03/30/2006 09:10:16 PM,41.812184109,-87.628153577,"(41.812184109, -87.628153577)" -1989092,HH175719,02/08/2002 09:45:00 PM,062XX S VERNON AV,2110,NARCOTICS,POS: HYPODERMIC NEEDLE,ALLEY,true,false,0313,,,,18,1180292,1863369,2002,03/30/2006 09:10:16 PM,41.780348535,-87.614562873,"(41.780348535, -87.614562873)" -1979302,HH175103,02/08/2002 04:23:24 PM,094XX S ASHLAND AV,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,2221,,,,08B,1167281,1842343,2002,12/04/2014 12:43:35 PM,41.722938808,-87.662863977,"(41.722938808, -87.662863977)" -1998820,HH184165,02/08/2002 10:57:00 AM,075XX S CONSTANCE AV,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",false,false,0414,,,,08A,1189886,1855311,2002,03/30/2006 09:10:16 PM,41.758011284,-87.579649067,"(41.758011284, -87.579649067)" -1977661,HH172076,02/07/2002 08:10:01 AM,055XX S KEELER AV,0560,ASSAULT,SIMPLE,ALLEY,true,false,0813,,,,08A,1149348,1867582,2002,03/30/2006 09:10:16 PM,41.792563438,-87.727900843,"(41.792563438, -87.727900843)" -1987268,HH168727,02/05/2002 02:22:29 PM,062XX S KING DR,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0311,,,,18,1180042,1863361,2002,03/30/2006 09:10:16 PM,41.780332313,-87.615479651,"(41.780332313, -87.615479651)" -1981632,HH168459,02/05/2002 10:45:00 AM,003XX N STATE ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,OTHER,true,false,1831,,,,15,1176264,1902405,2002,03/30/2006 09:10:16 PM,41.887557885,-87.628155238,"(41.887557885, -87.628155238)" -1970625,HH164176,02/02/2002 11:15:00 PM,047XX N KILDARE AV,1570,SEX OFFENSE,PUBLIC INDECENCY,SIDEWALK,true,false,1722,,,,17,1146889,1931513,2002,03/30/2006 09:10:16 PM,41.968044706,-87.735284197,"(41.968044706, -87.735284197)" -1970540,HH162217,02/01/2002 10:10:00 PM,074XX S INGLESIDE AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0323,,,,08A,1183815,1855678,2002,03/30/2006 09:10:16 PM,41.759162169,-87.601886908,"(41.759162169, -87.601886908)" -2099186,HH330889,02/01/2002 12:00:00 PM,005XX W ARLINGTON PL,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,true,false,1933,,43,7,06,1172244,1916695,2002,03/30/2006 09:10:16 PM,41.926860107,-87.64249514,"(41.926860107, -87.64249514)" -2033850,HH247607,02/01/2002 10:38:00 AM,040XX N MOZART ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1724,,,,14,1156620,1926710,2002,03/30/2006 09:10:16 PM,41.954673026,-87.699634443,"(41.954673026, -87.699634443)" -1969303,HH160888,02/01/2002 01:00:00 AM,015XX N HALSTED ST,1310,CRIMINAL DAMAGE,TO PROPERTY,MEDICAL/DENTAL OFFICE,false,false,1822,,,,14,1170701,1910042,2002,03/30/2006 09:10:16 PM,41.908637908,-87.648360204,"(41.908637908, -87.648360204)" -1964963,HH156280,01/29/2002 07:15:00 PM,016XX N DAMEN AV,0460,BATTERY,SIMPLE,APARTMENT,false,true,1434,,,,08B,1162804,1911007,2002,03/30/2006 09:10:16 PM,41.911455321,-87.677342768,"(41.911455321, -87.677342768)" -1964519,HH154737,01/29/2002 12:24:00 AM,012XX N WESTERN AV,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,OTHER,true,false,1423,,,,04A,1160135,1908480,2002,03/30/2006 09:10:16 PM,41.904576633,-87.687217743,"(41.904576633, -87.687217743)" -1960959,HH153131,01/28/2002 09:00:00 AM,047XX W PETERSON AV,0820,THEFT,$500 AND UNDER,COMMERCIAL / BUSINESS OFFICE,false,false,1711,,,,06,1143419,1939414,2002,12/04/2014 12:43:35 PM,41.989791398,-87.747844709,"(41.989791398, -87.747844709)" -1960262,HH152581,01/27/2002 10:40:00 PM,063XX S CLAREMONT AV,0460,BATTERY,SIMPLE,STREET,false,false,0825,,,,08B,1161781,1862763,2002,03/30/2006 09:10:16 PM,41.779090141,-87.682444174,"(41.779090141, -87.682444174)" -1960302,HH152073,01/27/2002 05:40:00 PM,026XX N CLARK ST,0810,THEFT,OVER $500,SMALL RETAIL STORE,false,false,1933,,,,06,1172044,1917730,2002,12/04/2014 12:43:35 PM,41.929704611,-87.643199435,"(41.929704611, -87.643199435)" -1962704,HH151616,01/27/2002 01:14:36 PM,078XX S HALSTED ST,0560,ASSAULT,SIMPLE,DRUG STORE,false,false,0621,,,,08A,1172297,1852510,2002,03/30/2006 09:10:16 PM,41.750729763,-87.644192698,"(41.750729763, -87.644192698)" -1966317,HH151434,01/27/2002 11:05:00 AM,001XX N LOTUS AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1523,,,,18,1139960,1900761,2002,03/30/2006 09:10:16 PM,41.88378783,-87.761516014,"(41.88378783, -87.761516014)" -1960113,HH152292,01/27/2002 06:00:00 AM,109XX S GREEN ST,0820,THEFT,$500 AND UNDER,RESIDENCE,false,true,2233,,,,06,1172635,1832324,2002,12/04/2014 12:43:35 PM,41.695329084,-87.643546817,"(41.695329084, -87.643546817)" -1960793,HH149638,01/26/2002 12:30:00 PM,041XX W CULLERTON ST,0460,BATTERY,SIMPLE,STREET,false,false,1012,,,,08B,1148728,1890130,2002,03/30/2006 09:10:16 PM,41.854450276,-87.729593333,"(41.854450276, -87.729593333)" -1957481,HH147338,01/25/2002 11:30:00 AM,015XX S ASHLAND AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,COMMERCIAL / BUSINESS OFFICE,false,false,1211,,,,26,1165936,1892439,2002,03/30/2006 09:10:16 PM,41.860436998,-87.666367011,"(41.860436998, -87.666367011)" -1956361,HH145290,01/23/2002 09:30:00 PM,065XX N CALIFORNIA AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2412,,,,14,1156518,1943181,2002,03/30/2006 09:10:16 PM,41.999872361,-87.699561427,"(41.999872361, -87.699561427)" -1955659,HH143659,01/23/2002 03:15:00 PM,032XX W ROOSEVELT RD,0560,ASSAULT,SIMPLE,RESTAURANT,false,false,1134,,,,08A,1155196,1894572,2002,03/30/2006 09:10:16 PM,41.866512365,-87.705733783,"(41.866512365, -87.705733783)" -1953305,HH142490,01/22/2002 11:00:00 PM,054XX S FAIRFIELD AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,0911,,,,08A,1158922,1868577,2002,03/30/2006 09:10:16 PM,41.795103468,-87.692766805,"(41.795103468, -87.692766805)" -1949701,HH138933,01/20/2002 08:00:00 PM,069XX N SHERIDAN RD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2431,,,,26,1166804,1946310,2002,03/30/2006 09:10:16 PM,42.008243238,-87.661631492,"(42.008243238, -87.661631492)" -1950702,HH137915,01/20/2002 03:24:39 PM,029XX W CHICAGO AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,OTHER,false,false,1311,,,,07,1156677,1905233,2002,03/30/2006 09:10:16 PM,41.895737348,-87.700008039,"(41.895737348, -87.700008039)" -1951714,HH137856,01/20/2002 02:45:00 PM,025XX N BERNARD ST,0560,ASSAULT,SIMPLE,STREET,false,false,1413,,,,08A,1152902,1916954,2002,03/30/2006 09:10:16 PM,41.927976453,-87.713561775,"(41.927976453, -87.713561775)" -1954378,HH139971,01/20/2002 02:30:00 AM,080XX S MERRILL AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,true,0414,,,,14,1191972,1851741,2002,03/30/2006 09:10:16 PM,41.7481645,-87.572119996,"(41.7481645, -87.572119996)" -1948932,HH137607,01/19/2002 04:00:00 PM,021XX N NEWLAND AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2512,,,,05,1129701,1913375,2002,03/30/2006 09:10:16 PM,41.918583766,-87.798900172,"(41.918583766, -87.798900172)" -1950737,HH136118,01/19/2002 02:30:00 PM,062XX S BISHOP ST,1245,DECEPTIVE PRACTICE,PAY TV SERVICE OFFENSES,ALLEY,true,false,0713,,,,11,1167687,1863596,2002,03/30/2006 09:10:16 PM,41.781251284,-87.660768294,"(41.781251284, -87.660768294)" -1947157,HH135200,01/19/2002 01:00:00 AM,071XX S DR MARTN LUTHR KING JR DR,041A,BATTERY,AGGRAVATED: HANDGUN,GAS STATION,false,false,0323,,,,04B,1180106,1857999,2002,03/30/2006 09:10:16 PM,41.765616975,-87.615409118,"(41.765616975, -87.615409118)" -1945573,HH133129,01/17/2002 09:30:00 PM,046XX S ST LOUIS AV,031A,ROBBERY,ARMED: HANDGUN,VEHICLE NON-COMMERCIAL,false,false,0821,,,,03,1153953,1873408,2002,03/30/2006 09:10:16 PM,41.808460574,-87.710860043,"(41.808460574, -87.710860043)" -1943297,HH128877,01/15/2002 09:35:00 PM,055XX S ADA ST,0560,ASSAULT,SIMPLE,RESIDENCE,true,false,0713,,,,08A,1168317,1867803,2002,03/30/2006 09:10:16 PM,41.79278225,-87.658337489,"(41.79278225, -87.658337489)" -1942367,HH129404,01/15/2002 06:30:00 PM,023XX S LAKE SHORE DR,0820,THEFT,$500 AND UNDER,OTHER,false,false,0133,,,,06,1180538,1889157,2002,12/04/2014 12:43:35 PM,41.851107212,-87.612868333,"(41.851107212, -87.612868333)" -1941348,HH126635,01/14/2002 07:20:00 PM,003XX E 133 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,"SCHOOL, PUBLIC, BUILDING",false,false,0533,,,,14,1180737,1817242,2002,03/30/2006 09:10:16 PM,41.653759968,-87.614343667,"(41.653759968, -87.614343667)" -1962613,HH155081,01/14/2002 12:00:00 PM,107XX S RHODES AV,1120,DECEPTIVE PRACTICE,FORGERY,STREET,false,false,0513,,,,10,1181778,1833780,2002,03/30/2006 09:10:16 PM,41.699118739,-87.610026744,"(41.699118739, -87.610026744)" -1943988,HH125536,01/14/2002 11:45:00 AM,062XX S HAMLIN AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0823,,,,08B,1152065,1863208,2002,03/30/2006 09:10:16 PM,41.780507577,-87.718052631,"(41.780507577, -87.718052631)" -1955738,HH145908,01/14/2002 01:30:00 AM,103XX S AVENUE L,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0432,,,,14,1201794,1836682,2002,03/30/2006 09:10:16 PM,41.706597423,-87.536640513,"(41.706597423, -87.536640513)" -1938105,HH123579,01/13/2002 10:05:00 AM,128XX S MUSKEGON AV,051B,ASSAULT,AGGRAVATED: OTHER FIREARM,RESIDENCE,false,false,0433,,,,04A,1197045,1820617,2002,03/30/2006 09:10:16 PM,41.662632621,-87.554562596,"(41.662632621, -87.554562596)" -1938634,HH123277,01/13/2002 02:50:00 AM,034XX W EVERGREEN AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1422,,,,08B,1153106,1908807,2002,03/30/2006 09:10:16 PM,41.905616327,-87.713028679,"(41.905616327, -87.713028679)" -1959364,HH150034,01/13/2002 02:00:00 AM,017XX W NORTH SHORE AV,0460,BATTERY,SIMPLE,ALLEY,false,true,2432,,,,08B,1163350,1944507,2002,03/30/2006 09:10:16 PM,42.003369424,-87.674390616,"(42.003369424, -87.674390616)" -1935642,HH121228,01/12/2002 01:00:00 AM,005XX W NORTH AV,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,1821,,,,06,1172056,1910881,2002,12/04/2014 12:43:35 PM,41.910910367,-87.643357836,"(41.910910367, -87.643357836)" -1936139,HH121540,01/12/2002 12:01:00 AM,030XX N TROY ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1411,,,,05,1154884,1920268,2002,03/30/2006 09:10:16 PM,41.937030778,-87.706189554,"(41.937030778, -87.706189554)" -1934216,HH118625,01/10/2002 07:00:00 PM,050XX S KEDZIE AV,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,true,false,0821,,,,06,1155861,1870847,2002,12/04/2014 12:43:35 PM,41.801394706,-87.70393066,"(41.801394706, -87.70393066)" -1933864,HH118241,01/10/2002 03:45:00 PM,061XX S WESTERN AV,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,PARKING LOT/GARAGE(NON.RESID.),false,false,0825,,,,03,1161472,1863574,2002,03/30/2006 09:10:16 PM,41.781322048,-87.683554536,"(41.781322048, -87.683554536)" -1932637,HH116221,01/09/2002 04:30:00 PM,063XX N MOBILE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1611,,,,14,1133223,1941403,2002,03/30/2006 09:10:16 PM,41.995434536,-87.78530123,"(41.995434536, -87.78530123)" -1933898,HH115427,01/09/2002 11:05:56 AM,017XX W 18 ST,0460,BATTERY,SIMPLE,STREET,true,false,1223,,,,08B,1164679,1891481,2002,03/30/2006 09:10:16 PM,41.857834861,-87.671008266,"(41.857834861, -87.671008266)" -1938304,HH114685,01/08/2002 09:52:09 PM,050XX N SHERIDAN RD,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2024,,,,18,1168671,1934152,2002,03/30/2006 09:10:16 PM,41.974841045,-87.655116647,"(41.974841045, -87.655116647)" -1930267,HH114597,01/08/2002 08:10:00 PM,010XX W 98 ST,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,APARTMENT,false,false,2223,,,,26,1170991,1839824,2002,03/30/2006 09:10:16 PM,41.715946207,-87.649347933,"(41.715946207, -87.649347933)" -1927698,HH112342,01/07/2002 02:00:00 PM,068XX S DORCHESTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0321,,5,43,07,,,2002,03/30/2006 09:10:16 PM,,, -1931080,HH109654,01/06/2002 07:30:00 AM,053XX W WASHINGTON BL,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,false,1523,,,,04B,1140792,1900275,2002,03/30/2006 09:10:16 PM,41.882438932,-87.758472744,"(41.882438932, -87.758472744)" -1937338,HH108289,01/05/2002 01:39:13 PM,020XX W 79 ST,0460,BATTERY,SIMPLE,SIDEWALK,true,false,0611,,,,08B,1163945,1852215,2002,03/30/2006 09:10:16 PM,41.750099735,-87.674806765,"(41.750099735, -87.674806765)" -1924296,HH107650,01/05/2002 02:02:00 AM,107XX S PRAIRIE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,0513,,,,14,1179786,1833541,2002,03/30/2006 09:10:16 PM,41.698508566,-87.617327759,"(41.698508566, -87.617327759)" -1927211,HH107521,01/05/2002 12:45:23 AM,010XX N STATE ST,0820,THEFT,$500 AND UNDER,RESTAURANT,false,false,1824,,,,06,1176133,1907471,2002,12/04/2014 12:43:35 PM,41.9014622,-87.628483472,"(41.9014622, -87.628483472)" -1923960,HH107516,01/05/2002 12:33:19 AM,027XX E 89 ST,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,"SCHOOL, PUBLIC, BUILDING",false,false,0423,,,,26,1195939,1846527,2002,03/30/2006 09:10:16 PM,41.733759639,-87.557756078,"(41.733759639, -87.557756078)" -1934822,HH106270,01/04/2002 11:30:00 AM,119XX S PERRY AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0522,,,,18,1177698,1825418,2002,03/30/2006 09:10:16 PM,41.676265231,-87.625217424,"(41.676265231, -87.625217424)" -1923000,HH105192,01/03/2002 06:08:12 PM,075XX S RACINE AV,0320,ROBBERY,STRONGARM - NO WEAPON,LIBRARY,false,false,0612,,,,03,1169584,1854898,2002,03/30/2006 09:10:16 PM,41.757341953,-87.654065329,"(41.757341953, -87.654065329)" -1927747,HH104305,01/03/2002 10:53:07 AM,055XX S STATE ST,0820,THEFT,$500 AND UNDER,ALLEY,true,false,0233,,,,06,1177175,1868400,2002,12/04/2014 12:43:35 PM,41.794225033,-87.625838453,"(41.794225033, -87.625838453)" -1926462,HH104294,01/03/2002 02:30:00 AM,133XX S GREENWOOD AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0533,,,,14,1186094,1817585,2002,03/30/2006 09:10:16 PM,41.654576927,-87.594732006,"(41.654576927, -87.594732006)" -1929327,HH101791,01/01/2002 10:37:18 PM,008XX N TRUMBULL AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1121,,,,18,1153265,1905401,2002,03/30/2006 09:10:16 PM,41.896266785,-87.712535152,"(41.896266785, -87.712535152)" -1918164,HH102049,01/01/2002 08:00:00 PM,033XX N TROY ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1733,,,,07,1154824,1922256,2002,03/30/2006 09:10:16 PM,41.942487198,-87.706356627,"(41.942487198, -87.706356627)" -1919094,HH100191,01/01/2002 01:45:00 AM,011XX W ADDISON ST,0460,BATTERY,SIMPLE,STREET,false,false,1923,,,,08B,1167782,1924015,2002,03/30/2006 09:10:16 PM,41.947044016,-87.658679259,"(41.947044016, -87.658679259)" -1922722,HH100993,12/31/2001 07:00:00 PM,069XX S EBERHART AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0322,,,,14,1180743,1858862,2001,03/31/2006 10:03:38 PM,41.767970523,-87.613047837,"(41.767970523, -87.613047837)" -1926731,G779506,12/31/2001 05:00:00 PM,022XX S MILLARD AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1013,,,,18,1152341,1889066,2001,03/31/2006 10:03:38 PM,41.851460057,-87.716360095,"(41.851460057, -87.716360095)" -1916665,G777150,12/30/2001 06:50:00 AM,059XX W FULTON ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1512,,,,08B,1136443,1901352,2001,03/31/2006 10:03:38 PM,41.885473193,-87.774416837,"(41.885473193, -87.774416837)" -1916558,G775231,12/29/2001 01:56:45 AM,025XX N HALSTED ST,0460,BATTERY,SIMPLE,STREET,true,false,1933,,,,08B,1170459,1917427,2001,03/31/2006 10:03:38 PM,41.928908025,-87.649032717,"(41.928908025, -87.649032717)" -1929325,G774728,12/28/2001 07:40:00 PM,016XX S DRAKE AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1021,,,,18,1152928,1891779,2001,03/31/2006 10:03:38 PM,41.858893253,-87.714133843,"(41.858893253, -87.714133843)" -1913832,G774490,12/28/2001 07:00:00 AM,042XX W MELROSE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),true,false,1731,,,,07,1147566,1921310,2001,03/31/2006 10:03:38 PM,41.940033869,-87.733057669,"(41.940033869, -87.733057669)" -1915357,G777228,12/28/2001 03:30:00 AM,021XX E 67 ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0331,,,,26,1191438,1861588,2001,03/31/2006 10:03:38 PM,41.775198414,-87.573758103,"(41.775198414, -87.573758103)" -1921225,G768819,12/25/2001 08:35:00 AM,038XX W GLADYS AV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1133,,,,18,1150701,1898117,2001,03/31/2006 10:03:38 PM,41.876329238,-87.722142838,"(41.876329238, -87.722142838)" -1910451,G768746,12/25/2001 04:45:00 AM,025XX W MONTROSE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,1912,,,,14,1158644,1929096,2001,03/31/2006 10:03:38 PM,41.961179034,-87.69212825,"(41.961179034, -87.69212825)" -1907035,G764683,12/22/2001 03:30:00 PM,028XX W 22 PL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1033,,,,05,1157268,1889288,2001,03/31/2006 10:03:38 PM,41.851970684,-87.698270712,"(41.851970684, -87.698270712)" -1907811,G764871,12/22/2001 02:30:00 PM,007XX S LOOMIS ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,1213,,,,05,1167203,1896820,2001,03/31/2006 10:03:38 PM,41.872431725,-87.661590344,"(41.872431725, -87.661590344)" -1906057,G759775,12/20/2001 07:00:00 AM,052XX W AINSLIE ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1623,,,,05,1140549,1932097,2001,03/31/2006 10:03:38 PM,41.969766324,-87.75858181,"(41.969766324, -87.75858181)" -1906495,G763715,12/20/2001 03:00:00 AM,021XX N HALSTED ST,0820,THEFT,$500 AND UNDER,ALLEY,false,false,1812,,,,06,1170561,1914417,2001,12/04/2014 12:43:35 PM,41.920646206,-87.648746208,"(41.920646206, -87.648746208)" -1903745,G757332,12/19/2001 07:05:00 AM,042XX S WENTWORTH AV,1310,CRIMINAL DAMAGE,TO PROPERTY,GAS STATION,false,false,0935,,,,14,1175608,1876478,2001,03/31/2006 10:03:38 PM,41.81642708,-87.631342603,"(41.81642708, -87.631342603)" -1900910,G755086,12/18/2001 12:01:00 AM,068XX S THROOP ST,0560,ASSAULT,SIMPLE,APARTMENT,false,true,0724,,,,08A,1168802,1859253,2001,03/31/2006 10:03:38 PM,41.769309548,-87.656805719,"(41.769309548, -87.656805719)" -1912792,G753924,12/17/2001 02:00:00 PM,005XX E BROWNING AV,2027,NARCOTICS,POSS: CRACK,CHA PARKING LOT/GROUNDS,true,false,0212,,,,18,1180944,1881467,2001,03/31/2006 10:03:38 PM,41.829995983,-87.611615407,"(41.829995983, -87.611615407)" -1899677,G752437,12/16/2001 06:15:00 PM,054XX S HERMITAGE AV,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,false,false,0932,,,,04B,1165655,1868253,2001,03/31/2006 10:03:38 PM,41.794074045,-87.668085955,"(41.794074045, -87.668085955)" -1898847,G751152,12/16/2001 04:00:00 AM,007XX N CLARK ST,0460,BATTERY,SIMPLE,STREET,false,true,1832,,,,08B,1175440,1905491,2001,03/31/2006 10:03:38 PM,41.896044576,-87.631088436,"(41.896044576, -87.631088436)" -1897021,G750667,12/15/2001 09:10:00 PM,037XX W EDDY ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1732,,,,07,1150874,1923383,2001,03/31/2006 10:03:38 PM,41.945658137,-87.720845183,"(41.945658137, -87.720845183)" -1895093,G744631,12/12/2001 12:00:00 AM,009XX N AVERS AV,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,RESIDENCE,true,false,1112,,,,02,1150512,1905866,2001,03/31/2006 10:03:38 PM,41.89759701,-87.722634304,"(41.89759701, -87.722634304)" -1888162,G740077,12/10/2001 08:00:00 PM,019XX W BELLE PLAINE AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1923,,,,07,1162662,1927199,2001,03/31/2006 10:03:38 PM,41.95589012,-87.677409334,"(41.95589012, -87.677409334)" -1889010,G739738,12/10/2001 04:40:00 PM,095XX S HALSTED ST,0820,THEFT,$500 AND UNDER,LIBRARY,false,false,2223,,,,06,1172690,1841813,2001,12/04/2014 12:43:35 PM,41.721367102,-87.64306695,"(41.721367102, -87.64306695)" -1889742,G737830,12/09/2001 07:45:00 PM,002XX W 57 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0711,,,,14,1175471,1867207,2001,03/31/2006 10:03:38 PM,41.790989632,-87.632122594,"(41.790989632, -87.632122594)" -1887494,G737083,12/09/2001 11:49:00 AM,041XX W 26 ST,0460,BATTERY,SIMPLE,OTHER,false,false,1031,,,,08B,1149240,1886361,2001,03/31/2006 10:03:38 PM,41.844097767,-87.727811611,"(41.844097767, -87.727811611)" -1892822,G736979,12/09/2001 10:30:00 AM,003XX N PINE AV,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,true,false,1523,,,,18,1139397,1901818,2001,03/31/2006 10:03:38 PM,41.886698649,-87.763557661,"(41.886698649, -87.763557661)" -1885865,G736565,12/09/2001 02:00:00 AM,015XX S KILBOURN AV,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,ALLEY,false,false,1012,,,,03,1146592,1892210,2001,03/31/2006 10:03:38 PM,41.860199007,-87.737380425,"(41.860199007, -87.737380425)" -1889404,G735745,12/08/2001 04:00:00 PM,062XX S ASHLAND AV,0460,BATTERY,SIMPLE,APARTMENT,true,true,0713,,,,08B,1166785,1863137,2001,03/31/2006 10:03:38 PM,41.780011043,-87.664088323,"(41.780011043, -87.664088323)" -1888256,G737232,12/08/2001 09:00:00 AM,031XX N SHERIDAN RD,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,2332,,,,05,1173067,1920908,2001,03/31/2006 10:03:38 PM,41.938402508,-87.639345693,"(41.938402508, -87.639345693)" -1890458,G734532,12/07/2001 11:35:00 PM,005XX W SURF ST,0460,BATTERY,SIMPLE,RESIDENCE,true,true,2333,,,,08B,1172519,1919370,2001,03/31/2006 10:03:38 PM,41.934194332,-87.64140532,"(41.934194332, -87.64140532)" -1884844,G733678,12/07/2001 09:30:00 AM,050XX S LAFLIN ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,0931,,,,05,1167153,1871113,2001,03/31/2006 10:03:38 PM,41.801890278,-87.662511017,"(41.801890278, -87.662511017)" -2341919,HH640717,12/07/2001 12:00:00 AM,069XX S JUSTINE ST,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,0734,,17,67,06,1167241,1858752,2001,03/31/2006 10:03:38 PM,41.767968289,-87.662541949,"(41.767968289, -87.662541949)" -1944521,HH131281,12/06/2001 12:00:00 AM,007XX E 111 ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0531,,,,06,1183305,1831462,2001,12/04/2014 12:43:35 PM,41.692722515,-87.604507439,"(41.692722515, -87.604507439)" -1879787,G727025,12/04/2001 03:28:44 PM,0000X W JACKSON BL,1330,CRIMINAL TRESPASS,TO LAND,HOTEL/MOTEL,true,false,0112,,,,26,1175752,1898934,2001,03/31/2006 10:03:38 PM,41.878044792,-87.630139883,"(41.878044792, -87.630139883)" -1883373,G727660,12/04/2001 02:00:00 AM,001XX W ERIE ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1832,,,,16,1174780,1904779,2001,03/31/2006 10:03:38 PM,41.894105608,-87.633533784,"(41.894105608, -87.633533784)" -1881798,G726069,12/04/2001 01:00:00 AM,088XX S ESCANABA AV,0261,CRIM SEXUAL ASSAULT,AGGRAVATED: HANDGUN,APARTMENT,false,false,0423,,,,02,1196960,1847001,2001,03/31/2006 10:03:38 PM,41.735035026,-87.55399999,"(41.735035026, -87.55399999)" -1873327,G719784,11/30/2001 09:50:00 PM,015XX W WALTON ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1323,,,,08A,1166168,1906394,2001,03/31/2006 10:03:38 PM,41.898725675,-87.665116563,"(41.898725675, -87.665116563)" -1877938,G719402,11/30/2001 06:30:00 PM,050XX N WINTHROP AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,2033,,,,08A,1167910,1934032,2001,03/31/2006 10:03:38 PM,41.97452826,-87.65791855,"(41.97452826, -87.65791855)" -1874925,G722478,11/30/2001 05:00:00 PM,033XX S CARPENTER ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,0924,,,,14,1169827,1882367,2001,03/31/2006 10:03:38 PM,41.832714714,-87.652377335,"(41.832714714, -87.652377335)" -1872243,G717136,11/29/2001 05:55:00 PM,049XX W HUBBARD ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE PORCH/HALLWAY,false,true,1532,,,,04A,1143091,1902513,2001,03/31/2006 10:03:38 PM,41.888537705,-87.749974806,"(41.888537705, -87.749974806)" -1876916,G714200,11/28/2001 01:10:00 PM,004XX S CLARK ST,1200,DECEPTIVE PRACTICE,STOLEN PROP: BUY/RECEIVE/POS.,RESTAURANT,true,false,0131,,,,13,1175552,1898418,2001,06/02/2010 10:34:17 AM,41.876633351,-87.630889734,"(41.876633351, -87.630889734)" -1868417,G713829,11/28/2001 06:00:00 AM,024XX W LITHUANIAN PLAZA CT,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0832,,,,08B,1161170,1858790,2001,03/31/2006 10:03:38 PM,41.768200339,-87.684794008,"(41.768200339, -87.684794008)" -1872895,G712308,11/27/2001 02:45:04 PM,049XX W MADISON ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,1533,,,,18,1143660,1899613,2001,03/31/2006 10:03:38 PM,41.880569123,-87.747957852,"(41.880569123, -87.747957852)" -1869720,G711666,11/26/2001 10:00:00 PM,012XX E 95 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0511,,,,14,1186097,1842188,2001,03/31/2006 10:03:38 PM,41.722090662,-87.593948361,"(41.722090662, -87.593948361)" -1869879,G709083,11/26/2001 01:53:18 AM,019XX N CLIFTON AV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1811,,,,18,1167904,1912466,2001,03/31/2006 10:03:38 PM,41.91535034,-87.658564917,"(41.91535034, -87.658564917)" -1869754,G706831,11/24/2001 09:30:00 PM,050XX S HALSTED ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0935,,,,16,1171856,1871686,2001,03/31/2006 10:03:38 PM,41.803360634,-87.645246469,"(41.803360634, -87.645246469)" -1861393,G704680,11/23/2001 09:30:00 PM,012XX S KEELER AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1011,,,,26,1148541,1893968,2001,03/31/2006 10:03:38 PM,41.864985827,-87.730180744,"(41.864985827, -87.730180744)" -1861602,G704783,11/23/2001 06:30:00 PM,009XX W 18 PL,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,1233,,,,26,1170093,1891306,2001,03/31/2006 10:03:38 PM,41.857238325,-87.651140809,"(41.857238325, -87.651140809)" -1862004,G703409,11/23/2001 10:30:00 AM,031XX W 26 ST,0560,ASSAULT,SIMPLE,STREET,true,false,1033,,,,08A,1155670,1886523,2001,03/31/2006 10:03:38 PM,41.844415486,-87.704210174,"(41.844415486, -87.704210174)" -1861718,G702809,11/22/2001 09:19:56 PM,133XX S LANGLEY AV,0460,BATTERY,SIMPLE,CHA APARTMENT,false,false,0533,,,,08B,1183398,1816990,2001,03/31/2006 10:03:38 PM,41.653007124,-87.604615024,"(41.653007124, -87.604615024)" -1858844,G700979,11/21/2001 06:00:00 PM,044XX N ROCKWELL ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1911,,,,26,1158204,1929316,2001,03/31/2006 10:03:38 PM,41.96179175,-87.69373989,"(41.96179175, -87.69373989)" -1865034,G700764,11/21/2001 05:01:41 PM,025XX W VAN BUREN ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,1125,,,,26,1159628,1898123,2001,03/31/2006 10:03:38 PM,41.876166586,-87.689365619,"(41.876166586, -87.689365619)" -1858779,G700803,11/21/2001 10:00:00 AM,054XX W ADAMS ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,1522,,,,26,1140000,1898833,2001,03/31/2006 10:03:38 PM,41.878496419,-87.761416308,"(41.878496419, -87.761416308)" -1859292,G698644,11/20/2001 04:20:00 PM,042XX W IRVING PARK RD,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),true,false,1731,,,,26,1147426,1926207,2001,03/31/2006 10:03:38 PM,41.953474334,-87.733446252,"(41.953474334, -87.733446252)" -1864187,G696061,11/19/2001 01:19:52 PM,047XX N LAKE SHORE DR,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2312,,,,18,1170262,1931896,2001,03/31/2006 10:03:38 PM,41.96861581,-87.649332309,"(41.96861581, -87.649332309)" -1864494,G694973,11/18/2001 09:05:00 PM,001XX S CICERO AV,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1533,,,,16,1144371,1898981,2001,03/31/2006 10:03:38 PM,41.878821501,-87.745362993,"(41.878821501, -87.745362993)" -1867170,G693707,11/18/2001 10:00:00 AM,029XX W HARRISON ST,2027,NARCOTICS,POSS: CRACK,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,1135,,,,18,1156578,1897259,2001,03/31/2006 10:03:38 PM,41.873857932,-87.700587587,"(41.873857932, -87.700587587)" -1857926,G693291,11/18/2001 02:34:00 AM,010XX N PULASKI RD,2027,NARCOTICS,POSS: CRACK,OTHER,true,false,1112,,,,18,1149573,1906556,2001,03/31/2006 10:03:38 PM,41.89950873,-87.726065231,"(41.89950873, -87.726065231)" -1858604,G698318,11/17/2001 03:00:00 AM,011XX S MAYFIELD AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1513,,,,08B,1137192,1894253,2001,03/31/2006 10:03:38 PM,41.865979153,-87.771836864,"(41.865979153, -87.771836864)" -1855308,G695633,11/16/2001 02:30:00 PM,099XX S CRANDON AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0431,,,,08B,1193433,1839450,2001,03/31/2006 10:03:38 PM,41.714401283,-87.56716741,"(41.714401283, -87.56716741)" -1934641,HH119494,11/16/2001 09:00:00 AM,0000X S MICHIGAN AV,0840,THEFT,FINANCIAL ID THEFT: OVER $300,COMMERCIAL / BUSINESS OFFICE,false,false,0123,,,,06,1177277,1900263,2001,03/31/2006 10:03:38 PM,41.881657219,-87.624500207,"(41.881657219, -87.624500207)" -1854763,G684284,11/13/2001 09:24:56 PM,039XX W VAN BUREN ST,2027,NARCOTICS,POSS: CRACK,OTHER,true,false,1132,,,,18,1149825,1897764,2001,03/31/2006 10:03:38 PM,41.875377639,-87.725368423,"(41.875377639, -87.725368423)" -1842990,G681113,11/12/2001 12:00:00 PM,106XX S WALLACE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2233,,,,26,1174157,1834104,2001,03/31/2006 10:03:38 PM,41.700180089,-87.637921668,"(41.700180089, -87.637921668)" -1843867,G680895,11/12/2001 10:49:37 AM,005XX S WELLS ST,051A,ASSAULT,AGGRAVATED: HANDGUN,PARKING LOT/GARAGE(NON.RESID.),false,false,0131,,,,04A,1174845,1897849,2001,03/31/2006 10:03:38 PM,41.875087828,-87.633502621,"(41.875087828, -87.633502621)" -1842114,G680208,11/11/2001 07:00:00 PM,026XX W DEVON AV,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,2412,,,,06,1157511,1942409,2001,12/04/2014 12:43:35 PM,41.997733736,-87.695929551,"(41.997733736, -87.695929551)" -1846837,G678863,11/11/2001 06:15:00 AM,036XX W LEXINGTON ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1133,,,,08B,1152073,1896409,2001,03/31/2006 10:03:38 PM,41.871615378,-87.717150299,"(41.871615378, -87.717150299)" -1840732,G677713,11/10/2001 11:00:00 AM,016XX N CLARK ST,0810,THEFT,OVER $500,STREET,false,false,1814,,,,06,1175186,1911032,2001,12/04/2014 12:43:35 PM,41.91125505,-87.631854901,"(41.91125505, -87.631854901)" -1842600,G679388,11/10/2001 03:00:00 AM,106XX S HOXIE AV,0810,THEFT,OVER $500,RESIDENCE,false,false,0434,,,,06,1195173,1834888,2001,12/04/2014 12:43:35 PM,41.701840041,-87.560944802,"(41.701840041, -87.560944802)" -1846791,G676190,11/09/2001 08:30:00 PM,029XX S KING DR,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2112,,,,18,1179243,1885818,2001,03/31/2006 10:03:38 PM,41.841974487,-87.617723321,"(41.841974487, -87.617723321)" -1840283,G676975,11/09/2001 02:00:00 PM,092XX S HARPER AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0413,,,,26,1188019,1844085,2001,03/31/2006 10:03:38 PM,41.727250719,-87.58684821,"(41.727250719, -87.58684821)" -1837881,G673109,11/08/2001 12:15:00 PM,060XX N BROADWAY,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,2433,,,,06,1167254,1940095,2001,12/04/2014 12:43:35 PM,41.991179462,-87.660155617,"(41.991179462, -87.660155617)" -1854855,G692499,11/08/2001 12:00:00 PM,022XX N JANSSEN AV,1110,DECEPTIVE PRACTICE,BOGUS CHECK,RESIDENCE,false,false,1811,,,,11,1166231,1915143,2001,03/31/2006 10:03:38 PM,41.922732143,-87.66463464,"(41.922732143, -87.66463464)" -1836859,G671497,11/07/2001 05:38:13 PM,079XX S ASHLAND AV,0460,BATTERY,SIMPLE,STREET,false,true,0611,,,,08B,1167008,1852297,2001,03/31/2006 10:03:38 PM,41.750259875,-87.663580212,"(41.750259875, -87.663580212)" -1841995,G677730,11/06/2001 10:00:00 AM,065XX S LOWE AV,0820,THEFT,$500 AND UNDER,APARTMENT,false,true,0723,,,,06,1173204,1861445,2001,12/04/2014 12:43:35 PM,41.775228502,-87.640605347,"(41.775228502, -87.640605347)" -1833299,G667139,11/05/2001 04:50:00 PM,011XX S CENTRAL AV,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,true,false,1513,,,,04A,1139162,1894773,2001,03/31/2006 10:03:38 PM,41.867370519,-87.764592091,"(41.867370519, -87.764592091)" -1840124,G676915,11/05/2001 04:00:00 PM,028XX S DR MARTN LUTHR KING JR DR,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,2122,,,,26,1179412,1886291,2001,03/31/2006 10:03:38 PM,41.843268566,-87.617088675,"(41.843268566, -87.617088675)" -1834994,G668209,11/05/2001 02:35:00 PM,014XX E 70 ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0332,,,,08B,1186923,1858906,2001,03/31/2006 10:03:38 PM,41.767947012,-87.590394191,"(41.767947012, -87.590394191)" -1829714,G665298,11/04/2001 08:25:00 PM,019XX S CANALPORT AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,true,true,1233,,,,26,1172533,1891050,2001,03/31/2006 10:03:38 PM,41.856482294,-87.642192245,"(41.856482294, -87.642192245)" -1830069,G665143,11/04/2001 08:00:00 PM,024XX W CORTLAND ST,051A,ASSAULT,AGGRAVATED: HANDGUN,ALLEY,false,false,1434,,,,04A,1159906,1912592,2001,03/31/2006 10:03:38 PM,41.915865007,-87.687945273,"(41.915865007, -87.687945273)" -1833686,G665074,11/04/2001 05:30:00 PM,050XX N KILDARE AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,false,1712,,,,08A,1146770,1932914,2001,03/31/2006 10:03:38 PM,41.971891431,-87.73568582,"(41.971891431, -87.73568582)" -1836633,G668738,11/02/2001 04:30:00 PM,036XX W OAKDALE AV,0820,THEFT,$500 AND UNDER,ALLEY,false,false,2523,,,,06,1151453,1919328,2001,12/04/2014 12:43:35 PM,41.934519524,-87.718823817,"(41.934519524, -87.718823817)" -1827727,G659818,11/02/2001 10:55:09 AM,112XX S ST LAWRENCE AV,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0531,,,,08B,1182298,1830587,2001,03/31/2006 10:03:38 PM,41.690344719,-87.60822118,"(41.690344719, -87.60822118)" -1826131,G659649,11/01/2001 05:00:00 PM,043XX N MOZART ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1724,,,,26,1156553,1928923,2001,03/31/2006 10:03:38 PM,41.960746991,-87.699820604,"(41.960746991, -87.699820604)" -1832679,G658108,11/01/2001 02:20:00 PM,038XX W HURON ST,2012,NARCOTICS,MANU/DELIVER:COCAINE,STREET,true,false,1112,,,,18,1150663,1904440,2001,03/31/2006 10:03:38 PM,41.893680969,-87.722117007,"(41.893680969, -87.722117007)" -1832591,G657759,11/01/2001 12:45:00 PM,003XX N KILBOURN AV,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,STREET,true,false,1113,,,,18,1146296,1901386,2001,03/31/2006 10:03:38 PM,41.885384695,-87.738233451,"(41.885384695, -87.738233451)" -1824699,G656960,11/01/2001 02:26:22 AM,020XX W 34 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,CTA PLATFORM,true,false,0913,,,,14,1163327,1882168,2001,03/31/2006 10:03:38 PM,41.832307554,-87.676232471,"(41.832307554, -87.676232471)" -1821134,G653500,10/30/2001 07:20:00 AM,037XX S ROCKWELL ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0913,,,,06,1159607,1879721,2001,12/04/2014 12:43:35 PM,41.825669974,-87.689948952,"(41.825669974, -87.689948952)" -1825604,G651966,10/30/2001 12:45:00 AM,106XX S AVENUE C,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,0432,,,,18,1204492,1834881,2001,03/31/2006 10:03:38 PM,41.701586418,-87.52682256,"(41.701586418, -87.52682256)" -1816732,G648230,10/28/2001 09:45:00 AM,104XX S SPRINGFIELD AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2211,,,,26,1152147,1834995,2001,03/31/2006 10:03:38 PM,41.703084597,-87.718491016,"(41.703084597, -87.718491016)" -1825338,G659084,10/28/2001 02:45:00 AM,019XX N LACROSSE AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,2533,,,,26,1143784,1912630,2001,03/31/2006 10:03:38 PM,41.916286923,-87.747175965,"(41.916286923, -87.747175965)" -1821177,G647726,10/28/2001 01:26:57 AM,044XX S PRAIRIE AV,0460,BATTERY,SIMPLE,STREET,false,false,0222,,,,08B,1178823,1875624,2001,03/31/2006 10:03:38 PM,41.814010955,-87.619575373,"(41.814010955, -87.619575373)" -1816403,G647115,10/27/2001 04:55:00 PM,073XX N WESTERN AV,0810,THEFT,OVER $500,SMALL RETAIL STORE,false,false,2411,,,,06,1158975,1948604,2001,12/04/2014 12:43:35 PM,42.014702985,-87.690372872,"(42.014702985, -87.690372872)" -1822741,G645454,10/26/2001 11:00:00 PM,019XX N AUSTIN AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2515,,,,14,1136062,1912044,2001,03/31/2006 10:03:38 PM,41.914820189,-87.775560689,"(41.914820189, -87.775560689)" -1817872,G645088,10/26/2001 05:50:00 PM,001XX W CERMAK RD,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,2111,,,,11,1175600,1889797,2001,03/31/2006 10:03:38 PM,41.852975676,-87.630972464,"(41.852975676, -87.630972464)" -1818588,G644563,10/26/2001 03:51:03 PM,003XX N ORLEANS ST,0810,THEFT,OVER $500,HOTEL/MOTEL,false,false,1831,,,,06,1173830,1902816,2001,12/04/2014 12:43:35 PM,41.888740233,-87.6370813,"(41.888740233, -87.6370813)" -1815222,G643706,10/26/2001 08:39:19 AM,038XX N WESTERN AV,0460,BATTERY,SIMPLE,RESIDENCE,true,false,1912,,,,08B,1159722,1925707,2001,03/31/2006 10:03:38 PM,41.951857229,-87.688258735,"(41.951857229, -87.688258735)" -1812389,G640651,10/24/2001 05:20:23 PM,026XX S HILLOCK AV,0460,BATTERY,SIMPLE,STREET,true,false,0923,,,,08B,1168591,1886921,2001,03/31/2006 10:03:38 PM,41.845238114,-87.656780789,"(41.845238114, -87.656780789)" -1811303,G639682,10/24/2001 10:15:00 AM,018XX S KEDZIE AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,GROCERY FOOD STORE,false,false,1022,,,,04B,1155286,1890569,2001,03/31/2006 10:03:38 PM,41.855525887,-87.705510843,"(41.855525887, -87.705510843)" -1809893,G639059,10/23/2001 11:15:00 PM,063XX S ASHLAND AV,0460,BATTERY,SIMPLE,STREET,true,false,0725,,,,08B,1166791,1862905,2001,03/31/2006 10:03:38 PM,41.779374277,-87.664072946,"(41.779374277, -87.664072946)" -1810520,G638530,10/23/2001 06:30:00 PM,087XX S SAGINAW AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0423,,,,14,1195429,1847730,2001,03/31/2006 10:03:38 PM,41.737073369,-87.559584809,"(41.737073369, -87.559584809)" -1818904,G637543,10/23/2001 11:45:42 AM,044XX S STATE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0221,,,,26,1176971,1875717,2001,03/31/2006 10:03:38 PM,41.814308166,-87.626365813,"(41.814308166, -87.626365813)" -1810528,G637825,10/23/2001 11:30:00 AM,082XX S EXCHANGE AV,3960,INTIMIDATION,INTIMIDATION,RESIDENCE,true,false,0423,,,,26,1197221,1850710,2001,03/31/2006 10:03:38 PM,41.745206322,-87.552920592,"(41.745206322, -87.552920592)" -1809226,G636529,10/22/2001 09:48:39 PM,053XX S PULASKI RD,0460,BATTERY,SIMPLE,HOTEL/MOTEL,false,false,0815,,,,08B,1150562,1869117,2001,03/31/2006 10:03:38 PM,41.796752162,-87.723409279,"(41.796752162, -87.723409279)" -1809793,G636497,10/22/2001 09:27:06 PM,079XX S HERMITAGE AV,0460,BATTERY,SIMPLE,APARTMENT,false,true,0611,,,,08B,1166021,1851964,2001,03/31/2006 10:03:38 PM,41.749367102,-87.667206481,"(41.749367102, -87.667206481)" -1807675,G636440,10/22/2001 08:39:51 PM,085XX S OGLESBY AV,0820,THEFT,$500 AND UNDER,OTHER,false,false,0412,,,,06,1193280,1848770,2001,12/04/2014 12:43:35 PM,41.739979969,-87.567424038,"(41.739979969, -87.567424038)" -1807574,G635824,10/22/2001 03:44:34 PM,060XX S ST LAWRENCE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,CHA HALLWAY/STAIRWELL/ELEVATOR,false,false,0313,,,,14,1181237,1864954,2001,03/31/2006 10:03:38 PM,41.784676196,-87.611049569,"(41.784676196, -87.611049569)" -1812976,G635693,10/22/2001 03:27:21 PM,0000X E GARFIELD BL,0820,THEFT,$500 AND UNDER,RESTAURANT,false,false,0232,,,,06,1177970,1868613,2001,12/04/2014 12:43:35 PM,41.794791534,-87.622916789,"(41.794791534, -87.622916789)" -1802983,G628497,10/19/2001 10:20:00 AM,032XX W ARMITAGE AV,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,false,false,1413,,,,03,1154480,1913147,2001,03/31/2006 10:03:38 PM,41.917498289,-87.707865224,"(41.917498289, -87.707865224)" -1834773,G626614,10/18/2001 12:45:00 PM,110XX S VERNON AV,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,RESIDENCE,true,false,0513,,,,26,1181239,1832009,2001,03/31/2006 10:03:38 PM,41.69427128,-87.612054603,"(41.69427128, -87.612054603)" -1800408,G626648,10/17/2001 07:30:00 PM,037XX W FULLERTON AV,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,2524,,,,14,1150876,1915731,2001,03/31/2006 10:03:38 PM,41.924660379,-87.721038708,"(41.924660379, -87.721038708)" -1800868,G627715,10/17/2001 03:00:00 PM,036XX N SHEFFIELD AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2324,,,,14,1168988,1924619,2001,03/31/2006 10:03:38 PM,41.948675282,-87.654228775,"(41.948675282, -87.654228775)" -1807216,G624102,10/17/2001 09:30:00 AM,021XX E 87 ST,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0412,,,,08A,1191700,1847743,2001,03/31/2006 10:03:38 PM,41.737200229,-87.573246075,"(41.737200229, -87.573246075)" -1805544,G623282,10/16/2001 10:30:00 PM,054XX W CHICAGO AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1524,,,,18,1139746,1904760,2001,03/31/2006 10:03:38 PM,41.894765496,-87.762204112,"(41.894765496, -87.762204112)" -1797972,G621716,10/15/2001 09:00:00 PM,012XX S MILLARD AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,1011,,,,07,1152273,1894220,2001,03/31/2006 10:03:38 PM,41.865604575,-87.716473767,"(41.865604575, -87.716473767)" -1794947,G616846,10/14/2001 02:06:07 AM,105XX S YATES AV,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,0434,,,,26,1194168,1835577,2001,03/31/2006 10:03:38 PM,41.703755403,-87.564602218,"(41.703755403, -87.564602218)" -1791255,G614522,10/12/2001 09:00:00 PM,046XX N SHERIDAN RD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2312,,,,14,1168742,1931173,2001,03/31/2006 10:03:38 PM,41.966665039,-87.654942303,"(41.966665039, -87.654942303)" -1791191,G612633,10/12/2001 10:08:44 AM,045XX N SHERIDAN RD,0560,ASSAULT,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),true,false,2313,,,,08A,1168837,1930075,2001,03/31/2006 10:03:38 PM,41.963650027,-87.654624984,"(41.963650027, -87.654624984)" -1794573,G612511,10/12/2001 09:07:01 AM,005XX E OAKWOOD BV,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,false,false,0213,,,,05,1180579,1878757,2001,03/31/2006 10:03:38 PM,41.822567948,-87.61303794,"(41.822567948, -87.61303794)" -1789589,G611060,10/11/2001 02:25:00 PM,068XX S HERMITAGE AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0725,,,,08B,1165813,1859566,2001,03/31/2006 10:03:38 PM,41.770232456,-87.667753148,"(41.770232456, -87.667753148)" -1785823,G607662,10/10/2001 01:30:00 AM,015XX W ARMITAGE AV,0460,BATTERY,SIMPLE,BAR OR TAVERN,true,false,1433,,,,08B,1165736,1913418,2001,03/31/2006 10:03:38 PM,41.918009217,-87.666502709,"(41.918009217, -87.666502709)" -1786434,G607016,10/09/2001 08:30:00 AM,005XX N LECLAIRE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1532,,,,14,1142220,1903361,2001,03/31/2006 10:03:38 PM,41.890880923,-87.753152421,"(41.890880923, -87.753152421)" -1783531,G604959,10/08/2001 09:00:00 PM,039XX N KIMBALL AV,0820,THEFT,$500 AND UNDER,OTHER,false,false,1733,,,,06,1153057,1926272,2001,12/04/2014 12:43:35 PM,41.953542673,-87.712744321,"(41.953542673, -87.712744321)" -1785428,G605157,10/08/2001 08:00:00 PM,042XX W 76 ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,0833,,,,07,1149359,1853861,2001,03/31/2006 10:03:38 PM,41.754910559,-87.728214519,"(41.754910559, -87.728214519)" -1782124,G602717,10/07/2001 08:40:00 PM,132XX S HOUSTON AV,1020,ARSON,BY FIRE,VEHICLE NON-COMMERCIAL,false,false,0433,,,,09,1198720,1817941,2001,03/31/2006 10:03:38 PM,41.655247677,-87.548522275,"(41.655247677, -87.548522275)" -1781379,G602228,10/07/2001 03:33:59 PM,076XX S COLES AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0421,,,,07,1196295,1855120,2001,03/31/2006 10:03:38 PM,41.757330687,-87.556167574,"(41.757330687, -87.556167574)" -1781796,G601899,10/07/2001 12:32:00 PM,069XX S TALMAN AV,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,0831,,,,26,1159951,1858349,2001,03/31/2006 10:03:38 PM,41.767015307,-87.689274353,"(41.767015307, -87.689274353)" -1780392,G599363,10/06/2001 04:25:29 AM,031XX W IRVING PARK RD,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,BAR OR TAVERN,false,false,1724,,,,04B,1154529,1926461,2001,03/31/2006 10:03:38 PM,41.954031924,-87.707328009,"(41.954031924, -87.707328009)" -1785745,G604511,10/06/2001 03:00:00 AM,0000X N PINE AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1522,,,,07,1139537,1899956,2001,03/31/2006 10:03:38 PM,41.881586531,-87.763088974,"(41.881586531, -87.763088974)" -1779504,G599183,10/06/2001 01:44:15 AM,009XX W WEED ST,1330,CRIMINAL TRESPASS,TO LAND,BAR OR TAVERN,true,false,1822,,,,26,1169930,1910423,2001,03/31/2006 10:03:38 PM,41.909700253,-87.651181335,"(41.909700253, -87.651181335)" -1778328,G597612,10/05/2001 12:00:00 PM,022XX N KILDARE AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,2522,,,,08A,1147308,1914618,2001,03/31/2006 10:03:38 PM,41.921675365,-87.734177786,"(41.921675365, -87.734177786)" -1784051,G597461,10/05/2001 11:15:00 AM,014XX N MONITOR AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,true,false,2531,,,,14,1137039,1909199,2001,03/31/2006 10:03:38 PM,41.906995679,-87.772039658,"(41.906995679, -87.772039658)" -1785071,G596928,10/05/2001 02:10:00 AM,009XX N WOOD ST,2111,NARCOTICS,SALE/DEL HYPODERMIC NEEDLE,POLICE FACILITY/VEH PARKING LOT,true,false,1322,,,,26,1164261,1906447,2001,03/31/2006 10:03:38 PM,41.898911655,-87.672119356,"(41.898911655, -87.672119356)" -1777482,G595907,10/04/2001 04:10:00 PM,076XX S KINGSTON AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0421,,,,04B,1194479,1854783,2001,03/31/2006 10:03:38 PM,41.756450758,-87.562833871,"(41.756450758, -87.562833871)" -1774685,G591274,10/02/2001 04:15:00 PM,004XX N CENTRAL AV,2900,WEAPONS VIOLATION,UNLAWFUL USE/SALE AIR RIFLE,ALLEY,false,false,1523,,,,15,1138995,1902583,2001,03/31/2006 10:03:38 PM,41.888805221,-87.765015326,"(41.888805221, -87.765015326)" -1773667,G590814,10/02/2001 01:24:00 PM,050XX S WINCHESTER AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0915,,,,04B,1164243,1871300,2001,03/31/2006 10:03:38 PM,41.802465254,-87.673177893,"(41.802465254, -87.673177893)" -1774098,G589162,10/01/2001 06:25:00 PM,050XX N LEAVITT ST,0460,BATTERY,SIMPLE,PARK PROPERTY,false,false,2032,,,,08B,1160814,1933309,2001,03/31/2006 10:03:38 PM,41.972694872,-87.684032788,"(41.972694872, -87.684032788)" -1772960,G588906,10/01/2001 04:06:00 PM,065XX S EBERHART AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0321,,,,08B,1180743,1861601,2001,03/31/2006 10:03:38 PM,41.775486614,-87.612963745,"(41.775486614, -87.612963745)" -2016086,HH223636,10/01/2001 03:00:00 PM,002XX N LAPORTE AV,1751,OFFENSE INVOLVING CHILDREN,CRIM SEX ABUSE BY FAM MEMBER,RESIDENCE,false,false,1532,,,,20,1143294,1901194,2001,03/31/2006 10:03:38 PM,41.884914421,-87.749262277,"(41.884914421, -87.749262277)" -1772323,G590679,10/01/2001 12:00:00 PM,053XX N LIEB AV,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,false,false,1623,,,,11,1139671,1935194,2001,03/31/2006 10:03:38 PM,41.978280869,-87.761734302,"(41.978280869, -87.761734302)" -1776683,G586666,09/30/2001 05:11:01 PM,025XX N HARLEM AV,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,DEPARTMENT STORE,false,false,2512,,,,11,1127702,1916091,2001,03/31/2006 10:03:38 PM,41.92607077,-87.806183487,"(41.92607077, -87.806183487)" -1796585,G586187,09/30/2001 11:44:27 AM,003XX S CICERO AV,0265,CRIM SEXUAL ASSAULT,AGGRAVATED: OTHER,ALLEY,false,false,1131,,,,02,1144475,1898232,2001,03/31/2006 10:03:38 PM,41.876764197,-87.744999973,"(41.876764197, -87.744999973)" -1766614,G583010,09/28/2001 02:00:00 PM,010XX N LOCKWOOD AV,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,STREET,false,false,1524,,,,26,1140786,1906680,2001,03/31/2006 10:03:38 PM,41.900015144,-87.758337168,"(41.900015144, -87.758337168)" -1766037,G580540,09/27/2001 07:41:35 PM,005XX N ARMOUR ST,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,true,false,1324,,,,04B,1166034,1903844,2001,03/31/2006 10:03:38 PM,41.891731154,-87.66568162,"(41.891731154, -87.66568162)" -1772031,G579413,09/27/2001 10:30:00 AM,023XX E 103 ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,0434,,,,18,1193689,1837107,2001,03/31/2006 10:03:38 PM,41.707965601,-87.566306289,"(41.707965601, -87.566306289)" -1765041,G579160,09/27/2001 09:05:00 AM,025XX W CERMAK RD,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,1023,,,,06,1159780,1889354,2001,12/04/2014 12:43:35 PM,41.852100446,-87.689049156,"(41.852100446, -87.689049156)" -1770136,G578908,09/26/2001 05:00:00 AM,060XX S INDIANA AV,0810,THEFT,OVER $500,APARTMENT,false,true,0311,,,,06,1178586,1865240,2001,12/04/2014 12:43:35 PM,41.785521706,-87.620760457,"(41.785521706, -87.620760457)" -1763412,G579113,09/25/2001 06:00:00 PM,022XX N CLYBOURN AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1811,,,,14,1165733,1915325,2001,03/31/2006 10:03:38 PM,41.923242204,-87.666459246,"(41.923242204, -87.666459246)" -1764020,G575580,09/25/2001 10:30:00 AM,039XX S ARCHER AV,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,"SCHOOL, PUBLIC, GROUNDS",false,false,0912,,,,26,1159574,1878714,2001,03/31/2006 10:03:38 PM,41.822907324,-87.690097681,"(41.822907324, -87.690097681)" -1762315,G574322,09/24/2001 11:30:00 PM,030XX W TAYLOR ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1134,,,,14,1156417,1895594,2001,03/31/2006 10:03:38 PM,41.869292257,-87.701223721,"(41.869292257, -87.701223721)" -1759557,G574620,09/24/2001 10:00:00 PM,020XX N KEYSTONE AV,0820,THEFT,$500 AND UNDER,STREET,false,false,2525,,,,06,1149098,1913016,2001,12/04/2014 12:43:35 PM,41.91724482,-87.727642369,"(41.91724482, -87.727642369)" -1762546,G570313,09/23/2001 03:10:00 AM,055XX N WESTERN AV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2011,,,,18,1159298,1936513,2001,03/31/2006 10:03:38 PM,41.981518188,-87.689518871,"(41.981518188, -87.689518871)" -1756082,G569705,09/21/2001 10:00:00 PM,016XX N MILWAUKEE AV,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,false,false,1434,,,,06,1162692,1910634,2001,12/04/2014 12:43:35 PM,41.910434132,-87.677764693,"(41.910434132, -87.677764693)" -1753669,G565764,09/21/2001 01:50:00 AM,052XX S PAULINA ST,0330,ROBBERY,AGGRAVATED,TAXICAB,false,false,0932,,,,03,1165932,1870190,2001,03/31/2006 10:03:38 PM,41.799383519,-87.667015152,"(41.799383519, -87.667015152)" -1752487,G563198,09/19/2001 08:15:00 PM,067XX S HONORE ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0726,,,,26,1165147,1859679,2001,03/31/2006 10:03:38 PM,41.77055666,-87.670191243,"(41.77055666, -87.670191243)" -1759964,G562782,09/19/2001 05:59:00 PM,002XX S WACKER DR,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,COMMERCIAL / BUSINESS OFFICE,false,false,0112,,,,26,1174011,1899107,2001,03/31/2006 10:03:38 PM,41.87855848,-87.636527202,"(41.87855848, -87.636527202)" -1764152,G561837,09/19/2001 10:56:29 AM,057XX S HALSTED ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,0712,,,,06,1171915,1866573,2001,12/04/2014 12:43:35 PM,41.789328716,-87.6451802,"(41.789328716, -87.6451802)" -1750154,G561271,09/19/2001 01:55:55 AM,091XX S PRINCETON AV,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE,false,false,0634,,,,03,1176349,1844573,2001,03/31/2006 10:03:38 PM,41.728859619,-87.629582144,"(41.728859619, -87.629582144)" -1754041,G562076,09/19/2001 12:00:00 AM,012XX W 83 ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0613,,,,07,1169374,1849699,2001,03/31/2006 10:03:38 PM,41.743079741,-87.654985168,"(41.743079741, -87.654985168)" -1749975,G559817,09/18/2001 12:25:00 PM,058XX W ADDISON ST,0320,ROBBERY,STRONGARM - NO WEAPON,ALLEY,true,false,1633,,,,03,1136450,1923295,2001,03/31/2006 10:03:38 PM,41.945687246,-87.773865485,"(41.945687246, -87.773865485)" -1749773,G559559,09/18/2001 10:32:00 AM,078XX S SOUTH SHORE DR,0460,BATTERY,SIMPLE,STREET,false,false,0421,,,,08B,1197550,1854323,2001,03/31/2006 10:03:38 PM,41.75511246,-87.551594828,"(41.75511246, -87.551594828)" -1747940,G559425,09/18/2001 12:00:00 AM,067XX S CONSTANCE AV,0810,THEFT,OVER $500,STREET,false,false,0332,,,,06,1189735,1860805,2001,12/04/2014 12:43:35 PM,41.773090906,-87.580026119,"(41.773090906, -87.580026119)" -1746279,G557066,09/17/2001 07:48:10 AM,023XX W HURON ST,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,STREET,false,false,1313,,,,17,1160615,1904570,2001,03/31/2006 10:03:38 PM,41.893837342,-87.685563011,"(41.893837342, -87.685563011)" -1748381,G558137,09/17/2001 07:10:00 AM,064XX S KING DR,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0312,,,,14,1179981,1862609,2001,03/31/2006 10:03:38 PM,41.778270148,-87.615726292,"(41.778270148, -87.615726292)" -1748329,G557405,09/16/2001 05:00:00 PM,020XX E 71 ST,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,0331,,,,05,1191064,1858364,2001,03/31/2006 10:03:38 PM,41.766360564,-87.575233291,"(41.766360564, -87.575233291)" -1745014,G555710,09/16/2001 01:30:00 PM,112XX S LANGLEY AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0531,,,,26,1182953,1830800,2001,03/31/2006 10:03:38 PM,41.690914064,-87.605816632,"(41.690914064, -87.605816632)" -1750385,G554160,09/15/2001 04:31:19 PM,006XX N DEARBORN ST,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,BAR OR TAVERN,true,false,1832,,,,05,1175786,1904515,2001,03/31/2006 10:03:38 PM,41.893358604,-87.629847054,"(41.893358604, -87.629847054)" -1763121,G574187,09/15/2001 12:00:00 PM,100XX W OHARE ST,1330,CRIMINAL TRESPASS,TO LAND,AIRPORT/AIRCRAFT,false,false,1651,,,,26,1100635,1934208,2001,03/31/2006 10:03:38 PM,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -1743763,G552816,09/15/2001 01:15:00 AM,004XX W OAK ST,0460,BATTERY,SIMPLE,STREET,false,false,1823,,,,08B,1173075,1907110,2001,03/31/2006 10:03:38 PM,41.900539992,-87.639726439,"(41.900539992, -87.639726439)" -1801088,G551619,09/14/2001 02:06:00 PM,015XX W OHIO ST,2012,NARCOTICS,MANU/DELIVER:COCAINE,RESIDENCE,true,false,1324,,,,18,1165932,1904143,2001,03/31/2006 10:03:38 PM,41.89255381,-87.666047679,"(41.89255381, -87.666047679)" -1747316,G551261,09/14/2001 11:00:50 AM,012XX W ROOSEVELT RD,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA APARTMENT,true,false,1231,,,,26,1168492,1894888,2001,03/31/2006 10:03:38 PM,41.867102385,-87.656913773,"(41.867102385, -87.656913773)" -1741470,G548171,09/12/2001 08:03:48 PM,058XX S RICHMOND ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,0824,,,,08A,1157744,1866008,2001,03/31/2006 10:03:38 PM,41.788077782,-87.697156283,"(41.788077782, -87.697156283)" -1759544,G547549,09/12/2001 02:50:00 PM,050XX W BELMONT AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1634,,,,18,1141920,1920839,2001,03/31/2006 10:03:38 PM,41.938848014,-87.753820467,"(41.938848014, -87.753820467)" -1736991,G545383,09/10/2001 06:00:00 PM,018XX N LUNA AV,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,true,false,2532,,,,11,1139064,1911766,2001,03/31/2006 10:03:38 PM,41.914003222,-87.764538331,"(41.914003222, -87.764538331)" -1777743,G543076,09/10/2001 01:15:00 PM,016XX W 57 ST,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,VEHICLE NON-COMMERCIAL,true,false,0715,,,,18,1166159,1866945,2001,03/31/2006 10:03:38 PM,41.790474017,-87.666275026,"(41.790474017, -87.666275026)" -1732875,G541737,09/09/2001 02:00:00 AM,039XX N LINCOLN AV,0460,BATTERY,SIMPLE,RESTAURANT,false,false,1923,,,,08B,1162332,1926419,2001,03/31/2006 10:03:38 PM,41.953756685,-87.678644393,"(41.953756685, -87.678644393)" -1810666,G639830,09/08/2001 04:00:00 PM,045XX N MENARD AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1622,,,,07,1136823,1929423,2001,03/31/2006 10:03:38 PM,41.962496393,-87.772347004,"(41.962496393, -87.772347004)" -1752841,G564478,09/07/2001 10:30:00 AM,061XX N LINCOLN AV,1110,DECEPTIVE PRACTICE,BOGUS CHECK,BANK,false,false,1711,,,,11,1152928,1940868,2001,03/31/2006 10:03:38 PM,41.993597533,-87.712829897,"(41.993597533, -87.712829897)" -1732377,G540582,09/07/2001 03:00:00 AM,016XX N LA SALLE DR,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,1814,,,,14,1174789,1911276,2001,03/31/2006 10:03:38 PM,41.911933498,-87.633306015,"(41.911933498, -87.633306015)" -1731293,G533426,09/05/2001 10:00:00 PM,091XX S ASHLAND AV,0820,THEFT,$500 AND UNDER,TAVERN/LIQUOR STORE,false,false,2221,,,,06,1167229,1844328,2001,12/04/2014 12:43:35 PM,41.72838706,-87.662997829,"(41.72838706, -87.662997829)" -1727328,G532592,09/05/2001 08:13:13 PM,006XX N LA SALLE ST,0810,THEFT,OVER $500,SMALL RETAIL STORE,false,false,1832,,,,06,1174987,1904437,2001,12/04/2014 12:43:35 PM,41.893162507,-87.632783802,"(41.893162507, -87.632783802)" -1725332,G530452,09/04/2001 09:00:00 PM,074XX S STONY ISLAND AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,GAS STATION,false,false,0324,,,,04B,1188069,1855700,2001,03/31/2006 10:03:38 PM,41.759122225,-87.586295695,"(41.759122225, -87.586295695)" -1769971,G586879,09/04/2001 06:00:00 PM,008XX N MENARD AV,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,1511,,,,26,1137579,1905164,2001,03/31/2006 10:03:38 PM,41.89591343,-87.770153284,"(41.89591343, -87.770153284)" -1725614,G531455,09/01/2001 10:30:00 PM,064XX S HERMITAGE AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0725,,,,26,1165736,1861971,2001,03/31/2006 10:03:38 PM,41.776833727,-87.667967194,"(41.776833727, -87.667967194)" -1721331,G524586,09/01/2001 08:30:00 PM,012XX W DIVERSEY PW,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,DRIVEWAY - RESIDENTIAL,false,false,1931,,,,07,1167565,1918767,2001,03/31/2006 10:03:38 PM,41.932647941,-87.659628489,"(41.932647941, -87.659628489)" -1727232,G522352,08/31/2001 10:45:00 PM,006XX N LARAMIE AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1524,,,,18,1141539,1903780,2001,03/31/2006 10:03:38 PM,41.892043318,-87.755643066,"(41.892043318, -87.755643066)" -1720900,G522202,08/31/2001 08:45:00 PM,008XX W GARFIELD BL,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,0712,,,,06,1171894,1868214,2001,12/04/2014 12:43:35 PM,41.793832261,-87.645209039,"(41.793832261, -87.645209039)" -2166278,HH418605,08/31/2001 12:00:00 PM,106XX S COTTAGE GROVE AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,0512,,9,50,06,1182360,1834392,2001,03/31/2006 10:03:38 PM,41.700784716,-87.607876869,"(41.700784716, -87.607876869)" -1739989,G520846,08/31/2001 10:10:00 AM,022XX S STATE ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,CHA PARKING LOT/GROUNDS,true,false,2111,,,,26,1176630,1889325,2001,03/31/2006 10:03:38 PM,41.851657294,-87.627206314,"(41.851657294, -87.627206314)" -1771905,G587690,08/31/2001 08:00:00 AM,014XX N OGDEN AV,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, GROUNDS",false,false,1822,,,,06,1171431,1909712,2001,12/04/2014 12:43:35 PM,41.907716342,-87.645688276,"(41.907716342, -87.645688276)" -1718365,G521303,08/30/2001 04:00:00 PM,054XX S LAKE PARK AV,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,false,false,2132,,,,06,1187645,1869651,2001,12/04/2014 12:43:35 PM,41.797415003,-87.587406103,"(41.797415003, -87.587406103)" -1725728,G518601,08/30/2001 10:30:00 AM,0000X W MAPLE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),OTHER,true,false,1824,,,,18,1175987,1907660,2001,03/31/2006 10:03:38 PM,41.901984115,-87.629014039,"(41.901984115, -87.629014039)" -1725451,G518194,08/30/2001 05:50:00 AM,001XX N WALLER AV,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),STREET,true,false,1512,,,,18,1138089,1900692,2001,03/31/2006 10:03:38 PM,41.88363249,-87.768388272,"(41.88363249, -87.768388272)" -1724895,G519665,08/29/2001 06:00:00 PM,004XX W OAK ST,1310,CRIMINAL DAMAGE,TO PROPERTY,CHA PARKING LOT/GROUNDS,false,false,1823,,,,14,1173075,1907110,2001,03/31/2006 10:03:38 PM,41.900539992,-87.639726439,"(41.900539992, -87.639726439)" -1715061,G515169,08/28/2001 08:02:09 PM,042XX N CICERO AV,1570,SEX OFFENSE,PUBLIC INDECENCY,STREET,true,false,1624,,,,17,1143576,1927506,2001,03/31/2006 10:03:38 PM,41.957111979,-87.747566718,"(41.957111979, -87.747566718)" -1713791,G514739,08/28/2001 04:36:37 PM,007XX W 51 ST,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,APARTMENT,true,false,0935,,,,26,1172259,1871092,2001,03/31/2006 10:03:38 PM,41.801721774,-87.643785956,"(41.801721774, -87.643785956)" -1710904,G513686,08/27/2001 08:45:00 PM,054XX W HIRSCH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2532,,,,14,1139401,1908813,2001,03/31/2006 10:03:38 PM,41.905893709,-87.763372324,"(41.905893709, -87.763372324)" -1725771,G531629,08/27/2001 01:00:00 PM,031XX N FRANCISCO AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1411,,,,14,1156463,1920533,2001,03/31/2006 10:03:38 PM,41.937726113,-87.700379288,"(41.937726113, -87.700379288)" -1711278,G510146,08/26/2001 03:05:00 PM,065XX N BOSWORTH AV,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,OTHER,false,true,2432,,,,26,1164797,1943502,2001,03/31/2006 10:03:38 PM,42.000580999,-87.669095858,"(42.000580999, -87.669095858)" -1717296,G519524,08/26/2001 12:00:00 PM,051XX N NEWLAND AV,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,RESIDENCE,false,false,1613,,,,06,1129233,1933833,2001,03/31/2006 10:03:38 PM,41.97473086,-87.800152109,"(41.97473086, -87.800152109)" -1708487,G509782,08/26/2001 11:00:00 AM,002XX S MICHIGAN AV,0810,THEFT,OVER $500,COMMERCIAL / BUSINESS OFFICE,false,false,0123,,,,06,1177289,1899271,2001,12/04/2014 12:43:35 PM,41.878934844,-87.62448623,"(41.878934844, -87.62448623)" -1708663,G508702,08/25/2001 11:10:00 PM,024XX W NORTH AV,0810,THEFT,OVER $500,STREET,false,false,1423,,,,06,1159770,1910524,2001,12/04/2014 12:43:35 PM,41.910193066,-87.68850205,"(41.910193066, -87.68850205)" -1707062,G507781,08/25/2001 02:00:00 AM,063XX N CLAREMONT AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2413,,,,07,1159532,1942233,2001,03/31/2006 10:03:38 PM,41.997209263,-87.688499894,"(41.997209263, -87.688499894)" -1706732,G505653,08/24/2001 04:04:07 PM,050XX S KEDZIE AV,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,0821,,,,06,1155864,1870748,2001,12/04/2014 12:43:35 PM,41.801122976,-87.703922316,"(41.801122976, -87.703922316)" -1706394,G505365,08/24/2001 01:53:40 PM,004XX N LECLAIRE AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1532,,,,08B,1142243,1902686,2001,03/31/2006 10:03:38 PM,41.889028215,-87.753084716,"(41.889028215, -87.753084716)" -1717866,G504544,08/23/2001 11:58:44 PM,025XX W DIVISION ST,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,1312,,,,18,1159224,1907852,2001,03/31/2006 10:03:38 PM,41.90287213,-87.690581393,"(41.90287213, -87.690581393)" -1704898,G502607,08/23/2001 09:00:00 AM,014XX N ARTESIAN AV,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,OTHER,false,false,1423,,,,04A,1159855,1909393,2001,03/31/2006 10:03:38 PM,41.90708776,-87.688221042,"(41.90708776, -87.688221042)" -1703644,G501712,08/21/2001 08:30:00 PM,010XX N LATROBE AV,0460,BATTERY,SIMPLE,SIDEWALK,false,true,1524,,,,08B,1141122,1906686,2001,03/31/2006 10:03:38 PM,41.900025422,-87.757102867,"(41.900025422, -87.757102867)" -1703241,G498266,08/21/2001 10:41:59 AM,077XX S LOOMIS ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0612,,,,14,1168379,1853456,2001,03/31/2006 10:03:38 PM,41.753410934,-87.658522933,"(41.753410934, -87.658522933)" -1700541,G497807,08/21/2001 01:30:00 AM,071XX S CONSTANCE AV,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,0324,,,,03,1189567,1858027,2001,03/31/2006 10:03:38 PM,41.765471883,-87.580731063,"(41.765471883, -87.580731063)" -1698535,G497907,08/21/2001 12:48:00 AM,032XX W 55 ST,0610,BURGLARY,FORCIBLE ENTRY,CLEANING STORE,false,false,0822,,,,05,1155891,1868013,2001,03/31/2006 10:03:38 PM,41.793617212,-87.703896741,"(41.793617212, -87.703896741)" -1696760,G493432,08/18/2001 06:00:00 PM,024XX W MARQUETTE RD,0810,THEFT,OVER $500,OTHER,false,false,0832,,,,06,1161028,1860194,2001,12/04/2014 12:43:35 PM,41.772056052,-87.685275731,"(41.772056052, -87.685275731)" -1695751,G492739,08/18/2001 05:00:00 PM,062XX S GREEN ST,0460,BATTERY,SIMPLE,STREET,false,true,0712,,,,08B,1171618,1863656,2001,03/31/2006 10:03:38 PM,41.781330655,-87.646354658,"(41.781330655, -87.646354658)" -1694805,G492627,08/18/2001 11:00:00 AM,060XX N OLYMPIA AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1612,,,,26,1124365,1938937,2001,03/31/2006 10:03:38 PM,41.988818521,-87.817940739,"(41.988818521, -87.817940739)" -1693967,G491586,08/18/2001 04:35:00 AM,008XX W SUNNYSIDE AV,0820,THEFT,$500 AND UNDER,ALLEY,false,false,2313,,,,06,1169910,1930047,2001,12/04/2014 12:43:35 PM,41.963549804,-87.650680758,"(41.963549804, -87.650680758)" -1696550,G491400,08/18/2001 01:00:00 AM,024XX W CORTLAND ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,true,false,1434,,,,14,1159867,1912511,2001,03/31/2006 10:03:38 PM,41.915643542,-87.688090796,"(41.915643542, -87.688090796)" -1694038,G490772,08/17/2001 07:40:37 PM,014XX W JONQUIL TR,031A,ROBBERY,ARMED: HANDGUN,RESIDENCE PORCH/HALLWAY,false,false,2422,,,,03,1165174,1950953,2001,03/31/2006 10:03:38 PM,42.02101864,-87.667495755,"(42.02101864, -87.667495755)" -1703713,G489856,08/17/2001 12:55:00 PM,062XX S LOOMIS ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0713,,,,18,1168020,1863576,2001,03/31/2006 10:03:38 PM,41.781189248,-87.659548018,"(41.781189248, -87.659548018)" -1694309,G489534,08/16/2001 08:30:00 PM,052XX S WOOD ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,true,false,0932,,,,20,1165205,1869599,2001,03/31/2006 10:03:38 PM,41.797777177,-87.669697982,"(41.797777177, -87.669697982)" -1704926,G486392,08/15/2001 09:25:00 PM,030XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1331,,,,18,1156128,1899904,2001,03/31/2006 10:03:38 PM,41.881125168,-87.702168364,"(41.881125168, -87.702168364)" -1690991,G484712,08/15/2001 07:30:00 AM,034XX W BERTEAU AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1723,,,,08B,1152576,1927741,2001,03/31/2006 10:03:38 PM,41.957583255,-87.714473535,"(41.957583255, -87.714473535)" -1688074,G483618,08/14/2001 04:45:00 PM,028XX S KOLIN AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,1031,,,,08B,1147806,1884990,2001,03/31/2006 10:03:38 PM,41.840363184,-87.733109346,"(41.840363184, -87.733109346)" -1699402,G482238,08/14/2001 02:54:52 AM,016XX N SHEFFIELD AV,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,PARKING LOT/GARAGE(NON.RESID.),true,false,1811,,,,16,1169349,1911194,2001,03/31/2006 10:03:38 PM,41.911828581,-87.653293214,"(41.911828581, -87.653293214)" -1697441,G481984,08/13/2001 10:01:10 PM,063XX S MORGAN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0723,,,,18,1170773,1862767,2001,03/31/2006 10:03:38 PM,41.778909617,-87.649478529,"(41.778909617, -87.649478529)" -1686253,G481109,08/13/2001 04:30:00 PM,066XX S MOZART ST,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,true,true,0831,,,,04B,1158561,1860489,2001,03/31/2006 10:03:38 PM,41.772916231,-87.694311025,"(41.772916231, -87.694311025)" -1692096,G480476,08/13/2001 11:25:00 AM,068XX S CORNELL AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0332,,,,08A,1188336,1860164,2001,03/31/2006 10:03:38 PM,41.771365461,-87.585174865,"(41.771365461, -87.585174865)" -1684831,G478928,08/12/2001 03:51:23 PM,082XX S COTTAGE GROVE,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,true,false,0631,,,,26,1183039,1850251,2001,03/31/2006 10:03:38 PM,41.744287981,-87.604899279,"(41.744287981, -87.604899279)" -1682879,G477592,08/12/2001 12:23:40 AM,124XX S WABASH AV,0630,BURGLARY,ATTEMPT FORCIBLE ENTRY,RESIDENCE,false,false,0532,,,,05,1178798,1821992,2001,03/31/2006 10:03:38 PM,41.666838883,-87.621294792,"(41.666838883, -87.621294792)" -1721115,G514100,08/11/2001 11:00:00 PM,034XX W 79 ST,1120,DECEPTIVE PRACTICE,FORGERY,STREET,false,false,0835,,,,10,1155065,1852077,2001,03/31/2006 10:03:38 PM,41.749902937,-87.707350976,"(41.749902937, -87.707350976)" -1682770,G476880,08/11/2001 05:00:00 PM,028XX N LEAVITT ST,0460,BATTERY,SIMPLE,CHA PARKING LOT/GROUNDS,false,false,1913,,,,08B,1161662,1918838,2001,03/31/2006 10:03:38 PM,41.932968005,-87.681319366,"(41.932968005, -87.681319366)" -1682478,G476648,08/11/2001 03:00:00 PM,040XX N MONITOR AV,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,1624,,,,06,1136588,1926278,2001,12/04/2014 12:43:35 PM,41.953870427,-87.773286591,"(41.953870427, -87.773286591)" -1681166,G474385,08/10/2001 11:30:00 AM,005XX W DIVERSEY PW,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,2333,,,,14,1171993,1918829,2001,03/31/2006 10:03:38 PM,41.932721439,-87.643354345,"(41.932721439, -87.643354345)" -1680276,G471205,08/09/2001 07:45:00 AM,133XX S VERNON AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0533,,,,14,1181517,1816776,2001,03/31/2006 10:03:38 PM,41.652463303,-87.611503969,"(41.652463303, -87.611503969)" -1678332,G470429,08/08/2001 09:09:56 PM,0000X E GARFIELD BL,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0233,,,,08B,1177540,1868400,2001,03/31/2006 10:03:38 PM,41.794216782,-87.624500023,"(41.794216782, -87.624500023)" -1677494,G470185,08/08/2001 07:00:00 AM,083XX S HOUSTON AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0424,,,,14,1197892,1850496,2001,03/31/2006 10:03:38 PM,41.744602364,-87.550469128,"(41.744602364, -87.550469128)" -1704477,G468859,08/07/2001 07:45:00 PM,073XX S WOODLAWN AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,0324,,,,05,1185444,1856628,2001,03/31/2006 10:03:38 PM,41.761730896,-87.595886919,"(41.761730896, -87.595886919)" -1675273,G467587,08/07/2001 05:30:00 PM,025XX W LYNDALE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,1431,,,,06,1158746,1914939,2001,12/04/2014 12:43:35 PM,41.922329226,-87.692142569,"(41.922329226, -87.692142569)" -1679889,G467967,08/07/2001 11:20:00 AM,001XX E RANDOLPH ST,0820,THEFT,$500 AND UNDER,COMMERCIAL / BUSINESS OFFICE,false,false,0124,,,,06,1177602,1901333,2001,12/04/2014 12:43:35 PM,41.884585984,-87.623274323,"(41.884585984, -87.623274323)" -1671630,G463592,08/06/2001 01:18:00 AM,032XX W DIVISION ST,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,true,false,1121,,,,04A,1154531,1907758,2001,03/31/2006 10:03:38 PM,41.902709381,-87.707822237,"(41.902709381, -87.707822237)" -1670089,G459723,08/04/2001 09:54:56 AM,085XX S MARQUETTE AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,0423,,,,26,1195679,1849020,2001,03/31/2006 10:03:38 PM,41.740607064,-87.558626358,"(41.740607064, -87.558626358)" -1670278,G459505,08/04/2001 12:30:00 AM,077XX W GREGORY ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,1613,,,,08B,1123697,1935958,2001,03/31/2006 10:03:38 PM,41.980654836,-87.820463397,"(41.980654836, -87.820463397)" -1674912,G458943,08/03/2001 10:27:13 PM,074XX S COTTAGE GROVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,0323,,,,18,1182884,1855987,2001,03/31/2006 10:03:38 PM,41.760031768,-87.605289363,"(41.760031768, -87.605289363)" -1676307,G458982,08/03/2001 10:00:00 PM,004XX W GARFIELD BL,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,true,false,0934,,,,18,1174192,1868498,2001,03/31/2006 10:03:38 PM,41.794560802,-87.636774019,"(41.794560802, -87.636774019)" -1671558,G456801,08/03/2001 12:50:00 AM,069XX S HARVARD AV,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0731,,,,04B,1175108,1859162,2001,03/31/2006 10:03:38 PM,41.768921394,-87.633693637,"(41.768921394, -87.633693637)" -1667496,G456779,08/03/2001 12:13:00 AM,038XX W 13 ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,true,false,1011,,,,15,1151205,1893814,2001,03/31/2006 10:03:38 PM,41.864511456,-87.720405118,"(41.864511456, -87.720405118)" -1672876,G465098,08/02/2001 12:00:00 PM,004XX W FULLERTON AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1814,,,,14,1173031,1916201,2001,03/31/2006 10:03:38 PM,41.925487114,-87.639617972,"(41.925487114, -87.639617972)" -1664838,G454499,08/01/2001 10:50:00 PM,006XX W HARRISON ST,0820,THEFT,$500 AND UNDER,CTA BUS,false,false,0131,,,,06,1172038,1897598,2001,12/04/2014 12:43:35 PM,41.874461408,-87.6438161,"(41.874461408, -87.6438161)" -1666944,G456034,08/01/2001 10:00:00 PM,055XX S ROCKWELL ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0824,,,,14,1159951,1867469,2001,03/31/2006 10:03:38 PM,41.792041866,-87.689023882,"(41.792041866, -87.689023882)" -1666365,G455099,08/01/2001 07:00:00 PM,056XX N ST LOUIS AV,0820,THEFT,$500 AND UNDER,STREET,false,false,1711,,,,06,1152068,1937352,2001,12/04/2014 12:43:35 PM,41.983966495,-87.716086552,"(41.983966495, -87.716086552)" -1669442,G457704,08/01/2001 10:00:00 AM,007XX N DEARBORN ST,0560,ASSAULT,SIMPLE,RESIDENCE,true,false,1832,,,,08A,1175757,1905627,2001,03/31/2006 10:03:38 PM,41.896410641,-87.629920078,"(41.896410641, -87.629920078)" -1754010,G562646,07/30/2001 09:00:00 AM,039XX W IRVING PARK RD,1120,DECEPTIVE PRACTICE,FORGERY,OTHER,true,false,1723,,,,10,1149383,1926331,2001,03/31/2006 10:03:38 PM,41.953776784,-87.726248853,"(41.953776784, -87.726248853)" -1673662,G455896,07/30/2001 08:15:00 AM,075XX S CHAMPLAIN AV,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,STREET,true,false,0624,,,,26,1181836,1854917,2001,03/31/2006 10:03:38 PM,41.757119851,-87.609163264,"(41.757119851, -87.609163264)" -1661908,G447638,07/30/2001 12:26:16 AM,007XX S KENNETH AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,true,1131,,,,14,1146846,1896250,2001,03/31/2006 10:03:38 PM,41.871280424,-87.736344919,"(41.871280424, -87.736344919)" -1663406,G449043,07/29/2001 11:50:00 PM,034XX N LARAMIE AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1634,,,,08B,1141056,1922194,2001,03/31/2006 10:03:38 PM,41.94258225,-87.756962442,"(41.94258225, -87.756962442)" -1657484,G444845,07/28/2001 05:00:00 PM,079XX S ESCANABA AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0422,,,,08B,1196841,1852823,2001,03/31/2006 10:03:38 PM,41.751014001,-87.55424284,"(41.751014001, -87.55424284)" -1658188,G443387,07/28/2001 12:20:31 AM,038XX W ARMITAGE AV,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,true,false,2525,,,,03,1150642,1913057,2001,03/31/2006 10:03:38 PM,41.917327265,-87.72196858,"(41.917327265, -87.72196858)" -1661272,G441719,07/27/2001 10:37:00 AM,026XX E 75 ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0334,,,,06,1195324,1855881,2001,12/04/2014 12:43:35 PM,41.759442942,-87.55970099,"(41.759442942, -87.55970099)" -1657517,G440948,07/26/2001 10:30:00 PM,047XX S ELLIS AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,2124,,,,08B,1183756,1873774,2001,03/31/2006 10:03:38 PM,41.808820558,-87.601538692,"(41.808820558, -87.601538692)" -1663027,G439105,07/26/2001 08:07:37 AM,001XX W 87 ST,0810,THEFT,OVER $500,GROCERY FOOD STORE,true,false,0622,,,,06,1176895,1847317,2001,12/04/2014 12:43:35 PM,41.736377238,-87.627499596,"(41.736377238, -87.627499596)" -1676405,G439282,07/26/2001 06:30:00 AM,004XX W 38 ST,1710,OFFENSE INVOLVING CHILDREN,ENDANGERING LIFE/HEALTH CHILD,RESIDENCE,false,false,0925,,,,26,1173661,1879684,2001,03/31/2006 10:03:38 PM,41.825268064,-87.638389483,"(41.825268064, -87.638389483)" -1656700,G444229,07/26/2001 12:00:00 AM,053XX N SHERIDAN RD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE,true,false,2023,,,,07,1168637,1935631,2001,03/31/2006 10:03:38 PM,41.9789002,-87.65519862,"(41.9789002, -87.65519862)" -1850014,G438298,07/25/2001 07:31:00 PM,036XX S KING DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0211,,,,14,1179417,1880820,2001,03/31/2006 10:03:38 PM,41.828255632,-87.617237703,"(41.828255632, -87.617237703)" -1652070,G439109,07/25/2001 07:30:00 PM,064XX S KENWOOD AV,0820,THEFT,$500 AND UNDER,STREET,false,false,0314,,,,06,1186142,1862339,2001,12/04/2014 12:43:35 PM,41.777385942,-87.593148575,"(41.777385942, -87.593148575)" -1651588,G438313,07/25/2001 07:00:00 PM,003XX S KILBOURN AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,1131,,,,26,1146412,1897797,2001,03/31/2006 10:03:38 PM,41.87553385,-87.737898913,"(41.87553385, -87.737898913)" -1763290,G438197,07/25/2001 06:30:00 PM,024XX S STATE ST,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,2113,,,,26,1176662,1888120,2001,03/31/2006 10:03:38 PM,41.848349966,-87.627125238,"(41.848349966, -87.627125238)" -1651044,G432781,07/23/2001 03:45:00 PM,001XX E ERIE ST,0850,THEFT,ATTEMPT THEFT,RESTAURANT,false,false,1834,,,,06,1177543,1904778,2001,03/31/2006 10:03:38 PM,41.894040577,-87.62338631,"(41.894040577, -87.62338631)" -1645916,G432008,07/22/2001 03:00:00 AM,001XX E WALTON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,1833,,,,07,1177362,1906991,2001,03/31/2006 10:03:38 PM,41.900117261,-87.623983858,"(41.900117261, -87.623983858)" -1650357,G428281,07/21/2001 01:30:00 PM,013XX N LARRABEE ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA APARTMENT,true,false,1822,,,,26,1172048,1909151,2001,03/31/2006 10:03:38 PM,41.906163332,-87.643438342,"(41.906163332, -87.643438342)" -1643618,G427541,07/21/2001 05:30:00 AM,064XX N RIDGE BL,031A,ROBBERY,ARMED: HANDGUN,OTHER,false,false,2412,,,,03,1162572,1942776,2001,03/31/2006 10:03:38 PM,41.998635907,-87.677301636,"(41.998635907, -87.677301636)" -1652451,G427020,07/20/2001 11:03:45 PM,002XX E 48 ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0224,,,,16,1178629,1873291,2001,03/31/2006 10:03:38 PM,41.807613422,-87.620357973,"(41.807613422, -87.620357973)" -1646995,G425712,07/20/2001 12:15:00 PM,057XX W WASHINGTON BL,0460,BATTERY,SIMPLE,STREET,false,true,1512,,,,08B,1138123,1900207,2001,03/31/2006 10:03:38 PM,41.882300973,-87.768275146,"(41.882300973, -87.768275146)" -1665491,G425391,07/20/2001 10:15:00 AM,008XX W WINDSOR AV,1310,CRIMINAL DAMAGE,TO PROPERTY,SIDEWALK,true,false,2313,,,,14,1169982,1930437,2001,03/31/2006 10:03:38 PM,41.964618401,-87.650404611,"(41.964618401, -87.650404611)" -1641775,G424262,07/19/2001 06:45:00 PM,114XX S MICHIGAN AV,0820,THEFT,$500 AND UNDER,STREET,false,false,0531,,,,06,1178800,1829346,2001,12/04/2014 12:43:35 PM,41.687019323,-87.621064995,"(41.687019323, -87.621064995)" -1760534,G420249,07/18/2001 12:37:00 AM,012XX W GREENLEAF AV,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,RESIDENCE,true,false,2423,,,,18,1166995,1947064,2001,03/31/2006 10:03:38 PM,42.010308111,-87.66090697,"(42.010308111, -87.66090697)" -1636958,G419676,07/17/2001 07:30:00 PM,085XX S MARSHFIELD AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0614,,,,26,1166875,1847839,2001,03/31/2006 10:03:38 PM,41.738029324,-87.664194616,"(41.738029324, -87.664194616)" -1635351,G415302,07/15/2001 11:30:00 PM,103XX S EWING AV,0460,BATTERY,SIMPLE,STREET,false,false,0432,,,,08B,1202121,1837014,2001,03/31/2006 10:03:38 PM,41.70750015,-87.535431816,"(41.70750015, -87.535431816)" -1647014,G414016,07/15/2001 01:00:00 AM,080XX S CHAMPLAIN AV,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENCE,false,true,0631,,,,14,1181996,1851967,2001,03/31/2006 10:03:38 PM,41.749021039,-87.608667956,"(41.749021039, -87.608667956)" -1634183,G414773,07/14/2001 11:10:00 AM,075XX S STONY ISLAND AV,0460,BATTERY,SIMPLE,HOSPITAL BUILDING/GROUNDS,false,false,0411,,,,08B,1188271,1855225,2001,03/31/2006 10:03:38 PM,41.757813967,-87.585570517,"(41.757813967, -87.585570517)" -1630386,G409321,07/13/2001 10:30:00 AM,025XX N NEWCASTLE AV,0320,ROBBERY,STRONGARM - NO WEAPON,RESIDENCE,false,false,2512,,,,03,1130370,1915940,2001,03/31/2006 10:03:38 PM,41.92561098,-87.796383147,"(41.92561098, -87.796383147)" -1641432,G407657,07/12/2001 02:57:36 PM,056XX S LAFAYETTE AV,1661,GAMBLING,GAME/DICE,SIDEWALK,true,false,0233,,,,19,1176983,1867483,2001,03/31/2006 10:03:38 PM,41.791713029,-87.626570149,"(41.791713029, -87.626570149)" -1631341,G407139,07/12/2001 10:55:00 AM,060XX N WESTERN AV,0460,BATTERY,SIMPLE,STREET,false,false,2413,,,,08B,1159190,1939816,2001,03/31/2006 10:03:38 PM,41.990583984,-87.689824793,"(41.990583984, -87.689824793)" -1626035,G403952,07/10/2001 09:45:00 PM,086XX S DANTE AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0412,,,,08B,1187339,1847801,2001,03/31/2006 10:03:38 PM,41.737463967,-87.589221429,"(41.737463967, -87.589221429)" -1625182,G403642,07/10/2001 07:29:16 PM,061XX S WASHTENAW AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0825,,,,08B,1159385,1863959,2001,03/31/2006 10:03:38 PM,41.782421564,-87.691195448,"(41.782421564, -87.691195448)" -1628322,G405000,07/10/2001 06:00:00 PM,056XX S WABASH AV,0820,THEFT,$500 AND UNDER,ALLEY,false,false,0233,,,,06,1177630,1867877,2001,12/04/2014 12:43:35 PM,41.792779583,-87.62418582,"(41.792779583, -87.62418582)" -1631228,G411713,07/10/2001 10:00:00 AM,024XX S SAWYER AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,1024,,,,07,1155034,1887835,2001,03/31/2006 10:03:38 PM,41.848028529,-87.70650906,"(41.848028529, -87.70650906)" -1624676,G402746,07/10/2001 07:15:00 AM,039XX N FREMONT ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2324,,,,07,1169593,1926442,2001,03/31/2006 10:03:38 PM,41.953664486,-87.651951647,"(41.953664486, -87.651951647)" -1622730,G399609,07/09/2001 03:50:00 AM,014XX S HARDING AV,031A,ROBBERY,ARMED: HANDGUN,PARK PROPERTY,false,false,1011,,,,03,1150330,1892475,2001,03/31/2006 10:03:38 PM,41.860854179,-87.723652165,"(41.860854179, -87.723652165)" -1644903,G398029,07/08/2001 09:46:20 AM,036XX W MC LEAN AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2525,,,,14,1151536,1913412,2001,03/31/2006 10:03:38 PM,41.918283882,-87.71867464,"(41.918283882, -87.71867464)" -1620784,G395905,07/07/2001 07:30:00 PM,064XX N CLAREMONT AV,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,false,false,2412,,,,05,1159442,1942523,2001,03/31/2006 10:03:38 PM,41.998006893,-87.688822939,"(41.998006893, -87.688822939)" -1642000,G396819,07/07/2001 06:00:00 PM,026XX N PARKSIDE AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,2514,,,,08B,1138221,1916978,2001,03/31/2006 10:03:38 PM,41.928320834,-87.76750907,"(41.928320834, -87.76750907)" -1620797,G396403,07/07/2001 02:15:00 PM,068XX N CLARK ST,0820,THEFT,$500 AND UNDER,OTHER,true,false,2424,,,,06,1163594,1945536,2001,12/04/2014 12:43:35 PM,42.006187868,-87.673463774,"(42.006187868, -87.673463774)" -1626231,G395390,07/07/2001 12:35:38 AM,037XX N AVONDALE AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1732,,,,18,1150364,1924234,2001,03/31/2006 10:03:38 PM,41.948003332,-87.722697489,"(41.948003332, -87.722697489)" -1619569,G393968,07/06/2001 12:15:00 PM,039XX W IRVING PARK RD,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1723,,,,04B,1149665,1926338,2001,03/31/2006 10:03:38 PM,41.953790506,-87.725212,"(41.953790506, -87.725212)" -1617346,G393186,07/05/2001 11:36:55 PM,014XX W HOWARD ST,0440,BATTERY,AGG: HANDS/FIST/FEET NO/MINOR INJURY,RESIDENCE PORCH/HALLWAY,false,false,2422,,,,08B,1165112,1950337,2001,03/31/2006 10:03:38 PM,42.019329651,-87.667741541,"(42.019329651, -87.667741541)" -1616091,G393167,07/05/2001 10:50:00 PM,081XX S EVANS AV,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,false,false,0631,,,,07,1182606,1851029,2001,03/31/2006 10:03:38 PM,41.746432946,-87.606461743,"(41.746432946, -87.606461743)" -1618090,G390784,07/04/2001 11:40:00 PM,102XX S EWING AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0432,,,,08B,1202113,1837804,2001,03/31/2006 10:03:38 PM,41.709668178,-87.535434305,"(41.709668178, -87.535434305)" -1617518,G390325,07/04/2001 05:30:00 PM,051XX S FRANCISCO AV,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0911,,,,08B,1157880,1870106,2001,03/31/2006 10:03:38 PM,41.799320495,-87.69654632,"(41.799320495, -87.69654632)" -1614111,G389831,07/04/2001 12:45:00 AM,029XX N SACRAMENTO AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,1411,,,,14,1155828,1919409,2001,03/31/2006 10:03:38 PM,41.934654617,-87.702743424,"(41.934654617, -87.702743424)" -1613744,G387222,07/02/2001 10:00:00 PM,056XX S ARCHER AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0814,,,,26,1142848,1869326,2001,03/31/2006 10:03:38 PM,41.797472403,-87.751692579,"(41.797472403, -87.751692579)" -1613918,G387303,07/02/2001 08:00:00 PM,051XX S HARPER AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2132,,,,14,1187196,1871300,2001,03/31/2006 10:03:38 PM,41.801950658,-87.58900026,"(41.801950658, -87.58900026)" -1616792,G386211,07/02/2001 07:00:00 PM,061XX S ABERDEEN ST,0560,ASSAULT,SIMPLE,APARTMENT,false,false,0712,,,,08A,1170077,1863970,2001,03/31/2006 10:03:38 PM,41.782225953,-87.651995176,"(41.782225953, -87.651995176)" -1612200,G387334,07/01/2001 11:30:00 AM,024XX W OHIO ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1313,,,,05,1159700,1903885,2001,03/31/2006 10:03:38 PM,41.89197655,-87.688942399,"(41.89197655, -87.688942399)" -1608747,G382352,06/30/2001 11:00:00 PM,014XX E 71 PL,0460,BATTERY,SIMPLE,STREET,false,false,0324,,,,08B,1187219,1857918,2001,03/31/2006 10:03:38 PM,41.765228831,-87.589340556,"(41.765228831, -87.589340556)" -1607145,G379491,06/29/2001 05:25:00 PM,0000X E JACKSON BV,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,false,false,0123,,,,08B,1176537,1899045,2001,03/31/2006 10:03:38 PM,41.878331697,-87.627254229,"(41.878331697, -87.627254229)" -1606518,G375995,06/28/2001 04:15:00 AM,070XX S NORMAL BL,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0732,,,,08B,1174122,1858364,2001,03/31/2006 10:03:38 PM,41.766753542,-87.637331489,"(41.766753542, -87.637331489)" -1610698,G375693,06/27/2001 11:00:00 PM,012XX S KEELER AV,2027,NARCOTICS,POSS: CRACK,ALLEY,true,false,1011,,,,18,1148615,1894198,2001,03/31/2006 10:03:38 PM,41.865615547,-87.729903152,"(41.865615547, -87.729903152)" -1604334,G374180,06/27/2001 10:45:00 AM,007XX W 59 ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,RESIDENCE,false,true,0711,,,,04A,1172351,1865705,2001,03/31/2006 10:03:38 PM,41.78693724,-87.643607065,"(41.78693724, -87.643607065)" -1601084,G373092,06/26/2001 09:30:00 AM,077XX S EXCHANGE AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0421,,,,14,1196216,1854407,2001,03/31/2006 10:03:38 PM,41.755376121,-87.556480687,"(41.755376121, -87.556480687)" -1602767,G371349,06/26/2001 02:05:25 AM,031XX N AUSTIN AV,0810,THEFT,OVER $500,STREET,false,false,2511,,,,06,1135789,1920613,2001,12/04/2014 12:43:35 PM,41.938339367,-87.77635918,"(41.938339367, -87.77635918)" -1599121,G367221,06/24/2001 06:26:00 AM,059XX S SACRAMENTO AV,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,ALLEY,true,false,0824,,,,11,1157447,1864778,2001,03/31/2006 10:03:38 PM,41.784708513,-87.698278585,"(41.784708513, -87.698278585)" -1596439,G367092,06/24/2001 01:30:00 AM,057XX S MARSHFIELD AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,true,false,0715,,,,07,1166282,1866628,2001,03/31/2006 10:03:38 PM,41.78960151,-87.66583304,"(41.78960151, -87.66583304)" -1596880,G367741,06/23/2001 10:00:00 PM,040XX N PAULINA ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1923,,,,14,1164466,1926842,2001,03/31/2006 10:03:38 PM,41.954872415,-87.670787578,"(41.954872415, -87.670787578)" -1599830,G366563,06/23/2001 08:10:00 PM,002XX N STATE ST,0820,THEFT,$500 AND UNDER,CTA TRAIN,false,false,0122,,,,06,1176287,1901755,2001,12/04/2014 12:43:35 PM,41.885773731,-87.628090393,"(41.885773731, -87.628090393)" -1615328,G388091,06/23/2001 03:00:00 PM,0000X S WHIPPLE ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,false,false,1124,,,,06,1156204,1899724,2001,03/31/2006 10:03:38 PM,41.880629697,-87.701894158,"(41.880629697, -87.701894158)" -1595728,G363963,06/22/2001 03:30:00 PM,008XX W 89 ST,0820,THEFT,$500 AND UNDER,OTHER,false,false,2223,,,,06,1172190,1845924,2001,12/04/2014 12:43:35 PM,41.732659251,-87.644777902,"(41.732659251, -87.644777902)" -1594327,G362799,06/22/2001 12:55:00 AM,102XX S AVENUE N,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0432,,,,14,1201206,1837690,2001,03/31/2006 10:03:38 PM,41.709378367,-87.538759636,"(41.709378367, -87.538759636)" -1593056,G362338,06/21/2001 07:50:00 PM,056XX S LAFAYETTE AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,true,0233,,,,26,1176896,1867756,2001,03/31/2006 10:03:38 PM,41.79246413,-87.626880934,"(41.79246413, -87.626880934)" -1592976,G360714,06/21/2001 04:20:00 AM,062XX S MARSHFIELD AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0714,,,,08B,1166373,1863227,2001,03/31/2006 10:03:38 PM,41.780266803,-87.665596216,"(41.780266803, -87.665596216)" -1593190,G360563,06/21/2001 12:51:57 AM,075XX S PEORIA ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,STREET,false,false,0621,,,,11,1171574,1854735,2001,03/31/2006 10:03:38 PM,41.756851311,-87.646777046,"(41.756851311, -87.646777046)" -1590425,G357085,06/19/2001 02:30:00 PM,035XX W MELROSE ST,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,1732,,,,08A,1152388,1921349,2001,03/31/2006 10:03:38 PM,41.940046864,-87.715334128,"(41.940046864, -87.715334128)" -1599255,G356962,06/19/2001 02:25:45 PM,002XX N MICHIGAN AV,0850,THEFT,ATTEMPT THEFT,RESTAURANT,false,false,0124,,,,06,1177220,1901790,2001,03/31/2006 10:03:38 PM,41.885848681,-87.624663204,"(41.885848681, -87.624663204)" -1589929,G355964,06/19/2001 02:25:07 AM,070XX S BELL AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,0832,,,,14,1162580,1857738,2001,03/31/2006 10:03:38 PM,41.765284211,-87.67965497,"(41.765284211, -87.67965497)" -1599273,G355257,06/18/2001 07:23:04 PM,017XX W HURON ST,0460,BATTERY,SIMPLE,SIDEWALK,true,true,1324,,,,08B,1164700,1904773,2001,03/31/2006 10:03:38 PM,41.89430878,-87.670554429,"(41.89430878, -87.670554429)" -1594744,G363908,06/18/2001 06:00:00 PM,001XX W SCHILLER ST,0810,THEFT,OVER $500,STREET,false,false,1821,,,,06,1174613,1909683,2001,12/04/2014 12:43:35 PM,41.907566171,-87.634000295,"(41.907566171, -87.634000295)" -1591662,G353202,06/18/2001 12:30:00 AM,008XX N PULASKI RD,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1111,,,,14,1149537,1905099,2001,03/31/2006 10:03:38 PM,41.895511271,-87.726235328,"(41.895511271, -87.726235328)" -1584588,G351805,06/17/2001 05:30:00 AM,038XX N KOSTNER AV,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,false,false,1731,,,,05,1146134,1925194,2001,03/31/2006 10:03:38 PM,41.950719296,-87.738221666,"(41.950719296, -87.738221666)" -1586911,G354730,06/16/2001 12:00:00 AM,001XX E WACKER DR,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,HOTEL/MOTEL,false,false,0124,,,,11,1177784,1902578,2001,03/31/2006 10:03:38 PM,41.887998194,-87.622568135,"(41.887998194, -87.622568135)" -1585597,G348884,06/15/2001 10:50:00 PM,061XX S MARSHFIELD AV,041A,BATTERY,AGGRAVATED: HANDGUN,APARTMENT,false,true,0714,,,,04B,1166442,1863650,2001,03/31/2006 10:03:38 PM,41.781426098,-87.665331203,"(41.781426098, -87.665331203)" -1583502,G348125,06/14/2001 06:00:00 PM,020XX N MILWAUKEE AV,0560,ASSAULT,SIMPLE,STREET,true,false,1431,,,,08A,1159246,1913540,2001,03/31/2006 10:03:38 PM,41.918479993,-87.690343958,"(41.918479993, -87.690343958)" -1581993,G345118,06/14/2001 11:38:06 AM,011XX S FRANCISCO AV,0460,BATTERY,SIMPLE,RESIDENCE,true,false,1135,,,,08B,1157152,1895163,2001,03/31/2006 10:03:38 PM,41.868094665,-87.698537036,"(41.868094665, -87.698537036)" -1581364,G345963,06/14/2001 08:00:00 AM,112XX S CHAMPLAIN AV,0560,ASSAULT,SIMPLE,STREET,false,true,0531,,,,08A,1182551,1830501,2001,03/31/2006 10:03:38 PM,41.690102875,-87.607297598,"(41.690102875, -87.607297598)" -1580112,G342961,06/13/2001 01:11:50 PM,013XX S KILDARE AV,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,1011,,,,08A,1147900,1893121,2001,03/31/2006 10:03:38 PM,41.862673889,-87.732555647,"(41.862673889, -87.732555647)" -1581989,G347476,06/13/2001 04:30:00 AM,038XX W IRVING PARK RD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,1723,,,,26,1150241,1926356,2001,03/31/2006 10:03:38 PM,41.953828664,-87.723094075,"(41.953828664, -87.723094075)" -1578733,G341076,06/12/2001 03:22:00 PM,073XX S INDIANA AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,true,0323,,,,04B,1178824,1856624,2001,03/31/2006 10:03:38 PM,41.761873093,-87.620149814,"(41.761873093, -87.620149814)" -1577879,G339935,06/12/2001 04:12:45 AM,039XX W 56 ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0822,,,,08B,1150816,1867130,2001,03/31/2006 10:03:38 PM,41.791294585,-87.722529595,"(41.791294585, -87.722529595)" -1576153,G338467,06/11/2001 12:49:52 PM,025XX W CERMAK RD,1110,DECEPTIVE PRACTICE,BOGUS CHECK,GROCERY FOOD STORE,true,false,1023,,,,11,1159780,1889354,2001,03/31/2006 10:03:38 PM,41.852100446,-87.689049156,"(41.852100446, -87.689049156)" -1572848,G336365,06/10/2001 04:17:17 PM,021XX W SUPERIOR ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1313,,,,08B,1162051,1904942,2001,03/31/2006 10:03:38 PM,41.894828269,-87.680278663,"(41.894828269, -87.680278663)" -1575874,G340339,06/10/2001 09:00:00 AM,114XX S THROOP ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2234,,,,06,1169751,1828920,2001,12/04/2014 12:43:35 PM,41.686050846,-87.654204349,"(41.686050846, -87.654204349)" -1571730,G334787,06/09/2001 08:30:00 PM,015XX W 18 PL,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1222,,,,08B,1166306,1891196,2001,03/31/2006 10:03:38 PM,41.8570182,-87.66504435,"(41.8570182, -87.66504435)" -1570422,G332659,06/08/2001 08:41:18 PM,025XX W HADDON AV,0460,BATTERY,SIMPLE,STREET,false,true,1312,,,,08B,1159308,1907595,2001,03/31/2006 10:03:38 PM,41.902165173,-87.690279921,"(41.902165173, -87.690279921)" -1568641,G330510,06/07/2001 07:30:00 PM,081XX S JUSTINE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0614,,,,07,1167389,1850425,2001,03/31/2006 10:03:38 PM,41.745114697,-87.662237556,"(41.745114697, -87.662237556)" -1578082,G329156,06/07/2001 10:12:00 AM,044XX S PRAIRIE AV,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,0221,,,,16,1178743,1875622,2001,03/31/2006 10:03:38 PM,41.81400729,-87.619868879,"(41.81400729, -87.619868879)" -1571732,G328612,06/06/2001 11:44:24 PM,008XX N KEDZIE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,GOVERNMENT BUILDING/PROPERTY,false,false,1311,,,,14,1154933,1905177,2001,03/31/2006 10:03:38 PM,41.895618826,-87.706414892,"(41.895618826, -87.706414892)" -1567115,G328913,06/06/2001 08:00:00 PM,012XX N HOYNE AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1424,,,,07,1162128,1908545,2001,03/31/2006 10:03:38 PM,41.904713572,-87.679895073,"(41.904713572, -87.679895073)" -1566847,G328419,06/06/2001 06:51:00 PM,033XX W JACKSON BL,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1134,,,,26,1154395,1898458,2001,03/31/2006 10:03:38 PM,41.877191993,-87.708570516,"(41.877191993, -87.708570516)" -1601738,G370801,06/04/2001 06:00:00 PM,022XX W BERTEAU AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1912,,,,07,1160922,1927898,2001,03/31/2006 10:03:38 PM,41.95784458,-87.683786492,"(41.95784458, -87.683786492)" -1569479,G321218,06/03/2001 04:42:22 PM,023XX W SHAKESPEARE AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1432,,,,18,1160671,1914382,2001,03/31/2006 10:03:38 PM,41.920761064,-87.685085005,"(41.920761064, -87.685085005)" -1580475,G345405,06/03/2001 04:00:00 PM,078XX S ELLIS AV,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0624,,,,14,1184291,1853236,2001,03/31/2006 10:03:38 PM,41.752449956,-87.600218675,"(41.752449956, -87.600218675)" -1562630,G320144,06/03/2001 12:45:00 AM,069XX S WINCHESTER AV,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0735,,,,08B,1164597,1858527,2001,03/31/2006 10:03:38 PM,41.767407035,-87.672239791,"(41.767407035, -87.672239791)" -1567823,G320098,06/03/2001 12:06:11 AM,076XX S KING DR,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0623,,,,14,1180277,1854121,2001,03/31/2006 10:03:38 PM,41.75497141,-87.614901062,"(41.75497141, -87.614901062)" -847,G317944,06/02/2001 08:45:00 PM,015XX W CHESTNUT ST,0110,HOMICIDE,FIRST DEGREE MURDER,STREET,true,false,1323,012,1,24,01A,1165823,1906051,2001,08/25/2009 02:50:36 PM,41.897791825,-87.66639352,"(41.897791825, -87.66639352)" -1563782,G319804,06/02/2001 08:20:00 PM,068XX S ELIZABETH ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0724,,,,08B,1169211,1859326,2001,03/31/2006 10:03:38 PM,41.769501031,-87.655304405,"(41.769501031, -87.655304405)" -1566445,G319643,06/02/2001 07:11:52 PM,019XX S KEELER AV,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,true,false,1012,,,,18,1148732,1890218,2001,03/31/2006 10:03:38 PM,41.854691681,-87.72957638,"(41.854691681, -87.72957638)" -1562284,G319827,06/02/2001 06:00:00 PM,057XX S CICERO AV,0820,THEFT,$500 AND UNDER,AIRPORT/AIRCRAFT,false,false,0813,,,,06,1145592,1866396,2001,12/04/2014 12:43:35 PM,41.789380622,-87.741703718,"(41.789380622, -87.741703718)" -1566063,G318175,06/02/2001 03:00:00 AM,049XX W CHICAGO AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1531,,,,08B,1143323,1904821,2001,03/31/2006 10:03:38 PM,41.894866796,-87.749065092,"(41.894866796, -87.749065092)" -1558993,G315951,06/01/2001 05:30:00 AM,040XX N KENMORE AV,0820,THEFT,$500 AND UNDER,ALLEY,false,false,2322,,,,06,1168392,1927454,2001,12/04/2014 12:43:35 PM,41.95646757,-87.656337229,"(41.95646757, -87.656337229)" -1556205,G314109,05/31/2001 09:40:00 AM,063XX S MAPLEWOOD AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0825,,,,07,1160418,1862675,2001,03/31/2006 10:03:38 PM,41.778876858,-87.687443512,"(41.778876858, -87.687443512)" -1554116,G311772,05/29/2001 11:30:00 PM,064XX N ROCKWELL ST,0820,THEFT,$500 AND UNDER,STREET,false,false,2412,,,,06,1157774,1942863,2001,12/04/2014 12:43:35 PM,41.998974153,-87.694949617,"(41.998974153, -87.694949617)" -1554079,G310825,05/29/2001 07:30:00 PM,013XX W 47 ST,0850,THEFT,ATTEMPT THEFT,OTHER,true,false,0921,,,,06,1168264,1873560,2001,03/31/2006 10:03:38 PM,41.808581251,-87.658366065,"(41.808581251, -87.658366065)" -1556090,G310106,05/29/2001 02:45:00 PM,103XX S MICHIGAN AV,0820,THEFT,$500 AND UNDER,DRUG STORE,true,false,0512,,,,06,1178931,1836694,2001,12/04/2014 12:43:35 PM,41.707180296,-87.620362752,"(41.707180296, -87.620362752)" -1557804,G309696,05/29/2001 11:30:00 AM,049XX S STATE ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,CHA PARKING LOT/GROUNDS,true,false,0231,,,,04B,1177075,1872016,2001,03/31/2006 10:03:38 PM,41.804149939,-87.62609605,"(41.804149939, -87.62609605)" -1554907,G312488,05/29/2001 10:30:00 AM,042XX N MILWAUKEE AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1624,,,,14,1142373,1927657,2001,03/31/2006 10:03:38 PM,41.957548816,-87.751985595,"(41.957548816, -87.751985595)" -1552437,G308260,05/28/2001 05:40:00 PM,042XX S ELLIS AV,0560,ASSAULT,SIMPLE,SIDEWALK,false,false,2123,,,,08A,1183680,1876903,2001,03/31/2006 10:03:38 PM,41.81740854,-87.601719735,"(41.81740854, -87.601719735)" -1555690,G308070,05/28/2001 04:00:00 PM,038XX W HURON ST,0460,BATTERY,SIMPLE,STREET,false,true,1112,,,,08B,1150279,1904431,2001,03/31/2006 10:03:38 PM,41.89366377,-87.723527553,"(41.89366377, -87.723527553)" -1553324,G306598,05/27/2001 07:45:00 PM,014XX W 13 ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,true,false,1231,,,,26,1166838,1894194,2001,03/31/2006 10:03:38 PM,41.865233593,-87.663005702,"(41.865233593, -87.663005702)" -1617711,G394178,05/27/2001 05:12:00 PM,002XX N LA SALLE ST,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",PARKING LOT/GARAGE(NON.RESID.),false,false,0113,,,,11,1175139,1901763,2001,03/31/2006 10:03:38 PM,41.885821495,-87.6323058,"(41.885821495, -87.6323058)" -1549252,G304155,05/26/2001 02:00:00 PM,027XX E 76 ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0421,,,,08B,1195835,1855198,2001,03/31/2006 10:03:38 PM,41.757556115,-87.557850794,"(41.757556115, -87.557850794)" -1553536,G302193,05/25/2001 03:47:25 PM,072XX S WENTWORTH AV,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,true,false,0731,,,,18,1176181,1856604,2001,03/31/2006 10:03:38 PM,41.761877933,-87.629837248,"(41.761877933, -87.629837248)" -1548695,G301874,05/25/2001 12:50:00 PM,066XX S DAMEN AV,0560,ASSAULT,SIMPLE,STREET,false,true,0726,,,,08A,1164206,1860834,2001,03/31/2006 10:03:38 PM,41.773745995,-87.673608114,"(41.773745995, -87.673608114)" -1554715,G300698,05/24/2001 07:55:00 PM,034XX S LA SALLE ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0924,,,,18,1175920,1882479,2001,03/31/2006 10:03:38 PM,41.832887336,-87.630017923,"(41.832887336, -87.630017923)" -1545873,G300656,05/24/2001 05:00:00 PM,021XX E 69 ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,0331,,,,26,1191694,1859677,2001,03/31/2006 10:03:38 PM,41.769948277,-87.5728816,"(41.769948277, -87.5728816)" -1553802,G299298,05/24/2001 10:42:52 AM,048XX W SUPERIOR ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1531,,,,18,1144105,1904488,2001,03/31/2006 10:03:38 PM,41.893938357,-87.746201355,"(41.893938357, -87.746201355)" -1546814,G297588,05/23/2001 02:20:00 PM,112XX S WALLACE ST,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",true,false,2233,,,,08A,1174272,1830372,2001,03/31/2006 10:03:38 PM,41.689936366,-87.637610961,"(41.689936366, -87.637610961)" -1542479,G296090,05/22/2001 07:30:00 PM,016XX S KEDVALE AV,1330,CRIMINAL TRESPASS,TO LAND,ABANDONED BUILDING,true,false,1012,,,,26,1149026,1891547,2001,03/31/2006 10:03:38 PM,41.858332944,-87.728462902,"(41.858332944, -87.728462902)" -1545877,G297668,05/22/2001 03:15:00 PM,066XX S ELLIS AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0321,,,,08B,1183993,1861055,2001,03/31/2006 10:03:38 PM,41.773913017,-87.601066784,"(41.773913017, -87.601066784)" -1538441,G290719,05/20/2001 12:33:50 PM,101XX S LUELLA AV,0460,BATTERY,SIMPLE,STREET,true,true,0431,,,,08B,1193126,1838291,2001,03/31/2006 10:03:38 PM,41.711228361,-87.568329462,"(41.711228361, -87.568329462)" -1542813,G290927,05/19/2001 01:00:00 AM,056XX W IRVING PARK RD,0460,BATTERY,SIMPLE,STREET,false,true,1624,,,,08B,1138281,1926078,2001,03/31/2006 10:03:38 PM,41.953291079,-87.767067692,"(41.953291079, -87.767067692)" -1538615,G292271,05/18/2001 11:00:00 PM,020XX N WINCHESTER AV,0810,THEFT,OVER $500,STREET,false,false,1432,,,,06,1163001,1913346,2001,12/04/2014 12:43:35 PM,41.91786956,-87.676553252,"(41.91786956, -87.676553252)" -1536378,G285623,05/17/2001 10:10:00 PM,006XX W 61 ST,0460,BATTERY,SIMPLE,APARTMENT,false,false,0711,,,,08B,1172824,1864472,2001,03/31/2006 10:03:38 PM,41.783543326,-87.641909151,"(41.783543326, -87.641909151)" -1534150,G283560,05/17/2001 03:00:00 AM,065XX S TALMAN AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,0831,,,,08B,1159874,1861156,2001,03/31/2006 10:03:38 PM,41.774719702,-87.689479567,"(41.774719702, -87.689479567)" -1532666,G283476,05/16/2001 11:15:00 PM,037XX S FEDERAL ST,1340,CRIMINAL DAMAGE,TO STATE SUP PROP,CHA APARTMENT,false,false,0211,,,,14,1176242,1880053,2001,03/31/2006 10:03:38 PM,41.826222952,-87.628909449,"(41.826222952, -87.628909449)" -1533771,G282643,05/16/2001 05:06:31 PM,002XX S RIVERSIDE PZ,0560,ASSAULT,SIMPLE,COMMERCIAL / BUSINESS OFFICE,false,false,0111,,,,08A,1173452,1899110,2001,03/31/2006 10:03:38 PM,41.878579147,-87.638579626,"(41.878579147, -87.638579626)" -1532188,G282715,05/15/2001 07:30:00 PM,033XX N OAKLEY AV,0810,THEFT,OVER $500,OTHER,false,false,1913,,,,06,1160479,1922374,2001,12/04/2014 12:43:35 PM,41.942695615,-87.685568599,"(41.942695615, -87.685568599)" -1532903,G279107,05/15/2001 07:30:00 AM,066XX S YALE AV,0820,THEFT,$500 AND UNDER,STREET,false,false,0722,,,,06,1175611,1860858,2001,12/04/2014 12:43:35 PM,41.773564165,-87.631799184,"(41.773564165, -87.631799184)" -1540796,G278759,05/14/2001 09:03:15 PM,031XX W WARREN BV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1331,,,,18,1155263,1900140,2001,03/31/2006 10:03:38 PM,41.881790189,-87.705338264,"(41.881790189, -87.705338264)" -1525878,G274578,05/12/2001 09:03:42 PM,008XX E 133 ST,1200,DECEPTIVE PRACTICE,STOLEN PROP: BUY/RECEIVE/POS.,CHA PARKING LOT/GROUNDS,false,false,0533,,,,13,1184100,1817474,2001,03/31/2006 10:03:38 PM,41.654318979,-87.602031457,"(41.654318979, -87.602031457)" -1527494,G273660,05/12/2001 12:38:21 PM,027XX W JACKSON BV,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,false,false,1125,,,,03,1158288,1898543,2001,03/31/2006 10:03:38 PM,41.87734659,-87.694274165,"(41.87734659, -87.694274165)" -1533728,G272729,05/11/2001 09:50:31 PM,046XX S CALUMET AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0222,,,,18,1179176,1874210,2001,03/31/2006 10:03:38 PM,41.810122767,-87.618323704,"(41.810122767, -87.618323704)" -1523675,G261748,05/11/2001 02:40:00 PM,002XX N PINE AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1523,,,,08B,1139494,1901274,2001,03/31/2006 10:03:38 PM,41.885204076,-87.763214719,"(41.885204076, -87.763214719)" -1522419,G269985,05/10/2001 06:15:00 PM,083XX S BOND AV,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0424,,,,14,1198652,1849641,2001,03/31/2006 10:03:38 PM,41.742237174,-87.547713057,"(41.742237174, -87.547713057)" -1522006,G269771,05/10/2001 02:30:00 PM,025XX W 43 ST,0460,BATTERY,SIMPLE,ALLEY,false,false,0914,,,,08B,1160323,1876035,2001,03/31/2006 10:03:38 PM,41.815540405,-87.687423768,"(41.815540405, -87.687423768)" -1523969,G269178,05/10/2001 12:26:34 PM,064XX N RIDGE BL,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,false,false,2412,,,,08B,1162486,1943020,2001,03/31/2006 10:03:38 PM,41.999307258,-87.677611129,"(41.999307258, -87.677611129)" -1520765,G267349,05/09/2001 04:03:07 PM,052XX S PULASKI RD,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,RESTAURANT,true,false,0822,,,,11,1150623,1869757,2001,03/31/2006 10:03:38 PM,41.79850723,-87.723168923,"(41.79850723, -87.723168923)" -1520634,G265738,05/08/2001 08:00:00 AM,035XX N DAMEN AV,0820,THEFT,$500 AND UNDER,STREET,false,false,1913,,,,06,1162339,1923788,2001,12/04/2014 12:43:35 PM,41.946536936,-87.678692536,"(41.946536936, -87.678692536)" -1519581,G263961,05/08/2001 05:00:00 AM,053XX W CHICAGO AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,false,false,1524,,,,07,1140544,1904774,2001,03/31/2006 10:03:38 PM,41.894789299,-87.759272895,"(41.894789299, -87.759272895)" -1518503,G262804,05/07/2001 04:00:00 PM,006XX E 75 ST,0820,THEFT,$500 AND UNDER,CLEANING STORE,false,false,0323,,,,06,1182083,1855473,2001,12/04/2014 12:43:35 PM,41.758639864,-87.608240882,"(41.758639864, -87.608240882)" -1516934,G260452,05/06/2001 10:30:00 AM,024XX W LAWRENCE AV,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,2031,,,,04A,1159482,1931851,2001,03/31/2006 10:03:38 PM,41.968721647,-87.688971139,"(41.968721647, -87.688971139)" -1515823,G261259,05/06/2001 12:01:00 AM,081XX S MARYLAND AV,0810,THEFT,OVER $500,STREET,false,false,0631,,,,06,1183366,1850946,2001,12/04/2014 12:43:35 PM,41.746187534,-87.603679534,"(41.746187534, -87.603679534)" -1523014,G256103,05/04/2001 03:14:57 PM,0000X S STATE ST,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,0123,,,,06,1176418,1900379,2001,12/04/2014 12:43:35 PM,41.881994955,-87.62765089,"(41.881994955, -87.62765089)" -1514082,G256452,05/04/2001 11:00:00 AM,046XX N DOVER ST,0810,THEFT,OVER $500,RESIDENCE,false,false,2311,,,,06,1165908,1930811,2001,12/04/2014 12:43:35 PM,41.965732798,-87.665372822,"(41.965732798, -87.665372822)" -1515500,G254742,05/03/2001 10:35:00 PM,054XX N LINCOLN AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,2011,,,,18,1158363,1936334,2001,03/31/2006 10:03:38 PM,41.981046237,-87.69296245,"(41.981046237, -87.69296245)" -1510705,G254667,05/03/2001 10:00:00 PM,062XX N LINCOLN AV,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,1711,,,,06,1152513,1941309,2001,12/04/2014 12:43:35 PM,41.994815901,-87.714344716,"(41.994815901, -87.714344716)" -1508976,G249256,05/01/2001 03:40:00 PM,038XX W THOMAS ST,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1112,,,,08B,1150781,1907026,2001,03/31/2006 10:03:38 PM,41.900774907,-87.721615912,"(41.900774907, -87.721615912)" -1508188,G248972,05/01/2001 12:50:00 PM,064XX S CICERO AV,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),false,false,0813,,,,14,1145456,1861294,2001,03/31/2006 10:03:38 PM,41.775382452,-87.742330975,"(41.775382452, -87.742330975)" -1508244,G248546,05/01/2001 10:00:00 AM,014XX N PARKSIDE AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2531,,,,08B,1138363,1909089,2001,03/31/2006 10:03:38 PM,41.906669949,-87.767178638,"(41.906669949, -87.767178638)" -1503704,G246662,04/30/2001 01:30:00 PM,071XX S RIDGELAND AV,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,false,false,0324,,,,04A,1189147,1857902,2001,03/31/2006 10:03:38 PM,41.765138947,-87.582274472,"(41.765138947, -87.582274472)" -1501778,G244751,04/29/2001 04:24:40 PM,043XX N HERMITAGE AV,0820,THEFT,$500 AND UNDER,OTHER,false,false,1922,,,,06,1164052,1928992,2001,12/04/2014 12:43:35 PM,41.960780886,-87.672248535,"(41.960780886, -87.672248535)" -1504349,G244488,04/29/2001 01:30:00 PM,071XX S UNION AV,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0732,,,,08B,1173032,1857218,2001,03/31/2006 10:03:38 PM,41.763632914,-87.641360544,"(41.763632914, -87.641360544)" -1504161,G244305,04/29/2001 12:09:20 PM,018XX W 62 ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0714,,,,06,1164859,1863595,2001,12/04/2014 12:43:35 PM,41.78130877,-87.671136408,"(41.78130877, -87.671136408)" -1505523,G250011,04/28/2001 12:00:00 PM,012XX W WEBSTER AV,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,false,false,1811,,,,26,1167530,1914798,2001,03/31/2006 10:03:38 PM,41.921757548,-87.659871669,"(41.921757548, -87.659871669)" -1499308,G241122,04/27/2001 08:42:23 PM,011XX W ERIE ST,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,CHA PARKING LOT/GROUNDS,false,false,1323,,,,26,1168508,1904469,2001,03/31/2006 10:03:38 PM,41.893393012,-87.656577678,"(41.893393012, -87.656577678)" -1501402,G240286,04/27/2001 02:20:00 PM,061XX S VERNON AV,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,false,true,0313,,,,08A,1180274,1864034,2001,03/31/2006 10:03:38 PM,41.782173772,-87.614608486,"(41.782173772, -87.614608486)" -1497563,G239281,04/27/2001 03:20:00 AM,084XX S STONY ISLAND AV,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0412,,,,04B,1188236,1849158,2001,03/31/2006 10:03:38 PM,41.741166381,-87.585891938,"(41.741166381, -87.585891938)" -1510116,G237044,04/26/2001 03:16:11 AM,003XX S WESTERN AV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1125,,,,18,1160407,1898606,2001,03/31/2006 10:03:38 PM,41.877475908,-87.686492031,"(41.877475908, -87.686492031)" -1499710,G238275,04/25/2001 12:00:00 PM,077XX S OGLESBY AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,false,false,0414,,,,07,1193245,1854337,2001,03/31/2006 10:03:38 PM,41.755257138,-87.567370703,"(41.755257138, -87.567370703)" -1496439,G235179,04/25/2001 09:00:00 AM,102XX S WESTERN AV,0820,THEFT,$500 AND UNDER,GAS STATION,false,false,2211,,,,06,1162165,1836300,2001,12/04/2014 12:43:35 PM,41.706463618,-87.681770956,"(41.706463618, -87.681770956)" -1493884,G234567,04/24/2001 09:18:16 PM,079XX S KING DR,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,false,false,0623,,,,03,1180234,1852680,2001,03/31/2006 10:03:38 PM,41.751018132,-87.615102729,"(41.751018132, -87.615102729)" -1494279,G230706,04/22/2001 11:00:00 PM,026XX S WESTERN AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1034,,,,14,1160741,1886708,2001,03/31/2006 10:03:38 PM,41.844819703,-87.685595267,"(41.844819703, -87.685595267)" -1488198,G225703,04/20/2001 08:00:00 PM,047XX S HONORE ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0931,,,,08B,1164864,1872911,2001,03/31/2006 10:03:38 PM,41.806872918,-87.670854875,"(41.806872918, -87.670854875)" -1492311,G224688,04/20/2001 12:29:00 PM,066XX S COTTAGE GROVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0321,,,,18,1182666,1860980,2001,03/31/2006 10:03:38 PM,41.773738112,-87.605933571,"(41.773738112, -87.605933571)" -1490136,G227526,04/20/2001 01:30:00 AM,024XX N MILWAUKEE AV,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,OTHER,false,false,1414,,,,17,1156366,1915864,2001,03/31/2006 10:03:38 PM,41.924915997,-87.700862364,"(41.924915997, -87.700862364)" -1504475,G246658,04/19/2001 02:00:00 AM,014XX N KINGSBURY ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,1822,,,,04B,1170196,1909087,2001,03/31/2006 10:03:38 PM,41.906028384,-87.650243255,"(41.906028384, -87.650243255)" -1489053,G221304,04/18/2001 07:55:00 PM,069XX S PAXTON AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0331,,,,08B,1192128,1859015,2001,03/31/2006 10:03:38 PM,41.768121158,-87.57131227,"(41.768121158, -87.57131227)" -1482959,G219165,04/17/2001 07:30:00 PM,072XX S CARPENTER ST,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,false,false,0733,,,,08B,1170521,1856957,2001,03/31/2006 10:03:38 PM,41.762971759,-87.650571472,"(41.762971759, -87.650571472)" -1481652,G218119,04/17/2001 10:45:51 AM,012XX W VAN BUREN ST,0460,BATTERY,SIMPLE,STREET,false,false,1213,,,,08B,1167895,1898342,2001,03/31/2006 10:03:38 PM,41.876593323,-87.659005818,"(41.876593323, -87.659005818)" -1483182,G218129,04/17/2001 10:30:00 AM,002XX S CICERO AV,4651,OTHER OFFENSE,SEX OFFENDER: FAIL REG NEW ADD,SIDEWALK,true,false,1533,,,,26,1144376,1898796,2001,03/31/2006 10:03:38 PM,41.878313744,-87.745349287,"(41.878313744, -87.745349287)" -1492033,G217357,04/16/2001 09:19:49 PM,012XX N WASHTENAW AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1423,,,,18,1158219,1907890,2001,03/31/2006 10:03:38 PM,41.902997009,-87.694271912,"(41.902997009, -87.694271912)" -1490646,G216951,04/16/2001 05:45:00 PM,025XX N LOCKWOOD AV,0460,BATTERY,SIMPLE,APARTMENT,false,true,2515,,,,08B,1140662,1916374,2001,03/31/2006 10:03:38 PM,41.926618841,-87.758554009,"(41.926618841, -87.758554009)" -1480247,G216912,04/16/2001 05:28:04 PM,022XX S WESTERN AV,0560,ASSAULT,SIMPLE,CLEANING STORE,false,true,1034,,,,08A,1160684,1888780,2001,03/31/2006 10:03:38 PM,41.85050667,-87.685747109,"(41.85050667, -87.685747109)" -1480269,G216932,04/16/2001 05:05:00 PM,062XX S KING DR,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,APARTMENT,false,false,0312,,,,17,1179958,1863504,2001,03/31/2006 10:03:38 PM,41.780726643,-87.615783232,"(41.780726643, -87.615783232)" -1479997,G216385,04/16/2001 01:30:00 PM,078XX S CORNELL AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0411,,,,08B,1188558,1853329,2001,03/31/2006 10:03:38 PM,41.75260432,-87.584579186,"(41.75260432, -87.584579186)" -1477215,G213510,04/14/2001 09:38:25 PM,048XX W NORTH AV,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,2533,,,,06,1143859,1910159,2001,12/04/2014 12:43:35 PM,41.90950483,-87.746962481,"(41.90950483, -87.746962481)" -1490079,G213205,04/14/2001 06:33:48 PM,074XX S BLACKSTONE AV,0460,BATTERY,SIMPLE,STREET,false,false,0324,,,,08B,1187452,1856012,2001,03/31/2006 10:03:38 PM,41.759993062,-87.588547039,"(41.759993062, -87.588547039)" -1477478,G212878,04/14/2001 03:00:00 PM,013XX E 47 ST,0820,THEFT,$500 AND UNDER,GROCERY FOOD STORE,true,false,2123,,,,06,1185546,1874136,2001,12/04/2014 12:43:35 PM,41.809771899,-87.594962029,"(41.809771899, -87.594962029)" -1477168,G212868,04/14/2001 03:00:00 PM,054XX S RICHMOND ST,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0911,,,,08B,1157674,1868434,2001,03/31/2006 10:03:38 PM,41.794736484,-87.697347144,"(41.794736484, -87.697347144)" -1484754,G222265,04/14/2001 02:00:00 PM,009XX N WALLER AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,1511,,,,07,1138136,1906000,2001,03/31/2006 10:03:38 PM,41.898197466,-87.76808728,"(41.898197466, -87.76808728)" -1481174,G211864,04/14/2001 02:00:00 AM,037XX W 63 ST,2022,NARCOTICS,POSS: COCAINE,STREET,true,false,0823,,,,18,1152342,1862608,2001,03/31/2006 10:03:38 PM,41.778855641,-87.717052854,"(41.778855641, -87.717052854)" -1474618,G208828,04/12/2001 05:04:00 PM,011XX W 111 ST,0460,BATTERY,SIMPLE,STREET,false,false,2234,,,,08B,1170937,1831154,2001,03/31/2006 10:03:38 PM,41.692155565,-87.649797744,"(41.692155565, -87.649797744)" -1486248,G208387,04/12/2001 01:50:00 PM,074XX N GREENVIEW AV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,2422,,,,18,1164961,1949509,2001,03/31/2006 10:03:38 PM,42.017060828,-87.668320874,"(42.017060828, -87.668320874)" -1474976,G209851,04/12/2001 12:14:00 PM,044XX S TALMAN AV,0560,ASSAULT,SIMPLE,VEHICLE NON-COMMERCIAL,false,false,0912,,,,08A,1159399,1875233,2001,03/31/2006 10:03:38 PM,41.813358626,-87.690835177,"(41.813358626, -87.690835177)" -1476349,G209093,04/12/2001 05:00:00 AM,020XX S STATE ST,0460,BATTERY,SIMPLE,CHA APARTMENT,false,true,2111,,,,08B,1176604,1890373,2001,03/31/2006 10:03:38 PM,41.854533666,-87.627270111,"(41.854533666, -87.627270111)" -1474373,G207441,04/12/2001 01:24:26 AM,038XX N LAKEWOOD AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1923,,,,08B,1166901,1925694,2001,03/31/2006 10:03:38 PM,41.951670248,-87.661869204,"(41.951670248, -87.661869204)" -1490370,G207350,04/11/2001 11:50:00 PM,059XX W PATTERSON AV,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,ALLEY,true,false,1633,,,,22,1136042,1923619,2001,03/31/2006 10:03:38 PM,41.946583634,-87.775357419,"(41.946583634, -87.775357419)" -1480206,G202948,04/09/2001 11:44:08 PM,039XX W ARTHINGTON ST,2027,NARCOTICS,POSS: CRACK,SIDEWALK,true,false,1132,,,,18,1150137,1895781,2001,03/31/2006 10:03:38 PM,41.86992999,-87.724274534,"(41.86992999, -87.724274534)" -1471135,G202838,04/09/2001 09:54:42 PM,088XX S INDIANA AV,1310,CRIMINAL DAMAGE,TO PROPERTY,"SCHOOL, PUBLIC, GROUNDS",false,false,0632,,,,14,1179172,1846656,2001,03/31/2006 10:03:38 PM,41.734511826,-87.619177591,"(41.734511826, -87.619177591)" -1467116,G200181,04/08/2001 07:15:00 PM,054XX S ABERDEEN ST,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,false,false,0934,,,,04B,1169949,1868657,2001,03/31/2006 10:03:38 PM,41.795090404,-87.652328347,"(41.795090404, -87.652328347)" -1465602,G196648,04/07/2001 02:32:21 AM,079XX S LAFAYETTE AV,0560,ASSAULT,SIMPLE,STREET,false,false,0623,,,,08A,1177269,1852609,2001,03/31/2006 10:03:38 PM,41.750890705,-87.625970021,"(41.750890705, -87.625970021)" -1466691,G194842,04/06/2001 02:40:00 PM,034XX N MAJOR AV,041B,BATTERY,AGGRAVATED: OTHER FIREARM,STREET,false,false,1633,,,,04B,1137794,1922326,2001,03/31/2006 10:03:38 PM,41.943004033,-87.768948794,"(41.943004033, -87.768948794)" -1463114,G194870,04/06/2001 08:00:00 AM,014XX S KOSTNER AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,true,1011,,,,26,1147327,1892627,2001,03/31/2006 10:03:38 PM,41.861329275,-87.734671729,"(41.861329275, -87.734671729)" -1459497,G189157,04/03/2001 04:50:00 PM,119XX S PRINCETON AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0522,,,,14,1176400,1825387,2001,03/31/2006 10:03:38 PM,41.676209336,-87.62996933,"(41.676209336, -87.62996933)" -1460552,G190565,04/03/2001 09:30:00 AM,012XX W BARRY AV,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,false,false,1932,,,,05,1167491,1920757,2001,03/31/2006 10:03:38 PM,41.938110195,-87.65984298,"(41.938110195, -87.65984298)" -1459087,G189335,04/03/2001 08:30:00 AM,047XX S WESTERN AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,true,false,0915,,,,05,1161367,1872983,2001,03/31/2006 10:03:38 PM,41.807143747,-87.683678807,"(41.807143747, -87.683678807)" -1456493,G187505,04/02/2001 09:45:00 PM,031XX W NORTH AV,0820,THEFT,$500 AND UNDER,STREET,false,false,1421,,,,06,1154763,1910498,2001,12/04/2014 12:43:35 PM,41.910223539,-87.706896556,"(41.910223539, -87.706896556)" -1462476,G190453,04/02/2001 08:00:00 PM,037XX W DICKENS AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,2525,,,,07,1151336,1913740,2001,03/31/2006 10:03:38 PM,41.919187874,-87.719400832,"(41.919187874, -87.719400832)" -1467694,G186913,04/02/2001 05:05:00 PM,048XX W CONCORD PL,0460,BATTERY,SIMPLE,RESIDENCE,false,true,2533,,,,08B,1143457,1910563,2001,03/31/2006 10:03:38 PM,41.910620981,-87.748429152,"(41.910620981, -87.748429152)" -1457480,G185112,04/01/2001 07:30:00 PM,053XX W MONROE ST,0460,BATTERY,SIMPLE,OTHER,false,true,1522,,,,08B,1140736,1899182,2001,03/31/2006 10:03:38 PM,41.87944063,-87.758705253,"(41.87944063, -87.758705253)" -1547715,G302632,04/01/2001 12:00:00 AM,018XX S SPRINGFIELD AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1014,,,,26,1150721,1890982,2001,03/31/2006 10:03:38 PM,41.85674958,-87.722255886,"(41.85674958, -87.722255886)" -1454451,G184503,03/31/2001 12:30:00 AM,041XX S ROCKWELL ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0912,,,,06,1159671,1877343,2001,12/04/2014 12:43:35 PM,41.819143141,-87.689779497,"(41.819143141, -87.689779497)" -1459326,G181415,03/30/2001 09:42:51 PM,026XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1331,,,,18,1158676,1899953,2001,03/31/2006 10:03:38 PM,41.881207826,-87.692810896,"(41.881207826, -87.692810896)" -1468186,G179699,03/30/2001 04:37:33 AM,060XX W WELLINGTON AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2511,,,,14,1135522,1919353,2001,03/31/2006 10:03:38 PM,41.934886545,-87.777370512,"(41.934886545, -87.777370512)" -1448638,G174386,03/27/2001 04:22:03 PM,042XX W 18 ST,142B,WEAPONS VIOLATION,UNLAWFUL SALE OTHER FIREARM,SIDEWALK,true,false,1012,,,,15,1148477,1891003,2001,03/31/2006 10:03:38 PM,41.856850736,-87.730492119,"(41.856850736, -87.730492119)" -1452130,G174427,03/27/2001 12:30:00 PM,002XX N CENTRAL AV,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",false,false,1512,,,,06,1138959,1901197,2001,12/04/2014 12:43:35 PM,41.885002514,-87.765181234,"(41.885002514, -87.765181234)" -1447725,G172546,03/26/2001 07:00:00 PM,006XX W DIVISION ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA APARTMENT,true,false,1822,,,,26,1171830,1908290,2001,03/31/2006 10:03:38 PM,41.903805509,-87.644264537,"(41.903805509, -87.644264537)" -1467354,G168915,03/24/2001 10:30:00 PM,035XX S FEDERAL ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,0211,,,,18,1176254,1881288,2001,03/31/2006 10:03:38 PM,41.829611625,-87.628828268,"(41.829611625, -87.628828268)" -1439726,G166215,03/23/2001 04:00:00 PM,113XX S EDBROOKE AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0531,,,,08B,1179192,1829519,2001,03/31/2006 10:03:38 PM,41.687485157,-87.619624701,"(41.687485157, -87.619624701)" -1439766,G166216,03/23/2001 03:38:00 PM,014XX N CICERO AV,0320,ROBBERY,STRONGARM - NO WEAPON,CHA PARKING LOT/GROUNDS,false,false,2533,,,,03,1144070,1909425,2001,03/31/2006 10:03:38 PM,41.907486694,-87.746205806,"(41.907486694, -87.746205806)" -1437557,G161730,03/21/2001 03:10:00 PM,062XX N HAMLIN AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,1711,,,,08B,1149868,1940981,2001,03/31/2006 10:03:38 PM,41.993967902,-87.724082918,"(41.993967902, -87.724082918)" -1447645,G161307,03/21/2001 01:30:00 PM,119XX S LOWE AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0524,,,,18,1174097,1825418,2001,03/31/2006 10:03:38 PM,41.676345684,-87.638397933,"(41.676345684, -87.638397933)" -1449408,G161265,03/21/2001 10:30:00 AM,049XX S WABASH AV,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0231,,,,08A,1177513,1872170,2001,03/31/2006 10:03:38 PM,41.804562628,-87.624485028,"(41.804562628, -87.624485028)" -1436732,G160516,03/21/2001 06:05:00 AM,012XX W COLUMBIA AV,0820,THEFT,$500 AND UNDER,STREET,true,false,2432,,,,06,1166991,1944918,2001,12/04/2014 12:43:35 PM,42.00441954,-87.660983698,"(42.00441954, -87.660983698)" -1436905,G160469,03/21/2001 03:51:12 AM,035XX W 63 ST,0460,BATTERY,SIMPLE,STREET,false,false,0823,,,,08B,1153981,1862575,2001,03/31/2006 10:03:38 PM,41.778732694,-87.711044957,"(41.778732694, -87.711044957)" -1443933,G163293,03/20/2001 09:20:00 PM,074XX S MERRILL AV,0820,THEFT,$500 AND UNDER,STREET,false,false,0333,,,,06,1191888,1855734,2001,12/04/2014 12:43:35 PM,41.759123666,-87.572298368,"(41.759123666, -87.572298368)" -1434829,G159774,03/20/2001 07:10:00 PM,045XX N HAZEL ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,2313,,,,14,1169483,1930443,2001,03/31/2006 10:03:38 PM,41.964645764,-87.652239112,"(41.964645764, -87.652239112)" -1439370,G158868,03/20/2001 12:14:16 PM,052XX W NORTH AV,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,2532,,,,16,1141077,1910172,2001,03/31/2006 10:03:38 PM,41.909592236,-87.757182157,"(41.909592236, -87.757182157)" -1434229,G156720,03/18/2001 11:30:00 PM,0000X E 75 ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0323,,,,14,1178204,1855347,2001,03/31/2006 10:03:38 PM,41.758382945,-87.622460845,"(41.758382945, -87.622460845)" -1431983,G153956,03/18/2001 01:50:00 AM,058XX N CAMPBELL AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,2011,,,,05,1158556,1938936,2001,03/31/2006 10:03:38 PM,41.988182277,-87.692181023,"(41.988182277, -87.692181023)" -1429858,G153702,03/17/2001 08:30:00 PM,069XX N GLENWOOD AV,031A,ROBBERY,ARMED: HANDGUN,SIDEWALK,false,false,2431,,,,03,1165528,1946220,2001,03/31/2006 10:03:38 PM,42.008023652,-87.666328766,"(42.008023652, -87.666328766)" -1429045,G152067,03/17/2001 02:00:00 AM,009XX W NEWPORT AV,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,2331,,,,14,1169486,1923054,2001,03/31/2006 10:03:38 PM,41.944370017,-87.65244393,"(41.944370017, -87.65244393)" -1429449,G152865,03/16/2001 10:00:00 PM,047XX N KILPATRICK AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,1722,,,,14,1144209,1931300,2001,03/31/2006 10:03:38 PM,41.967511128,-87.745143848,"(41.967511128, -87.745143848)" -1429965,G153084,03/16/2001 09:00:00 PM,065XX N WASHTENAW AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,2412,,,,14,1157099,1943280,2001,03/31/2006 10:03:38 PM,42.0001322,-87.697421357,"(42.0001322, -87.697421357)" -1429036,G150163,03/16/2001 09:16:44 AM,014XX W GARFIELD BL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,true,false,0933,,,,14,1167476,1868309,2001,03/31/2006 10:03:38 PM,41.794188853,-87.66140683,"(41.794188853, -87.66140683)" -1431846,G150260,03/15/2001 02:25:00 PM,024XX N KOSTNER AV,0460,BATTERY,SIMPLE,SIDEWALK,false,false,2524,,,,08B,1146663,1916245,2001,03/31/2006 10:03:38 PM,41.926152351,-87.736506102,"(41.926152351, -87.736506102)" -1429275,G148362,03/15/2001 11:59:25 AM,030XX S DR MARTN LUTHR KING JR DR,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2112,,,,08B,1179262,1885167,2001,03/31/2006 10:03:38 PM,41.840187663,-87.617673503,"(41.840187663, -87.617673503)" -1425357,G146987,03/14/2001 05:55:00 PM,016XX W MARQUETTE RD,0560,ASSAULT,SIMPLE,ALLEY,false,false,0725,,,,08A,1166598,1860321,2001,03/31/2006 10:03:38 PM,41.772287568,-87.664854144,"(41.772287568, -87.664854144)" -1480348,G143189,03/12/2001 08:01:00 PM,109XX S RACINE AV,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,STREET,true,false,2234,,,,22,1170324,1831941,2001,03/31/2006 10:03:38 PM,41.694328546,-87.652019238,"(41.694328546, -87.652019238)" -1431896,G142993,03/12/2001 07:51:00 PM,107XX S EDBROOKE AV,2027,NARCOTICS,POSS: CRACK,STREET,true,false,0513,,,,18,1179099,1834018,2001,03/31/2006 10:03:38 PM,41.699833166,-87.619828729,"(41.699833166, -87.619828729)" -1421338,G142557,03/12/2001 04:24:06 PM,028XX N LEAVITT ST,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,1913,,,,06,1161731,1918772,2001,12/04/2014 12:43:35 PM,41.932785457,-87.681067642,"(41.932785457, -87.681067642)" -1421137,G142769,03/12/2001 08:00:00 AM,130XX S GREENWOOD AV,0620,BURGLARY,UNLAWFUL ENTRY,CHA APARTMENT,false,false,0533,,,,05,1185831,1818718,2001,03/31/2006 10:03:38 PM,41.657692223,-87.595658839,"(41.657692223, -87.595658839)" -1419480,G139643,03/11/2001 05:31:47 AM,057XX N LEONARD AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,true,false,1622,,,,05,1137747,1938468,2001,03/31/2006 10:03:38 PM,41.987300009,-87.768730585,"(41.987300009, -87.768730585)" -1420162,G141253,03/11/2001 01:30:00 AM,029XX W BELDEN AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,false,false,1414,,,,14,1156501,1915225,2001,03/31/2006 10:03:38 PM,41.923159798,-87.700383643,"(41.923159798, -87.700383643)" -1419186,G141247,03/10/2001 09:00:00 PM,039XX N ALBANY AV,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,false,false,1733,,,,07,1154980,1925945,2001,03/31/2006 10:03:38 PM,41.952606934,-87.705683963,"(41.952606934, -87.705683963)" -1417373,G137018,03/09/2001 08:44:39 PM,038XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,GAS STATION,false,false,1011,,,,08B,1151234,1894403,2001,03/31/2006 10:03:38 PM,41.866127172,-87.720283218,"(41.866127172, -87.720283218)" -1421316,G135487,03/09/2001 07:15:00 AM,035XX N MILWAUKEE AV,051B,ASSAULT,AGGRAVATED: OTHER FIREARM,PARKING LOT/GARAGE(NON.RESID.),false,false,1731,,,,04A,1147010,1923398,2001,03/31/2006 10:03:38 PM,41.945774186,-87.735047602,"(41.945774186, -87.735047602)" -1425247,G134359,03/08/2001 04:56:15 PM,133XX S LANGLEY AV,2027,NARCOTICS,POSS: CRACK,CHA PARKING LOT/GROUNDS,true,false,0533,,,,18,1183373,1817105,2001,03/31/2006 10:03:38 PM,41.653323281,-87.604702939,"(41.653323281, -87.604702939)" -1426082,G133111,03/08/2001 01:15:58 AM,007XX N PINE AV,2027,NARCOTICS,POSS: CRACK,OTHER,true,false,1524,,,,18,1139342,1904589,2001,03/31/2006 10:03:38 PM,41.894303621,-87.763692084,"(41.894303621, -87.763692084)" -1421756,G137414,03/05/2001 11:00:00 AM,077XX S EUCLID AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0414,,,,14,1190506,1854021,2001,03/31/2006 10:03:38 PM,41.754456486,-87.577418412,"(41.754456486, -87.577418412)" -1431498,G117564,03/05/2001 09:50:00 AM,008XX N TRUMBULL AV,2090,NARCOTICS,ALTER/FORGE PRESCRIPTION,STREET,true,false,1121,,,,18,1153177,1905645,2001,03/31/2006 10:03:38 PM,41.896938092,-87.712851879,"(41.896938092, -87.712851879)" -1422194,G125064,03/04/2001 02:15:00 AM,076XX N ROGERS AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2422,,,,18,1165187,1950533,2001,03/31/2006 10:03:38 PM,42.019865877,-87.66745994,"(42.019865877, -87.66745994)" -1408197,G125548,03/03/2001 09:00:00 PM,035XX N CLARK ST,0820,THEFT,$500 AND UNDER,BAR OR TAVERN,false,false,2331,,,,06,1168411,1924085,2001,12/04/2014 12:43:35 PM,41.94722249,-87.656365212,"(41.94722249, -87.656365212)" -1410982,G124346,03/03/2001 06:43:00 PM,036XX S MICHIGAN AV,0560,ASSAULT,SIMPLE,APARTMENT,false,true,0211,,,,08A,1177828,1881070,2001,03/31/2006 10:03:38 PM,41.82897785,-87.623059954,"(41.82897785, -87.623059954)" -1406864,G122316,03/02/2001 06:15:00 PM,048XX S ASHLAND AV,0460,BATTERY,SIMPLE,SMALL RETAIL STORE,true,false,0931,,,,08B,1166444,1872794,2001,03/31/2006 10:03:38 PM,41.80651829,-87.66506327,"(41.80651829, -87.66506327)" -1405220,G120634,03/01/2001 09:30:00 PM,065XX S UNION AV,0820,THEFT,$500 AND UNDER,STREET,false,false,0723,,,,06,1172600,1861265,2001,12/04/2014 12:43:35 PM,41.77474789,-87.642824826,"(41.77474789, -87.642824826)" -1404966,G119509,03/01/2001 10:16:00 AM,001XX N WABASH AV,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,CURRENCY EXCHANGE,false,false,0122,,,,26,1176749,1901418,2001,03/31/2006 10:03:38 PM,41.884838553,-87.626404048,"(41.884838553, -87.626404048)" -1404550,G119259,03/01/2001 12:01:00 AM,026XX W WASHINGTON BL,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,false,false,1331,,,,05,1158473,1900617,2001,03/31/2006 10:03:38 PM,41.883034059,-87.693538125,"(41.883034059, -87.693538125)" -1403867,G119213,03/01/2001 12:00:00 AM,076XX S LAFLIN ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,false,false,0612,,,,07,1167404,1853969,2001,03/31/2006 10:03:38 PM,41.754839607,-87.662081285,"(41.754839607, -87.662081285)" -1404200,G119542,02/28/2001 12:30:00 PM,031XX S DR MARTN LUTHR KING JR DR,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,2112,,,,08B,1179284,1884489,2001,03/31/2006 10:03:38 PM,41.83832668,-87.617613505,"(41.83832668, -87.617613505)" -1704552,G504298,02/28/2001 12:10:00 AM,113XX S EDBROOKE AV,1751,OFFENSE INVOLVING CHILDREN,CRIM SEX ABUSE BY FAM MEMBER,RESIDENCE,false,false,0531,,,,20,1179258,1829938,2001,01/14/2007 05:31:37 AM,41.688633453,-87.619370371,"(41.688633453, -87.619370371)" -1412121,G112510,02/25/2001 08:50:00 PM,045XX S FEDERAL ST,2090,NARCOTICS,ALTER/FORGE PRESCRIPTION,CHA HALLWAY/STAIRWELL/ELEVATOR,true,false,0221,,,,18,1176499,1874647,2001,03/31/2006 10:03:38 PM,41.811382632,-87.628129354,"(41.811382632, -87.628129354)" -1399247,G112334,02/25/2001 09:00:00 AM,027XX W LELAND AV,0820,THEFT,$500 AND UNDER,STREET,false,false,1911,,,,06,1157385,1931066,2001,12/04/2014 12:43:35 PM,41.966610583,-87.696703202,"(41.966610583, -87.696703202)" -1395413,G110579,02/24/2001 05:00:00 PM,031XX N CLARK ST,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,true,false,2332,,,,06,1170332,1920953,2001,12/04/2014 12:43:35 PM,41.938586306,-87.649396035,"(41.938586306, -87.649396035)" -1392294,G105659,02/21/2001 05:00:00 PM,031XX W ARMITAGE AV,0460,BATTERY,SIMPLE,RESTAURANT,true,false,1414,,,,08B,1154877,1913155,2001,03/31/2006 10:03:38 PM,41.917512287,-87.706406414,"(41.917512287, -87.706406414)" -1393424,G105093,02/21/2001 10:15:00 AM,099XX S CRANDON AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0431,,,,08B,1193433,1839450,2001,03/31/2006 10:03:38 PM,41.714401283,-87.56716741,"(41.714401283, -87.56716741)" -1429081,G144381,02/20/2001 02:00:00 PM,093XX S COLFAX AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,false,false,0423,,,,14,1195098,1843440,2001,03/31/2006 10:03:38 PM,41.725309394,-87.560938511,"(41.725309394, -87.560938511)" -1404175,G101155,02/19/2001 10:45:00 AM,035XX S FEDERAL ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,0211,,,,18,1176246,1881571,2001,03/31/2006 10:03:38 PM,41.83038838,-87.628849105,"(41.83038838, -87.628849105)" -1387919,G099631,02/18/2001 12:06:33 PM,081XX S KING DR,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,false,false,0631,,,,14,1180366,1850754,2001,03/31/2006 10:03:38 PM,41.745729946,-87.614677968,"(41.745729946, -87.614677968)" -1392624,G097558,02/17/2001 05:15:00 AM,035XX W WALNUT ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,false,true,1123,,,,04B,1152934,1901505,2001,03/31/2006 10:03:38 PM,41.885582338,-87.713854165,"(41.885582338, -87.713854165)" -1385129,G096620,02/16/2001 03:25:00 PM,010XX N LOCKWOOD AV,0560,ASSAULT,SIMPLE,STREET,false,false,1524,,,,08A,1140785,1906742,2001,03/31/2006 10:03:38 PM,41.900185298,-87.758339315,"(41.900185298, -87.758339315)" -1384311,G094637,02/15/2001 05:00:00 PM,011XX S MOZART ST,0460,BATTERY,SIMPLE,APARTMENT,false,true,1135,,,,08B,1157493,1894893,2001,03/31/2006 10:03:38 PM,41.867346831,-87.697292499,"(41.867346831, -87.697292499)" -1397656,G094603,02/15/2001 04:34:03 PM,002XX S LOTUS AV,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,true,false,1522,,,,18,1139951,1898677,2001,03/31/2006 10:03:38 PM,41.878069231,-87.761600044,"(41.878069231, -87.761600044)" -1382397,G093344,02/15/2001 12:45:00 AM,027XX S DEARBORN ST,0460,BATTERY,SIMPLE,CHA APARTMENT,false,false,2113,,,,08B,1176354,1886628,2001,03/31/2006 10:03:38 PM,41.844262752,-87.628300558,"(41.844262752, -87.628300558)" -1381966,G093195,02/14/2001 07:30:00 PM,004XX W 58 ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,true,false,0711,,,,05,1174518,1866535,2001,03/31/2006 10:03:38 PM,41.78916687,-87.635637008,"(41.78916687, -87.635637008)" -1388773,G098031,02/14/2001 04:00:00 PM,023XX S STATE ST,0810,THEFT,OVER $500,CHA APARTMENT,false,false,2113,,,,06,1176649,1888559,2001,12/04/2014 12:43:35 PM,41.849554907,-87.627159699,"(41.849554907, -87.627159699)" -1383868,G091625,02/14/2001 12:01:00 AM,042XX S WASHTENAW AV,0337,ROBBERY,ATTEMPT: ARMED-OTHER DANG WEAP,STREET,false,false,0912,,,,03,1159107,1876529,2001,03/31/2006 10:03:38 PM,41.816920998,-87.691870768,"(41.816920998, -87.691870768)" -1379556,G091127,02/13/2001 10:00:00 PM,005XX W CHESTNUT ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,false,false,1823,,,,26,1172447,1906084,2001,03/31/2006 10:03:38 PM,41.8977385,-87.642063461,"(41.8977385, -87.642063461)" -1379405,G089888,02/13/2001 10:30:00 AM,071XX S EMERALD AV,0460,BATTERY,SIMPLE,STREET,false,true,0732,,,,08B,1172535,1857678,2001,03/31/2006 10:03:38 PM,41.764906167,-87.643168622,"(41.764906167, -87.643168622)" -1377526,G086961,02/12/2001 12:06:21 AM,049XX W ERIE ST,0460,BATTERY,SIMPLE,SIDEWALK,false,true,1532,,,,08B,1143459,1903825,2001,03/31/2006 10:03:38 PM,41.892131114,-87.748590525,"(41.892131114, -87.748590525)" -1384550,G086743,02/11/2001 08:50:00 PM,087XX S PEORIA ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,2222,,,,18,1171787,1846992,2001,03/31/2006 10:03:38 PM,41.735598828,-87.646223035,"(41.735598828, -87.646223035)" -1380272,G086084,02/10/2001 11:00:00 PM,022XX W DIVERSEY AV,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,true,1432,,,,08B,1161039,1918520,2001,03/31/2006 10:03:38 PM,41.932108371,-87.683617692,"(41.932108371, -87.683617692)" -1377525,G084005,02/10/2001 10:40:00 AM,006XX W 63 ST,0560,ASSAULT,SIMPLE,GROCERY FOOD STORE,true,false,0711,,,,08A,1173102,1863153,2001,03/31/2006 10:03:38 PM,41.779917703,-87.640928851,"(41.779917703, -87.640928851)" -1374827,G083327,02/09/2001 10:30:00 PM,076XX S PHILLIPS AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,0421,,,,08B,1193905,1854460,2001,03/31/2006 10:03:38 PM,41.755578509,-87.564947999,"(41.755578509, -87.564947999)" -1377070,G078117,02/07/2001 12:40:00 PM,063XX S CALUMET AV,0560,ASSAULT,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,false,0312,,,,08A,1179581,1863162,2001,03/31/2006 10:03:38 PM,41.779796785,-87.617175815,"(41.779796785, -87.617175815)" -1369655,G075911,02/06/2001 08:20:00 AM,0000X E GRAND AV,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,true,false,1834,,,,06,1176874,1903879,2001,12/04/2014 12:43:35 PM,41.89158884,-87.625870527,"(41.89158884, -87.625870527)" -1372960,G074566,02/05/2001 06:30:00 PM,046XX S VINCENNES AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0222,,,,18,1180357,1873982,2001,03/31/2006 10:03:38 PM,41.809470071,-87.613998996,"(41.809470071, -87.613998996)" -1367090,G074170,02/05/2001 02:50:00 PM,011XX W 111 ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",false,true,2234,,,,08B,1170523,1831224,2001,03/31/2006 10:03:38 PM,41.692356661,-87.65131143,"(41.692356661, -87.65131143)" -1372792,G073042,02/05/2001 02:00:00 AM,088XX S CALUMET AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,0632,,,,18,1179983,1846364,2001,03/31/2006 10:03:38 PM,41.733692038,-87.616215384,"(41.733692038, -87.616215384)" -1391605,G070986,02/03/2001 09:30:00 PM,042XX W MONROE ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1115,,,,18,1147894,1899358,2001,03/31/2006 10:03:38 PM,41.879789074,-87.732417391,"(41.879789074, -87.732417391)" -1363716,G070658,02/03/2001 06:20:00 PM,066XX N GLENWOOD AV,1570,SEX OFFENSE,PUBLIC INDECENCY,STREET,false,false,2432,,,,17,1165686,1944293,2001,03/31/2006 10:03:38 PM,42.002732548,-87.665802729,"(42.002732548, -87.665802729)" -1364400,G069245,02/03/2001 12:33:57 AM,009XX E 84 ST,0560,ASSAULT,SIMPLE,RESIDENCE,false,true,0632,,,,08A,1183817,1849444,2001,03/31/2006 10:03:38 PM,41.742055378,-87.602073759,"(41.742055378, -87.602073759)" -1362946,G069230,02/03/2001 12:25:31 AM,119XX S UNION AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0524,,,,08B,1173765,1825514,2001,03/31/2006 10:03:38 PM,41.676616465,-87.639610305,"(41.676616465, -87.639610305)" -1368099,G075862,02/02/2001 08:30:00 AM,027XX S QUINN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,false,false,0923,,,,05,1169647,1886282,2001,03/31/2006 10:03:38 PM,41.843461748,-87.65292399,"(41.843461748, -87.65292399)" -1361758,G066417,02/01/2001 03:40:00 PM,020XX S MICHIGAN AV,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,true,false,2111,,,,26,1177566,1890708,2001,03/31/2006 10:03:38 PM,41.855431167,-87.62372905,"(41.855431167, -87.62372905)" -1360910,G066353,02/01/2001 03:20:00 PM,055XX S HOMAN AV,0560,ASSAULT,SIMPLE,STREET,false,true,0822,,,,08A,1154608,1867905,2001,03/31/2006 10:03:38 PM,41.793346526,-87.708604327,"(41.793346526, -87.708604327)" -1361049,G067151,02/01/2001 08:50:00 AM,028XX S CALUMET AV,0820,THEFT,$500 AND UNDER,RESIDENCE,false,false,2112,,,,06,1178911,1886079,2001,12/04/2014 12:43:35 PM,41.842698274,-87.618933678,"(41.842698274, -87.618933678)" -676,G065240,02/01/2001 12:10:00 AM,016XX W HOWARD ST,0110,HOMICIDE,FIRST DEGREE MURDER,STREET,false,false,2422,024,49,1,01A,1163938,1950386,2001,08/25/2009 02:50:36 PM,42.019489078,-87.672060316,"(42.019489078, -87.672060316)" -1357834,G062955,01/30/2001 08:26:00 PM,063XX S KEATING AV,0453,BATTERY,AGGRAVATED PO: OTHER DANG WEAP,ALLEY,true,false,0813,,,,04B,1145841,1862091,2001,03/31/2006 10:03:38 PM,41.777562285,-87.74089946,"(41.777562285, -87.74089946)" -1356489,G059773,01/29/2001 01:15:00 PM,073XX S YALE AV,0460,BATTERY,SIMPLE,RESIDENCE,true,true,0731,,,,08B,1175937,1856141,2001,03/31/2006 10:03:38 PM,41.76061288,-87.630745391,"(41.76061288, -87.630745391)" -1368379,G059569,01/29/2001 11:58:00 AM,009XX E 79 ST,2017,NARCOTICS,MANU/DELIVER:CRACK,STREET,true,false,0624,,,,18,1183847,1852781,2001,03/31/2006 10:03:38 PM,41.75121176,-87.601859903,"(41.75121176, -87.601859903)" -1359540,G059519,01/29/2001 11:35:00 AM,049XX S FEDERAL ST,0460,BATTERY,SIMPLE,CHA APARTMENT,false,true,0231,,,,08B,1176576,1872029,2001,03/31/2006 10:03:38 PM,41.804196865,-87.627925741,"(41.804196865, -87.627925741)" -1352664,G055242,01/27/2001 05:00:00 AM,015XX N MAPLEWOOD AV,0460,BATTERY,SIMPLE,RESIDENCE,false,true,1423,,,,08B,1159165,1910146,2001,03/31/2006 10:03:38 PM,41.909168263,-87.690734988,"(41.909168263, -87.690734988)" -1361279,G053951,01/26/2001 04:15:00 PM,010XX N LECLAIRE AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,true,false,1531,,,,18,1142211,1906418,2001,03/31/2006 10:03:38 PM,41.899269858,-87.75310955,"(41.899269858, -87.75310955)" -1360351,G051290,01/25/2001 11:55:00 AM,028XX W ROOSEVELT RD,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1022,,,,18,1157524,1894542,2001,03/31/2006 10:03:38 PM,41.86638302,-87.697188242,"(41.86638302, -87.697188242)" -1365947,G051186,01/25/2001 09:27:00 AM,031XX W ARMITAGE AV,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1414,,,,16,1155158,1913160,2001,03/31/2006 10:03:38 PM,41.917520366,-87.705373874,"(41.917520366, -87.705373874)" -1348969,G049821,01/24/2001 03:00:00 PM,023XX N CENTRAL PARK AV,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),false,false,1413,,,,08B,1152018,1915659,2001,03/31/2006 10:03:38 PM,41.924440352,-87.716844377,"(41.924440352, -87.716844377)" -1349497,G047657,01/22/2001 02:00:00 PM,037XX N PANAMA AV,5000,OTHER OFFENSE,OTHER CRIME AGAINST PERSON,"SCHOOL, PUBLIC, BUILDING",false,false,1631,,,,26,1121355,1924041,2001,03/31/2006 10:03:38 PM,41.947991326,-87.829334474,"(41.947991326, -87.829334474)" -1343027,G043676,01/21/2001 01:00:00 PM,040XX W POTOMAC AV,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,false,false,2534,,,,26,1149302,1908399,2001,03/31/2006 10:03:38 PM,41.904571368,-87.727012776,"(41.904571368, -87.727012776)" -1341944,G042370,01/20/2001 05:00:00 PM,043XX W NORTH AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,2534,,,,07,1147071,1910318,2001,03/31/2006 10:03:38 PM,41.909880281,-87.735158791,"(41.909880281, -87.735158791)" -1358327,G040771,01/20/2001 12:36:54 AM,035XX N CICERO AV,2022,NARCOTICS,POSS: COCAINE,TAVERN/LIQUOR STORE,true,false,1634,,,,18,1143717,1922874,2001,03/31/2006 10:03:38 PM,41.944398718,-87.747164818,"(41.944398718, -87.747164818)" -1341148,G040527,01/19/2001 08:35:52 PM,078XX S EXCHANGE AV,0820,THEFT,$500 AND UNDER,APARTMENT,false,false,0421,,,,06,1197037,1853402,2001,12/04/2014 12:43:35 PM,41.752597946,-87.553505384,"(41.752597946, -87.553505384)" -1344184,G044973,01/19/2001 06:00:00 PM,061XX S PULASKI RD,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,false,false,0813,,,,14,1150718,1863499,2001,03/31/2006 10:03:38 PM,41.78133247,-87.722983459,"(41.78133247, -87.722983459)" -1338946,G038108,01/18/2001 06:00:00 PM,053XX N MILWAUKEE AV,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),false,false,1622,,,,06,1137492,1935100,2001,12/04/2014 12:43:35 PM,41.978062545,-87.769750009,"(41.978062545, -87.769750009)" -1350766,G037035,01/18/2001 10:32:09 AM,015XX N KINGSBURY ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,true,false,1822,,,,16,1169639,1910112,2001,03/31/2006 10:03:38 PM,41.908853197,-87.652259411,"(41.908853197, -87.652259411)" -1342961,G036444,01/17/2001 11:10:00 PM,070XX S CARPENTER ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,true,false,0733,,,,15,1170490,1858118,2001,03/31/2006 10:03:38 PM,41.766158364,-87.65065132,"(41.766158364, -87.65065132)" -1336773,G035260,01/17/2001 01:30:00 AM,043XX S WABASH AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,false,false,0221,,,,14,1177392,1876448,2001,03/31/2006 10:03:38 PM,41.816304578,-87.624799443,"(41.816304578, -87.624799443)" -1335810,G033134,01/16/2001 11:15:00 AM,046XX W DIVERSEY AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),false,false,2521,,,,07,1144877,1918250,2001,03/31/2006 10:03:38 PM,41.931688189,-87.743018145,"(41.931688189, -87.743018145)" -1334386,G032106,01/15/2001 09:00:00 PM,071XX S SEELEY AV,0460,BATTERY,SIMPLE,RESIDENCE,false,false,0735,,,,08B,1163975,1857003,2001,03/31/2006 10:03:38 PM,41.763238063,-87.674562478,"(41.763238063, -87.674562478)" -1332275,G030498,01/14/2001 08:00:00 PM,005XX W WRIGHTWOOD AV,0820,THEFT,$500 AND UNDER,STREET,false,false,2333,,,,06,1172382,1917980,2001,12/04/2014 12:43:35 PM,41.930383149,-87.641949981,"(41.930383149, -87.641949981)" -1332853,G028467,01/14/2001 01:00:07 AM,020XX W 79 ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,false,false,0611,,,,04B,1163945,1852215,2001,03/31/2006 10:03:38 PM,41.750099735,-87.674806765,"(41.750099735, -87.674806765)" -1350635,G028262,01/13/2001 10:45:00 PM,052XX W VAN BUREN ST,2027,NARCOTICS,POSS: CRACK,STREET,true,false,1522,,,,18,1141115,1897460,2001,03/31/2006 10:03:38 PM,41.874708269,-87.757356037,"(41.874708269, -87.757356037)" -1331306,G027632,01/13/2001 05:00:00 PM,011XX W BRYN MAWR AV,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,true,false,2023,,,,11,1167635,1937312,2001,03/31/2006 10:03:38 PM,41.983534617,-87.658834827,"(41.983534617, -87.658834827)" -1328417,G023112,01/11/2001 05:00:00 PM,044XX N HAMILTON AV,1330,CRIMINAL TRESPASS,TO LAND,APARTMENT,true,false,1911,,,,26,1161297,1929315,2001,03/31/2006 10:03:38 PM,41.961725091,-87.68236829,"(41.961725091, -87.68236829)" -1331296,G028311,01/10/2001 10:00:00 AM,075XX N RIDGE BL,0820,THEFT,$500 AND UNDER,OTHER,false,false,2411,,,,06,1160521,1949918,2001,12/04/2014 12:43:35 PM,42.018276627,-87.684647544,"(42.018276627, -87.684647544)" -1323005,G017080,01/08/2001 11:30:00 PM,110XX S ESMOND ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,true,false,2212,,,,04B,1166186,1831485,2001,03/31/2006 10:03:38 PM,41.693166026,-87.667182531,"(41.693166026, -87.667182531)" -1322900,G015838,01/08/2001 11:05:00 AM,045XX N WESTERN AV,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESIDENCE,false,false,1911,,,,11,1159593,1930080,2001,03/31/2006 10:03:38 PM,41.963859642,-87.688611996,"(41.963859642, -87.688611996)" -1325993,G015366,01/08/2001 08:00:00 AM,062XX S STATE ST,0820,THEFT,$500 AND UNDER,STREET,false,false,0311,,,,06,1177384,1863310,2001,12/04/2014 12:43:35 PM,41.78025284,-87.625225785,"(41.78025284, -87.625225785)" -1326211,G014640,01/07/2001 08:29:31 PM,026XX W HIRSCH ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,ALLEY,true,false,1423,,,,07,1158370,1909246,2001,03/31/2006 10:03:38 PM,41.906714897,-87.693680117,"(41.906714897, -87.693680117)" -1320069,G012340,01/06/2001 04:52:52 PM,0000X E 102 PL,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,false,false,0511,,,,26,1178308,1836978,2001,03/31/2006 10:03:38 PM,41.707973763,-87.622635581,"(41.707973763, -87.622635581)" -1318856,G011167,01/06/2001 02:00:00 AM,005XX S CLINTON ST,0610,BURGLARY,FORCIBLE ENTRY,OTHER,false,false,0131,,,,05,1172768,1897890,2001,03/31/2006 10:03:38 PM,41.875246552,-87.641127239,"(41.875246552, -87.641127239)" -1323242,G011954,01/05/2001 10:00:00 PM,076XX S COTTAGE GROVE AV,0820,THEFT,$500 AND UNDER,TAVERN/LIQUOR STORE,false,false,0624,,,,06,1182848,1854470,2001,12/04/2014 12:43:35 PM,41.7558698,-87.605468342,"(41.7558698, -87.605468342)" -1347392,G009796,01/05/2001 03:00:00 PM,035XX S FEDERAL ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,true,false,0211,,,,18,1176254,1881288,2001,03/31/2006 10:03:38 PM,41.829611625,-87.628828268,"(41.829611625, -87.628828268)" -1323811,G009485,01/05/2001 10:55:00 AM,062XX S NAGLE AV,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,STREET,false,false,0812,,,,26,1134448,1862309,2001,03/31/2006 10:03:38 PM,41.77836831,-87.782662059,"(41.77836831, -87.782662059)" -1314868,G005912,01/03/2001 06:07:46 PM,078XX S ESSEX AV,0560,ASSAULT,SIMPLE,APARTMENT,true,false,0421,,,,08A,1194175,1853638,2001,03/31/2006 10:03:38 PM,41.753316255,-87.563985474,"(41.753316255, -87.563985474)" -1350449,G004267,01/02/2001 09:05:50 PM,034XX W CARROLL AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,true,false,1123,,,,18,1153228,1902143,2001,03/31/2006 10:03:38 PM,41.887327246,-87.712757591,"(41.887327246, -87.712757591)" -1310863,G001452,01/01/2001 04:00:00 PM,033XX N MILWAUKEE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,false,false,1731,,,,14,1149156,1921775,2001,03/31/2006 10:03:38 PM,41.941279167,-87.727201778,"(41.941279167, -87.727201778)" -1311253,G000194,01/01/2001 01:39:18 AM,015XX W JARVIS AV,1310,CRIMINAL DAMAGE,TO PROPERTY,CTA PLATFORM,true,false,2423,,,,14,1164761,1949091,2001,03/31/2006 10:03:38 PM,42.015918091,-87.669068759,"(42.015918091, -87.669068759)" -3182762,HK189377,01/01/2001 12:00:00 AM,086XX S DAMEN AVE,1720,OFFENSE INVOLVING CHILDREN,CONTRIBUTE DELINQUENCY OF A CHILD,RESIDENCE,false,false,0614,006,18,71,20,1164559,1847620,2001,03/31/2006 10:03:38 PM,41.737477456,-87.672686062,"(41.737477456, -87.672686062)" From 77e5664482f31f5d139b6bca3a6362a7c28aa527 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:33:38 -0700 Subject: [PATCH 061/248] Delete part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet --- ...f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet | Bin 6078 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=false/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet diff --git a/how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=false/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet b/how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=false/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet deleted file mode 100644 index 25d1b24788bd5daca0b5fe6e8b7a1a3bdb649a92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6078 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 Date: Sun, 28 Jul 2019 00:33:51 -0700 Subject: [PATCH 062/248] Delete part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet --- ...f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet | Bin 5083 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=true/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet diff --git a/how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=true/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet b/how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=true/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet deleted file mode 100644 index 0d47b550adf8cf80667cf4fc6162be03a3a2ee85..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5083 zcmbtYTWk|Y6rDATV;na$z%J|7w8nxhRKbmtK$ggf;@C+Em?X-BhY$^G?>boc5&Qu0 zilC~Zwg^*P8c>8Nr3mN;0ad6UNQJniNFb5YA3jh8LP9ALf~pdQ7AWfM%d;lyKujc( zJCAej%-p&6%+ls+cMyQE5cOq*4jOvGV4(~Efchyb{VrsYunWAqTNn|3{JwST)&=ls zC5LWbPJ#1@!Cy;YFT~FwmZ*uAtgftBTv5SL2F21Ox&zYh?7P%7(9}eNJ*UrHm?n_n z1Vz+);i~W)&-4BnxjN_Ka9h`jD**KUwB&D-<(m?aQpL6^&Hh5ltuiL0aD* zC@nQ+j3YyRvt6k=BbIXAG^W@gaBtFzW}DmhG^iFb+2!>%uBN0vn$+CnbgHgyXdf6^`g!S8iKB#Aq~gE;g#m3W z0IjZ}(jp}$bt;sU26y+?iwOb%wDNH5n)zP|pjVv!Mh=aIaE{>ta}*wE<>8q`6amZk zriQ{&OpW@&2k(yS>0_}izh$uv~XrgRR5g8#HPqJx(e>|DCb zB4@27C!*rHo*r;Wg$D?hCJjE#bnk?@MhEtO_t_uWy}Ve$K<)2NnMttnG5xSPWWk<3 z@-tbYv7z4nwQ?xX(j?-*uEBpxz?#m@r6NzB>UGecxpjYd_*$D#z0y55X630~hnT6m z>jBs)RWDUb+j(yFvJf8iCF@%2UViny2ktzl|?a$pdQK0fgHJt3WS z=4a#*Q@odrZRn2s*YjbPcpnhPxjIVM>;Z%c8pUol&Ud#Y!#+MX7ee%~5BIPMUK*a< z5Q_RY2m``oyt&KWt~5+-v0#{uZRzgZ(#tEI#U4KHj|F=Z!DvM3o8gW6S)rr*g+Tx* z4W4M2k0*kDX z!RV8?Gr#!fACZ`k>JhVecSPck$d57lsNN}Qy-M-vV?}6w&h-*;+sPvsoZ?ieyULV2 zUW5V2o~7!#i3ATYGOeR8!dQ$e-s6u-ey$slAIV$f&NH%@NgzlA?BI3jd`2_}tq^l*0^9wRf-*^MzviT%qQy3gpuw$i} zzFUH@V)7x}-I6SBj26?6rXt)6nTi-5P0cclkzx9iQgpc4v=*`L`t0aeLXV}lZs^e1d(wm^^%adBJCnr*fS8y1F| zJ+NDz#zm995D(jtWGKW6W(@@LWj2M=Rmj^i5PYJS zOL_Pd&LF&%3PpWjF7~-r|tdFhYSiail pE9a_s&gTzQFRrL$c}HdC;y?ux;3@;v0e@gVxCK8c;eSv${s&hv$<6=( From 1cc79a71e9bf8afab71d4fb235e44e3874e366ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:34:05 -0700 Subject: [PATCH 063/248] Delete adls-dpreptestfiles.crt --- .../dataprep/data/adls-dpreptestfiles.crt | 45 ------------------- 1 file changed, 45 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/adls-dpreptestfiles.crt diff --git a/how-to-use-azureml/work-with-data/dataprep/data/adls-dpreptestfiles.crt b/how-to-use-azureml/work-with-data/dataprep/data/adls-dpreptestfiles.crt deleted file mode 100644 index 98498f95..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/adls-dpreptestfiles.crt +++ /dev/null @@ -1,45 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDmkkyF0BwipZow -Wd1AMkRkySx0y079JPxpsYhv4i1xXKdoa9bpFqwoXmJpeQM1JWnU4UeZzFeM86qK -AhQvL4KV4kibcP2ENvu2NKFEdotO3uxPJ+6GlcYwMYzy+tUj008KnnRZfTrR78sJ -tIl3C6lnVL0ICihksG59P1sskRq3PvOjXLAdEZalwDjZ4ZPoNDZdj6nUjB2l8zqu -pKAt5mR+bJ9Sox4yrDuNhMmFt5QsRDRe3wUqdV+C9OCWHmjlmsjrYw7p9YmjBDvC -5U7mF0Mk/XeYFzj0pkXKQVqBL6xqig+q5ob0szYfg19iDeFhS3iIsRcJGEnRVW/A -NpsBZyKrAgMBAAECggEBANlvP8C1F8NInhZYuIAwpzTQTh86Fxw8g9h8dijkh2wv -LyQXBk07d1B+aZoDZ5X32UzKwcX04N9obfvFqBkzWZdVFJmZvUmwvEEActBoZkkT -io+/HX5HweVy5PPCvbsSK6jc8uXtZcnSs4tMeJIOKkvqqnTpd1w00Y1FcQqfMC16 -4p7o8wbt6OFoFAYqcxeVYVwDzCTLZD3+iJaqmntkBkoDndJy52yXQmMq5z1wbQVp -BL6+L9nTvmouy64jiHVSKOx8nnWThYfHsXoPv+rYywjeuK/v3hyaTAwogs36ooEn -SnuTBRvJcumN9Q0XIVlxKMVBcGyyAP+0yNKGz5NQgdECgYEA/I/Uq1E3epPJgEWR -Bub+LpCgwtrw/lgKncb/Q/AiE9qoXobUe4KNU8aGaNMb7uVNLckY7cOluLS6SQb3 -Mzwk2Jl0G3vk8rW46tZWvSYB8+zAR2Rz7seUOT9SE5OmvwpnHrnp3nRr1vvVd2bp -Q/ypwMLrwWQN51Kr+oTS74bUbrkCgYEA6bXVIUyao7z2Q3qAr6h+6JEWDbkJA7hJ -BjHIOXvxd1tMoJJX+X9+IE/2XoJaUkGCb0vrM/hi1cyQFmS4Or/J6IWSZu8oBpDr -EBmIK3PF1nrzNvWD28wM46c6ScehyWSm/u4bJWSm9liTX3dv5Kpa6ym7yLKc3c0B -ECpSJM+5SoMCgYEAq585Tukzn/IJPUcIk/4nv5C8DW0l0lAVdr2g/JOTNJajTwik -HwHJ86G1+Elsc9wRpAlBDWCjnm4BIFrBZGl8SEuOoJaCL4PZEotwCbxoG09IIbtb -JGkuifBDX9Y3ux3gkPqYt3e5SC99EVQ3MuHgoIJUHehVolmFUAkuJWIjvNECgYEA -5pU0VspRuELzZdgzpxvDOooLDDcHodfslGQBfFXBA1Xc4IACtHMJaa/7D3vkyUtA -+bYZtQjX2sEdWDq/WZdoCjXfIBfNkczhXt0R8G0lQFvGIu9QzUchYGrZo3mHMkBQ -Uy1xMw9/e4YgwQwCJcW+Nk7Sq00uX9enuN9IdHFOCykCgYAqAGMK6CH1tlpjvHrf -k+ZhigYxTXBlsVVvK1BIGGaiwzDpn65zeQp4aLOjSZkI1LuRi3tfTiZ321jRd64J -4lGk5Jurqv5grDmxROX/U50wEYbI9ncu/thU7syUdxDiqxHPI2RMG50mRcm3a55p -ZCNSqkMlcXyA0U1z8C1ILNUsbA== ------END PRIVATE KEY----- ------BEGIN CERTIFICATE----- -MIICoTCCAYkCAgPoMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNVBAMMCUNMSS1Mb2dp -bjAiGA8yMDE4MDcxMzIzMjA0N1oYDzIwMTkwNzEzMjMyMDQ5WjAUMRIwEAYDVQQD -DAlDTEktTG9naW4wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDmkkyF -0BwipZowWd1AMkRkySx0y079JPxpsYhv4i1xXKdoa9bpFqwoXmJpeQM1JWnU4UeZ -zFeM86qKAhQvL4KV4kibcP2ENvu2NKFEdotO3uxPJ+6GlcYwMYzy+tUj008KnnRZ -fTrR78sJtIl3C6lnVL0ICihksG59P1sskRq3PvOjXLAdEZalwDjZ4ZPoNDZdj6nU -jB2l8zqupKAt5mR+bJ9Sox4yrDuNhMmFt5QsRDRe3wUqdV+C9OCWHmjlmsjrYw7p -9YmjBDvC5U7mF0Mk/XeYFzj0pkXKQVqBL6xqig+q5ob0szYfg19iDeFhS3iIsRcJ -GEnRVW/ANpsBZyKrAgMBAAEwDQYJKoZIhvcNAQEFBQADggEBAI4VlaFb9NsXMLdT -Cw5/pk0Xo2Qi6483RGTy8vzrw88IE7f3juB/JWG+rayjtW5bBRx2fae4/ZIdZ4zg -N2FDKn2PQPAc9m9pcKyUKUvWOC8ixSkrUmeQew0l1AXU0hsPSlJ7/7ZK4efoyB47 -hj71fsyKdyKbisZDcUFBq/S8PazdPF0YOD1W/4A2tW0cSMg+jmFWynuUTdWt3SU8 -CwBGqdiSKT5faJuYwIWnRXDEQS3ObRn1OFEfFdd4d2sxjxydWKRgnINnGlBdiFAT -KzCozVr+75cO2ErH6x5C0hLQGG5BxXbaijyxyvaRNokTMVVv6OaDEnjzCGfJ72Yf -2wgitNc= ------END CERTIFICATE----- From bc7ccc7ef3d2b97fa97b0e97d905e9ce10a12478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:34:17 -0700 Subject: [PATCH 064/248] Delete chicago-aldermen-2015.csv --- .../dataprep/data/chicago-aldermen-2015.csv | 54 ------------------- 1 file changed, 54 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/chicago-aldermen-2015.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/chicago-aldermen-2015.csv b/how-to-use-azureml/work-with-data/dataprep/data/chicago-aldermen-2015.csv deleted file mode 100644 index a0cae0ba..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/chicago-aldermen-2015.csv +++ /dev/null @@ -1,54 +0,0 @@ -"Retrieved from https://en.wikipedia.org/wiki/Chicago_City_Council on November 6, 2018" - - -Ward,Name,Took Office,Party -1,Proco Joe Moreno,2010*,Dem -2,Brian Hopkins,2015,Dem -3,Pat Dowell,2007,Dem -4,Sophia King,2016*,Dem -5,Leslie Hairston,1999,Dem -6,Roderick Sawyer,2011,Dem -7,Gregory Mitchell,2015,Dem -8,Michelle A. Harris,2006*,Dem -9,Anthony Beale,1999,Dem -10,Susie Sadlowski Garza,2015,Dem -11,Patrick Daley Thompson,2015,Dem -12,George Cardenas,2003,Dem -13,Marty Quinn,2011,Dem -14,Edward M. Burke,1969,Dem -15,Raymond Lopez,2015,Dem -16,Toni Foulkes,2007,Dem -17,David H. Moore,2015,Dem -18,Derrick Curtis,2015,Dem -19,Matthew O'Shea,2011,Dem -20,Willie Cochran,2007,Dem -21,Howard Brookins Jr.,2003,Dem -22,Ricardo Muñoz,1993*,Dem -23,Silvana Tabares,2018*,Dem -24,"Michael Scott, Jr.",2015,Dem -25,Daniel Solis,1996*,Dem -26,Roberto Maldonado,2009*,Dem -27,"Walter Burnett, Jr.",1995,Dem -28,Jason Ervin,2011*,Dem -29,Chris Taliaferro,2015,Dem -30,Ariel Reboyras,2003,Dem -31,Milly Santiago,2015,Dem -32,Scott Waguespack,2007,Dem -33,Deb Mell,2013*,Dem -34,Carrie Austin,1994*,Dem -35,Carlos Ramirez-Rosa,2015,Dem -36,Gilbert Villegas,2015,Dem -37,Emma Mitts,2000*,Dem -38,Nicholas Sposato,2011,Ind -39,Margaret Laurino,1994*,Dem -40,Patrick J. O'Connor,1983,Dem -41,Anthony Napolitano,2015,Rep -42,Brendan Reilly,2007,Dem -43,Michele Smith,2011,Dem -44,Thomas M. Tunney,2002*,Dem -45,John Arena,2011,Dem -46,James Cappleman,2011,Dem -47,Ameya Pawar,2011,Dem -48,Harry Osterman,2011,Dem -49,Joe Moore,1991,Dem -50,Debra Silverstein,2011,Dem From 7f65c1a255b934f9bae1147373951adbf2ff716d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:34:27 -0700 Subject: [PATCH 065/248] Delete crime-dirty.csv --- .../work-with-data/dataprep/data/crime-dirty.csv | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-dirty.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime-dirty.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime-dirty.csv deleted file mode 100644 index ef7beb0b..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime-dirty.csv +++ /dev/null @@ -1,15 +0,0 @@ -File updated 11/2/2018 - - - -ID|Case Number|Date|Block|IUCR|Primary Type|Description|Location Description|Arrest|Domestic|Beat|District|Ward|Community Area|FBI Code|X Coordinate|Y Coordinate|Year|Updated On|Latitude|Longitude|Location -10140490|HY329907|07/05/2015 11:50:00 PM|050XX N NEWLAND AVE|0820|THEFT|$500 AND UNDER|STREET|false|false|1613|016|41|10|06|1129230|1933315|2015|07/12/2015 12:42:46 PM|41.973309466|-87.800174996|(41.973309466, -87.800174996) -10139776|HY329265|07/05/2015 11:30:00 PM|011XX W MORSE AVE|0460|BATTERY|SIMPLE|STREET|false|true|2431|024|49|1|08B|1167370|1946271|2015|07/12/2015 12:42:46 PM|42.008124017|-87.65955018|(42.008124017, -87.65955018) -10140270|HY329253|07/05/2015 11:20:00 PM|121XX S FRONT AVE|0486|BATTERY|DOMESTIC BATTERY SIMPLE|STREET|false|true|0532||9|53|08B|||2015|07/12/2015 12:42:46 PM||| -10139885|HY329308|07/05/2015 11:19:00 PM|051XX W DIVISION ST|0610|BURGLARY|FORCIBLE ENTRY|SMALL RETAIL STORE|false|false|1531|015|37|25|05|1141721|1907465|2015|07/12/2015 12:42:46 PM|41.902152027|-87.754883404|(41.902152027, -87.754883404) -10140379|HY329556|07/05/2015 11:00:00 PM|012XX W LAKE ST|0930|MOTOR VEHICLE THEFT|THEFT/RECOVERY: AUTOMOBILE|STREET|false|false|1215|012|27|28|07|1168413|1901632|2015|07/12/2015 12:42:46 PM|41.885610142|-87.657008701|(41.885610142, -87.657008701) -10140868|HY330421|07/05/2015 10:54:00 PM|118XX S PEORIA ST|1320|CRIMINAL DAMAGE|TO VEHICLE|VEHICLE NON-COMMERCIAL|false|false|0524|005|34|53|14|1172409|1826485|2015|07/12/2015 12:42:46 PM|41.6793109|-87.644545209|(41.6793109, -87.644545209) -10139762|HY329232|07/05/2015 10:42:00 PM|026XX W 37TH PL|1020|ARSON|BY FIRE|VACANT LOT/LAND|false|false|0911|009|12|58|09|1159436|1879658|2015|07/12/2015 12:42:46 PM|41.825500607|-87.690578042|(41.825500607, -87.690578042) -10139722|HY329228|07/05/2015 10:30:00 PM|016XX S CENTRAL PARK AVE|1811|NARCOTICS|POSS: CANNABIS 30GMS OR LESS|ALLEY|true|false|1021|010|24|29|18|1152687|1891389|2015|07/12/2015 12:42:46 PM|41.857827814|-87.715028789|(41.857827814, -87.715028789) -10139774|HY329209|07/05/2015 10:15:00 PM|048XX N ASHLAND AVE|1310|CRIMINAL DAMAGE|TO PROPERTY|APARTMENT|false|false|2032|020|46|3|14|1164821|1932394|2015|07/12/2015 12:42:46 PM|41.970099796|-87.669324377|(41.970099796, -87.669324377) -10139697|HY329177|07/05/2015 10:10:00 PM|058XX S ARTESIAN AVE|1320|CRIMINAL DAMAGE|TO VEHICLE|ALLEY|false|false|0824|008|16|63|14|1160997|1865851|2015|07/12/2015 12:42:46 PM|41.787580282|-87.685233078|(41.787580282, -87.685233078) From 32acd5577473e95325d670757123a57a7147546e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:34:39 -0700 Subject: [PATCH 066/248] Delete crime-full.csv --- .../dataprep/data/crime-full.csv | 1001 ----------------- 1 file changed, 1001 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-full.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime-full.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime-full.csv deleted file mode 100644 index e46bda18..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime-full.csv +++ /dev/null @@ -1,1001 +0,0 @@ -ID,Case Number,Date,Block,IUCR,Primary Type,Description,Location Description,Damage Cost,Arrest,Domestic,Beat,District,Ward,Community Area,FBI Code,X Coordinate,Y Coordinate,Year,Updated On,Latitude,Longitude,Location -2705685,HJ329710,2003-04-26 00:00:00,105XX S WOOD ST,0460,BATTERY,SIMPLE,RESIDENCE,4615,False,False,2212,NA,19,72,08B,1166261,1834693,2003,ERROR,41.701967722,-87.666817049,"(41.701967722, -87.666817049)" -8367900,HT600798,2011-11-22 15:15:00,063XX S PULASKI RD,0890,THEFT,FROM BUILDING,LIBRARY,3882,False,False,813,8,13,65,06,1150746,1862490,2011,ERROR,41.778563069,-87.722907063,"(41.778563069, -87.722907063)" -8726660,HV402430,2012-07-26 19:30:00,019XX W BELMONT AVE,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,4566,False,False,1931,19,32,5,05,1162975,1921223,2012,ERROR,41.939485082,-87.676427052,"(41.939485082, -87.676427052)" -9103375,HW247768,2013-04-25 14:20:00,047XX S ASHLAND AVE,0460,BATTERY,SIMPLE,SIDEWALK,2469,False,False,931,9,20,61,08B,1166425,1873469,2013,ERROR,41.808370972,-87.665113707,"(41.808370972, -87.665113707)" -3807148,HL176623,2005-02-12 01:24:03,078XX S EAST END AVE,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,ALLEY,989,False,False,414,4,8,43,07,1188944,1853066,2005,ERROR,41.751873397,-87.583173082,"(41.751873397, -87.583173082)" -4241820,HL534761,2005-08-07 21:12:26,068XX S MARSHFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3807,False,False,725,7,17,67,08B,1166478,1859475,2005,ERROR,41.769968592,-87.665318117,"(41.769968592, -87.665318117)" -4824796,HM433465,2006-06-23 22:15:00,105XX S STATE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1504,False,False,512,5,34,49,14,1178075,1835093,2006,ERROR,41.702806335,-87.623545729,"(41.702806335, -87.623545729)" -8172753,HT407165,2011-07-20 17:50:00,021XX W 21ST PL,0820,THEFT,$500 AND UNDER,RESIDENCE,262,False,False,1223,12,25,31,06,1162541,1889761,2011,2011-03-08 09:56:44,41.853160001,-87.678904133,"(41.853160001, -87.678904133)" -8154927,HT390078,2011-07-10 15:50:00,046XX W NORTH AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,2972,True,False,2533,25,37,25,06,1144852,1910260,2011,2011-11-07 10:34:01,41.909763298,-87.743312036,"(41.909763298, -87.743312036)" -6944181,HR349635,2009-05-30 18:13:00,015XX W 63RD ST,031A,ROBBERY,ARMED: HANDGUN,ALLEY,1296,False,False,713,7,16,67,03,1167116,1862990,2009,2009-12-06 18:29:17,41.779600581,-87.662879029,"(41.779600581, -87.662879029)" -5836733,HN643782,2007-10-12 14:00:00,027XX W SUMMERDALE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,3105,False,False,2011,20,40,4,14,1157009,1935459,2007,ERROR,41.978672864,-87.697965904,"(41.978672864, -87.697965904)" -7740163,HS548309,2010-10-04 21:30:00,057XX N WASHTENAW AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,APARTMENT,594,True,False,2011,20,40,2,18,1157257,1938221,2010,2010-04-10 23:26:24,41.986246871,-87.696978408,"(41.986246871, -87.696978408)" -4984650,HM597309,2006-09-11 18:30:00,052XX S STATE ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",1591,False,False,232,2,3,40,06,1177212,1869954,2006,ERROR,41.798488523,-87.625655865,"(41.798488523, -87.625655865)" -3941717,HL312501,2005-04-22 08:00:00,069XX S EBERHART AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,1397,False,True,322,3,6,69,08B,1180740,1858964,2005,ERROR,41.76825049,-87.613055702,"(41.76825049, -87.613055702)" -5084563,HM687682,2006-10-28 14:30:00,022XX S PULASKI RD,0560,ASSAULT,SIMPLE,STREET,2224,False,False,1013,10,22,29,08A,1150013,1889063,2006,ERROR,41.851497405,-87.724904562,"(41.851497405, -87.724904562)" -8136835,HT371007,2011-06-28 23:20:00,011XX N CHRISTIANA AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,538,True,False,1121,11,26,23,18,1153742,1907328,2011,ERROR,41.901545171,-87.710731851,"(41.901545171, -87.710731851)" -1815636,G631826,2001-10-20 18:30:00,046XX S HALSTED ST,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,2501,True,False,921,NA,NA,NA,26,1171705,1874218,2001,ERROR,41.810312019,-87.645725963,"(41.810312019, -87.645725963)" -9276577,HW420770,2013-08-23 16:40:00,007XX S ALBANY AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,658,True,False,1134,11,24,27,18,1155766,1896834,2013,ERROR,41.872708075,-87.703580324,"(41.872708075, -87.703580324)" -1603336,G368431,2001-06-24 19:52:14,001XX W CHICAGO AV,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,PARKING LOT/GARAGE(NON.RESID.),3948,True,False,1832,NA,NA,NA,26,1175257,1905662,2001,ERROR,41.896517917,-87.631755414,"(41.896517917, -87.631755414)" -7210353,HR608426,2009-10-26 08:40:00,015XX S PULASKI RD,2024,NARCOTICS,POSS: HEROIN(WHITE),ABANDONED BUILDING,1124,True,False,1012,10,24,29,18,1149936,1891869,2009,2009-04-11 09:53:16,41.859198911,-87.725114223,"(41.859198911, -87.725114223)" -4471848,HL301576,2005-04-17 20:50:03,006XX E GRAND AVE,1330,CRIMINAL TRESPASS,TO LAND,OTHER,3257,False,False,1834,18,42,8,26,1180772,1904096,2005,2007-11-06 15:52:33,41.892095212,-87.611548469,"(41.892095212, -87.611548469)" -7637700,HS441827,2010-08-02 12:45:00,028XX W 22ND PL,1570,SEX OFFENSE,PUBLIC INDECENCY,SIDEWALK,2297,False,False,1033,10,12,30,17,1157857,1888970,2010,ERROR,41.851086084,-87.696117577,"(41.851086084, -87.696117577)" -4703044,HM309199,2006-04-24 00:00:00,012XX N CLARK ST,0820,THEFT,$500 AND UNDER,STREET,20,False,False,1821,18,42,8,06,1175274,1908508,2006,2014-04-12 12:43:35,41.904327102,-87.631607477,"(41.904327102, -87.631607477)" -3961270,HL324634,2005-04-29 08:30:00,005XX W DIVISION ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,CHA HALLWAY/STAIRWELL/ELEVATOR,4726,False,False,1821,18,27,8,04B,1172300,1908305,2005,ERROR,41.903836297,-87.642537685,"(41.903836297, -87.642537685)" -2281333,HH546276,2002-07-30 13:30:00,069XX S EMERALD AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,864,True,False,732,NA,6,68,18,1172538,1859044,2002,ERROR,41.76865457,-87.643117449,"(41.76865457, -87.643117449)" -1837655,G672065,2001-11-07 21:45:40,062XX S ST LAWRENCE AV,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,4001,True,False,313,NA,NA,NA,14,1181266,1863792,2001,ERROR,41.78148689,-87.610979035,"(41.78148689, -87.610979035)" -1842160,G679483,2001-11-11 03:30:00,021XX N CAMPBELL AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,1986,False,False,1431,NA,NA,NA,07,1159571,1914405,2001,ERROR,41.920846924,-87.689126006,"(41.920846924, -87.689126006)" -2636288,HJ216645,2003-03-03 20:48:00,045XX W WASHINGTON BLVD,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,1393,True,False,1113,NA,28,26,16,1146373,1900156,2003,ERROR,41.882007967,-87.737982025,"(41.882007967, -87.737982025)" -1496183,G233892,2001-04-24 09:00:00,004XX E MC FETRIDGE DR,0820,THEFT,$500 AND UNDER,PARK PROPERTY,187,False,False,133,NA,NA,NA,06,1179031,1894246,2001,2014-04-12 12:43:35,41.865106307,-87.618243723,"(41.865106307, -87.618243723)" -3931945,HL305935,2005-04-19 16:00:00,015XX N ARTESIAN AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),1386,False,False,1423,14,1,24,06,1159834,1910187,2005,2014-04-12 12:43:35,41.909266991,-87.688276249,"(41.909266991, -87.688276249)" -5621453,HN427508,2007-06-25 13:25:00,040XX W DICKENS AVE,2022,NARCOTICS,POSS: COCAINE,STREET,2783,True,False,2525,25,30,20,18,1149318,1913614,2007,2007-01-07 02:00:46,41.918881522,-87.726818542,"(41.918881522, -87.726818542)" -1709847,G508926,2001-08-26 02:00:00,010XX N MONTICELLO AV,0460,BATTERY,SIMPLE,RESIDENCE,3761,False,True,1112,NA,NA,NA,08B,1151889,1906869,2001,ERROR,41.900322332,-87.717550266999993,"(41.900322332, -87.717550267)" -2306701,HH595350,2002-08-21 05:45:00,001XX W POLK ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,1890,False,False,131,NA,2,32,07,1175097,1896746,2002,ERROR,41.872055484,-87.63261045,"(41.872055484, -87.63261045)" -6581196,HP653741,2008-10-07 03:00:00,034XX W SCHOOL ST,0820,THEFT,$500 AND UNDER,RESIDENTIAL YARD (FRONT/BACK),312,False,False,1732,17,35,21,06,1152747,1921690,2008,ERROR,41.940975485,-87.714005626,"(41.940975485, -87.714005626)" -5443942,HN272087,2007-04-08 15:44:18,059XX S LAFLIN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1938,False,False,713,7,16,67,14,1167399,1865013,2007,ERROR,41.785145883,-87.661783592,"(41.785145883, -87.661783592)" -3792137,HK836619,2004-12-30 18:30:00,131XX S VERNON AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE PORCH/HALLWAY,4455,True,False,533,5,9,54,18,1181519,1818462,2004,ERROR,41.657089903,-87.61144499,"(41.657089903, -87.61144499)" -9206054,HW352076,2013-07-07 15:00:00,016XX W 38TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,975,True,True,912,9,11,59,08B,1165971,1879568,2013,2013-08-07 12:07:35,41.825116974,-87.666605306,"(41.825116974, -87.666605306)" -4720801,HM327230,2006-05-03 05:03:58,026XX E 73RD ST,0334,ROBBERY,ATTEMPT: ARMED-KNIFE/CUT INSTR,SIDEWALK,4270,False,False,334,3,7,43,03,1194873,1857481,2006,2006-07-05 03:57:33,41.763844577,-87.561301231,"(41.763844577, -87.561301231)" -7034576,HR441456,2009-07-21 21:05:00,107XX S HALSTED ST,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,GAS STATION,1442,True,False,2233,22,34,75,03,1172840,1833829,2009,ERROR,41.699454527,-87.642752065,"(41.699454527, -87.642752065)" -8348862,HT582100,2011-11-09 15:00:00,108XX S BENSLEY AVE,0560,ASSAULT,SIMPLE,SIDEWALK,844,False,False,434,4,10,51,08A,1194612,1833847,2011,ERROR,41.698997218,-87.563033068,"(41.698997218, -87.563033068)" -2882234,HJ552553,2003-08-08 22:00:00,109XX S WABASH AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,664,False,False,513,5,9,49,14,1178490,1832061,2003,ERROR,41.694476704,-87.622117791,"(41.694476704, -87.622117791)" -8571720,HV245210,2011-12-26 09:00:00,038XX W NORTH AVE,0842,THEFT,AGG: FINANCIAL ID THEFT,BANK,4830,False,False,2535,25,30,23,06,1150240,1910394,2011,ERROR,41.910027597,-87.723515111,"(41.910027597, -87.723515111)" -3479397,HK551539,2004-08-11 11:00:00,014XX S CHRISTIANA AVE,0810,THEFT,OVER $500,STREET,3767,False,False,1021,10,24,29,06,1154306,1892825,2004,2014-04-12 12:43:35,41.861736212,-87.709047718,"(41.861736212, -87.709047718)" -6571624,HP644036,2008-10-23 18:10:00,003XX S PLYMOUTH CT,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,STREET,3266,False,False,123,1,2,32,03,1176091,1898936,2008,2008-06-11 15:42:26,41.878042652,-87.628895109,"(41.878042652, -87.628895109)" -3425217,HK489162,2004-07-11 19:46:59,060XX S MICHIGAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,1195,False,True,311,3,20,40,08B,1178229,1865098,2004,ERROR,41.785140156,-87.62207368,"(41.785140156, -87.62207368)" -9297900,HW443063,2013-09-08 14:30:00,073XX S MICHIGAN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,3308,False,False,323,3,6,69,03,1178393,1856302,2013,2013-02-10 11:54:38,41.760999284,-87.621739229,"(41.760999284, -87.621739229)" -5343960,HM744635,2006-11-28 07:45:00,042XX S CALUMET AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,2763,True,False,214,2,3,38,16,1179097,1876982,2006,ERROR,41.81773117,-87.61852889,"(41.81773117, -87.61852889)" -7231348,HR644530,2009-11-15 13:15:00,048XX N KENMORE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,2613,True,True,2024,20,46,3,08B,1168339,1932383,2009,ERROR,41.969994063,-87.656388912,"(41.969994063, -87.656388912)" -8276922,HT511056,2011-09-23 18:15:00,076XX S CICERO AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,3184,True,False,833,8,13,65,06,1145766,1853738,2011,ERROR,41.75464162,-87.741385158,"(41.75464162, -87.741385158)" -7096630,HR505081,2009-08-26 18:00:00,081XX S PAULINA ST,0460,BATTERY,SIMPLE,RESIDENCE PORCH/HALLWAY,2842,False,False,614,6,18,71,08B,1166381,1850921,2009,ERROR,41.746497306,-87.66591694,"(41.746497306, -87.66591694)" -3509426,HK586658,2004-08-28 00:00:00,083XX S KINGSTON AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,606,False,False,423,4,7,46,07,1194581,1850155,2004,ERROR,41.743748652,-87.562611996,"(41.743748652, -87.562611996)" -9478072,HX130921,2014-01-21 17:00:00,068XX S WOLCOTT AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,1761,False,True,726,7,17,67,26,1164830,1859219,2014,ERROR,41.769301059,-87.671366222,"(41.769301059, -87.671366222)" -9320325,HW464485,2013-09-23 21:30:00,016XX E 77TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1715,False,True,414,4,8,43,14,1188749,1854298,2013,ERROR,41.755258781,-87.583848327,"(41.755258781, -87.583848327)" -8528788,HV205948,2012-03-20 09:50:00,111XX S EWING AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENCE-GARAGE,1676,False,False,433,4,10,52,14,1202171,1831712,2012,ERROR,41.692949738,-87.535428598,"(41.692949738, -87.535428598)" -4290691,HL605721,2005-09-11 14:00:00,001XX N DEARBORN ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),2621,False,False,122,1,42,32,06,1175948,1901601,2005,2014-04-12 12:43:35,41.885358785,-87.629339896,"(41.885358785, -87.629339896)" -9191309,HW336113,2013-06-25 11:28:00,013XX N ASHLAND AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,3808,True,False,1433,14,1,24,06,1165434,1909298,2013,ERROR,41.906710108,-87.66772974,"(41.906710108, -87.66772974)" -6943981,HR348351,2009-05-29 22:00:00,057XX N MC VICKER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1332,False,False,1622,16,45,10,14,1134948,1938056,2009,ERROR,41.986219618,-87.779035389,"(41.986219618, -87.779035389)" -1432501,G153916,2001-03-18 01:15:59,023XX N HAMLIN AV,0460,BATTERY,SIMPLE,RESIDENCE,2320,True,False,2525,NA,NA,NA,08B,1150616,1915362,2001,ERROR,41.923652901,-87.722003735,"(41.923652901, -87.722003735)" -8288964,HT523191,2011-10-01 16:10:00,021XX E 70TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,4671,True,False,331,3,5,43,18,1191556,1859009,2011,2011-01-10 19:38:17,41.768118581,-87.573409074,"(41.768118581, -87.573409074)" -7910721,HT140388,2011-01-28 23:30:00,029XX W ADAMS ST,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,4639,False,False,1124,11,2,27,04A,1156613,1898917,2011,ERROR,41.878406942,-87.700414194,"(41.878406942, -87.700414194)" -2089112,HH309698,2002-04-15 20:15:00,010XX N LAWLER AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,1200,True,False,1531,NA,NA,NA,18,1142456,1906817,2002,ERROR,41.900360209,-87.752199731,"(41.900360209, -87.752199731)" -9419206,HW562896,2013-12-08 01:39:00,011XX S CANAL ST,0810,THEFT,OVER $500,RESTAURANT,4414,False,False,124,1,2,28,06,1173358,1895046,2013,ERROR,41.867429345,-87.639045471,"(41.867429345, -87.639045471)" -8846059,HV519322,2012-10-14 20:00:00,018XX W 103RD ST,0610,BURGLARY,FORCIBLE ENTRY,OTHER,4604,False,False,2213,22,19,72,05,1165953,1836420,2012,ERROR,41.70671343,-87.667895994,"(41.70671343, -87.667895994)" -6454875,HP535283,2008-08-26 03:22:00,019XX W 19TH ST,0560,ASSAULT,SIMPLE,APARTMENT,1503,False,False,1223,12,25,31,08A,1163581,1890708,2008,ERROR,41.855736847,-87.675060338,"(41.855736847, -87.675060338)" -8223778,HT457480,2011-08-20 15:15:00,007XX E 43RD ST,0560,ASSAULT,SIMPLE,CHA PARKING LOT/GROUNDS,4240,False,False,213,2,4,38,08A,1182085,1876707,2011,ERROR,41.816907818,-87.607576648,"(41.816907818, -87.607576648)" -1622655,G400595,2001-07-09 14:55:00,035XX N HERMITAGE AV,0560,ASSAULT,SIMPLE,ALLEY,2256,False,False,1923,NA,NA,NA,08A,1164066,1923605,2001,ERROR,41.945998404,-87.672349817,"(41.945998404, -87.672349817)" -7843346,HS655355,2010-12-10 22:15:00,028XX S SPAULDING AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,2971,True,False,1032,10,22,30,15,1154782,1885145,2010,ERROR,41.840651893,-87.707505856,"(41.840651893, -87.707505856)" -6043466,HP146623,2008-01-28 00:00:07,091XX S STONY ISLAND AVE,031A,ROBBERY,ARMED: HANDGUN,SMALL RETAIL STORE,3209,False,False,413,4,8,48,03,1188345,1844791,2008,2008-08-02 08:13:34,41.729180293,-87.585631578,"(41.729180293, -87.585631578)" -9633417,HX284237,2014-05-31 15:00:00,083XX S INGLESIDE AVE,0820,THEFT,$500 AND UNDER,APARTMENT,380,False,False,632,6,8,44,06,1183965,1849926,2014,2014-07-06 12:40:43,41.743374586,-87.601516477,"(41.743374586, -87.601516477)" -9050651,HW196019,2013-03-16 14:30:00,037XX N SEMINARY AVE,0810,THEFT,OVER $500,OTHER,3835,False,False,1923,19,44,6,06,1168275,1925255,2013,ERROR,41.950435964,-87.656831163,"(41.950435964, -87.656831163)" -1724326,G530529,2001-08-24 09:00:00,068XX N FRANCISCO AV,0810,THEFT,OVER $500,CONSTRUCTION SITE,4601,False,False,2411,NA,NA,NA,06,1155826,1945498,2001,2014-04-12 12:43:35,42.006244328,-87.70204429,"(42.006244328, -87.70204429)" -7313924,HS117962,2009-11-23 09:18:00,001XX W JACKSON BLVD,1110,DECEPTIVE PRACTICE,BOGUS CHECK,BANK,2873,True,False,112,1,2,32,11,1175229,1898922,2009,2011-03-01 19:34:38,41.878023606,-87.632060555,"(41.878023606, -87.632060555)" -8348182,HT581427,2011-11-08 17:45:00,049XX S WABASH AVE,0820,THEFT,$500 AND UNDER,"SCHOOL, PUBLIC, BUILDING",404,True,False,231,2,3,38,06,1177513,1872176,2011,2011-09-11 12:54:43,41.804579093,-87.624484847,"(41.804579093, -87.624484847)" -8457513,HV134404,2012-01-27 10:40:00,095XX S LAFAYETTE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4775,False,False,511,5,21,49,07,1177575,1841925,2012,ERROR,41.721565569,-87.625170844,"(41.721565569, -87.625170844)" -3991779,HL277064,2005-04-05 22:00:00,004XX S CICERO AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,4442,True,False,1533,15,24,25,16,1144422,1897554,2005,ERROR,41.874904679,-87.745211632,"(41.874904679, -87.745211632)" -8231576,HT460583,2011-08-03 11:00:00,025XX W 63RD ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,OTHER,2479,False,False,825,8,15,66,26,1160154,1862826,2011,ERROR,41.779296661,-87.688407212,"(41.779296661, -87.688407212)" -4496745,HL799743,2005-12-20 09:05:00,073XX S SACRAMENTO AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,4808,False,False,835,8,18,66,05,1157607,1855700,2005,ERROR,41.75979389,-87.697937855,"(41.75979389, -87.697937855)" -5033246,HM641247,2006-10-04 20:00:00,080XX S LAFLIN ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,4181,False,False,612,6,21,71,05,1167772,1851438,2006,ERROR,41.747886306,-87.660805171,"(41.747886306, -87.660805171)" -5208608,HM778355,2006-12-16 19:10:00,068XX S HALSTED ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,TAVERN/LIQUOR STORE,3007,True,False,723,7,6,68,15,1172116,1859172,2006,2007-01-01 07:32:02,41.7690151,-87.644660529,"(41.7690151, -87.644660529)" -2528826,HJ107508,2003-01-04 22:02:46,030XX W 47TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,4398,False,False,912,NA,14,58,14,1157054,1873373,2003,ERROR,41.808302333,-87.699487137,"(41.808302333, -87.699487137)" -1613083,G380569,2001-06-30 03:34:50,010XX E 133 ST,0560,ASSAULT,SIMPLE,CHA APARTMENT,4421,True,False,533,NA,NA,NA,08A,1185848,1817236,2001,ERROR,41.653625,-87.595643042,"(41.653625, -87.595643042)" -5350380,HN205637,2007-03-03 10:00:00,032XX W 63RD ST,0460,BATTERY,SIMPLE,APARTMENT,1902,False,False,823,8,15,66,08B,1155671,1862624,2007,2007-08-03 21:51:06,41.77883343,-87.704847919,"(41.77883343, -87.704847919)" -5570467,HN377874,2007-04-02 12:00:00,064XX S LANGLEY AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,4605,False,True,312,3,20,42,26,1181963,1862332,2007,ERROR,41.777464417,-87.608468819,"(41.777464417, -87.608468819)" -3864729,HL237399,2005-03-16 10:00:00,046XX S HALSTED ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,3954,True,False,921,9,11,61,06,1171713,1873921,2005,ERROR,41.809496845,-87.645705337,"(41.809496845, -87.645705337)" -4208971,HL527767,2005-07-04 22:30:00,056XX S MICHIGAN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,1863,False,True,233,2,20,40,08B,1178081,1867582,2005,ERROR,41.791959854,-87.622541015,"(41.791959854, -87.622541015)" -4616724,HM210940,2006-03-03 10:26:14,0000X W RANDOLPH ST,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,1416,True,False,122,1,42,32,26,1175995,1901321,2006,2006-07-03 03:46:57,41.884589391,-87.629175742,"(41.884589391, -87.629175742)" -9574311,HX225021,2014-04-15 20:00:00,088XX S LOOMIS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4758,False,False,2222,22,21,71,07,1168581,1846266,2014,2014-06-05 00:39:53,41.733676216,-87.657989464,"(41.733676216, -87.657989464)" -3138687,HK129812,2004-01-16 21:30:00,115XX S YALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4990,False,True,522,5,34,53,08B,1176719,1828319,2004,ERROR,41.684248043,-87.628713951,"(41.684248043, -87.628713951)" -8344443,HT528932,2011-10-05 05:00:00,052XX W SCHOOL ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,2954,False,False,1634,16,38,15,14,1140574,1921391,2011,2011-08-11 10:43:52,41.940387619,-87.758753823,"(41.940387619, -87.758753823)" -1796827,G622864,2001-10-15 20:30:00,030XX S GRATTEN AV,0810,THEFT,OVER $500,OTHER,2409,False,False,923,NA,NA,NA,06,1169291,1884678,2001,2014-04-12 12:43:35,41.839067958,-87.654276965,"(41.839067958, -87.654276965)" -6321465,HP407211,2008-06-21 01:00:00,013XX S KEDZIE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,1039,False,False,1022,10,24,29,08B,1155195,1893805,2008,ERROR,41.864407654,-87.705758038,"(41.864407654, -87.705758038)" -4048269,HL397796,2005-06-04 01:00:00,106XX S HALSTED ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,1253,False,True,2233,22,34,73,08B,1172820,1834491,2005,ERROR,41.701271596,-87.642805861,"(41.701271596, -87.642805861)" -3192419,HK199140,2004-02-23 08:15:00,068XX S STEWART AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",2632,True,False,722,7,6,68,08B,1174671,1859859,2004,ERROR,41.770843786,-87.635274724,"(41.770843786, -87.635274724)" -2000440,HH198576,2002-02-20 16:32:03,064XX W DIVERSEY AV,0620,BURGLARY,UNLAWFUL ENTRY,APPLIANCE STORE,4375,False,False,2512,NA,NA,NA,05,NA,NA,2002,ERROR,NA,NA, -9584763,HX234897,2014-04-23 21:50:00,026XX N RUTHERFORD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,1333,False,False,2512,25,36,18,08B,1130931,1916809,2014,ERROR,41.927985963,-87.794301643,"(41.927985963, -87.794301643)" -6633395,HP703001,2008-11-26 10:25:55,001XX N STATE ST,0850,THEFT,ATTEMPT THEFT,SIDEWALK,1180,True,False,122,1,42,32,06,1176393,1900887,2008,2008-01-12 07:38:55,41.8833895,-87.627727352,"(41.8833895, -87.627727352)" -10025851,HY215334,2015-04-09 08:09:00,037XX N KILPATRICK AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4106,True,True,1731,17,38,15,08B,1144437,1924607,2015,ERROR,41.949140682,-87.744474617,"(41.949140682, -87.744474617)" -4257303,HL576564,2005-08-28 00:01:00,018XX N KEDVALE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1447,False,False,2534,25,30,20,14,1148380,1912201,2005,ERROR,41.915022267,-87.730301385,"(41.915022267, -87.730301385)" -5994905,HP103223,2008-01-02 20:45:00,029XX W WARREN BLVD,2027,NARCOTICS,POSS: CRACK,SIDEWALK,2969,True,False,1331,12,2,27,18,1156699,1900170,2008,2008-03-01 08:43:16,41.881843556,-87.700064472,"(41.881843556, -87.700064472)" -6422343,HP506170,2008-08-05 23:00:00,008XX E 101ST ST,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,111,False,False,511,5,8,50,06,1183373,1838023,2008,2008-11-08 08:34:38,41.710725164,-87.604055073,"(41.710725164, -87.604055073)" -20991,HW370238,2013-07-19 21:43:00,038XX W HIRSCH ST,0110,HOMICIDE,FIRST DEGREE MURDER,STREET,3308,False,False,2535,25,30,23,01A,1150202,1908997,2013,2013-03-10 07:24:17,41.906194835,-87.723691183,"(41.906194835, -87.723691183)" -6084521,HP178194,2008-02-16 03:00:00,066XX S ASHLAND AVE,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,3004,False,False,725,7,17,67,03,1166856,1860593,2008,ERROR,41.773028465,-87.663900629,"(41.773028465, -87.663900629)" -10080403,HY268040,2015-05-19 11:00:00,049XX W IRVING PARK RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,3481,False,True,1624,16,45,15,08B,1142440,1926175,2015,ERROR,41.95348083,-87.751776252,"(41.95348083, -87.751776252)" -6924204,HR316222,2009-05-12 09:00:00,0000X W 95TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA GARAGE / OTHER PROPERTY,3480,True,False,634,6,21,49,18,1177743,1841988,2009,ERROR,41.721734655,-87.624553594,"(41.721734655, -87.624553594)" -6386680,HP461038,2008-07-18 22:43:31,045XX W HARRISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,2401,True,False,1131,11,24,26,18,1146348,1896935,2008,ERROR,41.873169637,-87.738155845,"(41.873169637, -87.738155845)" -6784849,HR199128,2009-03-04 20:12:00,066XX N CLARK ST,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,ALLEY,3928,True,False,2432,24,40,1,18,1164013,1944171,2009,2009-04-03 20:55:02,42.002433404,-87.671961019,"(42.002433404, -87.671961019)" -7712756,HS519770,2010-09-17 12:11:00,060XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,37,False,False,825,8,15,66,06,1161368,1864419,2010,ERROR,41.783642999,-87.683912427,"(41.783642999, -87.683912427)" -7906876,HT136770,2011-01-26 15:55:00,0000X S KOSTNER AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,4097,True,False,1113,11,28,26,26,1147028,1899356,2011,ERROR,41.87980018,-87.735597307,"(41.87980018, -87.735597307)" -7991866,HT223888,2011-03-28 19:15:00,110XX S PRINCETON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,544,True,False,513,5,34,49,18,1176291,1831621,2011,ERROR,41.693318823,-87.630182058,"(41.693318823, -87.630182058)" -7123089,HR531884,2009-09-11 18:13:00,013XX S MILLARD AVE,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,4647,True,False,1011,10,24,29,04A,1152210,1893660,2009,ERROR,41.864069113,-87.71671981,"(41.864069113, -87.71671981)" -2000324,HH200986,2002-02-21 18:47:45,014XX N AVERS AV,0460,BATTERY,SIMPLE,RESIDENCE,3701,False,True,2535,NA,NA,NA,08B,1150481,1909461,2002,ERROR,41.907462651,-87.722654169,"(41.907462651, -87.722654169)" -8240399,HT466105,2011-08-25 22:55:00,021XX N CICERO AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,2564,True,False,2522,25,31,19,16,1144003,1913897,2011,2011-02-09 09:05:11,41.919759591,-87.746339498,"(41.919759591, -87.746339498)" -1514753,G260660,2001-05-06 18:53:39,028XX W 19 ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,3078,True,False,1022,NA,NA,NA,15,1157943,1890640,2001,2010-02-06 10:34:17,41.855666993,-87.695756427,"(41.855666993, -87.695756427)" -3724031,HK768759,2004-11-12 13:00:00,012XX S ASHLAND AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,1595,False,False,1224,12,2,28,10,1165874,1894646,2004,ERROR,41.866494521,-87.666531674,"(41.866494521, -87.666531674)" -9095092,HW222941,2013-04-07 10:05:00,039XX S CALUMET AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,3181,True,False,213,2,3,38,18,1179129,1878622,2013,2013-03-05 09:26:15,41.822230731,-87.618361446,"(41.822230731, -87.618361446)" -9606372,HX256322,2014-05-10 14:15:00,017XX S ASHLAND AVE,0860,THEFT,RETAIL THEFT,OTHER,824,False,False,1233,12,25,31,06,1166044,1891531,2014,ERROR,41.857943062,-87.665996477,"(41.857943062, -87.665996477)" -2080168,HH302067,2002-04-11 17:30:00,005XX S CENTRAL AV,0460,BATTERY,SIMPLE,RESIDENCE,830,False,False,1522,NA,NA,NA,08B,1139180,1897038,2002,ERROR,41.873585657,-87.764470903,"(41.873585657, -87.764470903)" -2538562,HJ119047,2003-01-10 17:30:00,030XX N MOBILE AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",1800,False,False,2511,NA,36,19,06,1133838,1919613,2003,ERROR,41.935629815,-87.783553233,"(41.935629815, -87.783553233)" -5728743,HN535876,2007-08-18 03:00:00,055XX W DAKIN ST,0460,BATTERY,SIMPLE,ALLEY,3956,False,False,1633,16,38,15,08B,1138581,1925659,2007,ERROR,41.952135858,-87.765975048,"(41.952135858, -87.765975048)" -4533362,HM121306,2006-01-05 13:00:00,112XX S PERRY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,4073,False,True,522,5,34,49,08B,1177464,1830657,2006,ERROR,41.690647109,-87.62591646,"(41.690647109, -87.62591646)" -2940341,HJ623964,2003-09-11 22:52:01,079XX S JUSTINE ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3976,False,False,612,6,21,71,14,1167342,1852128,2003,ERROR,41.749788975,-87.662361113,"(41.749788975, -87.662361113)" -4022229,HL375934,2005-05-23 16:30:00,043XX W IRVING PARK RD,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,547,False,False,1722,17,38,16,14,1146478,1926264,2005,ERROR,41.953648902,-87.736929761,"(41.953648902, -87.736929761)" -8856428,HV530199,2012-10-22 19:10:00,001XX N LA CROSSE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,RESIDENCE-GARAGE,3046,False,False,1532,15,28,25,07,1144050,1900929,2012,ERROR,41.884173077,-87.746492747,"(41.884173077, -87.746492747)" -10126995,HY315210,2015-04-01 09:00:00,099XX S WINSTON AVE,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,3601,False,False,2213,22,21,73,11,1168775,1838907,2015,ERROR,41.713477841,-87.6574904,"(41.713477841, -87.6574904)" -7059731,HR465421,2009-08-04 10:00:00,050XX W ADDISON ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,3296,False,False,1634,16,38,15,05,1142074,1923423,2009,2009-03-09 12:45:23,41.945935898,-87.753190197,"(41.945935898, -87.753190197)" -4369628,HL653099,2005-10-04 14:15:00,0000X E 68TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,4938,False,False,322,3,20,69,05,1178251,1859995,2005,ERROR,41.7711365,-87.622147753,"(41.7711365, -87.622147753)" -2085336,HH300310,2002-04-11 14:22:32,052XX S ASHLAND AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,2024,True,False,932,NA,NA,NA,18,1166514,1870200,2002,ERROR,41.79939856,-87.664880524,"(41.79939856, -87.664880524)" -2837739,HJ500794,2003-07-17 12:00:00,064XX S ASHLAND AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),327,False,False,725,7,15,67,06,1166729,1862274,2003,2014-04-12 12:43:35,41.777644057,-87.664318242,"(41.777644057, -87.664318242)" -9359551,HW502824,2013-10-16 13:00:00,087XX S CONSTANCE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,SIDEWALK,4794,False,False,412,4,8,48,14,1189994,1847553,2013,ERROR,41.736720026,-87.579502355,"(41.736720026, -87.579502355)" -4269836,HL586435,2005-09-01 00:00:00,099XX S BEVERLY AVE,0890,THEFT,FROM BUILDING,RESIDENCE,2317,False,True,2213,22,21,72,06,1168186,1838983,2005,ERROR,41.713699063,-87.659645355,"(41.713699063, -87.659645355)" -3579880,HK667872,2004-10-05 09:30:00,053XX S COTTAGE GROVE AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,3907,False,False,2131,2,5,41,05,1182540,1869405,2004,ERROR,41.796859993,-87.606134249,"(41.796859993, -87.606134249)" -1396555,G081867,2001-02-09 10:00:00,070XX S SANGAMON ST,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,2543,True,False,733,NA,NA,NA,18,1171146,1858301,2001,ERROR,41.766646226,-87.648241507,"(41.766646226, -87.648241507)" -6210516,HP298503,2008-04-23 19:00:00,088XX S COLFAX AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,3830,False,False,423,4,7,46,05,1195065,1846888,2008,2008-08-05 07:57:25,41.734771822,-87.560946053,"(41.734771822, -87.560946053)" -8335396,HT565225,2011-10-29 12:22:19,069XX S LAFAYETTE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESTAURANT,4794,False,True,731,7,6,69,08B,1176984,1859255,2011,2011-07-11 12:45:02,41.769134515,-87.626814372,"(41.769134515, -87.626814372)" -4575638,HL791694,2005-12-15 20:55:00,006XX N TRUMBULL AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,1930,True,False,1121,11,27,23,18,1153311,1903852,2005,ERROR,41.892015265,-87.712407374,"(41.892015265, -87.712407374)" -9527333,HX181612,2014-03-12 10:50:00,081XX S VINCENNES AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",1878,True,False,622,6,21,44,08A,1174722,1850745,2014,ERROR,41.745832739,-87.635358835,"(41.745832739, -87.635358835)" -2802818,HJ444885,2003-06-21 19:30:00,029XX S STATE ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,CHA PARKING LOT/GROUNDS,4371,False,True,2113,1,3,35,08B,1176715,1885559,2003,ERROR,41.841321197,-87.627008027,"(41.841321197, -87.627008027)" -8240826,HT474337,2011-08-31 10:04:00,070XX S CLYDE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,3112,True,False,331,3,5,43,08B,1191389,1858691,2011,2011-01-09 06:32:18,41.767250011,-87.574031486,"(41.767250011, -87.574031486)" -8766702,HV441335,2012-08-21 22:30:00,023XX N MILWAUKEE AVE,0620,BURGLARY,UNLAWFUL ENTRY,OTHER,4672,False,False,1414,14,35,22,05,1157125,1915354,2012,2012-03-09 18:32:27,41.923501123,-87.698087331,"(41.923501123, -87.698087331)" -9497756,HX152161,2014-02-15 11:52:00,071XX S CONSTANCE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,4239,False,True,324,3,5,43,08B,1189655,1857726,2014,ERROR,41.764643801,-87.580418177,"(41.764643801, -87.580418177)" -7234599,HR643869,2009-11-15 00:30:00,002XX W NORTH AVE,0890,THEFT,FROM BUILDING,OTHER,3514,False,False,1814,18,43,7,06,1174055,1911024,2009,2010-05-01 11:53:51,41.911258405,-87.636010015,"(41.911258405, -87.636010015)" -3179722,HK182024,2004-02-13 23:00:00,013XX W IRVING PARK RD,0810,THEFT,OVER $500,STREET,4624,False,False,1923,19,47,6,06,1166363,1926630,2004,2014-04-12 12:43:35,41.954250222,-87.663819997,"(41.954250222, -87.663819997)" -4222202,HL539526,2005-08-10 01:50:00,043XX S LAMON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,CHA PARKING LOT/GROUNDS,4720,False,False,814,8,23,56,14,1144637,1875298,2005,ERROR,41.813827102,-87.744982032,"(41.813827102, -87.744982032)" -7219347,HR634999,2009-11-09 19:00:00,052XX S RACINE AVE,0560,ASSAULT,SIMPLE,APARTMENT,2784,False,True,934,9,16,61,08A,1169250,1870146,2009,ERROR,41.799191555,-87.654848486,"(41.799191555, -87.654848486)" -7793169,HS594082,2010-11-01 18:00:00,019XX W 95TH ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,LIBRARY,553,False,False,2221,22,19,72,26,1164769,1841686,2010,2010-07-11 08:22:48,41.721189215,-87.672083692,"(41.721189215, -87.672083692)" -2103641,HH335780,2002-04-28 01:50:00,014XX W MARQUETTE RD,0560,ASSAULT,SIMPLE,STREET,4679,False,False,725,NA,17,67,08A,1167596,1860349,2002,ERROR,41.772343059,-87.661194963,"(41.772343059, -87.661194963)" -8223696,HT457644,2011-08-20 17:25:00,098XX S HALSTED ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,1911,True,False,2223,22,21,73,03,1172676,1839503,2011,ERROR,41.715028437,-87.643186054,"(41.715028437, -87.643186054)" -7585036,HS388608,2010-07-01 06:25:00,003XX N OAKLEY BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,2283,False,False,1332,12,27,28,07,1160973,1902387,2010,2010-02-07 11:19:23,41.887839582,-87.684308839,"(41.887839582, -87.684308839)" -5931509,HN704677,2007-11-12 23:30:00,079XX S STATE ST,0320,ROBBERY,STRONGARM - NO WEAPON,CTA PLATFORM,3105,False,False,623,6,6,44,03,1177618,1852608,2007,2007-12-12 01:05:15,41.750880081,-87.624691153,"(41.750880081, -87.624691153)" -5710926,HN519237,2007-08-09 16:00:00,012XX N ROCKWELL ST,0890,THEFT,FROM BUILDING,RESIDENCE,3673,False,False,1423,14,26,24,06,1158874,1908481,2007,ERROR,41.904605346,-87.691849732,"(41.904605346, -87.691849732)" -3611691,HK705389,2004-10-23 13:30:00,010XX S WELLS ST,0810,THEFT,OVER $500,STREET,2968,False,False,131,1,2,32,06,1174825,1895931,2004,2014-04-12 12:43:35,41.86982516,-87.633633456,"(41.86982516, -87.633633456)" -4713760,HM209421,2006-03-02 13:48:00,072XX S PAULINA ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,2117,True,False,735,7,17,67,18,1166303,1856763,2006,ERROR,41.762530229,-87.666036716,"(41.762530229, -87.666036716)" -2607516,HJ206193,2003-02-26 14:20:00,034XX S DR MARTIN LUTHER KING JR DR,1330,CRIMINAL TRESPASS,TO LAND,DRUG STORE,3921,False,False,2122,NA,4,35,26,1179511,1882404,2003,ERROR,41.832600096,-87.616844359,"(41.832600096, -87.616844359)" -6611578,HP684171,2008-11-15 03:25:00,009XX W BELMONT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESTAURANT,1170,True,False,1924,19,44,6,14,1169428,1921475,2008,ERROR,41.940038439,-87.652703194,"(41.940038439, -87.652703194)" -8020502,HT251222,2011-04-14 22:00:00,066XX S TALMAN AVE,0820,THEFT,$500 AND UNDER,STREET,490,False,False,831,8,15,66,06,1159896,1860350,2011,ERROR,41.772507471,-87.689421041,"(41.772507471, -87.689421041)" -3795590,HL160354,2005-01-28 23:00:00,036XX N MARSHFIELD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2815,False,False,1923,19,47,6,14,1164641,1923969,2005,ERROR,41.946985052,-87.670225966,"(41.946985052, -87.670225966)" -4925940,HM538019,2006-08-13 16:09:24,060XX S VERNON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,OTHER,3128,True,True,313,3,20,42,08B,1180344,1865263,2006,ERROR,41.785544659,-87.61431417,"(41.785544659, -87.61431417)" -8500347,HV177396,2012-02-29 11:20:00,001XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA GARAGE / OTHER PROPERTY,4130,True,False,113,1,42,32,11,1175354,1901695,2012,2012-01-03 08:18:16,41.885630077,-87.631518326,"(41.885630077, -87.631518326)" -2617371,HJ216694,2003-03-03 18:00:00,073XX S SOUTH SHORE DR,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,1366,False,False,334,NA,7,43,26,1195387,1857193,2003,ERROR,41.76304161,-87.559426843,"(41.76304161, -87.559426843)" -7970463,HT202960,2011-02-15 17:00:00,077XX S NORMAL AVE,1110,DECEPTIVE PRACTICE,BOGUS CHECK,APARTMENT,4925,False,False,621,6,17,69,11,1174337,1853795,2011,ERROR,41.754210881,-87.636679059,"(41.754210881, -87.636679059)" -6529891,HP602686,2008-10-01 02:46:00,002XX E 35TH ST,0820,THEFT,$500 AND UNDER,SIDEWALK,496,False,False,2112,2,2,35,06,1178613,1881880,2008,ERROR,41.831182706,-87.620155187,"(41.831182706, -87.620155187)" -7957427,HT189220,2011-03-05 02:00:00,044XX N MILWAUKEE AVE,0460,BATTERY,SIMPLE,SIDEWALK,4218,False,False,1623,16,45,15,08B,1141633,1928786,2011,2011-08-03 11:36:40,41.960660635,-87.754678083,"(41.960660635, -87.754678083)" -8157874,HT373208,2011-06-30 09:40:00,038XX W MADISON ST,2027,NARCOTICS,POSS: CRACK,GROCERY FOOD STORE,4416,True,False,1122,11,28,26,18,1150456,1899690,2011,ERROR,41.880650508,-87.723001331,"(41.880650508, -87.723001331)" -3216861,HK232167,2004-03-10 18:30:00,0000X W 111TH ST,0890,THEFT,FROM BUILDING,HOSPITAL BUILDING/GROUNDS,2419,False,False,522,5,34,49,06,1177728,1831317,2004,ERROR,41.692452292,-87.624930074,"(41.692452292, -87.624930074)" -2177171,HH431013,2002-06-10 05:51:58,046XX W 82ND ST,0460,BATTERY,SIMPLE,APARTMENT,4946,False,False,834,NA,13,70,08B,1146910,1849636,2002,ERROR,41.743363318,-87.737296807,"(41.743363318, -87.737296807)" -8393994,HT626631,2011-12-10 20:40:00,076XX S NORMAL AVE,0460,BATTERY,SIMPLE,STREET,3091,False,False,621,6,17,69,08B,1174322,1854368,2011,ERROR,41.755783597,-87.636717026,"(41.755783597, -87.636717026)" -3445477,HK002362,2004-07-23 21:30:00,021XX W SUPERIOR ST,0820,THEFT,$500 AND UNDER,RESIDENCE,26,False,False,1313,12,1,24,06,1162023,1904942,2004,2014-04-12 12:43:35,41.894828854,-87.680381499,"(41.894828854, -87.680381499)" -1393385,G083313,2001-02-09 22:06:39,063XX S ALBANY AV,2027,NARCOTICS,POSS: CRACK,STREET,1258,True,False,823,NA,NA,NA,18,1156765,1862558,2001,ERROR,41.778630305,-87.700838972,"(41.778630305, -87.700838972)" -8144026,HT378531,2011-07-02 23:00:00,033XX W 63RD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,2973,False,False,823,8,15,66,14,1155411,1862617,2011,2011-05-07 14:12:04,41.778819432,-87.705801296,"(41.778819432, -87.705801296)" -1971985,HH155823,2002-01-29 15:25:27,033XX W FLOURNOY ST,0460,BATTERY,SIMPLE,STREET,4324,False,False,1134,NA,NA,NA,08B,1154134,1896793,2002,ERROR,41.872628267,-87.709573266,"(41.872628267, -87.709573266)" -8586946,HV261160,2012-04-25 19:30:00,103XX S TORRENCE AVE,0810,THEFT,OVER $500,RESIDENCE,3718,False,False,434,4,10,51,06,1195470,1836864,2012,2012-10-05 12:01:25,41.707255067,-87.559792308,"(41.707255067, -87.559792308)" -4342220,HL629648,2005-09-22 17:00:00,021XX N LAWLER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3886,True,False,2522,25,31,19,08B,1142418,1913633,2005,ERROR,41.919064771,-87.752169679,"(41.919064771, -87.752169679)" -9280006,HW424844,2013-08-25 21:30:00,001XX W 95TH ST,0890,THEFT,FROM BUILDING,RESTAURANT,4034,False,False,634,6,21,49,06,1176654,1841992,2013,ERROR,41.721770166,-87.628542273,"(41.721770166, -87.628542273)" -2813480,HJ464372,2003-06-30 18:40:01,005XX S COLUMBUS DR,0820,THEFT,$500 AND UNDER,PARK PROPERTY,143,True,False,124,1,2,32,06,1178319,1898125,2003,2014-04-12 12:43:35,41.875766752,-87.620739245,"(41.875766752, -87.620739245)" -3561152,HK648531,2004-09-26 04:30:45,110XX S HALSTED ST,0560,ASSAULT,SIMPLE,OTHER,4272,True,False,2233,22,34,75,08A,1172920,1831338,2004,ERROR,41.692617079,-87.642532293,"(41.692617079, -87.642532293)" -10050076,HY238761,2015-04-28 07:55:00,082XX S MARYLAND AVE,031A,ROBBERY,ARMED: HANDGUN,ALLEY,3860,False,False,631,6,8,44,03,1183383,1850376,2015,2015-05-05 12:47:16,41.744622997,-87.603634954,"(41.744622997, -87.603634954)" -8001148,HT233085,2011-04-03 23:15:00,107XX S BENSLEY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,638,False,True,434,4,10,51,26,1194521,1834420,2011,2011-06-04 13:32:13,41.700571822,-87.563347504,"(41.700571822, -87.563347504)" -6228780,HP311138,2008-05-01 15:18:59,0000X E GARFIELD BLVD,0560,ASSAULT,SIMPLE,RESTAURANT,1289,False,False,233,2,20,40,08A,1177260,1868390,2008,ERROR,41.794195672,-87.625527066,"(41.794195672, -87.625527066)" -6779900,HR184949,2009-02-23 16:00:00,010XX W GARFIELD BLVD,0820,THEFT,$500 AND UNDER,RESIDENCE,477,False,False,712,7,16,68,06,1170399,1868173,2009,2009-06-04 15:49:19,41.79375246,-87.65069229,"(41.79375246, -87.65069229)" -7426826,HS229492,2010-03-28 01:59:00,066XX N OLMSTED AVE,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),643,True,False,1612,16,41,9,08B,1124889,1943652,2010,ERROR,42.001748276,-87.815908566,"(42.001748276, -87.815908566)" -2466429,HH796219,2002-11-22 20:00:00,074XX S INDIANA AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,4674,False,True,323,NA,6,69,26,1178843,1855836,2002,ERROR,41.759710302,-87.620104123,"(41.759710302, -87.620104123)" -4607990,HM202545,2006-02-26 12:00:00,069XX S CORNELL AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,1838,False,False,332,3,5,43,05,1188596,1859060,2006,2006-05-03 04:52:17,41.768329782,-87.584257056,"(41.768329782, -87.584257056)" -4704001,HM309457,2006-04-22 00:00:00,043XX W 59TH ST,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,RESIDENTIAL YARD (FRONT/BACK),3755,False,False,813,8,13,62,14,1148566,1865172,2006,ERROR,41.785965095,-87.730830299,"(41.785965095, -87.730830299)" -4742590,HM348904,2006-05-13 16:30:00,029XX E 80TH ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,693,True,False,422,4,7,46,15,1196921,1852523,2006,ERROR,41.75018879,-87.553959645,"(41.75018879, -87.553959645)" -6917090,HR321572,2009-05-14 22:30:00,022XX N NAGLE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3547,True,True,2512,25,36,19,08B,1133001,1914445,2009,2009-03-06 14:53:51,41.921462904,-87.786750394,"(41.921462904, -87.786750394)" -6072784,HP171029,2008-02-11 20:52:00,013XX S CANAL ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,GROCERY FOOD STORE,3576,False,False,131,1,2,28,11,1173296,1893975,2008,ERROR,41.864491821,-87.639304867,"(41.864491821, -87.639304867)" -8412665,HT645859,2011-12-24 07:30:00,021XX N CALIFORNIA AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,SIDEWALK,1132,False,False,1431,14,1,22,03,1157384,1914494,2011,2012-12-01 19:07:21,41.921135948,-87.69715911,"(41.921135948, -87.69715911)" -3341445,HK378381,2004-05-20 22:30:00,002XX E OHIO ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),3433,False,False,1834,18,42,8,06,1178331,1904297,2004,2014-04-12 12:43:35,41.892702762,-87.620506953,"(41.892702762, -87.620506953)" -6468782,HP546433,2008-09-01 02:01:30,037XX N HALSTED ST,0460,BATTERY,SIMPLE,SIDEWALK,4456,False,False,2324,19,46,6,08B,1170291,1925093,2008,2008-09-10 20:44:50,41.949947525,-87.649425319,"(41.949947525, -87.649425319)" -8339679,HT573293,2011-11-03 13:20:00,007XX E 60TH ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE,4190,False,False,313,3,20,42,26,1182232,1865350,2011,2011-04-11 10:08:19,41.785739862,-87.607389268,"(41.785739862, -87.607389268)" -1950234,HH139194,2002-01-18 17:00:00,009XX W HURON ST,0810,THEFT,OVER $500,OTHER,4875,False,False,1323,NA,NA,NA,06,1169707,1905109,2002,2014-04-12 12:43:35,41.895123178,-87.652155546,"(41.895123178, -87.652155546)" -7041908,HR449221,2009-07-26 01:00:00,015XX N OAKLEY BLVD,0810,THEFT,OVER $500,STREET,2985,False,False,1424,14,1,24,06,1160755,1910100,2009,ERROR,41.9090092,-87.684895322,"(41.9090092, -87.684895322)" -6768049,HR182077,2009-02-21 17:10:00,119XX S MICHIGAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1367,False,False,532,5,9,53,14,1178941,1825981,2009,ERROR,41.677782065,-87.620650719,"(41.677782065, -87.620650719)" -3758036,HL123864,2005-01-14 07:45:00,068XX S CARPENTER ST,031A,ROBBERY,ARMED: HANDGUN,STREET,3785,False,False,724,7,17,68,03,1170445,1859718,2005,ERROR,41.770549943,-87.65076972,"(41.770549943, -87.65076972)" -9421792,HW565556,2013-12-10 12:10:00,065XX S SANGAMON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,3539,False,True,723,7,17,68,08B,1171144,1861336,2013,ERROR,41.774974679,-87.648160214,"(41.774974679, -87.648160214)" -7746209,HS553647,2010-10-08 08:30:00,075XX S KINGSTON AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,1033,False,True,421,4,7,43,14,1194540,1855586,2010,ERROR,41.758652752,-87.562583957,"(41.758652752, -87.562583957)" -3024764,HJ733776,2003-11-01 00:00:00,086XX S HERMITAGE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,4585,False,False,614,6,18,71,05,1166139,1847570,2003,ERROR,41.73730682,-87.666898779,"(41.73730682, -87.666898779)" -6155450,HP244652,2008-03-26 09:00:00,047XX S KEDVALE AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,11,False,False,815,8,23,57,06,1149453,1872819,2008,ERROR,41.806932525,-87.727380443,"(41.806932525, -87.727380443)" -2806099,HJ459080,2003-06-28 11:01:33,052XX S MARSHFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3964,False,False,932,9,16,61,08B,1166277,1869726,2003,ERROR,41.798102902,-87.665763163,"(41.798102902, -87.665763163)" -1454319,G168841,2001-03-24 21:20:00,014XX S LOOMIS ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CHA PARKING LOT/GROUNDS,4558,True,False,1231,NA,NA,NA,18,1167225,1893379,2001,ERROR,41.862988863,-87.661608429,"(41.862988863, -87.661608429)" -5328640,HN178376,2007-02-15 17:43:21,0000X W 47TH ST,1330,CRIMINAL TRESPASS,TO LAND,PARK PROPERTY,1763,True,False,231,2,3,38,26,1176599,1873813,2007,ERROR,41.809091808,-87.627787677,"(41.809091808, -87.627787677)" -5030418,HM631435,2006-09-30 04:01:00,012XX S SAWYER AVE,0560,ASSAULT,SIMPLE,RESIDENCE,1035,True,False,1022,10,24,29,08A,1154859,1893942,2006,2006-06-10 04:52:45,41.86479033,-87.706987824,"(41.86479033, -87.706987824)" -9694653,HX345023,2014-07-14 16:10:00,038XX W CHICAGO AVE,2028,NARCOTICS,POSS: SYNTHETIC DRUGS,OTHER,1780,True,False,1112,11,27,23,18,1150812,1905031,2014,ERROR,41.89529982,-87.7215543,"(41.89529982, -87.7215543)" -2506466,HH847658,2002-12-19 09:26:25,010XX S LOOMIS ST,0460,BATTERY,SIMPLE,SIDEWALK,2190,False,False,1231,NA,2,28,08B,1167166,1895406,2002,ERROR,41.868552388,-87.661766802,"(41.868552388, -87.661766802)" -3995692,HL357532,2005-05-14 23:00:00,106XX S MACKINAW AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4448,False,False,432,4,10,52,14,1200233,1834857,2005,ERROR,41.70162895,-87.542418081,"(41.70162895, -87.542418081)" -1406698,G119938,2001-03-01 16:31:26,023XX W MADISON ST,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,1768,False,False,1332,NA,NA,NA,03,1161051,1900007,2001,ERROR,41.881307035,-87.684088522,"(41.881307035, -87.684088522)" -2063190,HH283739,2002-04-03 19:45:00,040XX N LINCOLN AV,1330,CRIMINAL TRESPASS,TO LAND,DRUG STORE,622,True,False,1912,NA,NA,NA,26,1162045,1927127,2002,ERROR,41.955705485,-87.679679583,"(41.955705485, -87.679679583)" -2187834,HH444731,2002-06-15 21:22:16,004XX E 75TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,1461,False,False,323,NA,6,69,07,1180456,1855421,2002,ERROR,41.758534647,-87.61420526,"(41.758534647, -87.61420526)" -4856312,HM458067,2006-07-06 11:34:00,037XX S WESTERN AVE,0460,BATTERY,SIMPLE,CTA BUS,2800,False,False,913,9,12,59,08B,1161018,1879907,2006,ERROR,41.826151267,-87.684767164,"(41.826151267, -87.684767164)" -4948851,HM562638,2006-08-25 20:00:00,069XX S LOOMIS BLVD,0890,THEFT,FROM BUILDING,RESIDENCE,3312,False,False,734,7,17,67,06,1168156,1858673,2006,ERROR,41.767731872,-87.65919032,"(41.767731872, -87.65919032)" -6687849,HR102460,2009-01-02 15:29:00,105XX S EGGLESTON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,1562,False,False,2233,22,34,49,18,1175109,1835065,2009,2009-02-01 16:25:12,41.702796067,-87.634407275,"(41.702796067, -87.634407275)" -7550137,HS346624,2010-06-07 05:46:00,007XX W GARFIELD BLVD,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,4436,False,False,934,9,3,61,05,1172153,1868433,2010,ERROR,41.794427528,-87.644252869,"(41.794427528, -87.644252869)" -8453368,HV131074,2012-01-23 22:00:00,068XX N SHERIDAN RD,0820,THEFT,$500 AND UNDER,STREET,44,False,False,2431,24,49,1,06,1167006,1945516,2012,ERROR,42.006060138,-87.660911233,"(42.006060138, -87.660911233)" -1754134,G565506,2001-09-20 22:05:00,007XX E 111 ST,0460,BATTERY,SIMPLE,POLICE FACILITY/VEH PARKING LOT,715,False,False,531,NA,NA,NA,08B,1183305,1831462,2001,ERROR,41.692722515,-87.604507439,"(41.692722515, -87.604507439)" -2522777,HJ100697,2002-12-31 23:30:00,116XX S VINCENNES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2478,False,False,2234,NA,34,75,14,1165846,1827777,2002,ERROR,41.682997842,-87.668532113,"(41.682997842, -87.668532113)" -1864439,G708189,2001-11-25 13:30:00,007XX N LARAMIE AV,0325,ROBBERY,VEHICULAR HIJACKING,ALLEY,1350,False,False,1524,NA,NA,NA,03,1141513,1904551,2001,ERROR,41.894159515,-87.755719492,"(41.894159515, -87.755719492)" -6934825,HR340739,2009-05-25 21:45:00,061XX S RACINE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,1582,True,False,713,7,16,67,18,1169326,1864268,2009,ERROR,41.783059997,-87.654739922,"(41.783059997, -87.654739922)" -7981176,HT213299,2011-03-21 13:59:00,001XX W 35TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,CTA TRAIN,4539,True,False,924,9,11,34,18,1175731,1881812,2011,ERROR,41.831061278,-87.630731407,"(41.831061278, -87.630731407)" -4065862,HL408235,2005-06-08 22:48:24,002XX W 87TH ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,WAREHOUSE,3963,False,False,622,6,21,44,06,1176403,1847255,2005,ERROR,41.736218161,-87.629303966,"(41.736218161, -87.629303966)" -2034759,HH247819,2002-03-16 10:00:00,018XX N DRAKE AV,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,776,False,False,1422,NA,NA,NA,07,1152570,1911949,2002,ERROR,41.914248882,-87.714914388,"(41.914248882, -87.714914388)" -5544920,HN356358,2007-05-21 17:00:00,090XX S LAFLIN ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,3133,False,False,2222,22,21,73,26,1167966,1844587,2007,ERROR,41.729082013,-87.660290623,"(41.729082013, -87.660290623)" -4959301,HM571754,2006-08-29 22:30:00,015XX E 87TH ST,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,1634,True,False,412,4,8,48,05,1187761,1847553,2006,2008-02-05 01:04:48,41.736773407,-87.587683232,"(41.736773407, -87.587683232)" -7521660,HS325090,2010-05-25 00:00:00,030XX N PARKSIDE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3579,False,False,2514,25,31,19,14,1138129,1919810,2010,ERROR,41.93609381,-87.767778496,"(41.93609381, -87.767778496)" -4982342,HM596076,2006-09-12 00:00:00,014XX N DAMEN AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,35,False,False,1424,14,1,24,06,1162762,1909616,2006,2014-04-12 12:43:35,41.907639198,-87.677536132,"(41.907639198, -87.677536132)" -7403488,HS205438,2010-03-13 04:25:00,080XX S MAY ST,0810,THEFT,OVER $500,STREET,2170,False,False,612,6,21,71,06,1170015,1851280,2010,ERROR,41.74740433,-87.652590689,"(41.74740433, -87.652590689)" -3140084,HK132250,2004-01-18 11:06:46,024XX N RACINE AVE,0460,BATTERY,SIMPLE,STREET,2504,False,False,1933,19,32,7,08B,1167856,1916386,2004,ERROR,41.926108075,-87.658627954,"(41.926108075, -87.658627954)" -5902358,HN700127,2007-11-10 11:00:00,003XX S WACKER DR,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),749,False,False,112,1,2,32,06,1174015,1898799,2007,2014-04-12 12:43:35,41.877713219,-87.636521697,"(41.877713219, -87.636521697)" -4572931,HM163096,2006-02-04 14:00:00,045XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),42,False,False,914,9,12,61,06,1161174,1874190,2006,2014-04-12 12:43:35,41.810459905,-87.684353246,"(41.810459905, -87.684353246)" -10012442,HY202116,2015-03-28 21:12:00,050XX N FRANCISCO AVE,2093,NARCOTICS,FOUND SUSPECT NARCOTICS,APARTMENT,1022,True,False,2031,20,40,4,26,1156167,1933292,2015,2015-04-04 12:43:24,41.972743598,-87.701121216,"(41.972743598, -87.701121216)" -6554328,HN700877,2007-11-11 04:00:00,076XX S RHODES AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,4899,False,False,624,6,6,69,04B,1181189,1854379,2007,ERROR,41.755658442,-87.611550936,"(41.755658442, -87.611550936)" -4398984,HL638310,2005-10-05 11:25:00,011XX N MONTICELLO AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,3766,True,False,1112,11,27,23,18,1151799,1907151,2005,ERROR,41.901097939,-87.717873412,"(41.901097939, -87.717873412)" -2797787,HJ448611,2003-06-23 07:00:00,057XX S ABERDEEN ST,0890,THEFT,FROM BUILDING,STREET,1540,False,False,712,7,16,68,06,1169915,1867003,2003,ERROR,41.79055238,-87.652501059,"(41.79055238, -87.652501059)" -4471342,HL761655,2005-11-29 09:57:17,071XX S LAFAYETTE AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,3232,True,False,731,7,6,69,20,1177037,1857432,2005,ERROR,41.764130805,-87.626675,"(41.764130805, -87.626675)" -2751617,HJ389272,2003-05-27 08:16:40,028XX W 24TH BLVD,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",2758,False,False,1033,NA,12,30,08B,1157546,1887831,2003,ERROR,41.847966869,-87.697289982,"(41.847966869, -87.697289982)" -8965579,HW113481,2013-01-11 03:00:00,023XX N LOWELL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,3640,False,False,2522,25,31,20,26,1146957,1915184,2013,2013-05-02 14:37:42,41.923235246,-87.735452966,"(41.923235246, -87.735452966)" -5171598,HM762872,2006-12-08 13:45:00,044XX W GLADYS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,1177,False,True,1131,11,24,26,08B,1146659,1898021,2006,ERROR,41.876143827,-87.736986299,"(41.876143827, -87.736986299)" -5510052,HN329067,2007-05-08 00:30:00,049XX W BELDEN AVE,0890,THEFT,FROM BUILDING,APARTMENT,2656,False,True,2522,25,31,19,06,1142729,1914878,2007,ERROR,41.922475392,-87.750995953,"(41.922475392, -87.750995953)" -6808651,HR218704,2009-03-16 14:17:54,004XX N CENTRAL AVE,0460,BATTERY,SIMPLE,SIDEWALK,2744,False,False,1512,15,29,25,08B,1138919,1902473,2009,ERROR,41.888504748,-87.765297105,"(41.888504748, -87.765297105)" -4991519,HM449098,2006-07-01 22:02:41,071XX S MERRILL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,4231,True,False,333,3,5,43,18,1191746,1858246,2006,ERROR,41.766020241,-87.572737379,"(41.766020241, -87.572737379)" -4052767,HL403567,2005-06-06 19:30:00,025XX S WASHTENAW AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,3538,False,False,1034,10,12,30,04B,1158738,1886739,2005,ERROR,41.844945991,-87.692945166,"(41.844945991, -87.692945166)" -8032674,HT264580,2011-04-21 13:30:00,098XX S ELLIS AVE,0890,THEFT,FROM BUILDING,RESIDENCE,4298,False,False,511,5,8,50,06,1184583,1839875,2011,ERROR,41.715779068,-87.599566057,"(41.715779068, -87.599566057)" -6241707,HP331800,2008-05-12 08:00:00,047XX W HARRISON ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,3322,False,False,1131,11,24,25,26,1144898,1896892,2008,ERROR,41.873079106,-87.743480642,"(41.873079106, -87.743480642)" -3134450,HK125197,2004-01-14 12:00:00,064XX S WINCHESTER AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3991,True,False,726,7,15,67,07,1164415,1862214,2004,ERROR,41.777528496,-87.672803106,"(41.777528496, -87.672803106)" -1329888,G024689,2001-01-12 11:00:00,109XX S EDBROOKE AV,4650,OTHER OFFENSE,SEX OFFENDER: FAIL TO REGISTER,RESIDENCE,3264,True,False,513,NA,NA,NA,26,1179220,1832688,2001,ERROR,41.696180708,-87.619426047,"(41.696180708, -87.619426047)" -5756722,HN564951,2007-09-02 06:30:00,014XX W 77TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2012,False,False,612,6,17,71,14,1167956,1853723,2007,2007-06-09 01:56:11,41.754152713,-87.660065416,"(41.754152713, -87.660065416)" -8280908,HT515268,2011-09-26 15:06:00,057XX S SACRAMENTO AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,4992,False,False,824,8,14,63,05,1157396,1866517,2011,2011-01-10 09:51:22,41.789481609,-87.69841849,"(41.789481609, -87.69841849)" -7835980,HS637015,2010-11-28 22:35:00,103XX S ALBANY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4609,False,True,2211,22,19,74,08B,1157431,1835903,2010,2010-08-12 16:32:38,41.705471163,-87.699117536,"(41.705471163, -87.699117536)" -3607193,HK688263,2004-10-15 11:56:00,081XX S WOODLAWN AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,756,False,False,411,4,8,45,07,1185584,1851347,2004,ERROR,41.74723602,-87.595539795,"(41.74723602, -87.595539795)" -9468000,HX121120,2014-01-18 23:00:00,015XX S KEDZIE AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,155,False,False,1022,10,24,29,06,1155311,1892547,2014,ERROR,41.860953237,-87.705365981,"(41.860953237, -87.705365981)" -6576153,HP648649,2008-10-25 10:30:00,041XX W POTOMAC AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4740,False,False,2534,25,37,23,14,1148653,1908301,2008,ERROR,41.904315009,-87.729399290999993,"(41.904315009, -87.729399291)" -3864612,HL239886,2005-01-21 00:01:00,100XX W OHARE ST,0890,THEFT,FROM BUILDING,AIRPORT/AIRCRAFT,4122,False,False,1651,16,41,76,06,1100635,1934208,2005,ERROR,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -6466118,HP543667,2008-08-30 13:24:00,001XX N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,3056,True,False,122,1,42,32,06,1176390,1900949,2008,2008-02-09 08:07:10,41.883559699,-87.627736496,"(41.883559699, -87.627736496)" -5519425,HL290196,2005-04-12 11:30:00,010XX N RIDGEWAY AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,ALLEY,2680,True,False,1112,NA,27,23,26,NA,NA,2005,2007-08-08 02:59:32,NA,NA, -2939383,HJ625230,2003-09-11 10:00:00,021XX N DAMEN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,3838,False,False,1432,14,32,22,26,1162713,1914372,2003,ERROR,41.92069102,-87.677582552,"(41.92069102, -87.677582552)" -2424495,HH744202,2001-10-19 13:00:00,073XX S HALSTED ST,1120,DECEPTIVE PRACTICE,FORGERY,CURRENCY EXCHANGE,4149,False,False,733,NA,17,68,10,1172207,1855826,2001,ERROR,41.759831266,-87.644425197,"(41.759831266, -87.644425197)" -9212260,HW358008,2013-07-11 15:00:00,052XX W LE MOYNE ST,0810,THEFT,OVER $500,APARTMENT,4849,False,True,2532,25,37,25,06,1141354,1909518,2013,2013-12-07 09:06:47,41.907792476,-87.756180729,"(41.907792476, -87.756180729)" -4506402,HL736000,2005-11-15 03:42:50,0000X E BURTON PL,2022,NARCOTICS,POSS: COCAINE,STREET,2650,True,False,1824,18,43,8,18,1176556,1910448,2005,ERROR,41.909621673,-87.626839707,"(41.909621673, -87.626839707)" -1344183,G043772,2001-01-21 16:50:00,042XX S WENTWORTH AV,1330,CRIMINAL TRESPASS,TO LAND,GAS STATION,3960,False,False,935,NA,NA,NA,26,1175608,1876581,2001,ERROR,41.816709722,-87.631339516,"(41.816709722, -87.631339516)" -1563501,G320369,2001-06-03 04:40:00,035XX S FEDERAL ST,0460,BATTERY,SIMPLE,CHA APARTMENT,791,False,True,211,NA,NA,NA,08B,1176255,1881268,2001,ERROR,41.829556721,-87.628825201,"(41.829556721, -87.628825201)" -3340028,HK377408,2004-05-20 20:54:54,007XX S WESTERN AVE,1330,CRIMINAL TRESPASS,TO LAND,GROCERY FOOD STORE,555,True,False,1224,12,2,28,26,1160541,1896784,2004,ERROR,41.872473399,-87.68605047,"(41.872473399, -87.68605047)" -9985418,HY175099,2015-03-06 23:40:00,015XX N WELLS ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESTAURANT,3210,False,False,1821,18,43,8,11,1174460,1910637,2015,ERROR,41.910187414,-87.634533777,"(41.910187414, -87.634533777)" -5212650,HM793429,2006-12-24 11:45:00,041XX W VAN BUREN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1567,False,False,1132,11,24,26,14,1148616,1897735,2006,2007-02-01 06:08:05,41.875321473,-87.729808188,"(41.875321473, -87.729808188)" -10002890,HY192231,2015-03-20 16:27:00,033XX W 60TH ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,509,False,False,822,8,16,66,26,1154876,1864671,2015,ERROR,41.784466611,-87.70770788,"(41.784466611, -87.70770788)" -6237879,HP323989,2008-05-08 10:35:00,053XX S WESTERN BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,PARKING LOT/GARAGE(NON.RESID.),2025,False,False,915,9,16,63,07,1161471,1869210,2008,2008-11-05 13:01:30,41.796788001,-87.683402001,"(41.796788001, -87.683402001)" -9198183,HW343691,2013-07-01 12:30:00,078XX S LAFLIN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1113,False,False,612,6,17,71,14,1167515,1852777,2013,2013-02-07 08:31:12,41.751566217,-87.661708602,"(41.751566217, -87.661708602)" -9914993,HY104705,2015-01-05 05:00:00,045XX S DREXEL BLVD,0820,THEFT,$500 AND UNDER,APARTMENT,127,False,False,221,2,4,39,06,1182916,1875077,2015,2015-12-01 12:48:04,41.812415676,-87.604579073,"(41.812415676, -87.604579073)" -5812687,HN606869,2007-06-14 15:00:00,056XX S DORCHESTER AVE,0890,THEFT,FROM BUILDING,GAS STATION,2970,False,False,2133,2,5,41,06,1186553,1867773,2007,2007-10-10 01:49:09,41.792287561,-87.591469992,"(41.792287561, -87.591469992)" -1758189,G568662,2001-09-22 11:17:43,031XX W 26 ST,5001,OTHER OFFENSE,OTHER CRIME INVOLVING PROPERTY,PARKING LOT/GARAGE(NON.RESID.),992,True,False,1033,NA,NA,NA,26,1156100,1886534,2001,ERROR,41.844437017,-87.70263184,"(41.844437017, -87.70263184)" -6402809,HP474280,2008-07-23 16:00:00,089XX S YATES BLVD,0842,THEFT,AGG: FINANCIAL ID THEFT,RESIDENCE,1990,False,False,413,4,7,48,06,1193691,1845865,2008,2008-08-08 18:07:56,41.731998345,-87.566013112,"(41.731998345, -87.566013112)" -5475427,HN298043,2007-04-22 08:35:00,053XX S KEDZIE AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,1380,True,False,911,9,14,63,16,1155993,1869052,2007,ERROR,41.796466324,-87.703494798,"(41.796466324, -87.703494798)" -1523992,G255343,2001-05-04 09:55:00,056XX S ROCKWELL ST,141C,WEAPONS VIOLATION,UNLAWFUL USE OTHER DANG WEAPON,"SCHOOL, PUBLIC, BUILDING",3922,True,False,824,NA,NA,NA,15,1159962,1867094,2001,ERROR,41.791012589,-87.688993852,"(41.791012589, -87.688993852)" -2921705,HJ600586,2003-09-01 01:00:00,023XX N KARLOV AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3929,False,True,2525,25,31,20,08B,1148703,1915194,2003,ERROR,41.923229102,-87.729037228,"(41.923229102, -87.729037228)" -1854395,G695770,2001-11-19 10:10:00,066XX S PULASKI RD,0810,THEFT,OVER $500,COMMERCIAL / BUSINESS OFFICE,3532,False,False,833,NA,NA,NA,06,1150890,1860070,2001,2014-04-12 12:43:35,41.771919396,-87.722442165,"(41.771919396, -87.722442165)" -1908796,G765379,2001-12-23 04:20:00,055XX W VAN BUREN ST,0460,BATTERY,SIMPLE,RESIDENCE,1688,False,False,1522,NA,NA,NA,08B,1139450,1897421,2001,ERROR,41.874631745,-87.763470245,"(41.874631745, -87.763470245)" -8164922,HT399379,2011-07-15 23:40:00,076XX S CICERO AVE,0560,ASSAULT,SIMPLE,STREET,1389,False,False,833,8,13,65,08A,1145766,1853738,2011,ERROR,41.75464162,-87.741385158,"(41.75464162, -87.741385158)" -3254937,HK279665,2004-04-03 10:00:00,065XX N BOSWORTH AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,3491,False,False,2432,24,40,1,05,1164802,1943333,2004,ERROR,42.000117152,-87.669082287,"(42.000117152, -87.669082287)" -5390304,HN233940,2007-03-18 19:50:00,006XX N ALBANY AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,1362,False,True,1313,12,27,23,08B,1155550,1904304,2007,ERROR,41.893210839,-87.704172295,"(41.893210839, -87.704172295)" -8413638,HT647149,2011-12-25 17:30:00,069XX S CAMPBELL AVE,0330,ROBBERY,AGGRAVATED,SIDEWALK,1377,False,False,832,8,15,66,03,1160874,1858299,2011,ERROR,41.766859084,-87.685892542,"(41.766859084, -87.685892542)" -9527581,HX181802,2014-03-12 12:15:00,054XX S WINCHESTER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,1147,False,True,932,9,16,61,08B,1164316,1868765,2014,ERROR,41.795507366,-87.672981591,"(41.795507366, -87.672981591)" -5133690,HM731231,2006-11-20 14:00:00,073XX N HARLEM AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,2303,False,False,1611,16,41,9,26,1127349,1948389,2006,ERROR,42.014705871,-87.806751157,"(42.014705871, -87.806751157)" -1995039,HH153002,2002-01-28 07:00:00,074XX N DAMEN AV,0460,BATTERY,SIMPLE,RESIDENCE,794,False,True,2424,NA,NA,NA,08B,1161699,1949553,2002,ERROR,42.01725048,-87.680322966,"(42.01725048, -87.680322966)" -4296516,HL531043,2005-08-05 23:09:43,006XX N CENTRAL PARK AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,2630,True,False,1122,11,27,23,18,1152231,1903962,2005,ERROR,41.892338494,-87.716370862,"(41.892338494, -87.716370862)" -5458813,HN287100,2007-04-16 17:45:00,051XX S ASHLAND AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,PARKING LOT/GARAGE(NON.RESID.),4687,True,True,932,9,16,61,08B,1166579,1870797,2007,ERROR,41.801035411,-87.66462512,"(41.801035411, -87.66462512)" -1556046,G312776,2001-05-30 16:45:00,014XX E 69 ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE PORCH/HALLWAY,1587,False,False,332,NA,NA,NA,14,1187298,1859575,2001,ERROR,41.769773909,-87.588998442,"(41.769773909, -87.588998442)" -6713807,HR129777,2009-01-19 21:00:00,020XX N MOZART ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,4049,False,False,1414,14,35,22,14,1157024,1913723,2009,ERROR,41.919027585,-87.698502808,"(41.919027585, -87.698502808)" -1940740,HH119927,2002-01-11 12:00:00,047XX S UNION AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",3229,True,False,935,NA,NA,NA,08B,1172475,1873203,2002,ERROR,41.807509816,-87.642931616,"(41.807509816, -87.642931616)" -3362955,HK409648,2004-06-04 17:00:00,055XX W QUINCY ST,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,3449,False,False,1522,15,29,25,04A,1139492,1898492,2004,ERROR,41.877569945,-87.763289921,"(41.877569945, -87.763289921)" -1892993,G744161,2001-12-12 11:40:00,077XX W HOWARD ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,2824,False,False,1611,NA,NA,NA,06,1123943,1949779,2001,ERROR,42.018576967,-87.819253498,"(42.018576967, -87.819253498)" -4987543,HM599912,2006-09-13 23:41:57,032XX S LITUANICA AVE,1305,CRIMINAL DAMAGE,CRIMINAL DEFACEMENT,PARKING LOT/GARAGE(NON.RESID.),2748,True,False,924,9,11,60,14,1170787,1883697,2006,ERROR,41.836343419,-87.648816066,"(41.836343419, -87.648816066)" -8978243,HW122178,2013-01-04 11:00:00,017XX N LOTUS AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,2463,False,False,2532,25,37,25,26,1139764,1910834,2013,2013-12-02 12:25:23,41.91143294,-87.761989425,"(41.91143294, -87.761989425)" -9287934,HW432629,2013-09-01 03:30:00,023XX S HOMAN AVE,0460,BATTERY,SIMPLE,SIDEWALK,2341,False,False,1024,10,22,30,08B,1154021,1888439,2013,2013-02-09 12:27:03,41.849706206,-87.710210751,"(41.849706206, -87.710210751)" -3601383,HK694936,2004-09-18 00:00:00,002XX N KILBOURN AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,3628,False,False,1113,11,28,26,11,1146400,1900624,2004,ERROR,41.883291699,-87.737870956,"(41.883291699, -87.737870956)" -7719567,HS527233,2010-09-21 20:50:00,051XX W WELLINGTON AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,3751,False,True,2521,25,31,19,26,1141674,1919503,2010,2010-11-10 15:54:50,41.935186459,-87.754757729,"(41.935186459, -87.754757729)" -6550412,HP624139,2008-10-13 00:00:37,052XX S MARSHFIELD AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,2524,True,False,932,9,16,61,15,1166269,1870015,2008,ERROR,41.798896123,-87.66578427,"(41.798896123, -87.66578427)" -2902949,HJ579061,2003-07-16 15:58:00,046XX W 55TH ST,1206,DECEPTIVE PRACTICE,"THEFT BY LESSEE,MOTOR VEH",OTHER,4441,True,False,813,8,23,56,11,1146337,1867704,2003,ERROR,41.792955883,-87.738938839,"(41.792955883, -87.738938839)" -3505136,HK581743,2004-08-25 18:04:00,071XX W 64TH PL,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,4733,False,False,812,8,23,64,26,1129743,1860965,2004,ERROR,41.774761494,-87.799941841,"(41.774761494, -87.799941841)" -8081212,HT310002,2011-05-23 11:30:00,046XX N SHERIDAN RD,0460,BATTERY,SIMPLE,SIDEWALK,3485,False,False,2312,19,46,3,08B,1168819,1931361,2011,ERROR,41.967179243,-87.654653712,"(41.967179243, -87.654653712)" -1652291,G430211,2001-07-22 12:15:00,012XX N PARKSIDE AV,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,STREET,1369,True,False,2531,NA,NA,NA,22,1138416,1907506,2001,ERROR,41.902325047,-87.767022333,"(41.902325047, -87.767022333)" -7784284,HS576050,2010-10-21 19:27:56,008XX E 89TH ST,2027,NARCOTICS,POSS: CRACK,APARTMENT,4100,True,False,632,6,8,44,18,1183562,1846188,2010,2010-10-11 15:04:15,41.733126496,-87.603109289,"(41.733126496, -87.603109289)" -4392495,HL685535,2005-10-18 07:00:00,008XX N LATROBE AVE,0810,THEFT,OVER $500,STREET,4453,False,False,1524,15,37,25,06,1141162,1905112,2005,2014-04-12 12:43:35,41.895705443,-87.756994782,"(41.895705443, -87.756994782)" -8322510,HT548001,2011-10-17 17:30:00,067XX S CLYDE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,4763,False,False,331,3,5,43,26,1191419,1860438,2011,ERROR,41.772043187,-87.573864982,"(41.772043187, -87.573864982)" -5784220,HN581658,2007-06-08 23:40:00,003XX S WASHTENAW AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,2376,False,True,1125,11,2,27,08B,1158395,1898272,2007,ERROR,41.876600753,-87.693888703,"(41.876600753, -87.693888703)" -1473650,G192572,2001-04-05 10:10:00,028XX W ARTHINGTON ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,1925,True,False,1135,NA,NA,NA,18,1157618,1895874,2001,ERROR,41.870036252,-87.6968069,"(41.870036252, -87.6968069)" -7157534,HR565848,2009-10-01 15:40:00,079XX S DAMEN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,531,False,False,611,6,18,71,03,1164362,1852231,2009,2009-10-10 16:21:59,41.750134873,-87.673278237,"(41.750134873, -87.673278237)" -3712271,HK684159,2004-10-13 13:15:00,072XX S SOUTH CHICAGO AVE,5011,OTHER OFFENSE,LICENSE VIOLATION,RESIDENCE-GARAGE,824,False,False,323,3,5,69,26,1183382,1857501,2004,2007-11-06 15:52:33,41.764174754,-87.603417126,"(41.764174754, -87.603417126)" -1741181,G550640,2001-09-12 14:00:00,021XX W RANDOLPH ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,4543,False,True,1332,NA,NA,NA,20,1162226,1901155,2001,ERROR,41.884432772,-87.679741878,"(41.884432772, -87.679741878)" -6882076,HR288440,2009-04-25 18:00:00,046XX S RICHMOND ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4485,False,False,912,9,14,58,14,1157528,1873541,2009,ERROR,41.80875374,-87.697744048,"(41.80875374, -87.697744048)" -8303183,HT520944,2011-09-30 03:15:00,002XX E 121ST PL,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,2521,False,False,532,5,9,53,08B,1180264,1824414,2011,ERROR,41.673451854,-87.615855891,"(41.673451854, -87.615855891)" -9010374,HW157593,2013-02-15 12:30:00,051XX S CALIFORNIA AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),94,False,False,923,9,14,63,06,1158620,1870342,2013,ERROR,41.799953035,-87.693826098,"(41.799953035, -87.693826098)" -7689122,HS495203,2010-08-31 19:00:00,003XX E OHIO ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,4329,False,False,1834,18,42,8,11,1178952,1904236,2010,ERROR,41.892521195,-87.618228164,"(41.892521195, -87.618228164)" -1438982,G153765,2001-03-17 23:38:07,062XX S ST LAWRENCE AV,1821,NARCOTICS,MANU/DEL:CANNABIS 10GM OR LESS,STREET,4128,True,False,313,NA,NA,NA,18,1181276,1863401,2001,ERROR,41.780413719,-87.610954415,"(41.780413719, -87.610954415)" -9340354,HW484281,2013-10-07 23:00:00,096XX S WENTWORTH AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,2824,False,False,511,5,21,49,05,1176693,1840729,2013,ERROR,41.718303448,-87.628437301,"(41.718303448, -87.628437301)" -3044554,HJ746479,2003-11-08 10:25:00,018XX W 51ST ST,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,1194,True,False,932,9,16,61,18,1165175,1870833,2003,ERROR,41.801164057,-87.669773064,"(41.801164057, -87.669773064)" -6080834,HP159980,2008-02-05 10:10:00,010XX N HUDSON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,964,True,False,1823,18,27,8,18,1172947,1907120,2008,ERROR,41.900570272,-87.640196289,"(41.900570272, -87.640196289)" -4594393,HM187557,2006-02-18 03:50:00,027XX N MILWAUKEE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,4685,False,False,1412,14,35,22,14,1153678,1918136,2006,2014-04-12 12:43:35,41.931204528,-87.710678708,"(41.931204528, -87.710678708)" -9681055,HX331130,2014-07-04 15:00:00,021XX W PETERSON AVE,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,4484,True,False,2413,24,40,2,06,1161031,1939882,2014,2014-11-07 12:39:31,41.990726931,-87.683051337,"(41.990726931, -87.683051337)" -6696343,HR110836,2009-01-07 19:30:00,021XX W SHAKESPEARE AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,3344,False,False,1432,14,32,22,03,1161425,1914413,2009,2009-03-02 19:02:28,41.920830456,-87.682313785,"(41.920830456, -87.682313785)" -7313029,HS117588,2010-01-13 00:21:00,032XX N CLARK ST,2022,NARCOTICS,POSS: COCAINE,STREET,4814,True,False,1924,19,44,6,18,1169902,1921495,2010,ERROR,41.94008298,-87.650960519,"(41.94008298, -87.650960519)" -8914447,HV587762,2012-12-03 19:40:00,077XX S ASHLAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,4861,True,False,612,6,17,71,18,1167067,1853091,2012,2012-03-12 20:28:11,41.752437462,-87.663341352,"(41.752437462, -87.663341352)" -8813683,HV486788,2012-09-22 09:00:00,017XX E 56TH ST,0890,THEFT,FROM BUILDING,APARTMENT,3006,False,False,235,2,5,41,06,1188630,1868244,2012,ERROR,41.793530583,-87.583839014,"(41.793530583, -87.583839014)" -2915956,HJ592169,2003-08-28 08:00:00,078XX S GREENWOOD AVE,0560,ASSAULT,SIMPLE,RESIDENCE,3119,False,False,624,6,8,69,08A,1184870,1853297,2003,2007-11-06 15:52:33,41.752603788,-87.598095,"(41.752603788, -87.598095)" -5426156,HN256370,2007-03-29 18:30:00,0000X W CERMAK RD,0810,THEFT,OVER $500,STREET,1448,False,False,134,1,3,33,06,1176378,1889737,2007,2014-04-12 12:43:35,41.852793534,-87.628118788,"(41.852793534, -87.628118788)" -1331639,G028143,2001-01-12 21:00:00,034XX S KING DR,0820,THEFT,$500 AND UNDER,DRUG STORE,282,True,False,2122,NA,NA,NA,06,1179512,1882402,2001,2014-04-12 12:43:35,41.832594585,-87.616840751,"(41.832594585, -87.616840751)" -1947050,HH132691,2002-01-17 18:49:57,005XX E 44 PL,0460,BATTERY,SIMPLE,RESIDENCE,4529,False,False,222,NA,NA,NA,08B,1180563,1875665,2002,ERROR,41.814083626,-87.613191703,"(41.814083626, -87.613191703)" -2490949,HH828905,2002-12-07 18:00:00,008XX W 53RD ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,2258,False,False,934,NA,3,61,11,1171449,1869703,2002,ERROR,41.797928002,-87.646797215,"(41.797928002, -87.646797215)" -5985175,HN780490,2007-12-27 17:30:00,019XX E 79TH ST,031A,ROBBERY,ARMED: HANDGUN,OTHER,2491,True,False,414,4,8,43,03,1190626,1853018,2007,ERROR,41.751701272,-87.577010969,"(41.751701272, -87.577010969)" -2817048,HJ473101,2003-07-04 23:55:30,050XX N WESTERN AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,1995,False,False,2031,20,47,4,05,1159496,1933143,2003,ERROR,41.972266669,-87.688883926,"(41.972266669, -87.688883926)" -9456119,HX108965,2014-01-10 01:04:00,075XX S LAFAYETTE AVE,2028,NARCOTICS,POSS: SYNTHETIC DRUGS,STREET,1608,True,False,623,6,6,69,18,1177099,1855191,2014,2014-12-01 00:40:28,41.757979849,-87.626515246,"(41.757979849, -87.626515246)" -2798720,HJ444156,2003-06-21 15:58:37,001XX W LAKE ST,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,CTA PLATFORM,1268,False,False,113,1,42,32,03,1175497,1901776,2003,ERROR,41.885849135,-87.630990773,"(41.885849135, -87.630990773)" -7499449,HS302738,2010-05-11 17:56:00,045XX N BROADWAY,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,2688,False,False,2311,19,46,3,08B,1168079,1930569,2010,2010-12-05 14:32:35,41.965022021,-87.65739756,"(41.965022021, -87.65739756)" -3967996,HL332690,2005-05-03 13:20:00,014XX S CHRISTIANA AVE,0545,ASSAULT,PRO EMP HANDS NO/MIN INJURY,"SCHOOL, PUBLIC, BUILDING",2513,True,False,1021,10,24,29,08A,1154231,1892646,2005,ERROR,41.861246512,-87.709327807,"(41.861246512, -87.709327807)" -8209042,HT442926,2011-08-11 14:41:00,068XX S WOLCOTT AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,1871,True,False,726,7,17,67,18,1164911,1859184,2011,2011-11-08 15:42:15,41.769203304,-87.6710703,"(41.769203304, -87.6710703)" -4973670,HM585353,2006-09-06 07:50:00,094XX S LAFAYETTE AVE,0810,THEFT,OVER $500,STREET,4120,False,False,634,6,21,49,06,1177555,1842613,2006,2014-04-12 12:43:35,41.723453982,-87.625223371,"(41.723453982, -87.625223371)" -1393322,G107984,2001-02-22 22:15:00,087XX S PEORIA ST,0271,CRIM SEXUAL ASSAULT,ATTEMPT AGG: HANDGUN,STREET,1517,False,False,2222,NA,NA,NA,02,1171783,1847121,2001,ERROR,41.735952909,-87.646233916,"(41.735952909, -87.646233916)" -9297259,HW442278,2013-09-07 15:30:00,059XX S ELIZABETH ST,0560,ASSAULT,SIMPLE,RESIDENCE,1658,False,False,713,7,16,67,08A,1168974,1865056,2013,2013-10-09 09:12:36,41.785229979,-87.656007708,"(41.785229979, -87.656007708)" -8764812,HV435925,2012-08-17 15:00:00,053XX S MONITOR AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,2173,False,False,811,8,23,56,07,1138309,1868694,2012,ERROR,41.795821159,-87.768353304,"(41.795821159, -87.768353304)" -6872272,HR278952,2009-04-21 02:08:00,083XX S KEDZIE AVE,0610,BURGLARY,FORCIBLE ENTRY,BARBERSHOP,2575,False,False,834,8,18,70,05,1156456,1849198,2009,ERROR,41.741974607,-87.702331067,"(41.741974607, -87.702331067)" -3886460,HL262763,2005-03-29 08:00:00,062XX W DICKENS AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,926,False,False,2512,25,29,19,07,1134702,1913339,2005,ERROR,41.918397987,-87.780526574,"(41.918397987, -87.780526574)" -9247581,HW393661,2013-08-04 23:33:00,083XX S DORCHESTER AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,2059,True,True,412,4,8,45,08B,1187024,1850166,2013,2013-05-08 05:38:09,41.743961235,-87.590300673,"(41.743961235, -87.590300673)" -6240467,HP328601,2008-05-09 00:00:00,038XX N PACIFIC AVE,0890,THEFT,FROM BUILDING,RESIDENCE,957,False,False,1631,16,36,17,06,1122068,1924371,2008,2008-11-05 08:02:48,41.948885353,-87.82670641,"(41.948885353, -87.82670641)" -2325815,HH620831,2002-08-29 18:30:00,009XX E 82ND ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1157,False,False,631,NA,8,44,14,1184144,1850866,2002,ERROR,41.745949866,-87.600831299,"(41.745949866, -87.600831299)" -1481452,G218910,2001-04-14 10:15:00,017XX W 43 ST,0820,THEFT,$500 AND UNDER,STREET,248,False,False,914,NA,NA,NA,06,1165712,1876148,2001,2014-04-12 12:43:35,41.815737633,-87.667652714,"(41.815737633, -87.667652714)" -2193379,HH452636,2002-06-19 11:09:24,027XX E 76TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,509,False,False,421,NA,7,43,14,1195835,1855198,2002,ERROR,41.757556115,-87.557850794,"(41.757556115, -87.557850794)" -6970254,HR375030,2009-06-14 14:15:00,052XX W WOLFRAM ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,683,False,False,2514,25,31,19,05,1140877,1918484,2009,ERROR,41.932404942,-87.757711919,"(41.932404942, -87.757711919)" -7626585,HS431129,2010-07-26 19:16:00,012XX W WASHBURNE AVE,2220,LIQUOR LAW VIOLATION,ILLEGAL POSSESSION BY MINOR,STREET,4211,True,False,1231,12,2,28,22,1168368,1894493,2010,ERROR,41.866021153,-87.65738041,"(41.866021153, -87.65738041)" -8990632,HW137651,2013-01-30 12:12:00,060XX S TALMAN AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,1914,True,False,825,8,15,66,05,1159702,1864538,2013,2013-05-02 08:59:06,41.784003919,-87.690017346,"(41.784003919, -87.690017346)" -3647659,HK742033,2004-11-10 09:15:00,062XX S COTTAGE GROVE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,3824,False,True,313,3,20,42,08B,1182595,1863841,2004,ERROR,41.781590611,-87.606105147,"(41.781590611, -87.606105147)" -6003770,HP103458,2008-01-03 00:06:00,056XX S TRIPP AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,2815,True,False,813,8,13,62,15,1148949,1867064,2008,2008-09-01 10:07:35,41.791149667,-87.729377285,"(41.791149667, -87.729377285)" -6025842,HP129074,2008-01-02 16:00:00,069XX S KIMBARK AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3731,False,False,321,3,5,69,14,1185895,1859153,2008,ERROR,41.768649107,-87.59415445,"(41.768649107, -87.59415445)" -4800609,HM411215,2006-05-17 20:00:00,114XX S DR MARTIN LUTHER KING JR DR,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,3162,False,True,531,5,9,49,26,1180987,1829335,2006,ERROR,41.686939238,-87.613059096,"(41.686939238, -87.613059096)" -1666539,G443084,2001-07-27 21:11:26,048XX W FLETCHER ST,0460,BATTERY,SIMPLE,RESIDENCE,2067,True,False,2521,NA,NA,NA,08B,1143266,1920538,2001,ERROR,41.937996967,-87.748881061,"(41.937996967, -87.748881061)" -5182497,HM771133,2006-12-13 02:45:33,037XX W ROOSEVELT RD,0460,BATTERY,SIMPLE,STREET,1387,False,False,1011,10,24,29,08B,1151547,1894410,2006,2007-11-06 15:52:33,41.866140241,-87.719133978,"(41.866140241, -87.719133978)" -2653415,HJ264288,2003-03-27 17:55:45,035XX S RHODES AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,1255,False,False,212,NA,4,35,08B,1180131,1881336,2003,ERROR,41.829655213,-87.614602295,"(41.829655213, -87.614602295)" -1351172,G053225,2001-01-25 20:00:00,023XX W CULLERTON ST,0820,THEFT,$500 AND UNDER,STREET,16,False,False,1223,NA,NA,NA,06,1161315,1890317,2001,2014-04-12 12:43:35,41.854711274,-87.683388522,"(41.854711274, -87.683388522)" -10107538,HY295865,2015-06-10 18:55:00,031XX W VAN BUREN ST,2024,NARCOTICS,POSS: HEROIN(WHITE),PARK PROPERTY,515,True,False,1134,11,28,27,18,1155706,1897956,2015,ERROR,41.875788166,-87.703770398,"(41.875788166, -87.703770398)" -2379764,HH688374,2002-10-02 22:17:34,012XX E 93RD ST,0560,ASSAULT,SIMPLE,OTHER,3430,False,True,413,NA,8,47,08A,1186314,1843608,2002,ERROR,41.725982183,-87.593108809,"(41.725982183, -87.593108809)" -2267732,HH544517,2002-07-29 18:20:00,024XX N MONTICELLO AVE,0460,BATTERY,SIMPLE,APARTMENT,1972,False,False,2524,NA,35,22,08B,1151599,1915885,2002,ERROR,41.925068771,-87.718378015,"(41.925068771, -87.718378015)" -9401609,HW544488,2013-11-22 15:00:00,022XX W 47TH ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,1599,False,True,931,9,12,61,26,1161952,1873419,2013,ERROR,41.80832803,-87.681521068,"(41.80832803, -87.681521068)" -1724872,G526711,2001-09-02 23:30:00,008XX W BARRY AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,1898,False,False,1932,NA,NA,NA,07,1170165,1920835,2001,ERROR,41.938266163,-87.650013252,"(41.938266163, -87.650013252)" -7236503,HR651141,2009-11-19 12:30:00,045XX N KEDZIE AVE,0843,THEFT,ATTEMPT FINANCIAL IDENTITY THEFT,RESIDENCE,1452,False,False,1724,17,33,14,06,1154268,1930085,2009,ERROR,41.963981641,-87.708190292,"(41.963981641, -87.708190292)" -4531738,HM116986,2006-01-10 17:40:00,018XX W ADDISON ST,0460,BATTERY,SIMPLE,STREET,1107,False,False,1923,19,47,5,08B,1163300,1923889,2006,ERROR,41.94679389,-87.675157351,"(41.94679389, -87.675157351)" -6323346,HP407292,2008-06-21 01:08:00,027XX W 79TH ST,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,ALLEY,1728,True,False,835,8,18,70,11,1159359,1852062,2008,ERROR,41.749774969,-87.691616189,"(41.749774969, -87.691616189)" -2811252,HJ435689,2003-06-17 19:01:00,007XX N HARDING AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,3835,True,False,1112,11,27,23,18,1149954,1904935,2003,ERROR,41.895053131,-87.724708046,"(41.895053131, -87.724708046)" -10109799,HY298102,2015-06-12 13:35:00,055XX W BELMONT AVE,0560,ASSAULT,SIMPLE,ALLEY,4032,False,False,2514,25,30,19,08A,1138524,1920677,2015,ERROR,41.938465788,-87.766305737,"(41.938465788, -87.766305737)" -2122047,HH360853,2002-05-08 03:00:00,035XX W 115TH PL,0810,THEFT,OVER $500,STREET,586,False,False,2211,NA,19,74,06,1155019,1827742,2002,2014-04-12 12:43:35,41.683124226,-87.70816705,"(41.683124226, -87.70816705)" -5459179,HN286810,2007-04-14 11:00:00,017XX N SEDGWICK ST,0610,BURGLARY,FORCIBLE ENTRY,CONSTRUCTION SITE,4496,False,False,1813,18,43,7,05,1173287,1911789,2007,2007-01-05 07:13:54,41.913374701,-87.638808607,"(41.913374701, -87.638808607)" -9427739,HW571708,2013-12-15 12:19:00,038XX W 65TH PL,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,2456,True,False,833,8,13,65,15,1151877,1860935,2013,ERROR,41.774273798,-87.718801431,"(41.774273798, -87.718801431)" -9549159,HX200896,2014-03-23 14:00:00,0000X W WASHINGTON ST,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,BANK,506,False,False,111,1,42,32,11,1175824,1900858,2014,ERROR,41.883322741,-87.629817609,"(41.883322741, -87.629817609)" -3085284,HJ808984,2003-12-10 01:30:00,015XX W MADISON ST,031A,ROBBERY,ARMED: HANDGUN,STREET,1775,False,False,1211,12,2,28,03,1165905,1900059,2003,ERROR,41.881347579,-87.666263434,"(41.881347579, -87.666263434)" -4372149,HL665453,2005-10-10 19:30:00,037XX N RECREATION DR,0820,THEFT,$500 AND UNDER,PARK PROPERTY,375,False,False,2323,19,46,6,06,1171814,1925403,2005,2014-04-12 12:43:35,41.950764691,-87.643817819,"(41.950764691, -87.643817819)" -8955831,HW104841,2013-01-01 20:21:00,027XX W 56TH ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,4110,False,False,824,8,16,63,26,1159094,1867451,2013,2013-10-01 14:22:16,41.792010053,-87.692166871,"(41.792010053, -87.692166871)" -7846213,HS658466,2010-12-13 10:50:00,032XX W 26TH ST,031A,ROBBERY,ARMED: HANDGUN,SMALL RETAIL STORE,4184,True,False,1024,10,22,30,03,1155078,1886589,2010,2012-06-02 11:35:31,41.844608478,-87.706380961,"(41.844608478, -87.706380961)" -7357351,HS158950,2010-02-10 08:10:00,003XX S SACRAMENTO BLVD,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,STREET,3954,False,False,1124,11,28,27,03,1156394,1898275,2010,2010-06-07 20:35:42,41.876649659,-87.701235678,"(41.876649659, -87.701235678)" -8459205,HV136620,2012-01-28 22:45:00,008XX N TRIPP AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2553,False,False,1111,11,37,23,14,1147864,1905093,2012,ERROR,41.895527127,-87.732380072,"(41.895527127, -87.732380072)" -1389813,G101962,2001-02-19 18:05:00,016XX E 74 PL,0560,ASSAULT,SIMPLE,STREET,681,False,True,324,NA,NA,NA,08A,1188468,1855950,2001,ERROR,41.75979873,-87.584825427,"(41.75979873, -87.584825427)" -7865849,HS679407,2010-12-28 12:40:00,031XX W MADISON ST,0560,ASSAULT,SIMPLE,APARTMENT,1924,False,False,1124,11,28,27,08A,1155534,1899811,2010,ERROR,41.880881934,-87.704352007,"(41.880881934, -87.704352007)" -4757789,HM369541,2006-05-23 16:00:00,017XX N WOLCOTT AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,2770,False,True,1434,14,32,24,26,1163450,1911711,2006,ERROR,41.913373563,-87.674949723,"(41.913373563, -87.674949723)" -3189601,HK196709,2004-02-21 18:00:00,025XX N HARLEM AVE,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),1669,False,False,2512,25,36,18,06,1127702,1916103,2004,2014-04-12 12:43:35,41.9261037,-87.806183216,"(41.9261037, -87.806183216)" -4409636,HL704892,2005-10-30 15:03:19,083XX S BOND AVE,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,RESIDENCE,4370,True,False,424,4,10,46,08B,1198647,1849847,2005,ERROR,41.742802579,-87.547724486,"(41.742802579, -87.547724486)" -1505171,G248949,2001-05-01 12:00:00,002XX S MICHIGAN AV,0560,ASSAULT,SIMPLE,STREET,861,False,False,123,NA,NA,NA,08A,1177284,1899473,2001,ERROR,41.879489257,-87.624498463,"(41.879489257, -87.624498463)" -4586711,HM178303,2006-02-13 02:00:53,003XX N LARAMIE AVE,0460,BATTERY,SIMPLE,RESTAURANT,1167,False,False,1532,15,28,25,08B,1141691,1901663,2006,ERROR,41.886231203,-87.755137217,"(41.886231203, -87.755137217)" -1989552,HH189521,2002-02-15 19:50:00,075XX S SAGINAW AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,1219,True,False,421,NA,NA,NA,07,1195277,1855344,2002,ERROR,41.757970535,-87.559890935,"(41.757970535, -87.559890935)" -3644751,HK740805,2004-11-08 17:00:00,018XX S KARLOV AVE,0810,THEFT,OVER $500,STREET,788,False,False,1012,10,24,29,06,1149319,1890548,2004,2014-04-12 12:43:35,41.855585896,-87.727413274,"(41.855585896, -87.727413274)" -8573990,HV248559,2012-04-18 23:00:00,004XX N CENTRAL PARK BLVD,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,602,False,False,1122,11,27,23,07,1152144,1902675,2012,ERROR,41.888808551,-87.716724345,"(41.888808551, -87.716724345)" -3524215,HK604674,2004-09-05 19:15:00,036XX W SHAKESPEARE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,4206,True,False,2525,25,26,22,18,1151518,1913999,2004,2007-11-06 15:52:33,41.919895016,-87.718725318,"(41.919895016, -87.718725318)" -1847188,G685045,2001-11-14 09:00:00,050XX S LAWNDALE AV,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,3981,False,False,821,NA,NA,NA,05,1152515,1871081,2001,ERROR,41.802103414,-87.716195637,"(41.802103414, -87.716195637)" -7342528,HS143733,2010-01-30 11:35:00,010XX W FOSTER AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,ALLEY,1187,False,False,2023,20,48,77,03,1168536,1934754,2010,2010-11-02 08:18:49,41.976495882,-87.655595568,"(41.976495882, -87.655595568)" -7778066,HS583693,2010-10-26 13:20:00,003XX W 117TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4154,False,True,522,5,34,53,08B,1176304,1827385,2010,ERROR,41.681694308,-87.630261037,"(41.681694308, -87.630261037)" -1348067,G033281,2001-01-16 13:30:00,011XX N WASHTENAW AV,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,783,True,False,1311,NA,NA,NA,18,1158142,1907777,2001,ERROR,41.902688501,-87.694557839,"(41.902688501, -87.694557839)" -9251968,HW395546,2013-05-19 00:01:00,005XX E 32ND ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,2608,False,False,211,2,4,35,06,1180472,1883635,2013,2013-08-08 11:12:43,41.835955998,-87.613280481,"(41.835955998, -87.613280481)" -1866081,G710432,2001-08-30 04:15:00,055XX W NORTH AV,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,3533,False,False,2532,NA,NA,NA,05,1138844,1910120,2001,ERROR,41.909490409,-87.765386627,"(41.909490409, -87.765386627)" -3462034,HK533284,2004-08-01 00:00:00,004XX N OAKLEY BLVD,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),2427,False,False,1313,12,27,24,06,1161044,1902666,2004,2014-04-12 12:43:35,41.888603708,-87.684040351,"(41.888603708, -87.684040351)" -8200080,HT434131,2011-08-05 01:00:00,043XX S HONORE ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3797,False,False,914,9,12,61,07,1164697,1876102,2011,2011-06-08 10:43:36,41.81563292,-87.67137723,"(41.81563292, -87.67137723)" -1532170,G282968,2001-05-15 17:00:00,008XX W CUYLER AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,589,False,False,2322,NA,NA,NA,07,1169953,1927283,2001,ERROR,41.955964358,-87.650603629,"(41.955964358, -87.650603629)" -8748519,HV423660,2012-08-09 23:43:00,003XX N DEARBORN ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,4895,True,False,1831,18,42,8,08B,1175921,1902673,2012,2012-10-08 09:09:49,41.888301019,-87.629406752,"(41.888301019, -87.629406752)" -3064212,HJ783363,2003-11-26 12:45:00,003XX N MICHIGAN AVE,0890,THEFT,FROM BUILDING,RESTAURANT,4952,False,False,122,1,42,32,06,1177207,1902277,2003,ERROR,41.887185329,-87.624696174,"(41.887185329, -87.624696174)" -9266858,HW411605,2013-08-16 21:00:00,026XX N MOZART ST,0820,THEFT,$500 AND UNDER,STREET,2,False,False,1411,14,35,22,06,1156956,1917741,2013,ERROR,41.930054663,-87.69864338,"(41.930054663, -87.69864338)" -2563813,HJ151075,2003-01-24 17:00:00,037XX S DR MARTIN LUTHER KING JR DR,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,995,False,False,211,NA,3,35,05,1179437,1879984,2003,ERROR,41.825961127,-87.617189893,"(41.825961127, -87.617189893)" -6272130,HP360251,2008-05-27 23:19:23,078XX S CLYDE AVE,0495,BATTERY,AGGRAVATED OF A SENIOR CITIZEN,RESIDENCE,1708,True,False,414,4,8,43,04B,1191603,1853399,2008,ERROR,41.752723145,-87.573418451,"(41.752723145, -87.573418451)" -1694291,G483134,2001-08-14 15:00:00,063XX S ELLIS AV,041A,BATTERY,AGGRAVATED: HANDGUN,STREET,1918,False,False,314,NA,NA,NA,04B,1184186,1863155,2001,ERROR,41.779671095,-87.600293674,"(41.779671095, -87.600293674)" -9180052,HW325256,2013-06-19 00:05:00,063XX S DR MARTIN LUTHER KING JR DR,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA PLATFORM,2418,True,False,312,3,20,69,11,1179964,1863307,2013,ERROR,41.780185918,-87.615767262,"(41.780185918, -87.615767262)" -9280642,HW425506,2013-08-26 22:00:00,018XX N LARRABEE ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,2483,False,False,1813,18,43,7,05,1171935,1912782,2013,ERROR,41.916129478,-87.643746195,"(41.916129478, -87.643746195)" -4593336,HM184287,2006-02-16 10:20:00,008XX E 103RD ST,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",3892,False,False,512,5,9,50,08B,1183714,1836812,2006,2006-06-03 03:53:14,41.707394098,-87.602843897,"(41.707394098, -87.602843897)" -8204247,HT438156,2011-08-08 14:10:00,092XX S CLYDE AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,845,False,False,413,4,8,48,07,1191741,1844312,2011,2011-09-08 09:44:36,41.727784247,-87.573206878,"(41.727784247, -87.573206878)" -7787558,HS589500,2010-10-27 10:00:00,070XX S PERRY AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3600,False,False,731,7,6,69,07,1176581,1858104,2010,2010-05-11 08:26:29,41.765985117,-87.628326152,"(41.765985117, -87.628326152)" -5607127,HN408670,2007-06-16 08:15:00,002XX W 106TH PL,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,4526,False,True,512,5,34,49,14,1176238,1834270,2007,ERROR,41.700589255,-87.630296938,"(41.700589255, -87.630296938)" -8287357,HT521174,2011-09-30 11:00:00,052XX W JACKSON BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,2963,False,False,1522,15,29,25,14,1141368,1898125,2011,2011-01-10 10:34:37,41.876528452,-87.756410705,"(41.876528452, -87.756410705)" -2090773,HH320445,2002-04-20 19:30:00,054XX W JACKSON BL,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,3689,False,False,1522,NA,NA,NA,26,1140018,1898171,2002,ERROR,41.876679476,-87.761366414,"(41.876679476, -87.761366414)" -9718774,HX368460,2014-07-31 11:30:00,042XX S CALIFORNIA AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,4785,False,False,921,9,12,58,05,1158367,1876251,2014,2014-07-08 12:40:12,41.816173258,-87.694592874,"(41.816173258, -87.694592874)" -5349618,HN204723,2007-03-02 20:20:00,036XX W CORTLAND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,3550,True,False,2535,25,26,22,08B,1151444,1912332,2007,2007-08-03 21:51:06,41.915322073,-87.719041079,"(41.915322073, -87.719041079)" -9883576,HX534835,2014-12-08 06:30:00,026XX N OAK PARK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1739,False,False,2512,25,36,18,14,1130669,1917134,2014,ERROR,41.928882318,-87.79525692,"(41.928882318, -87.79525692)" -2130685,HH371576,2002-05-14 14:00:00,034XX N NARRAGANSETT AVE,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",2624,False,False,1632,NA,36,17,06,1133059,1921942,2002,2014-04-12 12:43:35,41.942034525,-87.786361549,"(41.942034525, -87.786361549)" -1450362,G178877,2001-03-29 17:50:47,003XX W 52 PL,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,3979,False,False,934,NA,NA,NA,04B,1174942,1870105,2001,ERROR,41.798953863,-87.633975858,"(41.798953863, -87.633975858)" -3802924,HL107794,2005-01-05 11:00:00,051XX S CICERO AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,4516,True,False,814,8,23,56,16,1145182,1870371,2005,ERROR,41.800296394,-87.743107012,"(41.800296394, -87.743107012)" -6423969,HP506680,2008-08-08 17:00:00,105XX S VINCENNES AVE,0890,THEFT,FROM BUILDING,CONSTRUCTION SITE,3187,False,False,2212,22,19,72,06,1168786,1835112,2008,2008-06-09 10:53:12,41.703063528,-87.657559187,"(41.703063528, -87.657559187)" -4619517,HM216542,2006-03-06 13:00:00,032XX S KEDZIE AVE,0890,THEFT,FROM BUILDING,RESTAURANT,4455,False,False,1033,10,12,30,06,1155585,1883125,2006,2006-08-03 04:01:50,41.835092676,-87.704613393,"(41.835092676, -87.704613393)" -3896698,HL272683,2005-04-03 19:00:00,028XX N NARRAGANSETT AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),40,False,False,2511,25,36,19,06,1133225,1917988,2005,2014-04-12 12:43:35,41.931181393,-87.785844226,"(41.931181393, -87.785844226)" -8760257,HV434693,2012-08-17 15:30:00,051XX N MILWAUKEE AVE,1345,CRIMINAL DAMAGE,TO CITY OF CHICAGO PROPERTY,POLICE FACILITY/VEH PARKING LOT,653,True,False,1623,16,45,11,14,1138481,1933660,2012,ERROR,41.974093149,-87.766147965,"(41.974093149, -87.766147965)" -5284889,HN142213,2007-01-24 07:45:00,003XX W 83RD ST,0810,THEFT,OVER $500,CONSTRUCTION SITE,3850,False,False,622,6,21,44,06,1175483,1849872,2007,2014-04-12 12:43:35,41.743420145,-87.632596441,"(41.743420145, -87.632596441)" -6146157,HP237155,2008-03-21 16:00:00,055XX W NORTH AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),2698,False,False,2532,25,37,25,14,1138898,1910041,2008,ERROR,41.909272642,-87.765190174,"(41.909272642, -87.765190174)" -5828373,HN638214,2007-10-09 16:00:00,013XX E 62ND ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,4548,True,False,314,3,20,42,26,1185883,1864191,2007,ERROR,41.782474101,-87.594039684,"(41.782474101, -87.594039684)" -9962492,HY151390,2015-02-13 20:00:00,019XX W MORSE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,581,False,False,2424,24,49,1,14,1161994,1946107,2015,ERROR,42.007788395,-87.679334315,"(42.007788395, -87.679334315)" -6576639,HP649030,2008-10-26 14:44:24,026XX W CHICAGO AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,1628,False,False,1313,12,26,24,05,1158778,1905190,2008,2009-01-08 20:33:55,41.895576534999996,-87.692292699,"(41.895576535, -87.692292699)" -2773697,HJ394838,2003-05-29 17:10:00,008XX N AVERS AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,1426,True,False,1112,NA,27,23,18,1150597,1905710,2003,ERROR,41.897167269,-87.722326187,"(41.897167269, -87.722326187)" -3455350,HK523596,2004-07-29 00:00:00,068XX W SHAKESPEARE AVE,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,876,False,False,2512,25,36,25,07,1130189,1913566,2004,ERROR,41.919099535,-87.797102792,"(41.919099535, -87.797102792)" -1510568,G238792,2001-04-26 20:58:13,047XX W LAKE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),ALLEY,1889,True,False,1113,NA,NA,NA,18,1144354,1901858,2001,ERROR,41.886716653,-87.745353037,"(41.886716653, -87.745353037)" -10002833,HY192117,2015-03-20 16:50:00,109XX S MICHIGAN AVE,0560,ASSAULT,SIMPLE,STREET,2360,False,False,513,5,9,49,08A,1178806,1832645,2015,ERROR,41.696072117,-87.620943149,"(41.696072117, -87.620943149)" -9628747,HX278675,2014-05-27 15:00:00,027XX N CLYBOURN AVE,0890,THEFT,FROM BUILDING,GROCERY FOOD STORE,2623,False,False,1931,19,32,7,06,1162878,1918140,2014,2014-03-06 12:44:29,41.931027188,-87.676870318,"(41.931027188, -87.676870318)" -9380277,HW523315,2013-11-06 16:00:00,072XX S MAPLEWOOD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3549,False,False,832,8,18,66,08B,1160671,1856428,2013,ERROR,41.761728977,-87.686688178,"(41.761728977, -87.686688178)" -3098367,HJ826189,2003-12-19 03:20:00,087XX S SAGINAW AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,1560,True,False,423,4,7,46,15,1195358,1847409,2003,ERROR,41.736194269,-87.559855496,"(41.736194269, -87.559855496)" -8700475,HV376946,2012-07-11 02:30:00,013XX W LOYOLA AVE,0820,THEFT,$500 AND UNDER,RESIDENCE,179,False,False,2432,24,40,1,06,1165965,1943761,2012,ERROR,42.001266756,-87.664791595,"(42.001266756, -87.664791595)" -6309518,HP399117,2008-06-16 06:00:00,047XX S WOLCOTT AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,2208,False,False,931,9,20,61,05,1164528,1873118,2008,ERROR,41.80744805,-87.672081377,"(41.80744805, -87.672081377)" -2246591,HH520136,2002-07-19 00:30:00,032XX W BELLE PLAINE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1923,False,False,1724,NA,33,16,14,1153950,1927112,2002,ERROR,41.955829898,-87.709439072,"(41.955829898, -87.709439072)" -1703748,G500124,2001-08-22 02:45:00,059XX W FULTON ST,0460,BATTERY,SIMPLE,APARTMENT,1254,False,True,1512,NA,NA,NA,08B,1136489,1901353,2001,ERROR,41.885475115,-87.774247889,"(41.885475115, -87.774247889)" -2097320,HH313066,2002-04-17 12:39:00,044XX S FEDERAL ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,4334,True,False,221,NA,NA,NA,26,1176474,1875517,2002,ERROR,41.813770553,-87.628194868,"(41.813770553, -87.628194868)" -2304088,HH586111,2002-08-17 09:18:40,014XX S SPRINGFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,3059,False,False,1011,NA,24,29,14,1150654,1892710,2002,ERROR,41.861492727,-87.722456686,"(41.861492727, -87.722456686)" -2503528,HH844467,2002-12-17 17:20:00,086XX S COMMERCIAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,2687,False,False,424,NA,10,46,08B,1197693,1847869,2002,ERROR,41.737398641,-87.551285747,"(41.737398641, -87.551285747)" -7702717,HS509807,2010-09-11 03:30:00,057XX S DR MARTIN LUTHER KING JR DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2786,False,False,234,2,20,40,14,1179868,1866840,2010,2010-11-09 10:33:16,41.789883007,-87.616011151,"(41.789883007, -87.616011151)" -4497359,HL799972,2005-12-20 14:10:00,0000X N STATE ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,687,True,False,122,1,42,32,06,1176321,1900593,2005,ERROR,41.882584372,-87.628000611,"(41.882584372, -87.628000611)" -1913830,G774488,2001-11-21 17:00:00,004XX S DEARBORN ST,0810,THEFT,OVER $500,COMMERCIAL / BUSINESS OFFICE,4896,False,False,132,NA,NA,NA,06,1176036,1898446,2001,2014-04-12 12:43:35,41.876699301,-87.629111816,"(41.876699301, -87.629111816)" -7752781,HS561321,2010-10-12 19:00:00,023XX N ORCHARD ST,0810,THEFT,OVER $500,STREET,3795,False,False,1812,18,43,7,06,1171165,1916071,2010,ERROR,41.925171608,-87.646478328,"(41.925171608, -87.646478328)" -1495352,G236482,2001-04-25 08:00:00,054XX N SHERIDAN RD,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,1411,False,False,2023,NA,NA,NA,26,1168688,1936590,2001,ERROR,41.981530612,-87.654983135,"(41.981530612, -87.654983135)" -4269646,HL579828,2005-08-29 19:47:25,029XX N MONITOR AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,1280,False,True,2514,25,30,19,08B,1136910,1919097,2005,ERROR,41.934159241,-87.772275653,"(41.934159241, -87.772275653)" -8734967,HV410309,2012-06-06 09:00:00,030XX N ELSTON AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,OTHER,2621,False,False,1411,14,1,21,26,1158467,1919885,2012,2014-03-02 14:06:09,41.935907119,-87.693031988,"(41.935907119, -87.693031988)" -6183611,HP273306,2008-04-10 19:00:00,031XX N MELVINA AVE,0810,THEFT,OVER $500,STREET,2739,False,False,2511,25,36,19,06,1134469,1920529,2008,2008-12-04 08:34:56,41.938132293,-87.781212545,"(41.938132293, -87.781212545)" -7078825,HR486686,2009-08-16 11:45:00,049XX W AUGUSTA BLVD,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,RESIDENTIAL YARD (FRONT/BACK),3558,True,False,1531,15,37,25,24,1143223,1906157,2009,ERROR,41.898534802,-87.749398973,"(41.898534802, -87.749398973)" -5779480,HN586714,2007-09-13 10:30:14,006XX W 61ST ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,SIDEWALK,2183,True,False,711,7,16,68,18,1172737,1864389,2007,ERROR,41.783317484,-87.642230568,"(41.783317484, -87.642230568)" -9870258,HX520700,2014-11-25 22:12:00,062XX W 64TH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,990,False,False,812,8,23,64,07,1135733,1861466,2014,2014-02-12 12:51:55,41.776032284,-87.777971032,"(41.776032284, -87.777971032)" -8288909,HT523203,2011-10-01 17:20:00,048XX W FLOURNOY ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,2283,True,False,1533,15,24,25,18,1144395,1896558,2011,2011-01-10 18:31:03,41.872172039,-87.745335817,"(41.872172039, -87.745335817)" -8102316,HT336736,2011-06-08 11:03:00,042XX S ASHLAND AVE,0850,THEFT,ATTEMPT THEFT,PARKING LOT/GARAGE(NON.RESID.),4936,True,False,914,9,12,61,06,1166338,1876850,2011,2011-09-06 11:16:04,41.817650668,-87.665336409,"(41.817650668, -87.665336409)" -7465353,HS267327,2010-04-20 07:15:00,059XX S INDIANA AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,4064,False,False,233,2,20,40,05,1178571,1865818,2010,2010-03-07 11:45:21,41.787108136,-87.620797891,"(41.787108136, -87.620797891)" -2448483,HH774056,2002-11-12 03:30:00,027XX S EMERALD AVE,0820,THEFT,$500 AND UNDER,STREET,467,False,False,923,NA,11,60,06,1171708,1886483,2002,2014-04-12 12:43:35,41.843968255,-87.645354708,"(41.843968255, -87.645354708)" -7555079,HS359022,2010-06-14 11:45:00,021XX N HUMBOLDT BLVD,0810,THEFT,OVER $500,SIDEWALK,576,False,False,1414,14,35,22,06,1156190,1914398,2010,ERROR,41.920896739,-87.701548757,"(41.920896739, -87.701548757)" -10102657,HY291732,2015-04-15 12:30:00,098XX S CHARLES ST,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,1478,False,False,2213,22,19,72,11,1167555,1839283,2015,ERROR,41.714535835,-87.661947749,"(41.714535835, -87.661947749)" -9023020,HW170629,2013-02-26 04:45:00,119XX S PERRY AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,1991,False,False,522,5,9,53,03,1177683,1825981,2013,2013-02-04 12:18:39,41.677810527,-87.625255393,"(41.677810527, -87.625255393)" -4650295,HM247617,2006-03-23 06:22:00,027XX N RUTHERFORD AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,3249,True,False,2512,25,36,18,07,1130917,1917271,2006,ERROR,41.929253988,-87.794342417,"(41.929253988, -87.794342417)" -7862271,HS676968,2010-12-26 15:15:00,072XX S ROCKWELL ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,3255,False,True,831,8,18,66,26,1160255,1856471,2010,2011-01-01 13:13:56,41.761855547,-87.688211689,"(41.761855547, -87.688211689)" -1549513,G304867,2001-05-26 17:00:00,064XX S COTTAGE GROVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,"SCHOOL, PUBLIC, GROUNDS",4371,False,False,312,NA,NA,NA,07,1182638,1862119,2001,ERROR,41.776864286,-87.606000899,"(41.776864286, -87.606000899)" -1455026,G184846,2001-04-01 17:12:49,083XX S VERNON AV,0560,ASSAULT,SIMPLE,RESIDENCE,544,False,False,632,NA,NA,NA,08A,1180775,1849537,2001,ERROR,41.742380976,-87.613216643,"(41.742380976, -87.613216643)" -4427823,HL724219,2005-11-08 00:00:00,014XX E 54TH ST,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,2419,False,False,2132,2,4,41,05,1186925,1869842,2005,2006-04-02 03:37:59,41.797956235,-87.590040347,"(41.797956235, -87.590040347)" -5679423,HN487410,2007-07-25 02:40:00,059XX S CAMPBELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,2902,True,False,824,8,16,66,14,1160764,1865105,2007,ERROR,41.785537974,-87.686107985,"(41.785537974, -87.686107985)" -7495732,HS275457,2010-04-25 14:45:00,043XX S DR MARTIN LUTHER KING JR DR,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,1747,False,False,222,2,3,38,03,1179615,1876521,2010,2010-04-06 18:55:38,41.816454308,-87.616642833,"(41.816454308, -87.616642833)" -7803721,HS613635,2010-11-13 12:10:00,005XX S PULASKI RD,031A,ROBBERY,ARMED: HANDGUN,STREET,2845,False,False,1132,11,24,26,03,1149769,1897321,2010,ERROR,41.874163085,-87.725585552,"(41.874163085, -87.725585552)" -1710750,G511505,2001-08-25 23:00:00,007XX W WAVELAND AV,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),949,False,False,2323,NA,NA,NA,06,1170739,1924926,2001,2014-04-12 12:43:35,41.94947945,-87.647783443,"(41.94947945, -87.647783443)" -2224263,HH493721,2002-07-07 18:09:00,104XX S WABASH AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1931,False,False,512,NA,9,49,14,1178385,1835579,2002,ERROR,41.70413297,-87.622395901,"(41.70413297, -87.622395901)" -6935102,HR333609,2009-05-21 15:30:00,100XX W OHARE ST,0560,ASSAULT,SIMPLE,AIRPORT/AIRCRAFT,3283,False,False,1651,16,41,76,08A,1100635,1934208,2009,ERROR,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -5382077,HN231591,2007-03-08 10:10:00,048XX S CHICAGO BEACH DR,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,1299,False,False,2132,2,4,39,26,1187822,1873221,2007,ERROR,41.807207115,-87.5866433,"(41.807207115, -87.5866433)" -2472765,HH804536,2002-11-26 22:00:00,045XX N MILWAUKEE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,OTHER,4091,False,False,1623,NA,45,15,14,1140801,1930053,2002,ERROR,41.96415277,-87.757705682,"(41.96415277, -87.757705682)" -8663325,HV338303,2012-06-16 12:00:00,079XX S MAY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,4672,False,False,612,6,17,71,26,1169994,1852029,2012,ERROR,41.749460143,-87.652645927,"(41.749460143, -87.652645927)" -3682557,HK717624,2004-10-29 10:00:00,018XX S KARLOV AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,594,True,False,1012,10,24,29,18,1149325,1890347,2004,ERROR,41.855034211,-87.727396457,"(41.855034211, -87.727396457)" -8506092,HV183131,2012-03-04 16:20:00,085XX S UNIVERSITY AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,2189,False,False,412,4,8,45,08A,1185352,1848596,2012,2012-06-03 14:26:12,41.739692446,-87.596476215,"(41.739692446, -87.596476215)" -1536639,G279063,2001-05-15 01:15:00,069XX S MICHIGAN AV,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,APARTMENT,3491,False,False,322,NA,NA,NA,04B,1178326,1858850,2001,ERROR,41.767992795,-87.621907549,"(41.767992795, -87.621907549)" -8590655,HV265015,2012-04-30 16:07:00,020XX W 63RD ST,1330,CRIMINAL TRESPASS,TO LAND,RESTAURANT,3738,True,False,726,7,15,67,26,1163970,1862819,2012,2012-01-05 05:05:59,41.779198065,-87.674417489,"(41.779198065, -87.674417489)" -3957643,HL229706,2005-03-12 02:50:00,038XX W 45TH PL,2022,NARCOTICS,POSS: COCAINE,SIDEWALK,1543,True,False,821,8,14,57,18,1151741,1874241,2005,ERROR,41.810790121,-87.718951399,"(41.810790121, -87.718951399)" -5944517,HN743446,2007-12-01 08:00:00,052XX W HUTCHINSON ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,1515,False,False,1624,16,38,15,07,1140768,1927717,2007,2007-10-12 01:03:40,41.957743188,-87.757884694,"(41.957743188, -87.757884694)" -8314963,HT548064,2011-10-18 11:20:00,039XX W WILCOX ST,0520,ASSAULT,AGGRAVATED:KNIFE/CUTTING INSTR,STREET,2006,False,False,1122,11,28,26,04A,1150350,1899010,2011,ERROR,41.878786581,-87.723408302,"(41.878786581, -87.723408302)" -2262015,HH538299,2002-07-27 00:01:00,070XX S PULASKI RD,1310,CRIMINAL DAMAGE,TO PROPERTY,SMALL RETAIL STORE,4192,False,False,833,NA,13,65,14,1150947,1857820,2002,ERROR,41.765743919,-87.722291814,"(41.765743919, -87.722291814)" -3238230,HK259979,2004-03-24 11:30:00,019XX W PRYOR AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,692,False,False,2212,22,19,75,26,1165739,1831480,2004,ERROR,41.69316178,-87.668819238,"(41.69316178, -87.668819238)" -8307337,HT541535,2011-10-13 19:10:00,016XX S DRAKE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE PORCH/HALLWAY,3686,True,False,1021,10,24,29,18,1153013,1891601,2011,ERROR,41.858403118,-87.713826549,"(41.858403118, -87.713826549)" -8075720,HT308470,2011-05-22 12:18:00,030XX N LECLAIRE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,2281,True,False,2521,25,31,19,18,1141796,1919925,2011,ERROR,41.936342208,-87.754298893,"(41.936342208, -87.754298893)" -1831471,G661456,2001-11-02 23:30:30,006XX E 46 ST,0810,THEFT,OVER $500,APARTMENT,3210,False,False,222,NA,NA,NA,06,1181656,1874705,2001,2014-04-12 12:43:35,41.811424106,-87.609212194,"(41.811424106, -87.609212194)" -1577474,G323442,2001-06-04 17:25:00,005XX S DESPLAINES ST,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,4460,True,False,131,NA,NA,NA,18,1172055,1897694,2001,ERROR,41.874724464,-87.643750852,"(41.874724464, -87.643750852)" -6763360,HR180663,2009-02-20 17:00:00,028XX N CLARK ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),2537,False,False,1932,19,44,6,06,1171377,1919102,2009,ERROR,41.933484144,-87.645610016,"(41.933484144, -87.645610016)" -6307441,HP396661,2008-06-14 20:00:00,105XX S PERRY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,4564,False,False,512,5,34,49,14,1177515,1834741,2008,ERROR,41.701853045,-87.625606891,"(41.701853045, -87.625606891)" -1963559,HH143797,2002-01-23 15:00:00,005XX W HARRISON ST,2111,NARCOTICS,SALE/DEL HYPODERMIC NEEDLE,HOTEL/MOTEL,4004,True,False,131,NA,NA,NA,26,1173114,1897625,2002,ERROR,41.874511711,-87.639864736,"(41.874511711, -87.639864736)" -4056395,HL405242,2005-06-07 01:00:00,060XX S MARSHFIELD AVE,0820,THEFT,$500 AND UNDER,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,154,False,False,714,7,15,67,06,1166409,1864855,2005,2014-04-12 12:43:35,41.784733473,-87.665417872,"(41.784733473, -87.665417872)" -6587922,HP660944,2008-11-01 23:35:00,069XX N GLENWOOD AVE,0460,BATTERY,SIMPLE,SIDEWALK,4341,False,False,2431,24,49,1,08B,1165536,1945973,2008,2008-03-11 08:27:31,42.007345709,-87.666306413,"(42.007345709, -87.666306413)" -7794546,HS604138,2010-11-07 23:30:00,025XX S CALIFORNIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,4457,False,True,1033,10,12,30,08B,1158063,1887206,2010,ERROR,41.846241276,-87.695409603,"(41.846241276, -87.695409603)" -9556953,HX208548,2014-04-02 10:30:00,023XX N KEDZIE BLVD,0890,THEFT,FROM BUILDING,RESIDENCE,1548,False,False,1413,14,26,22,06,1154602,1915578,2014,2014-05-04 00:39:46,41.924166711,-87.707351793,"(41.924166711, -87.707351793)" -4911586,HM527657,2006-08-08 09:00:00,013XX W HASTINGS ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,615,False,False,1231,12,2,28,11,1167818,1893895,2006,2006-09-09 04:19:56,41.864392058,-87.659416725,"(41.864392058, -87.659416725)" -8530103,HV207352,2012-03-21 03:28:00,037XX N DRAKE AVE,041A,BATTERY,AGGRAVATED: HANDGUN,ALLEY,1354,False,False,1732,17,35,16,04B,1152101,1924527,2012,ERROR,41.948773209,-87.716304871,"(41.948773209, -87.716304871)" -3202279,HK212812,2004-03-01 04:50:00,119XX S MICHIGAN AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,4345,False,False,532,5,9,53,03,1178938,1826078,2004,ERROR,41.678048316,-87.620658763,"(41.678048316, -87.620658763)" -1535129,G277552,2001-05-14 13:00:20,070XX S RHODES AV,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",895,False,False,322,NA,NA,NA,08B,1181167,1858324,2001,ERROR,41.766484442,-87.611510246,"(41.766484442, -87.611510246)" -9439829,HW583592,2013-12-22 09:00:00,010XX W COLUMBIA AVE,0890,THEFT,FROM BUILDING,RESIDENCE PORCH/HALLWAY,4348,True,False,2432,24,49,1,06,1167737,1945049,2013,ERROR,42.004762897,-87.658235361,"(42.004762897, -87.658235361)" -1486467,G222730,2001-04-19 14:30:00,007XX N MICHIGAN AV,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,255,True,False,1834,NA,NA,NA,06,1177338,1905329,2001,2014-04-12 12:43:35,41.8955572,-87.624122473,"(41.8955572, -87.624122473)" -3473591,HK542000,2004-08-07 02:10:00,0000X W MAPLE ST,0460,BATTERY,SIMPLE,STREET,4558,False,False,1824,18,42,8,08B,1176112,1907663,2004,ERROR,41.90198953,-87.628554812,"(41.90198953, -87.628554812)" -6110065,HP205470,2008-03-01 12:00:00,051XX S HYDE PARK BLVD,0810,THEFT,OVER $500,STREET,2074,False,False,2132,2,4,41,06,1188191,1871483,2008,2008-05-03 12:11:15,41.80242912,-87.585345416,"(41.80242912, -87.585345416)" -2531598,HJ111717,2002-12-27 14:00:00,005XX N STATE ST,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,3490,False,False,1834,NA,42,8,06,1176317,1903817,2002,ERROR,41.891431292,-87.62791798,"(41.891431292, -87.62791798)" -8908679,HV581869,2012-11-29 17:00:00,029XX S DR MARTIN LUTHER KING JR DR,0880,THEFT,PURSE-SNATCHING,RESIDENCE PORCH/HALLWAY,2582,False,False,133,1,4,35,06,1179425,1885823,2012,2012-02-12 14:35:58,41.841984044,-87.617055292,"(41.841984044, -87.617055292)" -8613270,HV287141,2012-02-24 09:00:00,039XX W 79TH ST,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",4666,False,False,834,8,18,70,06,1151305,1851848,2012,ERROR,41.749348763,-87.721135378,"(41.749348763, -87.721135378)" -7961115,HT185399,2011-03-02 11:00:00,017XX N WHIPPLE ST,0460,BATTERY,SIMPLE,STREET,631,False,False,1421,14,26,23,08B,1155646,1911652,2011,ERROR,41.91337247,-87.703621623,"(41.91337247, -87.703621623)" -7919740,HT148765,2011-02-05 14:25:00,075XX S YALE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,3762,False,True,623,6,17,69,08B,1175854,1854934,2011,2011-08-02 15:08:26,41.75730259,-87.631085699,"(41.75730259, -87.631085699)" -2663371,HJ278006,2003-04-01 19:15:00,067XX S WOLCOTT AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,1220,False,False,726,NA,15,67,26,1164809,1859980,2003,ERROR,41.77138979,-87.67142173,"(41.77138979, -87.67142173)" -6550942,HP624443,2008-10-12 17:30:00,071XX S LAWNDALE AVE,0810,THEFT,OVER $500,RESIDENTIAL YARD (FRONT/BACK),1714,False,False,833,8,13,65,06,1152981,1856803,2008,ERROR,41.762913214,-87.714863238,"(41.762913214, -87.714863238)" -9052143,HW197487,2013-03-18 16:14:00,006XX W CHICAGO AVE,0460,BATTERY,SIMPLE,COMMERCIAL / BUSINESS OFFICE,1207,False,True,1822,18,27,8,08B,1172179,1905661,2013,ERROR,41.896583685,-87.643060288,"(41.896583685, -87.643060288)" -2128982,HH359279,2002-05-09 08:20:00,040XX S FEDERAL ST,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,CHA PARKING LOT/GROUNDS,2837,True,False,214,NA,3,38,18,1176399,1878070,2002,ERROR,41.820777898,-87.628393146,"(41.820777898, -87.628393146)" -9466436,HX119098,2014-01-18 12:15:00,016XX N MAPLEWOOD AVE,0560,ASSAULT,SIMPLE,RESIDENCE,3224,True,False,1434,14,1,24,08A,1159155,1910783,2014,ERROR,41.910916447,-87.690754192,"(41.910916447, -87.690754192)" -6833293,HR212717,2009-03-12 23:27:00,067XX S PARNELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,4242,False,False,722,7,6,68,14,1173780,1859903,2009,2009-02-04 16:12:49,41.770984325,-87.638539479,"(41.770984325, -87.638539479)" -5816963,HN621314,2007-09-30 22:18:00,033XX W 65TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3009,True,False,823,8,15,66,14,1155444,1861367,2007,ERROR,41.775388583,-87.705713759,"(41.775388583, -87.705713759)" -8683873,HV358753,2012-06-29 14:40:00,062XX S EBERHART AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,2697,True,False,313,3,20,42,18,1180607,1863977,2012,ERROR,41.782009714,-87.613389379,"(41.782009714, -87.613389379)" -9332406,HW476255,2013-10-02 09:15:00,003XX E 51ST ST,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,1444,True,False,231,2,3,40,06,1179083,1871232,2013,2013-02-10 12:40:29,41.801952997,-87.618755627,"(41.801952997, -87.618755627)" -6106681,HP199670,2008-02-27 19:00:00,003XX W 45TH ST,0890,THEFT,FROM BUILDING,PARK PROPERTY,1877,False,False,935,9,3,37,06,1174657,1874998,2008,2008-01-03 09:26:24,41.812387089,-87.634875192,"(41.812387089, -87.634875192)" -8322735,HT556921,2011-10-24 09:45:00,016XX W MONROE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,2411,False,True,1211,12,2,28,14,1165749,1899667,2011,2011-10-11 16:19:44,41.880275226,-87.666847435,"(41.880275226, -87.666847435)" -8806688,HV480499,2012-09-17 23:00:00,066XX S GREENWOOD AVE,0560,ASSAULT,SIMPLE,APARTMENT,661,True,True,321,3,5,42,08A,1184405,1861060,2012,ERROR,41.773917101,-87.599556337,"(41.773917101, -87.599556337)" -5649250,HN423753,2007-06-23 12:55:00,033XX W FULLERTON AVE,0820,THEFT,$500 AND UNDER,OTHER,203,False,False,1413,14,35,22,06,1153552,1915794,2007,2014-04-12 12:43:35,41.924780401,-87.711204182,"(41.924780401, -87.711204182)" -9481419,HX134548,2014-01-31 16:30:00,008XX N RIDGEWAY AVE,2024,NARCOTICS,POSS: HEROIN(WHITE),STREET,535,True,False,1112,11,27,23,18,1151276,1905276,2014,2014-05-02 00:38:42,41.895963033,-87.719843697,"(41.895963033, -87.719843697)" -7452945,HS254403,2010-04-12 18:00:00,011XX S DELANO CT E,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,4917,False,True,131,1,2,32,26,1175238,1895318,2010,ERROR,41.8681338,-87.632135611,"(41.8681338, -87.632135611)" -9863463,HX513290,2014-11-20 01:26:00,028XX W LAWRENCE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,3692,True,False,1911,19,47,4,08B,1156822,1931722,2014,ERROR,41.968422144,-87.698755406,"(41.968422144, -87.698755406)" -3888951,HL158249,2005-02-02 13:25:00,035XX W CHICAGO AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE,2282,True,False,1121,11,27,23,18,1152516,1905145,2005,ERROR,41.895579135,-87.715292874,"(41.895579135, -87.715292874)" -5869284,HN668807,2007-10-24 23:00:00,049XX W WEST END AVE,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,934,False,False,1532,15,28,25,03,1143315,1900566,2007,ERROR,41.883190721,-87.749200857,"(41.883190721, -87.749200857)" -2703495,HJ328167,2003-04-27 16:00:00,053XX S MAY ST,0610,BURGLARY,FORCIBLE ENTRY,ABANDONED BUILDING,3328,False,False,934,NA,16,61,05,1169605,1869148,2003,ERROR,41.796445235,-87.653575559,"(41.796445235, -87.653575559)" -4257280,HL574185,2005-08-27 01:30:00,084XX S ELIZABETH ST,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,2999,False,False,613,6,21,71,05,1169506,1848666,2005,ERROR,41.740242188,-87.65453137,"(41.740242188, -87.65453137)" -5932502,HN731979,2007-11-28 09:30:00,077XX S BURNHAM AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",3095,False,False,421,4,7,43,08B,1196020,1854375,2007,2007-11-12 01:04:21,41.755293165,-87.557200019,"(41.755293165, -87.557200019)" -6238887,HP326210,2008-05-09 08:00:00,011XX N CLARK ST,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),1292,False,False,1824,18,42,8,06,1175376,1907750,2008,2008-12-05 11:05:25,41.902244823,-87.631255595,"(41.902244823, -87.631255595)" -1875426,G723872,2001-12-03 03:00:00,043XX S SAWYER AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4250,False,False,821,NA,NA,NA,07,1155459,1875390,2001,ERROR,41.813869382,-87.705283202,"(41.813869382, -87.705283202)" -7725847,HS533443,2010-09-25 13:18:00,023XX N LONG AVE,0810,THEFT,OVER $500,PARK PROPERTY,2755,False,False,2515,25,37,19,06,1139957,1914995,2010,ERROR,41.922847656,-87.761178414,"(41.922847656, -87.761178414)" -3451995,HK003019,2004-07-24 01:30:00,013XX N HALSTED ST,2027,NARCOTICS,POSS: CRACK,STREET,687,True,False,1822,18,27,8,18,1170807,1909089,2004,ERROR,41.906020499,-87.647998785,"(41.906020499, -87.647998785)" -4626034,HM223084,2006-03-09 20:19:52,060XX S HARPER AVE,0890,THEFT,FROM BUILDING,APARTMENT,985,False,True,314,3,5,42,06,1187444,1865041,2006,ERROR,41.784769597,-87.588289691,"(41.784769597, -87.588289691)" -2635210,HJ244826,2003-03-17 22:30:00,041XX W NORTH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4737,False,False,2534,25,30,23,07,1148753,1910358,2003,ERROR,41.90995769,-87.728978726,"(41.90995769, -87.728978726)" -4038854,HL311429,2005-04-22 14:30:00,055XX N LINCOLN AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,HOTEL/MOTEL,2883,True,False,2011,20,40,4,16,1158216,1936790,2005,ERROR,41.982300536,-87.693490542,"(41.982300536, -87.693490542)" -4031728,HL384570,2005-05-28 07:00:00,003XX N LATROBE AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4941,False,False,1523,15,28,25,07,1141271,1901864,2005,2007-11-06 15:52:33,41.886790527,-87.756674616,"(41.886790527, -87.756674616)" -9537378,HX190485,2014-03-19 09:02:00,118XX S PERRY AVE,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,SIDEWALK,2791,False,True,522,5,34,53,04B,1177670,1826389,2014,2014-04-04 00:38:54,41.678930434,-87.625290705,"(41.678930434, -87.625290705)" -7080558,HR488689,2009-08-17 13:55:00,012XX W ARTHUR AVE,0850,THEFT,ATTEMPT THEFT,SIDEWALK,2422,False,False,2432,24,40,1,06,1166693,1943419,2009,ERROR,42.000312672,-87.662123274,"(42.000312672, -87.662123274)" -6119164,HP210946,2008-03-06 13:17:00,020XX N SEDGWICK ST,0460,BATTERY,SIMPLE,STREET,3739,True,False,1814,18,43,7,08B,1173293,1914116,2008,2008-10-03 08:28:03,41.919759963,-87.638717325,"(41.919759963, -87.638717325)" -5259619,HN135255,2007-01-20 17:00:00,041XX N CLARENDON AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,2690,False,False,2322,19,46,3,05,1170144,1927369,2007,2007-12-02 06:20:13,41.956196167,-87.649898952,"(41.956196167, -87.649898952)" -9177023,HW321951,2013-06-16 23:00:00,002XX W 103RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,4706,True,False,511,5,9,49,18,1176620,1836684,2013,ERROR,41.707205049,-87.628825892,"(41.707205049, -87.628825892)" -2827497,HJ477324,2003-07-07 01:35:00,046XX N CLIFTON AVE,0460,BATTERY,SIMPLE,STREET,1471,False,False,2311,19,46,3,08B,1167640,1930699,2003,ERROR,41.965388238,-87.659007885,"(41.965388238, -87.659007885)" -3012718,HJ716464,2003-10-25 02:42:00,042XX W KAMERLING AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,1750,False,False,2534,25,37,23,06,1147558,1908601,2003,2014-04-12 12:43:35,41.905159324,-87.733413851,"(41.905159324, -87.733413851)" -3294036,HK326749,2004-04-25 21:00:00,051XX W BLOOMINGDALE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,4527,False,False,2533,25,37,25,05,1141931,1911525,2004,ERROR,41.913289233,-87.754011314,"(41.913289233, -87.754011314)" -6803317,HR213727,2009-03-12 16:00:00,0000X N STATE ST,0890,THEFT,FROM BUILDING,SMALL RETAIL STORE,4883,False,False,122,1,42,32,06,1176328,1900431,2009,ERROR,41.882139677,-87.627979796,"(41.882139677, -87.627979796)" -9971989,HY161202,2015-02-23 14:56:00,004XX E 48TH ST,0820,THEFT,$500 AND UNDER,APARTMENT,404,False,True,223,2,3,38,06,1180243,1873338,2015,2015-06-03 12:42:07,41.807705499,-87.614436883,"(41.807705499, -87.614436883)" -6271204,HP353232,2008-05-23 19:45:00,094XX S BURNSIDE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,3954,False,False,633,6,9,44,08A,1182714,1842560,2008,2008-02-06 06:39:38,41.72319054,-87.60632814,"(41.72319054, -87.60632814)" -2826618,HJ482716,2003-04-01 13:00:00,034XX W CARROLL AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,3974,False,False,1123,11,28,27,05,1153347,1902226,2003,ERROR,41.887552644,-87.712318379,"(41.887552644, -87.712318379)" -7953888,HT186007,2011-03-02 19:00:00,007XX N WABASH AVE,0820,THEFT,$500 AND UNDER,STREET,92,False,False,1834,18,42,8,06,1176565,1905227,2011,2011-03-03 06:43:40,41.895294805,-87.626964572,"(41.895294805, -87.626964572)" -3979852,HL343037,2005-05-07 19:00:00,016XX E 50TH ST,0810,THEFT,OVER $500,STREET,749,False,False,2132,2,4,39,06,1188465,1872158,2005,2014-04-12 12:43:35,41.804274819,-87.584318985,"(41.804274819, -87.584318985)" -4101174,HL441592,2005-06-24 16:00:00,061XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),44,False,False,825,8,15,66,06,1161471,1863600,2005,2014-04-12 12:43:35,41.781393417,-87.683557482,"(41.781393417, -87.683557482)" -2613348,HJ215734,2003-01-16 16:00:00,077XX S WESTERN AVE,0820,THEFT,$500 AND UNDER,STREET,157,False,False,835,NA,18,70,06,1161675,1853495,2003,2014-04-12 12:43:35,41.753659623,-87.683089644,"(41.753659623, -87.683089644)" -5184536,HM766200,2006-12-09 17:00:00,031XX W 31ST ST,0820,THEFT,$500 AND UNDER,STREET,311,False,False,1033,10,12,30,06,1155985,1883878,2006,2014-04-12 12:43:35,41.837150955,-87.703125393,"(41.837150955, -87.703125393)" -8230238,HT464106,2011-08-24 19:15:00,113XX S STEWART AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE,3176,False,False,2233,22,34,49,04B,1175621,1829403,2011,ERROR,41.687247278,-87.632701111,"(41.687247278, -87.632701111)" -7374070,HS176750,2010-02-22 20:50:00,019XX S PULASKI RD,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,STREET,4263,True,False,1014,10,24,29,15,1150062,1890214,2010,ERROR,41.854654939,-87.724694776,"(41.854654939, -87.724694776)" -5274149,HN143339,2007-01-25 19:00:00,079XX S COTTAGE GROVE AVE,1330,CRIMINAL TRESPASS,TO LAND,TAVERN/LIQUOR STORE,1997,True,False,624,6,8,44,26,1182965,1852736,2007,ERROR,41.751108806,-87.605093358,"(41.751108806, -87.605093358)" -5487050,HN286402,2007-04-16 14:00:00,039XX N LAWNDALE AVE,2890,PUBLIC PEACE VIOLATION,OTHER VIOLATION,"SCHOOL, PUBLIC, BUILDING",640,True,False,1732,17,39,16,26,1150988,1925736,2007,ERROR,41.95211271,-87.720364302,"(41.95211271, -87.720364302)" -9176249,HW319713,2013-06-15 10:45:00,069XX S CRANDON AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,2794,False,True,331,3,5,43,08B,1192569,1859188,2013,ERROR,41.76858515,-87.569690199,"(41.76858515, -87.569690199)" -5970003,HN765590,2007-12-18 14:00:00,028XX N MILWAUKEE AVE,0820,THEFT,$500 AND UNDER,VEHICLE-COMMERCIAL,352,False,False,1412,14,35,21,06,1152714,1918810,2007,2014-04-12 12:43:35,41.933073195,-87.71420336,"(41.933073195, -87.71420336)" -4936885,HM544641,2006-08-16 20:30:00,095XX S INDIANA AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,4828,True,False,511,5,6,49,03,1179217,1841960,2006,ERROR,41.72162439,-87.619155472,"(41.72162439, -87.619155472)" -9474839,HX128512,2014-01-26 16:00:00,019XX W PETERSON AVE,0850,THEFT,ATTEMPT THEFT,RESTAURANT,3213,True,False,2413,24,40,2,06,1162040,1939914,2014,ERROR,41.990793656,-87.679339104,"(41.990793656, -87.679339104)" -7802326,HS611894,2010-11-11 18:45:00,004XX S KEDZIE AVE,0820,THEFT,$500 AND UNDER,SMALL RETAIL STORE,174,False,False,1134,11,28,27,06,1155148,1897810,2010,ERROR,41.87539874,-87.705823098,"(41.87539874, -87.705823098)" -7731223,HS539017,2010-09-28 22:26:00,007XX S CALIFORNIA AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,4969,True,False,1135,11,2,27,18,1157851,1896880,2010,ERROR,41.872792072,-87.695924058,"(41.872792072, -87.695924058)" -5221374,HN105437,2007-01-04 02:13:58,088XX S MARSHFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,600,True,True,2221,22,21,71,08B,1166921,1846213,2007,2014-04-12 12:43:35,41.733566359,-87.664072408,"(41.733566359, -87.664072408)" -4542176,HL749208,2005-11-22 06:19:20,045XX W CERMAK RD,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,2808,True,False,1012,10,24,29,16,1146657,1889031,2005,ERROR,41.851474184,-87.737222838,"(41.851474184, -87.737222838)" -4562689,HM152355,2006-01-29 19:30:00,020XX N LAWLER AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,3832,False,False,2522,25,31,19,05,1142381,1913021,2006,ERROR,41.917386066,-87.752320857,"(41.917386066, -87.752320857)" -9707558,HX357398,2014-07-23 17:30:00,020XX E 71ST ST,0554,ASSAULT,AGG PO HANDS NO/MIN INJURY,SMALL RETAIL STORE,1641,True,False,331,3,5,43,08A,1191387,1858371,2014,ERROR,41.766371955,-87.574049171,"(41.766371955, -87.574049171)" -4714041,HM227293,2006-03-11 20:25:00,065XX S WOLCOTT AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,622,True,False,726,7,15,67,18,1164765,1861497,2006,ERROR,41.775553569,-87.671540228,"(41.775553569, -87.671540228)" -5921937,HN718848,2007-11-20 17:36:30,059XX S PAULINA ST,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,3639,False,False,714,7,15,67,08A,1165991,1865160,2007,2007-02-12 01:04:24,41.785579331,-87.66694177,"(41.785579331, -87.66694177)" -3218316,HK228080,2004-03-03 15:00:00,039XX W 79TH ST,0330,ROBBERY,AGGRAVATED,"SCHOOL, PUBLIC, GROUNDS",4389,False,False,834,8,18,70,03,1151161,1851841,2004,ERROR,41.749332365,-87.721663241,"(41.749332365, -87.721663241)" -3487515,HK557821,2004-08-14 06:20:00,006XX N LONG AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4892,False,False,1524,15,37,25,14,1140252,1903605,2004,ERROR,41.891586777,-87.760374016,"(41.891586777, -87.760374016)" -2451451,HH777241,2002-11-13 04:00:00,084XX S DREXEL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3522,False,False,632,6,8,44,07,1183741,1848976,2002,ERROR,41.740772908,-87.602366784,"(41.740772908, -87.602366784)" -4502366,HL808084,2005-12-24 13:00:00,066XX N ASHLAND AVE,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,2954,False,False,2432,24,40,1,26,1164366,1944194,2005,ERROR,42.002489027,-87.670661713,"(42.002489027, -87.670661713)" -4931618,HM406308,2006-06-10 20:45:38,026XX W 47TH ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,3205,True,False,911,9,12,58,18,1159669,1873369,2006,ERROR,41.808238032,-87.689895989,"(41.808238032, -87.689895989)" -3614068,HK707958,2004-10-24 23:00:00,066XX S MAY ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3727,False,True,724,7,17,68,08B,1169839,1860579,2004,ERROR,41.77292581,-87.652966109,"(41.77292581, -87.652966109)" -3751122,HK756140,2004-11-17 11:30:00,071XX S VERNON AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,2489,True,False,323,3,6,69,18,1180514,1858040,2004,ERROR,41.765720129,-87.613912421,"(41.765720129, -87.613912421)" -8775540,HV450164,2012-08-28 03:10:00,040XX S CALUMET AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,3867,True,True,213,2,3,38,08B,1179057,1878335,2012,ERROR,41.821444824,-87.618634338,"(41.821444824, -87.618634338)" -3361951,HK409235,2004-06-04 00:01:00,022XX S WASHTENAW AVE,0820,THEFT,$500 AND UNDER,STREET,380,False,False,1034,10,28,30,06,1158665,1889279,2004,2014-04-12 12:43:35,41.851917522,-87.693143577,"(41.851917522, -87.693143577)" -6028483,HP130477,2008-01-18 08:00:00,054XX S BISHOP ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,4831,False,False,933,9,16,61,05,1167547,1868813,2008,2008-10-02 09:00:51,41.795570365,-87.661132024,"(41.795570365, -87.661132024)" -3491821,HK563513,2004-08-17 14:22:57,115XX S CHURCH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,1773,False,False,2212,22,34,75,14,1165666,1828209,2004,ERROR,41.684187135,-87.669178838,"(41.684187135, -87.669178838)" -3018372,HJ720023,2003-10-25 01:00:00,038XX W 31ST ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,2821,False,False,1031,10,22,30,08B,1151504,1883738,2003,ERROR,41.836855819,-87.719571859,"(41.836855819, -87.719571859)" -1354914,G057397,2001-01-28 06:00:00,105XX S TRUMBULL AV,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1221,False,False,2211,NA,NA,NA,14,1155237,1834766,2001,ERROR,41.702395083,-87.707182113,"(41.702395083, -87.707182113)" -4569529,HM158752,2006-01-23 08:00:00,072XX S RHODES AVE,0560,ASSAULT,SIMPLE,APARTMENT,3176,False,True,323,3,6,69,08A,1181195,1857297,2006,ERROR,41.763665603,-87.611439209,"(41.763665603, -87.611439209)" -6806076,HR217090,2009-03-15 12:05:00,054XX N LINCOLN AVE,0820,THEFT,$500 AND UNDER,RESTAURANT,346,False,False,2011,20,40,4,06,1158464,1936018,2009,ERROR,41.980177046,-87.692599697,"(41.980177046, -87.692599697)" -6083955,HP180648,2008-02-17 16:45:01,049XX S LA CROSSE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,3195,False,False,814,8,23,56,14,1144901,1871417,2008,ERROR,41.803172073,-87.744111245,"(41.803172073, -87.744111245)" -8807854,HV481114,2012-09-18 08:00:00,006XX E GRAND AVE,0810,THEFT,OVER $500,OTHER,674,False,False,1834,18,42,8,06,1180766,1904096,2012,ERROR,41.89209535,-87.611570504,"(41.89209535, -87.611570504)" -2338089,HH593976,2002-08-20 19:30:00,029XX N CENTRAL PARK AVE,2210,LIQUOR LAW VIOLATION,SELL/GIVE/DEL LIQUOR TO MINOR,TAVERN/LIQUOR STORE,3797,True,False,2523,NA,35,21,22,1151842,1919206,2002,ERROR,41.934177086,-87.717397454,"(41.934177086, -87.717397454)" -8452974,HV130354,2012-01-24 16:11:00,048XX N SHERIDAN RD,0560,ASSAULT,SIMPLE,CURRENCY EXCHANGE,2398,False,True,2024,20,46,3,08A,1168724,1932205,2012,ERROR,41.96949727,-87.654978443,"(41.96949727, -87.654978443)" -5324749,HN183465,2007-02-18 09:00:00,020XX W 70TH PL,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,2289,True,False,735,7,17,67,26,1163866,1857860,2007,ERROR,41.765592081,-87.674937943,"(41.765592081, -87.674937943)" -1623626,G373657,2001-06-27 02:16:41,005XX W DIVISION ST,2027,NARCOTICS,POSS: CRACK,STREET,3021,True,False,1823,NA,NA,NA,18,1172307,1908305,2001,ERROR,41.903836143,-87.642511973,"(41.903836143, -87.642511973)" -6375121,HP457261,2008-07-17 01:28:39,042XX W VAN BUREN ST,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,SIDEWALK,4906,False,False,1132,11,24,26,04B,1148391,1897730,2008,2008-01-08 22:09:13,41.875312091,-87.730634436,"(41.875312091, -87.730634436)" -3783641,HK789089,2004-12-04 10:37:29,029XX S DEARBORN ST,1822,NARCOTICS,MANU/DEL:CANNABIS OVER 10 GMS,CHA APARTMENT,2874,True,False,2113,1,3,35,18,1176498,1885030,2004,ERROR,41.839874474,-87.627820281,"(41.839874474, -87.627820281)" -4549735,HM139445,2006-01-22 23:10:00,019XX S RACINE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE PORCH/HALLWAY,1515,True,False,1233,12,25,31,26,1168712,1890864,2006,ERROR,41.856055437,-87.656222636,"(41.856055437, -87.656222636)" -2457835,HH783440,2002-11-10 12:30:00,042XX W 25TH PL,0810,THEFT,OVER $500,STREET,4867,False,False,1013,NA,22,30,06,1148465,1886754,2002,2014-04-12 12:43:35,41.845191169,-87.730645627,"(41.845191169, -87.730645627)" -6612069,HP685482,2008-11-15 20:00:00,037XX W LEXINGTON ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,4044,False,False,1133,11,24,27,26,1151664,1896487,2008,ERROR,41.871837466,-87.718649859,"(41.871837466, -87.718649859)" -3543604,HK627013,2004-09-16 09:20:00,047XX N WINTHROP AVE,0560,ASSAULT,SIMPLE,SIDEWALK,3752,False,True,2312,19,46,3,08A,1168071,1931384,2004,ERROR,41.967258582,-87.657403334,"(41.967258582, -87.657403334)" -5036221,HM519102,2006-08-04 11:47:26,051XX W MAYPOLE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,OTHER,1726,True,False,1532,15,28,25,18,1141785,1900930,2006,ERROR,41.884218022,-87.754810169,"(41.884218022, -87.754810169)" -8417213,HT650314,2011-12-28 12:50:00,023XX W MADISON ST,2170,NARCOTICS,POSSESSION OF DRUG EQUIPMENT,STREET,2061,True,False,1332,12,2,28,18,1160516,1899992,2011,ERROR,41.881276963,-87.686053431,"(41.881276963, -87.686053431)" -1406729,G971618,2001-02-23 11:00:00,0000X W HUBBARD ST,0820,THEFT,$500 AND UNDER,TAXICAB,182,False,False,1831,NA,NA,NA,06,1176066,1903352,2001,2014-04-12 12:43:35,41.890160967,-87.628853795,"(41.890160967, -87.628853795)" -5919963,HN717978,2007-11-20 10:45:00,011XX N KEYSTONE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,1751,True,False,1111,11,27,23,26,1149217,1907290,2007,ERROR,41.901529809,-87.727353784,"(41.901529809, -87.727353784)" -2685011,HJ285981,2003-04-07 17:30:00,002XX W 24TH PL,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,4426,True,False,2111,NA,25,34,18,1174709,1888096,2003,ERROR,41.848327956,-87.634293516,"(41.848327956, -87.634293516)" -7647393,HS452564,2010-08-08 11:11:00,044XX N BROADWAY,0870,THEFT,POCKET-PICKING,SMALL RETAIL STORE,644,False,False,2311,19,46,3,06,1168390,1929931,2010,2010-12-08 18:54:25,41.96326459,-87.656272632,"(41.96326459, -87.656272632)" -9876690,HX527338,2014-12-02 10:50:00,116XX S WALLACE ST,1365,CRIMINAL TRESPASS,TO RESIDENCE,RESIDENCE,4273,True,False,524,5,34,53,26,1174437,1827665,2014,2014-09-12 12:42:40,41.682504278,-87.637086989,"(41.682504278, -87.637086989)" -8735782,HV411396,2012-08-01 22:30:00,013XX W PRATT BLVD,1812,NARCOTICS,POSS: CANNABIS MORE THAN 30GMS,STREET,4850,True,False,2432,24,49,1,18,1166147,1945262,2012,2012-02-08 02:34:01,42.005381627,-87.664078885,"(42.005381627, -87.664078885)" -1815802,G640754,2001-10-24 17:35:00,072XX S RIDGELAND AV,0460,BATTERY,SIMPLE,SIDEWALK,3648,False,False,324,NA,NA,NA,08B,1189086,1857179,2001,ERROR,41.763156434,-87.582521182,"(41.763156434, -87.582521182)" -9048414,HW192963,2013-03-13 16:10:00,035XX E 114TH ST,0460,BATTERY,SIMPLE,STREET,1436,False,False,433,4,10,52,08B,1201622,1829943,2013,ERROR,41.688109378,-87.537498377,"(41.688109378, -87.537498377)" -4252619,HL568353,2005-08-24 10:51:19,027XX E 83RD ST,0610,BURGLARY,FORCIBLE ENTRY,SMALL RETAIL STORE,1402,False,False,423,4,7,46,05,1195865,1850505,2005,ERROR,41.744677425,-87.557895859,"(41.744677425, -87.557895859)" -7015773,HR422984,2009-07-11 07:45:00,060XX N BROADWAY,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,3873,True,False,2433,24,48,77,06,1167253,1940103,2009,ERROR,41.991201436,-87.660159064,"(41.991201436, -87.660159064)" -7085175,HR493489,2009-08-20 03:00:00,042XX S COTTAGE GROVE AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,STREET,3060,False,False,213,2,4,38,14,1182265,1877306,2009,ERROR,41.818547345,-87.606897794,"(41.818547345, -87.606897794)" -3872852,HL239738,2005-03-11 19:30:00,007XX W 112TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,840,False,False,2233,22,34,49,07,1173427,1830631,2005,ERROR,41.690665788,-87.640696894,"(41.690665788, -87.640696894)" -4784156,HM394717,2006-06-05 08:00:00,058XX N LINCOLN AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",1276,False,False,2011,20,40,2,06,1155783,1938688,2006,2006-09-06 04:07:44,41.987558265,-87.702387107,"(41.987558265, -87.702387107)" -6149991,HP239396,2008-03-23 02:31:00,017XX N CLARK ST,0460,BATTERY,SIMPLE,BAR OR TAVERN,2251,False,False,1814,18,43,7,08B,1174666,1912148,2008,2008-08-04 17:08:11,41.914329059,-87.633731746,"(41.914329059, -87.633731746)" -2706200,HJ317376,2003-04-22 23:30:09,058XX W CHICAGO AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,1400,True,False,1511,NA,29,25,18,1137385,1904788,2003,ERROR,41.894885131,-87.77087487,"(41.894885131, -87.77087487)" -3243981,HK261903,2004-03-25 07:00:00,041XX W BARRY AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,1844,False,False,2523,25,31,21,26,1148267,1920250,2004,ERROR,41.93711164,-87.730508643,"(41.93711164, -87.730508643)" -4670809,HM272274,2006-04-04 16:30:00,001XX W 110TH PL,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,RESIDENCE PORCH/HALLWAY,2999,False,False,513,5,34,49,04B,1177196,1831716,2006,2006-09-04 03:54:02,41.693559196,-87.626865823,"(41.693559196, -87.626865823)" -3551830,HK636854,2004-09-20 17:00:00,016XX W HOLLYWOOD AVE,0560,ASSAULT,SIMPLE,APARTMENT,2262,False,False,2012,20,40,77,08A,1164030,1937887,2004,ERROR,41.985189571,-87.672076994,"(41.985189571, -87.672076994)" -5555385,HN360342,2007-05-20 06:00:00,071XX S SOUTH SHORE DR,0560,ASSAULT,SIMPLE,STREET,4204,False,True,334,3,7,43,08A,1194449,1858304,2007,2007-11-06 15:52:33,41.766113381,-87.562828234,"(41.766113381, -87.562828234)" -8722256,HV398745,2012-04-24 09:00:00,080XX S DREXEL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,1617,False,False,631,6,8,44,26,1183677,1851641,2012,ERROR,41.748087445,-87.602518345,"(41.748087445, -87.602518345)" -2870583,HJ537839,2003-08-03 14:50:00,044XX N HAZEL ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,3347,False,True,2313,19,46,3,08B,1169420,1929662,2003,ERROR,41.96250405,-87.652493562,"(41.96250405, -87.652493562)" -2202542,HH464935,2002-06-24 21:31:52,001XX W 87TH ST,1330,CRIMINAL TRESPASS,TO LAND,PARKING LOT/GARAGE(NON.RESID.),4936,True,False,622,NA,21,44,26,1176895,1847317,2002,ERROR,41.736377238,-87.627499596,"(41.736377238, -87.627499596)" -9078445,HW222090,2013-04-06 15:50:00,003XX E 60TH ST,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,3449,False,False,232,2,20,40,03,1179110,1865332,2013,ERROR,41.785762231,-87.618836444,"(41.785762231, -87.618836444)" -6538835,HP612336,2008-10-06 14:30:00,012XX N MONTICELLO AVE,1563,SEX OFFENSE,CRIMINAL SEXUAL ABUSE,"SCHOOL, PUBLIC, BUILDING",1976,True,False,2535,25,26,23,17,1151767,1908135,2008,2009-03-07 13:40:43,41.90379876,-87.717965025,"(41.90379876, -87.717965025)" -1891896,G739646,2001-12-10 17:30:00,001XX W OAK ST,0460,BATTERY,SIMPLE,APARTMENT,3559,False,True,1824,NA,NA,NA,08B,1174581,1907163,2001,ERROR,41.900651882,-87.63419329,"(41.900651882, -87.63419329)" -6361408,HP448520,2008-07-12 15:30:00,038XX W POLK ST,0560,ASSAULT,SIMPLE,APARTMENT,1593,False,False,1133,11,24,26,08A,1150950,1896132,2008,ERROR,41.870877306,-87.721280557,"(41.870877306, -87.721280557)" -3347368,HK388596,2004-05-26 07:20:00,092XX S ABERDEEN ST,0460,BATTERY,SIMPLE,SIDEWALK,4671,False,False,2222,22,21,73,08B,1170580,1843176,2004,ERROR,41.725153538,-87.650755883,"(41.725153538, -87.650755883)" -9948680,HY137572,2015-02-02 10:40:00,052XX W CONGRESS PKWY,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,4151,False,False,1522,15,29,25,05,1141716,1897144,2015,2015-09-02 12:45:35,41.873830036,-87.755157207,"(41.873830036, -87.755157207)" -8157166,HT392395,2011-07-11 22:03:00,012XX N CLYBOURN AVE,0850,THEFT,ATTEMPT THEFT,SIDEWALK,2478,True,False,1821,18,27,8,06,1172815,1908509,2011,2011-12-07 09:18:42,41.904384688,-87.640639932,"(41.904384688, -87.640639932)" -5615641,HN424136,2007-06-23 16:58:43,080XX S ST LOUIS AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,754,False,False,834,8,18,70,05,1154418,1850741,2007,2007-03-08 02:38:51,41.746249624,-87.709757369,"(41.746249624, -87.709757369)" -6678841,HP753255,2008-12-27 17:05:00,052XX N SHERIDAN RD,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,1653,True,False,2023,20,48,77,06,1168731,1935088,2008,ERROR,41.977408151,-87.654868748,"(41.977408151, -87.654868748)" -4652026,HM251430,2006-03-25 00:01:00,097XX S AVENUE L,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,APARTMENT,1778,False,False,432,4,10,52,26,1201832,1841147,2006,2006-04-04 03:37:55,41.718848775,-87.53635002,"(41.718848775, -87.53635002)" -7172268,HR582951,2009-10-11 12:15:00,003XX W NORTH AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,3748,False,False,1814,18,43,7,26,1173850,1911019,2009,ERROR,41.911249256,-87.636763258,"(41.911249256, -87.636763258)" -6920364,HR325590,2009-05-17 03:50:00,053XX S NORDICA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,1851,False,False,811,8,23,56,14,1130322,1868174,2009,ERROR,41.794534496,-87.797654615,"(41.794534496, -87.797654615)" -6413617,HP474865,2008-07-25 22:40:00,044XX W MADISON ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,4473,True,False,1113,11,28,26,18,1146975,1899609,2008,2008-07-08 12:18:35,41.880495455,-87.73578545,"(41.880495455, -87.73578545)" -5099538,HM702282,2006-11-05 05:30:00,039XX N SHERIDAN RD,0870,THEFT,POCKET-PICKING,CTA TRAIN,1993,False,False,2324,19,44,6,06,1168850,1926543,2006,2006-08-11 05:36:51,41.953957812,-87.654680033,"(41.953957812, -87.654680033)" -7256815,HR671119,2009-11-22 02:00:00,012XX N CLARK ST,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,ATM (AUTOMATIC TELLER MACHINE),2265,False,False,1821,18,42,8,11,1175274,1908508,2009,2009-04-12 14:38:56,41.904327102,-87.631607477,"(41.904327102, -87.631607477)" -5593784,HN398599,2007-06-11 15:11:00,005XX E 71ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,1097,True,False,322,3,6,69,18,1181308,1858110,2007,ERROR,41.765893956,-87.61100002,"(41.765893956, -87.61100002)" -6361346,HP448207,2008-07-11 08:30:00,051XX S HARPER AVE,0560,ASSAULT,SIMPLE,SIDEWALK,4863,False,True,2132,2,4,41,08A,1187200,1871163,2008,ERROR,41.801574625,-87.588989942,"(41.801574625, -87.588989942)" -9900148,HX550849,2014-12-21 21:00:00,033XX S INDIANA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3486,False,False,211,2,3,35,14,1178111,1882842,2014,ERROR,41.833833929,-87.621967815,"(41.833833929, -87.621967815)" -9176806,HW321737,2013-06-16 07:30:00,111XX S GREEN ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENTIAL YARD (FRONT/BACK),1833,False,False,2233,22,34,75,14,1172607,1830711,2013,ERROR,41.690903375,-87.643696617,"(41.690903375, -87.643696617)" -9255503,HW400240,2013-08-09 09:00:00,016XX W WRIGHTWOOD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),2272,False,False,1931,19,32,7,14,1164679,1917284,2013,ERROR,41.928640244,-87.670276344,"(41.928640244, -87.670276344)" -8879865,HV553462,2012-11-08 14:00:00,075XX S CHAMPLAIN AVE,0880,THEFT,PURSE-SNATCHING,SIDEWALK,937,False,False,624,6,6,69,06,1181824,1855392,2012,2012-09-11 10:05:24,41.758423578,-87.609192588,"(41.758423578, -87.609192588)" -8619862,HV293402,2012-05-19 09:00:00,051XX W HURON ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,3108,False,True,1532,15,28,25,08B,1142167,1904099,2012,ERROR,41.892907066,-87.753328745,"(41.892907066, -87.753328745)" -8939790,HV611318,2012-12-20 18:00:00,029XX W WASHINGTON BLVD,0610,BURGLARY,FORCIBLE ENTRY,"SCHOOL, PUBLIC, BUILDING",2123,False,False,1222,12,2,27,05,1156901,1900584,2012,2013-01-01 19:08:51,41.882975519,-87.699311498,"(41.882975519, -87.699311498)" -4471061,HL762489,2005-11-29 18:24:56,025XX S DRAKE AVE,502P,OTHER OFFENSE,FALSE/STOLEN/ALTERED TRP,ALLEY,3995,True,False,1024,10,22,30,26,1153071,1886821,2005,ERROR,41.845285083,-87.71374025,"(41.845285083, -87.71374025)" -6948596,HR354023,2009-05-08 09:00:00,002XX E GARFIELD BLVD,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,4044,False,False,232,2,3,40,11,1178909,1868644,2009,ERROR,41.794855256,-87.61947257,"(41.794855256, -87.61947257)" -3024446,HJ731807,2003-11-01 10:19:57,082XX S COMMERCIAL AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,2796,False,True,424,4,10,46,08B,1197665,1850765,2003,ERROR,41.745346184,-87.551291909,"(41.745346184, -87.551291909)" -7096237,HR504828,2009-08-26 16:56:00,019XX W 33RD ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,4912,True,False,922,9,11,59,06,1163768,1882841,2009,ERROR,41.834145069,-87.674595443,"(41.834145069, -87.674595443)" -5309441,HN169039,2007-02-09 18:50:00,061XX W 64TH PL,0560,ASSAULT,SIMPLE,APARTMENT,3080,False,False,812,8,13,64,08A,1136487,1861077,2007,ERROR,41.774951401,-87.775216121,"(41.774951401, -87.775216121)" -3332497,HK367263,2004-05-16 04:42:21,003XX N STATE ST,0460,BATTERY,SIMPLE,STREET,3474,True,False,1831,18,42,8,08B,1176258,1902572,2004,ERROR,41.888016277,-87.628172231,"(41.888016277, -87.628172231)" -5531805,HN344079,2007-05-15 14:45:00,080XX S COTTAGE GROVE AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,SIDEWALK,4786,False,False,631,6,8,44,03,1182985,1852068,2007,2007-03-06 02:49:28,41.749275279,-87.605040789,"(41.749275279, -87.605040789)" -2251499,HH522712,2002-07-19 21:00:00,054XX N LINCOLN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,811,False,False,2011,NA,40,4,14,1158470,1935921,2002,ERROR,41.979910751,-87.6925803,"(41.979910751, -87.6925803)" -5009126,HM619632,2006-09-24 03:00:00,021XX N RICHMOND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,1319,False,True,1414,14,35,22,08B,1156551,1914178,2006,ERROR,41.920285736,-87.700228327,"(41.920285736, -87.700228327)" -5710364,HN518757,2007-08-01 17:00:00,084XX W BRYN MAWR AVE,0890,THEFT,FROM BUILDING,OTHER,1004,False,False,1614,16,41,76,06,1119008,1936135,2007,ERROR,41.98121629,-87.837704596,"(41.98121629, -87.837704596)" -3722385,HK829243,2004-12-26 19:40:00,104XX S GREEN ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,933,False,True,2233,22,34,73,08B,1172542,1835330,2004,ERROR,41.703580052,-87.643799205,"(41.703580052, -87.643799205)" -3832461,HL203373,2005-02-26 12:35:31,002XX S HOYNE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4153,False,False,1211,12,2,28,14,1162403,1898857,2005,ERROR,41.878123162,-87.679156235,"(41.878123162, -87.679156235)" -8764513,HV439482,2012-08-20 20:08:00,038XX S ELLIS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE PORCH/HALLWAY,1953,True,True,212,2,4,36,08B,1182599,1879695,2012,ERROR,41.825095178,-87.605598354,"(41.825095178, -87.605598354)" -4299664,HL609145,2005-09-13 08:30:00,014XX E 73RD ST,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,1634,False,False,324,3,5,43,26,1186949,1856916,2005,ERROR,41.762485657,-87.590361895,"(41.762485657, -87.590361895)" -5945461,HN743993,2007-12-05 19:06:00,050XX W HURON ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,STREET,551,True,False,1531,15,28,25,26,1142830,1904220,2007,2007-09-12 01:04:39,41.89322678,-87.750890754,"(41.89322678, -87.750890754)" -3283363,HK312676,2004-04-20 00:11:42,046XX N CLIFTON AVE,1220,DECEPTIVE PRACTICE,THEFT OF LOST/MISLAID PROP,STREET,2918,True,False,2311,19,46,3,11,1167636,1931034,2004,ERROR,41.966307576,-87.659012898,"(41.966307576, -87.659012898)" -4021146,HL375918,2005-05-24 12:46:15,107XX S EBERHART AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,2789,False,False,513,5,9,49,14,1181446,1833717,2005,ERROR,41.698953504,-87.6112443,"(41.698953504, -87.6112443)" -6928511,HR332778,2009-05-20 17:30:00,007XX W BARRY AVE,0810,THEFT,OVER $500,STREET,4362,False,False,2332,19,44,6,06,1170898,1920733,2009,ERROR,41.937970207,-87.647322338,"(41.937970207, -87.647322338)" -9938186,HY126791,2015-01-24 00:10:00,026XX W EVERGREEN AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,RESIDENCE,3583,False,False,1423,14,26,24,11,1158479,1908916,2015,ERROR,41.905807118,-87.69328876,"(41.905807118, -87.69328876)" -2981789,HJ644907,2003-09-21 22:04:00,062XX S MORGAN ST,2027,NARCOTICS,POSS: CRACK,STREET,4061,True,False,712,7,16,68,18,1170765,1863047,2003,ERROR,41.779678145,-87.649499695,"(41.779678145, -87.649499695)" -2677516,HJ285368,2003-04-07 13:20:00,001XX W 72ND ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,1047,False,True,731,NA,6,69,26,1176827,1857294,2003,ERROR,41.763756849,-87.627448846,"(41.763756849, -87.627448846)" -2878862,HJ547518,2003-08-07 12:00:00,048XX W BELLE PLAINE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,2191,False,False,1624,16,45,15,05,1143180,1926855,2003,ERROR,41.955332998,-87.749038868,"(41.955332998, -87.749038868)" -6312467,HP396461,2008-06-13 07:20:00,018XX W LAWRENCE AVE,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),4648,False,False,2032,20,47,4,08B,1163122,1931948,2008,ERROR,41.968911917,-87.675584255,"(41.968911917, -87.675584255)" -2168387,HH420999,2002-06-02 19:00:00,005XX W WILSON DR,0610,BURGLARY,FORCIBLE ENTRY,OTHER,867,False,False,2313,NA,46,3,05,1171655,1930932,2002,ERROR,41.965939938,-87.644238851,"(41.965939938, -87.644238851)" -4428519,HL721751,2005-11-07 17:35:28,003XX S CENTRAL AVE,0460,BATTERY,SIMPLE,STREET,2098,True,False,1522,15,29,25,08B,1139164,1897488,2005,ERROR,41.874820808,-87.764518699,"(41.874820808, -87.764518699)" -6253386,HP340946,2008-05-17 00:30:00,021XX W DIVISION ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,1175,False,False,1424,14,32,24,05,1161971,1908008,2008,2008-02-06 10:11:07,41.903243283,-87.680486791,"(41.903243283, -87.680486791)" -2704055,HJ328889,2003-04-28 10:00:00,115XX S YALE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,STREET,1601,False,True,522,NA,34,53,26,1176713,1828501,2003,ERROR,41.684747613,-87.628730466,"(41.684747613, -87.628730466)" -1882196,G720932,2001-12-01 13:10:00,020XX S STATE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),SIDEWALK,800,True,False,2111,NA,NA,NA,18,1176680,1890478,2001,ERROR,41.854820078,-87.626987993,"(41.854820078, -87.626987993)" -7507209,HS310705,2010-05-16 14:00:00,022XX S KOLIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3702,False,True,1013,10,22,29,08B,1147967,1888437,2010,ERROR,41.849819116,-87.732430029,"(41.849819116, -87.732430029)" -5257400,HM683946,2006-10-26 19:50:02,002XX N KOSTNER AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,3908,True,False,1113,11,28,26,26,1146987,1900681,2006,ERROR,41.883436917,-87.735713976,"(41.883436917, -87.735713976)" -4144821,HL474019,2005-07-10 03:55:00,0000X W 69TH ST,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,CTA GARAGE / OTHER PROPERTY,1874,False,False,731,7,6,69,03,1177312,1859236,2005,ERROR,41.769074977,-87.62561266,"(41.769074977, -87.62561266)" -6107802,HP202858,2008-03-01 03:30:00,001XX E PERSHING RD,0890,THEFT,FROM BUILDING,HOTEL/MOTEL,2798,False,False,211,2,3,35,06,1177861,1879207,2008,2008-02-03 09:27:45,41.823864879,-87.622995394,"(41.823864879, -87.622995394)" -9057825,HW202237,2013-03-22 08:00:00,039XX N LAMON AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2777,False,True,1634,16,45,15,14,1143003,1926071,2013,ERROR,41.953184943,-87.74970919,"(41.953184943, -87.74970919)" -10105129,HY293838,2015-06-09 11:30:00,034XX W 62ND ST,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE-GARAGE,3155,False,False,823,8,15,66,26,1154383,1863255,2015,ERROR,41.780590724,-87.709553096,"(41.780590724, -87.709553096)" -8759952,HV434029,2012-08-16 21:00:00,028XX E 128TH ST,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,3407,False,False,433,4,10,55,07,1197309,1820733,2012,2012-04-09 11:30:20,41.662944388,-87.553592675,"(41.662944388, -87.553592675)" -7959811,HT190199,2011-03-05 19:15:00,028XX S PULASKI RD,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,1473,False,False,1031,10,22,30,14,1150127,1885011,2011,2011-08-03 08:38:18,41.840375986,-87.724591567,"(41.840375986, -87.724591567)" -3048313,HJ763595,2003-11-16 19:10:00,0000X N LOCKWOOD AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,1950,False,False,1522,15,28,25,03,1141098,1899565,2003,ERROR,41.880484972,-87.757366589,"(41.880484972, -87.757366589)" -5843787,HN653880,2007-10-17 06:15:00,005XX W DIVERSEY PKWY,0820,THEFT,$500 AND UNDER,SIDEWALK,154,False,False,2333,19,44,6,06,1172289,1918919,2007,2014-04-12 12:43:35,41.932961861,-87.642263918,"(41.932961861, -87.642263918)" -2978407,HJ675858,2003-10-06 08:00:00,047XX N ARTESIAN AVE,0810,THEFT,OVER $500,STREET,3029,False,False,1911,19,47,4,06,1159226,1931185,2003,2014-04-12 12:43:35,41.966899389,-87.689930834,"(41.966899389, -87.689930834)" -6332578,HP413557,2008-06-21 14:00:00,060XX S HERMITAGE AVE,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,524,False,True,714,7,15,67,20,1165681,1864379,2008,ERROR,41.783442756,-87.66810053,"(41.783442756, -87.66810053)" -5107772,HM708459,2006-11-08 09:00:00,093XX S VINCENNES AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,DRIVEWAY - RESIDENTIAL,568,False,False,2222,22,21,73,14,1170848,1842818,2006,2006-11-11 07:40:50,41.724165299,-87.649784606,"(41.724165299, -87.649784606)" -7053138,HR458882,2009-07-31 17:50:00,053XX W CHICAGO AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,3429,True,False,1524,15,37,25,18,1140842,1904779,2009,ERROR,41.894797544,-87.758178285,"(41.894797544, -87.758178285)" -3752876,HK761921,2004-11-19 21:59:00,035XX W VAN BUREN ST,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,2319,True,False,1133,11,28,27,26,1152952,1897760,2004,ERROR,41.875305308,-87.713887327,"(41.875305308, -87.713887327)" -8246665,HT470888,2011-08-28 17:00:00,043XX N CALIFORNIA AVE,0610,BURGLARY,FORCIBLE ENTRY,CAR WASH,1992,False,False,1724,17,33,16,05,1156889,1928818,2011,ERROR,41.960452042,-87.698588153,"(41.960452042, -87.698588153)" -8588225,HV262806,2012-04-28 22:55:00,013XX W 15TH ST,1350,CRIMINAL TRESPASS,TO STATE SUP LAND,CHA PARKING LOT/GROUNDS,2791,True,False,1231,12,2,28,26,1167750,1892902,2012,ERROR,41.861668647,-87.659694953,"(41.861668647, -87.659694953)" -4546442,HM132623,2006-01-18 12:40:00,021XX N MELVINA AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,2714,False,False,2512,25,29,19,14,1134778,1913205,2006,ERROR,41.91802893,-87.780250515,"(41.91802893, -87.780250515)" -4972684,HM583449,2006-09-04 17:00:00,050XX S ELIZABETH ST,0460,BATTERY,SIMPLE,STREET,1534,False,False,933,9,16,61,08B,1168804,1871336,2006,2006-03-10 05:10:58,41.802466697,-87.656449709,"(41.802466697, -87.656449709)" -7723442,HS530831,2010-09-23 23:32:00,003XX W SCOTT ST,031A,ROBBERY,ARMED: HANDGUN,STREET,4018,True,False,1821,18,27,8,03,1173890,1908750,2010,2011-10-05 09:12:33,41.905022117,-87.636684012,"(41.905022117, -87.636684012)" -2773492,HJ393599,2003-05-29 03:10:00,008XX N SPRINGFIELD AVE,2027,NARCOTICS,POSS: CRACK,STREET,844,True,False,1112,NA,27,23,18,1150284,1905083,2003,ERROR,41.895452828,-87.72349217,"(41.895452828, -87.72349217)" -3692637,HK794797,2004-12-07 11:00:31,018XX W 34TH ST,0920,MOTOR VEHICLE THEFT,ATT: AUTOMOBILE,STREET,3810,False,False,922,9,11,59,07,1164352,1882114,2004,ERROR,41.832137795,-87.672473125,"(41.832137795, -87.672473125)" -4219807,HL460633,2005-07-03 19:58:47,010XX N LECLAIRE AVE,2027,NARCOTICS,POSS: CRACK,SIDEWALK,2203,True,False,1531,15,37,25,18,1142213,1906317,2005,ERROR,41.898992665,-87.753104713,"(41.898992665, -87.753104713)" -2573876,HJ163682,2003-02-03 19:00:00,038XX N PLAINFIELD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,2418,False,False,1631,NA,36,17,14,1119989,1924864,2003,ERROR,41.950271676,-87.834338101,"(41.950271676, -87.834338101)" -4071798,HL321033,2005-04-27 11:45:00,008XX N HUDSON AVE,2027,NARCOTICS,POSS: CRACK,STREET,4486,True,False,1823,18,27,8,18,1172997,1905793,2005,ERROR,41.896927801,-87.640052025,"(41.896927801, -87.640052025)" -4818852,HM291602,2006-04-14 23:58:42,026XX W 23RD PL,2230,LIQUOR LAW VIOLATION,ILLEGAL CONSUMPTION BY MINOR,SIDEWALK,2628,False,False,1034,10,28,30,22,1158965,1888336,2006,ERROR,41.849323686,-87.69206834,"(41.849323686, -87.69206834)" -7027138,HR426417,2009-07-13 04:45:00,060XX S WABASH AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,3907,False,False,311,3,20,40,05,1177713,1864904,2009,ERROR,41.784619498,-87.623971417,"(41.784619498, -87.623971417)" -9581848,HX232365,2014-04-21 23:03:00,015XX W SUPERIOR ST,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,4430,False,False,1215,12,27,24,14,1165974,1905059,2014,ERROR,41.895066484,-87.66586726,"(41.895066484, -87.66586726)" -9174144,HW318226,2013-06-11 00:01:00,014XX W ROSEMONT AVE,0841,THEFT,FINANCIAL ID THEFT:$300 &UNDER,APARTMENT,4653,False,False,2433,24,40,77,06,1165397,1941952,2013,ERROR,41.996314969,-87.666932963,"(41.996314969, -87.666932963)" -5992602,HP100090,2008-01-01 00:30:00,063XX S DR MARTIN LUTHER KING JR DR,051A,ASSAULT,AGGRAVATED: HANDGUN,SIDEWALK,3889,False,False,312,3,20,69,04A,1179974,1862865,2008,2008-06-01 06:49:00,41.778972797,-87.615744123,"(41.778972797, -87.615744123)" -2254466,HH524868,2002-07-21 05:00:00,006XX N ST CLAIR ST,0460,BATTERY,SIMPLE,STREET,3497,False,False,1834,NA,42,8,08B,1177765,1904573,2002,ERROR,41.893473003,-87.622577223,"(41.893473003, -87.622577223)" -7861681,HS675991,2010-12-20 07:00:00,016XX W WRIGHTWOOD AVE,0890,THEFT,FROM BUILDING,RESIDENCE-GARAGE,741,False,False,1931,19,32,7,06,1164728,1917284,2010,ERROR,41.928639204,-87.670096285,"(41.928639204, -87.670096285)" -4305016,HL615231,2005-09-15 19:00:00,014XX W ESTES AVE,0820,THEFT,$500 AND UNDER,STREET,331,False,False,2423,24,49,1,06,1165114,1947454,2005,2014-04-12 12:43:35,42.011418612,-87.667816666,"(42.011418612, -87.667816666)" -6978791,HR377687,2009-06-16 05:00:00,064XX S WINCHESTER AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,4805,True,False,726,7,15,67,26,1164424,1861895,2009,ERROR,41.776652928,-87.672779095,"(41.776652928, -87.672779095)" -7951980,HT184140,2011-03-01 16:00:00,069XX S MAPLEWOOD AVE,0560,ASSAULT,SIMPLE,APARTMENT,4213,False,True,832,8,15,66,08A,1160614,1858473,2011,2011-03-03 11:09:39,41.767341932,-87.686840757,"(41.767341932, -87.686840757)" -9319944,HW463891,2013-09-23 15:24:00,007XX N MENARD AVE,0650,BURGLARY,HOME INVASION,APARTMENT,3017,False,False,1511,15,29,25,05,1137630,1904607,2013,2013-09-10 17:10:49,41.894384033,-87.769979402,"(41.894384033, -87.769979402)" -6757834,HR174805,2009-02-17 16:34:15,070XX S WENTWORTH AVE,1330,CRIMINAL TRESPASS,TO LAND,CURRENCY EXCHANGE,3968,True,False,731,7,6,69,26,1176225,1857985,2009,ERROR,41.765666567,-87.629634577,"(41.765666567, -87.629634577)" -4825337,HM438385,2006-04-20 09:00:00,023XX S LAKE SHORE DR E,0890,THEFT,FROM BUILDING,OTHER,2059,False,False,133,1,2,33,06,1180538,1889157,2006,ERROR,41.851107212,-87.612868333,"(41.851107212, -87.612868333)" -8933517,HV605679,2012-12-17 02:14:00,012XX S SPRINGFIELD AVE,0820,THEFT,$500 AND UNDER,STREET,31,False,False,1011,10,24,29,06,1150625,1893795,2012,ERROR,41.864470661,-87.722534804,"(41.864470661, -87.722534804)" -3080102,HJ805073,2003-12-04 19:00:00,043XX N KEDVALE AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,2862,False,True,1722,17,39,16,26,1148110,1928515,2003,ERROR,41.959794498,-87.730872135,"(41.959794498, -87.730872135)" -7734425,HS535056,2010-09-25 17:30:00,088XX S LOWE AVE,0810,THEFT,OVER $500,STREET,3573,False,False,2223,22,21,71,06,1173480,1846204,2010,2010-02-10 09:42:41,41.733399192,-87.640043801,"(41.733399192, -87.640043801)" -9596026,HX246438,2014-05-02 23:30:00,005XX N KEDZIE AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,STREET,4495,False,False,1121,11,27,23,03,1154906,1903472,2014,2014-07-05 00:40:24,41.890940685,-87.706559801,"(41.890940685, -87.706559801)" -9870090,HX520069,2014-11-25 11:40:00,053XX N WESTERN AVE,0460,BATTERY,SIMPLE,NURSING HOME/RETIREMENT HOME,2515,False,False,2011,20,40,4,08B,1159335,1935518,2014,2014-02-12 12:51:55,41.978787101,-87.689410305,"(41.978787101, -87.689410305)" -8508277,HV185019,2012-03-06 08:40:00,072XX S COLES AVE,1360,CRIMINAL TRESPASS,TO VEHICLE,STREET,3879,True,False,334,3,7,43,26,1194431,1857617,2012,2012-06-03 15:34:55,41.764228646,-87.562916763,"(41.764228646, -87.562916763)" -2177946,HH431848,2002-06-03 16:00:00,041XX W 31ST ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,868,False,False,1031,NA,22,30,06,1149298,1883758,2002,ERROR,41.836953671,-87.727666121,"(41.836953671, -87.727666121)" -1986260,HH132885,2002-01-17 20:40:00,030XX W MADISON ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,1187,True,False,1124,NA,NA,NA,16,1156378,1899829,2002,ERROR,41.880914312,-87.701252404,"(41.880914312, -87.701252404)" -9234994,HW381728,2013-07-26 09:30:00,0000X W WACKER DR,0820,THEFT,$500 AND UNDER,SIDEWALK,318,False,False,111,1,42,32,06,1175775,1902091,2013,ERROR,41.886707265,-87.629960428,"(41.886707265, -87.629960428)" -7988307,HT219886,2011-03-25 20:58:00,009XX N MOZART ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,797,True,True,1311,12,26,24,08B,1157172,1906205,2011,ERROR,41.898394561,-87.69816358,"(41.898394561, -87.69816358)" -7278970,HR694241,2009-12-17 11:00:00,041XX N GREENVIEW AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,4882,False,False,1923,19,47,6,14,1165286,1927513,2009,ERROR,41.956696233,-87.66775397,"(41.956696233, -87.66775397)" -8025601,HT256918,2011-04-19 13:00:00,076XX S KINGSTON AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,APARTMENT,2051,True,False,421,4,7,43,15,1194477,1854868,2011,ERROR,41.756684054,-87.562838411,"(41.756684054, -87.562838411)" -2962454,HJ650469,2003-09-24 11:45:00,0000X W 79TH ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,OTHER,2463,True,False,623,6,6,44,11,1177482,1852588,2003,ERROR,41.750828271,-87.625190123,"(41.750828271, -87.625190123)" -3532647,HK574001,2004-08-22 14:49:40,056XX S WINCHESTER AVE,2014,NARCOTICS,MANU/DELIVER: HEROIN (WHITE),SIDEWALK,1797,True,False,715,7,15,67,18,1164271,1867524,2004,ERROR,41.792102855,-87.673181553,"(41.792102855, -87.673181553)" -3038829,HJ750788,2003-11-10 15:25:00,020XX S KOSTNER AVE,0560,ASSAULT,SIMPLE,OTHER,4836,True,False,1012,10,24,29,08A,1147406,1890054,2003,ERROR,41.854267127,-87.734447612,"(41.854267127, -87.734447612)" -9806012,HX453692,2014-10-03 13:30:00,023XX N PULASKI RD,0810,THEFT,OVER $500,PARKING LOT/GARAGE(NON.RESID.),2254,False,False,2525,25,31,20,06,1149281,1915512,2014,2014-10-10 12:36:29,41.924090526,-87.72690517,"(41.924090526, -87.72690517)" -3511264,HK589583,2004-08-29 14:30:00,022XX N CANNON DR,0820,THEFT,$500 AND UNDER,STREET,219,False,False,1814,18,43,7,06,1175058,1914939,2004,2014-04-12 12:43:35,41.921978896,-87.632207786,"(41.921978896, -87.632207786)" -5053020,HM659802,2006-10-14 14:45:00,035XX S WESTERN BLVD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,2470,False,False,913,9,11,59,08B,1161140,1881089,2006,ERROR,41.829392282,-87.684286808,"(41.829392282, -87.684286808)" -8357212,HT590698,2011-11-15 15:45:00,040XX W WEST END AVE,0470,PUBLIC PEACE VIOLATION,RECKLESS CONDUCT,STREET,2682,True,False,1114,11,28,26,24,1149062,1900618,2011,ERROR,41.883224133,-87.728095989,"(41.883224133, -87.728095989)" -2234104,HH504870,2002-07-12 13:00:00,016XX S SPRINGFIELD AVE,0420,BATTERY,AGGRAVATED:KNIFE/CUTTING INSTR,SIDEWALK,557,False,False,1014,NA,24,29,04B,1150624,1891627,2002,ERROR,41.858521432,-87.722595091,"(41.858521432, -87.722595091)" -5023389,HM632245,2006-09-29 19:00:00,012XX N LA SALLE DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,549,False,False,1821,18,43,8,14,1174869,1908585,2006,2006-03-10 05:10:58,41.904547475,-87.633092826,"(41.904547475, -87.633092826)" -4167710,HL497000,2005-07-18 14:07:00,039XX N RAVENSWOOD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,1045,False,False,1923,19,47,6,26,1163702,1926130,2005,ERROR,41.952934826,-87.673616315,"(41.952934826, -87.673616315)" -2170727,HH421736,2002-06-05 21:00:00,100XX W OHARE ST,0460,BATTERY,SIMPLE,AIRPORT/AIRCRAFT,994,False,False,1651,NA,41,76,08B,1100635,1934208,2002,ERROR,41.976200173,-87.905312411,"(41.976200173, -87.905312411)" -2294558,HH580615,2002-08-14 08:30:00,025XX N BOSWORTH AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3119,False,False,1931,NA,32,7,07,1165613,1916698,2002,ERROR,41.927012356,-87.666860956,"(41.927012356, -87.666860956)" -7991942,HT224010,2011-03-28 20:45:00,063XX S ARTESIAN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,1474,True,False,825,8,15,66,18,1161174,1862364,2011,ERROR,41.778007816,-87.684680539,"(41.778007816, -87.684680539)" -3096983,HJ825511,2003-12-18 17:20:00,075XX N CLARK ST,0860,THEFT,RETAIL THEFT,DEPARTMENT STORE,706,True,False,2422,24,49,1,06,1162974,1949868,2003,ERROR,42.018088059,-87.675622371,"(42.018088059, -87.675622371)" -2315170,HH603150,2002-08-25 01:40:00,093XX S PARNELL AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE-GARAGE,3586,False,False,2223,NA,21,73,14,1174239,1842710,2002,ERROR,41.723794372,-87.637366715,"(41.723794372, -87.637366715)" -4440071,HL737554,2005-11-15 19:05:00,032XX W 63RD ST,031A,ROBBERY,ARMED: HANDGUN,GROCERY FOOD STORE,4578,False,False,823,8,15,66,03,1155598,1862622,2005,ERROR,41.778829406,-87.705115599,"(41.778829406, -87.705115599)" -7177547,HR586223,2009-10-09 10:00:00,081XX S PAULINA ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,2086,False,False,614,6,18,71,05,1166467,1850703,2009,2009-10-11 13:28:08,41.745897252,-87.665608013,"(41.745897252, -87.665608013)" -3254737,HK280639,2004-03-01 00:00:00,067XX S MERRILL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,4572,False,False,331,3,5,43,26,1191738,1860941,2004,ERROR,41.773415721,-87.57267934,"(41.773415721, -87.57267934)" -3311197,HK345294,2004-05-05 21:35:00,008XX N CALIFORNIA AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,SIDEWALK,1400,True,True,1311,12,26,24,08B,1157536,1905231,2004,ERROR,41.895714416,-87.69685317,"(41.895714416, -87.69685317)" -2302106,HH588911,2002-08-17 21:00:00,041XX S CAMPBELL AVE,0620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE,1887,False,False,914,NA,12,58,05,1160346,1876870,2002,ERROR,41.817831272,-87.687316372,"(41.817831272, -87.687316372)" -6488303,HP564304,2008-09-10 18:17:00,001XX W BRAYTON ST,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,4667,False,False,523,5,9,53,08A,1177795,1821422,2008,ERROR,41.665297395,-87.62498261,"(41.665297395, -87.62498261)" -5443072,HN275682,2006-02-01 08:00:00,006XX E 89TH ST,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,2116,False,False,632,6,6,44,06,1182025,1846146,2006,ERROR,41.733046889,-87.608741291,"(41.733046889, -87.608741291)" -9210579,HW356745,2013-07-05 22:00:00,100XX S PROSPECT AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,594,False,False,2213,22,19,72,14,1167485,1837705,2013,ERROR,41.710207052,-87.662249162,"(41.710207052, -87.662249162)" -9287060,HW431457,2013-08-30 19:00:00,081XX S EUCLID AVE,0890,THEFT,FROM BUILDING,APARTMENT,1161,False,False,414,4,8,46,06,1190659,1851058,2013,2013-01-09 07:31:32,41.746322062,-87.576953181,"(41.746322062, -87.576953181)" -5794196,HN603823,2007-09-21 23:33:00,078XX S EAST END AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,1314,True,False,414,4,8,43,18,1188864,1853073,2007,ERROR,41.751894519,-87.583466017,"(41.751894519, -87.583466017)" -4344629,HL643695,2005-09-29 21:00:00,063XX S PULASKI RD,051A,ASSAULT,AGGRAVATED: HANDGUN,STREET,2707,False,False,813,8,13,65,04A,1150755,1862153,2005,ERROR,41.777638112,-87.722882838,"(41.777638112, -87.722882838)" -6191990,HP281294,2008-04-15 15:00:00,006XX W WAVELAND AVE,0810,THEFT,OVER $500,STREET,932,False,False,2323,19,46,6,06,1171539,1925299,2008,ERROR,41.950485378,-87.644831764,"(41.950485378, -87.644831764)" -8304880,HT539173,2011-10-12 03:00:00,056XX W WASHINGTON BLVD,1310,CRIMINAL DAMAGE,TO PROPERTY,APARTMENT,3476,False,True,1512,15,29,25,14,1138540,1900218,2011,ERROR,41.882323613,-87.766743629,"(41.882323613, -87.766743629)" -1587243,G356113,2001-06-18 20:30:00,045XX N CLARK ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4800,False,False,1922,NA,NA,NA,07,1165538,1930394,2001,ERROR,41.964596441,-87.66674516,"(41.964596441, -87.66674516)" -9232964,HW379118,2013-07-25 19:00:00,060XX N FRANCISCO AVE,0460,BATTERY,SIMPLE,APARTMENT,4723,False,False,2413,24,50,2,08B,1155879,1940034,2013,ERROR,41.991249811,-87.701997517,"(41.991249811, -87.701997517)" -5382099,HN230597,2007-03-15 20:30:00,016XX N PAULINA ST,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,562,False,False,1433,14,1,24,05,1164792,1911272,2007,2007-02-08 01:58:25,41.912140543,-87.670031984,"(41.912140543, -87.670031984)" -8703573,HV379876,2012-07-12 19:30:00,040XX W LAKE ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA GARAGE / OTHER PROPERTY,4140,True,False,1114,11,28,26,11,1149648,1901481,2012,ERROR,41.885580938,-87.725921713,"(41.885580938, -87.725921713)" -6026181,HP129984,2008-01-17 13:00:00,029XX S LOOMIS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,1082,True,False,923,9,11,60,07,1168373,1885564,2008,ERROR,41.841519091,-87.657620002,"(41.841519091, -87.657620002)" -3088718,HJ812750,2003-12-11 23:20:00,019XX N KARLOV AVE,0650,BURGLARY,HOME INVASION,RESIDENCE,2638,False,False,2534,25,30,20,05,1148701,1912536,2003,ERROR,41.915935339,-87.729113388,"(41.915935339, -87.729113388)" -3998545,HL355767,2005-05-14 10:20:57,023XX E 75TH ST,0454,BATTERY,AGG PO HANDS NO/MIN INJURY,GAS STATION,1092,True,False,334,3,7,43,08B,1193470,1855738,2005,ERROR,41.759096092,-87.566500388,"(41.759096092, -87.566500388)" -7613298,HS418212,2010-07-19 00:30:00,056XX S NEENAH AVE,0820,THEFT,$500 AND UNDER,STREET,101,False,False,811,8,23,56,06,1133641,1866435,2010,ERROR,41.789704965,-87.785524264,"(41.789704965, -87.785524264)" -6980905,HR385311,2009-06-19 20:00:00,024XX N CICERO AVE,0610,BURGLARY,FORCIBLE ENTRY,OTHER,902,False,False,2521,25,31,19,05,1143947,1915964,2009,ERROR,41.9254327,-87.746493281,"(41.9254327, -87.746493281)" -4628112,HM225198,2006-03-10 20:00:00,089XX S RIDGELAND AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1600,False,False,413,4,8,48,14,1189473,1845824,2006,ERROR,41.731987986,-87.581466439,"(41.731987986, -87.581466439)" -9426414,HW569938,2013-12-12 11:45:00,012XX N ASHLAND AVE,031A,ROBBERY,ARMED: HANDGUN,CTA BUS STOP,2851,False,False,1424,14,1,24,03,1165544,1908172,2013,ERROR,41.903617945,-87.667357779,"(41.903617945, -87.667357779)" -5040428,HM649718,2006-10-09 02:00:00,005XX S CAMPBELL AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4722,False,False,1135,11,2,28,07,1159775,1897648,2006,ERROR,41.874860113,-87.68883898,"(41.874860113, -87.68883898)" -9176835,HW321707,2013-06-16 19:30:00,055XX W GRAND AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,POLICE FACILITY/VEH PARKING LOT,3141,True,False,2515,25,29,19,18,1138769,1913443,2013,ERROR,41.918610464,-87.765581339,"(41.918610464, -87.765581339)" -9817998,HX467737,2014-10-14 15:30:00,020XX N MILWAUKEE AVE,0820,THEFT,$500 AND UNDER,OTHER,287,False,False,1431,14,1,22,06,1159346,1913460,2014,ERROR,41.918258409,-87.689978754,"(41.918258409, -87.689978754)" -1398760,G114124,2001-02-22 23:55:00,082XX S JEFFERY BL,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),273,False,False,414,NA,NA,NA,06,1190990,1850969,2001,2014-04-12 12:43:35,41.746069847,-87.575743214,"(41.746069847, -87.575743214)" -4410684,HL706234,2005-10-29 09:00:00,044XX N RAVENSWOOD AVE,0810,THEFT,OVER $500,STREET,3661,False,False,1922,19,47,3,06,1163617,1929327,2005,2014-04-12 12:43:35,41.961709338,-87.673838335,"(41.961709338, -87.673838335)" -3516152,HK591240,2004-08-29 15:30:00,048XX N PAULINA ST,0820,THEFT,$500 AND UNDER,STREET,171,False,False,2032,20,47,3,06,1164401,1932012,2004,2014-04-12 12:43:35,41.969060495,-87.670879593,"(41.969060495, -87.670879593)" -4894707,HM510203,2006-07-30 11:00:00,047XX N SAWYER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,RESIDENTIAL YARD (FRONT/BACK),4021,False,False,1713,17,33,14,14,1153814,1931419,2006,2006-02-08 04:53:53,41.967651297,-87.709823827,"(41.967651297, -87.709823827)" -9622145,HX271986,2014-05-22 13:00:00,017XX N HALSTED ST,0820,THEFT,$500 AND UNDER,STREET,139,False,False,1813,18,43,7,06,1170734,1911649,2014,ERROR,41.91304688,-87.648191824,"(41.91304688, -87.648191824)" -4015702,HL308318,2005-04-21 01:56:40,042XX S PRAIRIE AVE,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,STREET,2725,True,False,214,2,3,38,16,1178699,1877152,2005,ERROR,41.81820674,-87.619983684,"(41.81820674, -87.619983684)" -3849018,HL221418,2005-03-07 20:10:00,113XX S EDBROOKE AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,1114,True,False,531,5,9,49,04B,1179176,1829999,2005,ERROR,41.68880271,-87.619668717,"(41.68880271, -87.619668717)" -6545175,HP615080,2008-10-08 08:55:39,073XX S PHILLIPS AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,1777,False,True,334,3,7,43,08B,1193960,1856732,2008,2008-10-10 05:55:47,41.761811703,-87.564672045,"(41.761811703, -87.564672045)" -2948741,HJ636339,2003-09-17 19:10:00,011XX N MAYFIELD AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,2818,False,True,1511,15,29,25,26,1136769,1907269,2003,ERROR,41.901704366,-87.773077802,"(41.901704366, -87.773077802)" -5845070,HN655038,2007-10-15 06:15:00,056XX W LAKE ST,0810,THEFT,OVER $500,STREET,1243,False,False,1512,15,29,25,06,1138390,1902170,2007,2014-04-12 12:43:35,41.88768287,-87.767247156,"(41.88768287, -87.767247156)" -5008839,HM618424,2006-09-23 13:20:00,017XX N HUMBOLDT BLVD,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,4129,False,False,1421,14,35,23,03,1156056,1911677,2006,2006-01-10 07:25:21,41.913432802,-87.702114688,"(41.913432802, -87.702114688)" -8587110,HV261318,2012-04-27 21:40:00,084XX S MANISTEE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,4048,False,False,423,4,7,46,08B,1195995,1849774,2012,ERROR,41.742668288,-87.557443682,"(41.742668288, -87.557443682)" -7872477,HT102978,2011-01-03 10:30:00,034XX E 133RD ST,0810,THEFT,OVER $500,STREET,3405,False,False,433,4,10,55,06,1201126,1817424,2011,2011-04-01 07:20:15,41.653768523,-87.539736212,"(41.653768523, -87.539736212)" -9916472,HY105958,2014-11-26 12:00:00,030XX E 92ND ST,1110,DECEPTIVE PRACTICE,BOGUS CHECK,BANK,4969,False,False,424,4,10,46,11,1198084,1844583,2014,2015-08-01 12:39:18,41.728371838,-87.549962839,"(41.728371838, -87.549962839)" -9490762,HX144691,2014-02-07 22:00:00,055XX S ALBANY AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,3213,False,False,824,8,14,63,14,1156621,1867583,2014,2014-12-02 00:40:02,41.792422534,-87.701231458,"(41.792422534, -87.701231458)" -5857483,HN656362,2007-10-18 18:45:00,005XX E 107TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,2928,False,True,512,5,9,49,08B,1181507,1834155,2007,ERROR,41.700154031,-87.611007498,"(41.700154031, -87.611007498)" -2535237,HJ109917,2002-12-20 15:00:00,074XX S COLFAX AVE,1562,SEX OFFENSE,AGG CRIMINAL SEXUAL ABUSE,APARTMENT,4858,False,False,334,NA,7,43,17,1194702,1856124,2002,ERROR,41.76012508,-87.561972571,"(41.76012508, -87.561972571)" -8804120,HV477870,2012-09-16 03:10:00,047XX S LOOMIS BLVD,0460,BATTERY,SIMPLE,RESIDENTIAL YARD (FRONT/BACK),3213,False,False,933,9,3,61,08B,1167835,1873371,2012,ERROR,41.808071849,-87.659944973,"(41.808071849, -87.659944973)" -3273588,HK301044,2004-04-14 11:45:00,012XX S KOSTNER AVE,031A,ROBBERY,ARMED: HANDGUN,STREET,1578,False,False,1011,10,24,29,03,1147285,1893972,2004,ERROR,41.865020926,-87.734791482,"(41.865020926, -87.734791482)" -7072295,HR477075,2009-08-08 19:00:00,001XX E 47TH ST,0870,THEFT,POCKET-PICKING,BAR OR TAVERN,3597,False,False,224,2,3,38,06,1178126,1873860,2009,2009-12-08 13:56:14,41.809186244,-87.622185553,"(41.809186244, -87.622185553)" -9162055,HW306837,2013-04-09 11:00:00,068XX S CORNELL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,3084,False,True,332,3,5,43,26,1188350,1859644,2013,2013-09-06 03:34:44,41.769938203,-87.585140129,"(41.769938203, -87.585140129)" -2688193,HJ309724,2003-04-18 19:30:00,022XX N STOCKTON DR,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2743,False,False,1814,NA,43,7,14,1174127,1915368,2003,ERROR,41.923176926,-87.635615683,"(41.923176926, -87.635615683)" -7691340,HS497006,2010-09-03 13:07:00,009XX E MARQUETTE RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,1215,False,True,321,3,5,42,08B,1183558,1861405,2010,2010-08-09 07:54:48,41.774883602,-87.602650487,"(41.774883602, -87.602650487)" -3282771,HK213978,2004-03-01 16:53:11,007XX W 61ST ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,1555,True,False,711,7,16,68,18,1172314,1864376,2004,ERROR,41.783291129,-87.643781806,"(41.783291129, -87.643781806)" -4751054,HM261185,2006-03-30 12:02:00,011XX N RIDGEWAY AVE,2095,NARCOTICS,ATTEMPT POSSESSION NARCOTICS,STREET,2426,True,False,1112,11,27,23,18,1151136,1907139,2006,ERROR,41.901078036,-87.720308999,"(41.901078036, -87.720308999)" -5962440,HN757326,2007-12-12 22:20:00,055XX W ADAMS ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,1914,False,False,1522,15,29,25,07,1139406,1898740,2007,2008-06-01 01:05:00,41.878252056,-87.76359965,"(41.878252056, -87.76359965)" -1834047,G670254,2001-11-06 18:00:00,013XX W ERIE ST,0560,ASSAULT,SIMPLE,STREET,3142,False,False,1324,NA,NA,NA,08A,1167244,1904514,2001,ERROR,41.89354376,-87.661218582,"(41.89354376, -87.661218582)" -3301460,HK334439,2004-04-30 13:30:00,022XX N AUSTIN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4380,False,True,2515,25,37,19,08B,1136060,1914635,2004,ERROR,41.921930233,-87.77550612,"(41.921930233, -87.77550612)" -2669621,HJ286771,2003-04-06 01:00:00,030XX W 55TH ST,0460,BATTERY,SIMPLE,STREET,2322,False,False,824,NA,14,63,08B,1157258,1867977,2003,ERROR,41.793490848,-87.69888499,"(41.793490848, -87.69888499)" -6369079,HP455430,2008-07-16 06:10:00,076XX S PHILLIPS AVE,0560,ASSAULT,SIMPLE,STREET,4088,False,False,421,4,7,43,08A,1193825,1854450,2008,ERROR,41.755553029,-87.565241501,"(41.755553029, -87.565241501)" -6855131,HR261020,2009-04-10 00:00:00,014XX W ERIE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,3068,False,False,1324,12,27,24,14,1166896,1904503,2009,ERROR,41.893521048,-87.662496975,"(41.893521048, -87.662496975)" -4274768,HL591848,2005-09-04 20:00:00,033XX W WRIGHTWOOD AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,2202,False,False,1412,14,35,22,07,1153390,1917123,2005,ERROR,41.928430509,-87.711764046,"(41.928430509, -87.711764046)" -6197251,HP285608,2008-04-17 18:30:00,030XX W FILLMORE ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),3447,True,False,1134,11,28,29,14,1155966,1895253,2008,ERROR,41.868365618,-87.702888661,"(41.868365618, -87.702888661)" -8433392,HV111791,2012-01-10 01:40:00,067XX S ST LAWRENCE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3287,False,True,321,3,20,42,08B,1181358,1860502,2012,ERROR,41.772456691,-87.610743096,"(41.772456691, -87.610743096)" -7505865,HS308821,2010-05-04 08:00:00,080XX S SANGAMON ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,3502,False,True,621,6,21,71,26,1171334,1851481,2010,ERROR,41.747927164,-87.647751629,"(41.747927164, -87.647751629)" -7557528,HS361664,2010-06-15 19:11:00,016XX S KARLOV AVE,2027,NARCOTICS,POSS: CRACK,RESIDENCE,863,True,False,1012,10,24,29,18,1149364,1891408,2010,ERROR,41.85794497,-87.727225818,"(41.85794497, -87.727225818)" -6702067,HR108720,2009-01-06 14:45:00,004XX S KEELER AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, GROUNDS",4011,False,False,1132,11,24,26,08B,1148424,1897525,2009,ERROR,41.874748911,-87.730518558,"(41.874748911, -87.730518558)" -6400565,HP436822,2008-07-06 21:08:22,064XX S CALIFORNIA AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,1031,True,False,825,8,15,66,26,1158854,1861997,2008,2008-03-08 06:46:11,41.777048422,-87.693195807,"(41.777048422, -87.693195807)" -3736578,HL102041,2005-01-02 00:30:00,065XX S LOOMIS BLVD,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,1274,False,False,725,7,17,67,06,1168076,1861511,2005,2014-04-12 12:43:35,41.775521427,-87.659402042,"(41.775521427, -87.659402042)" -9845718,HX495009,2014-11-04 15:30:00,013XX W 95TH ST,0810,THEFT,OVER $500,"SCHOOL, PUBLIC, BUILDING",2826,False,False,2213,22,21,73,06,1169214,1841722,2014,2014-11-11 12:41:33,41.72119316,-87.655801492,"(41.72119316, -87.655801492)" -5253960,HN130561,2007-01-16 00:00:00,024XX N LINCOLN AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,2443,False,False,1933,19,43,7,26,1170249,1916386,2007,ERROR,41.926056068,-87.649834888,"(41.926056068, -87.649834888)" -3927220,HL299821,2005-04-16 22:55:00,009XX W 32ND PL,0460,BATTERY,SIMPLE,APARTMENT,951,False,False,924,9,11,60,08B,1170602,1883473,2005,ERROR,41.835732786,-87.64950144,"(41.835732786, -87.64950144)" -5904951,HN703395,2007-11-11 10:00:00,053XX S PULASKI RD,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,GROCERY FOOD STORE,2864,False,False,815,8,23,62,11,1150568,1868904,2007,ERROR,41.796167541,-87.723392818,"(41.796167541, -87.723392818)" -7616487,HS420429,2010-07-20 13:40:00,071XX S JEFFERY BLVD,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,679,True,False,333,3,5,43,06,1190817,1858158,2010,ERROR,41.765801254,-87.576145268,"(41.765801254, -87.576145268)" -2377718,HH685782,2002-10-01 16:00:00,008XX S WESTERN AVE,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,3836,False,False,1224,NA,25,28,06,1160551,1896364,2002,ERROR,41.871320673,-87.686025384,"(41.871320673, -87.686025384)" -3401548,HK459731,2004-06-11 02:00:00,025XX N FRANCISCO AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,BANK,3180,False,False,1414,14,35,22,11,1156577,1916550,2004,ERROR,41.92679416,-87.700068437,"(41.92679416, -87.700068437)" -4828468,HM412792,2006-06-14 02:11:58,0000X E GARFIELD BLVD,0320,ROBBERY,STRONGARM - NO WEAPON,SIDEWALK,3102,False,False,233,2,20,40,03,1177699,1868405,2006,2006-07-10 09:43:17,41.794226904,-87.62391683,"(41.794226904, -87.62391683)" -2097067,HH314898,2002-04-18 08:40:00,024XX W LAWRENCE AV,0560,ASSAULT,SIMPLE,OTHER,4703,True,False,2031,NA,NA,NA,08A,1159019,1931842,2002,ERROR,41.968706493,-87.690673825,"(41.968706493, -87.690673825)" -3603839,HK646357,2004-09-25 03:10:00,008XX N ASHLAND AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2836,False,False,1322,12,1,24,14,1165526,1906012,2004,ERROR,41.897691137,-87.667485477,"(41.897691137, -87.667485477)" -9512342,HX167043,2014-02-27 23:16:00,064XX S CARPENTER ST,0497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,RESIDENCE,4856,False,False,724,7,16,68,04B,1170455,1862310,2014,2014-03-03 00:39:23,41.777662488,-87.650657643,"(41.777662488, -87.650657643)" -4261619,HL578454,2005-08-29 09:15:00,134XX S VERNON AVE,0610,BURGLARY,FORCIBLE ENTRY,BAR OR TAVERN,1530,False,False,533,5,9,54,05,1181807,1816319,2005,ERROR,41.651202555,-87.610456918,"(41.651202555, -87.610456918)" -6432144,HP512424,2008-08-14 09:50:00,069XX S MICHIGAN AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,APARTMENT,600,True,False,322,3,6,69,26,1178318,1859155,2008,ERROR,41.768829929,-87.621927626,"(41.768829929, -87.621927626)" -2698942,HJ315490,2003-04-22 05:50:00,051XX W CHICAGO AVE,0340,ROBBERY,ATTEMPT: STRONGARM-NO WEAPON,STREET,1909,False,False,1531,NA,37,25,03,1141640,1904877,2003,ERROR,41.89505175,-87.755244987,"(41.89505175, -87.755244987)" -9682603,HX333155,2014-07-06 03:15:00,037XX N PLAINFIELD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4490,False,True,1631,16,36,17,08B,1120024,1923862,2014,ERROR,41.9475215,-87.83423089,"(41.9475215, -87.83423089)" -6546232,HP616924,2008-10-09 08:25:00,099XX S PEORIA ST,051A,ASSAULT,AGGRAVATED: HANDGUN,RESIDENTIAL YARD (FRONT/BACK),1859,False,False,2232,22,34,73,04A,1172031,1838751,2008,ERROR,41.712979002,-87.645570329,"(41.712979002, -87.645570329)" -1881357,G729957,2001-12-05 20:38:41,119XX S INDIANA AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,2478,False,False,532,NA,NA,NA,05,1179753,1826087,2001,ERROR,41.678054476,-87.617675326,"(41.678054476, -87.617675326)" -6182379,HP269231,2008-04-08 20:30:00,004XX E RANDOLPH ST,1506,PROSTITUTION,SOLICIT ON PUBLIC WAY,RESIDENCE,739,True,False,124,1,42,32,16,1179262,1901369,2008,2008-12-04 06:24:35,41.884646917,-87.617177553,"(41.884646917, -87.617177553)" -10144936,HY333549,2015-07-05 15:00:00,044XX N HARDING AVE,031A,ROBBERY,ARMED: HANDGUN,APARTMENT,1023,False,False,1723,17,39,14,03,1149292,1929511,2015,2015-12-07 12:42:46,41.962504708,-87.726500599,"(41.962504708, -87.726500599)" -7819756,HS629676,2010-11-22 19:30:00,047XX S PRINCETON AVE,0810,THEFT,OVER $500,PARK PROPERTY,1456,False,False,935,9,3,37,06,1175039,1873724,2010,ERROR,41.808882585,-87.633512079,"(41.808882585, -87.633512079)" -1863051,G706647,2001-11-24 19:41:00,019XX S SPRINGFIELD AV,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,ALLEY,1573,True,False,1014,NA,NA,NA,15,1150673,1889905,2001,ERROR,41.853795099,-87.722460197,"(41.853795099, -87.722460197)" -5895492,HN672912,2007-10-27 10:56:31,0000X E 103RD PL,2027,NARCOTICS,POSS: CRACK,APARTMENT,2190,False,False,512,5,9,49,18,1178109,1836390,2007,2007-09-11 09:43:39,41.706364714,-87.623382077,"(41.706364714, -87.623382077)" -9222506,HW369005,2013-07-19 01:00:00,062XX S EBERHART AVE,041A,BATTERY,AGGRAVATED: HANDGUN,SIDEWALK,2207,False,False,313,3,20,42,04B,1180607,1863944,2013,ERROR,41.781919159,-87.613390392,"(41.781919159, -87.613390392)" -9470449,HX123527,2014-01-22 11:30:00,064XX N SHERIDAN RD,0810,THEFT,OVER $500,CHA PARKING LOT/GROUNDS,3913,False,False,2432,24,40,1,06,1167086,1942670,2014,ERROR,41.998248939,-87.660699164,"(41.998248939, -87.660699164)" -4564532,HM151795,2006-01-29 12:30:00,005XX N STATE ST,0870,THEFT,POCKET-PICKING,CTA TRAIN,4085,False,False,1834,18,42,8,06,1176315,1903875,2006,2006-02-02 04:21:12,41.891590492,-87.627923574,"(41.891590492, -87.627923574)" -7288999,HR705891,2009-12-26 01:00:00,060XX S WOLCOTT AVE,0560,ASSAULT,SIMPLE,RESIDENCE,1934,True,True,714,7,15,67,08A,1164770,1864356,2009,ERROR,41.783398933,-87.671441226,"(41.783398933, -87.671441226)" -4264409,HL581667,2005-08-30 18:11:00,012XX N STATE PKWY,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,4438,True,False,1824,18,43,8,05,1176096,1908851,2005,ERROR,41.905249818,-87.628577732,"(41.905249818, -87.628577732)" -4500033,HL801967,2005-12-20 22:30:00,027XX S KARLOV AVE,0810,THEFT,OVER $500,STREET,3640,False,False,1031,10,22,30,06,1149446,1885667,2005,2014-04-12 12:43:35,41.842189353,-87.727073599,"(41.842189353, -87.727073599)" -4521721,HM109102,2006-01-05 22:30:00,072XX S KEDZIE AVE,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,APARTMENT,2123,False,False,831,8,18,66,02,1156259,1856141,2006,ERROR,41.761031279,-87.702866467,"(41.761031279, -87.702866467)" -5579203,HN387749,2007-06-05 23:00:00,028XX N LAKE SHORE DR,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,1495,False,False,2333,19,44,6,26,1173893,1918915,2007,2007-10-07 01:59:11,41.932915255,-87.636369534,"(41.932915255, -87.636369534)" -4112242,HL450369,2005-06-28 17:30:00,043XX S GREENWOOD AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3025,False,False,2123,2,4,39,14,1184277,1876379,2005,ERROR,41.815956678,-87.599546214,"(41.815956678, -87.599546214)" -3506201,HK555583,2004-08-13 16:42:00,044XX W IOWA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4369,False,False,1111,11,37,23,08B,1146528,1905586,2004,ERROR,41.896905546,-87.737274355,"(41.896905546, -87.737274355)" -2409260,HH725869,2002-10-20 01:00:00,007XX W ROSCOE ST,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESTAURANT,2063,False,False,2331,NA,44,6,26,1170419,1922748,2002,ERROR,41.943509953,-87.649023628,"(41.943509953, -87.649023628)" -2203186,HH000417,2002-06-19 17:15:00,057XX S LOWE AVE,0313,ROBBERY,ARMED: OTHER DANGEROUS WEAPON,SIDEWALK,4447,False,False,711,NA,3,68,03,1172986,1866791,2002,ERROR,41.789903341,-87.641246766,"(41.789903341, -87.641246766)" -5011028,HM467142,2006-07-10 17:24:47,039XX W ARMITAGE AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,4204,True,False,2535,25,30,20,16,1150000,1912964,2006,2006-07-10 09:43:17,41.917084599,-87.724329742,"(41.917084599, -87.724329742)" -2248732,HH525417,2002-06-08 09:00:00,014XX N WELLS ST,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,4807,False,False,1821,NA,27,8,10,1174403,1909875,2002,ERROR,41.908097724,-87.634765969,"(41.908097724, -87.634765969)" -5736007,HN543999,2007-08-22 14:00:45,072XX N CLARK ST,0820,THEFT,$500 AND UNDER,STREET,248,False,False,2423,24,49,1,06,1163247,1948255,2007,2014-04-12 12:43:35,42.013656195,-87.674663459,"(42.013656195, -87.674663459)" -1601570,G372788,2001-06-26 17:53:24,089XX S COTTAGE GROVE,0460,BATTERY,SIMPLE,RESIDENCE,3120,False,False,633,NA,NA,NA,08B,1183085,1845890,2001,ERROR,41.732319842,-87.604865988,"(41.732319842, -87.604865988)" -8530168,HV207435,2012-03-21 05:45:00,009XX E 130TH PL,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4330,False,False,533,5,9,54,14,1184644,1819036,2012,ERROR,41.658592656,-87.599992356,"(41.658592656, -87.599992356)" -4862832,HM474817,2006-07-10 20:00:00,055XX S SHORE DR,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESTAURANT,2392,False,False,2132,2,5,41,26,1189509,1868821,2006,ERROR,41.795092837,-87.580597321,"(41.795092837, -87.580597321)" -4406900,HK742347,2004-11-10 11:59:00,078XX S CORNELL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,4344,True,False,411,4,8,43,18,1188552,1853522,2004,ERROR,41.753134073,-87.584595019,"(41.753134073, -87.584595019)" -3010706,HJ715145,2003-10-17 11:00:00,062XX N SACRAMENTO AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,1790,False,False,2413,24,50,2,10,1155185,1941017,2003,ERROR,41.993961219,-87.704523692,"(41.993961219, -87.704523692)" -5557879,HN367489,2007-05-27 01:15:00,020XX N STAVE ST,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,SIDEWALK,4000,True,False,1431,14,1,22,15,1158880,1913340,2007,2010-02-06 10:34:17,41.917938701,-87.691694171,"(41.917938701, -87.691694171)" -3066701,HJ786859,2003-11-22 23:30:00,105XX S MICHIGAN AVE,2825,OTHER OFFENSE,HARASSMENT BY TELEPHONE,RESIDENCE,1288,False,False,512,5,9,49,26,1178884,1835024,2003,ERROR,41.702598655,-87.62058548,"(41.702598655, -87.62058548)" -6668993,HP742526,2008-12-19 22:00:00,002XX W EVERGREEN AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2419,False,False,1821,NA,43,8,14,NA,NA,2008,1999-08-11 15:39:40,NA,NA, -6353756,HP432354,2008-07-04 05:00:00,013XX W 97TH ST,0320,ROBBERY,STRONGARM - NO WEAPON,RESIDENCE PORCH/HALLWAY,2082,False,False,2213,22,21,73,03,1168978,1840625,2008,ERROR,41.71818792,-87.656697493,"(41.71818792, -87.656697493)" -6669938,HP740347,2008-11-26 12:00:00,052XX W FOSTER AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,1990,False,False,1623,16,45,11,06,1140701,1934124,2008,ERROR,41.97532578,-87.757972837,"(41.97532578, -87.757972837)" -4826288,HM332892,2006-05-05 20:37:41,042XX S COTTAGE GROVE AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,SIDEWALK,1058,True,False,2123,2,4,36,18,1182360,1876778,2006,ERROR,41.817096269,-87.606565687,"(41.817096269, -87.606565687)" -7886005,HT116106,2011-01-12 09:30:00,054XX S HERMITAGE AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,4182,False,False,932,9,16,61,05,1165565,1868597,2011,ERROR,41.795019934,-87.668406224,"(41.795019934, -87.668406224)" -6705302,HR108700,2005-12-31 09:00:00,029XX N KEDZIE AVE,0840,THEFT,FINANCIAL ID THEFT: OVER $300,RESIDENCE,889,False,False,1411,NA,35,21,06,NA,NA,2005,ERROR,NA,NA, -8964081,HW112182,2013-01-10 00:00:00,044XX S ARCHER AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2466,False,False,821,8,14,58,14,1155228,1874993,2013,2013-11-01 07:24:01,41.81278459,-87.706141165,"(41.81278459, -87.706141165)" -7699490,HS506358,2010-09-03 11:00:00,067XX S EAST END AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,776,False,False,332,3,5,43,26,1188736,1860587,2010,ERROR,41.77251665,-87.583695111,"(41.77251665, -87.583695111)" -9180878,HW325720,2013-06-19 11:15:00,110XX S WESTERN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,STREET,4683,False,True,2212,22,19,75,08B,1162390,1831737,2013,ERROR,41.693937278,-87.681073558,"(41.693937278, -87.681073558)" -2297694,HH568797,2002-08-09 14:50:00,050XX W WASHINGTON BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,3902,True,False,1533,NA,28,25,18,1142677,1899991,2002,ERROR,41.881624743,-87.751557974,"(41.881624743, -87.751557974)" -7644446,HS448315,2010-08-06 05:23:00,008XX W ADDISON ST,0860,THEFT,RETAIL THEFT,GAS STATION,2267,False,False,2331,19,44,6,06,1170247,1924094,2010,2010-09-08 10:51:39,41.947207196,-87.64961635,"(41.947207196, -87.64961635)" -1423522,G144180,2001-03-11 14:00:00,016XX W GREENLEAF AV,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,4093,False,True,2423,NA,NA,NA,26,1164186,1947061,2001,ERROR,42.010359958,-87.671242346,"(42.010359958, -87.671242346)" -5125870,HM723860,2006-11-16 14:00:00,011XX W WILSON AVE,0460,BATTERY,SIMPLE,"SCHOOL, PUBLIC, BUILDING",4704,True,False,2311,19,46,3,08B,1167577,1930654,2006,ERROR,41.965266117,-87.659240822,"(41.965266117, -87.659240822)" -2492829,HH829410,2002-12-10 12:59:05,041XX W 16TH ST,502R,OTHER OFFENSE,VEHICLE TITLE/REG OFFENSE,STREET,2870,True,False,1012,NA,24,29,26,1148968,1891764,2002,ERROR,41.85892954,-87.728670191,"(41.85892954, -87.728670191)" -3807185,HL176495,2005-02-11 23:40:00,053XX W HIRSCH ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3180,False,False,2532,25,37,25,07,1140742,1908843,2005,ERROR,41.905951477,-87.758445541,"(41.905951477, -87.758445541)" -5654829,HN465341,2007-07-14 01:00:00,053XX S WABASH AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,1188,False,False,232,2,3,40,07,1177577,1869771,2007,ERROR,41.7979781,-87.624322882,"(41.7979781, -87.624322882)" -7897069,HT126881,2011-01-19 20:50:00,016XX N KIMBALL AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,RESIDENCE,3699,True,False,1422,14,26,23,18,1153494,1910674,2011,ERROR,41.910731836,-87.7115537,"(41.910731836, -87.7115537)" -6053794,HP155338,2008-02-02 02:15:00,002XX N ASHLAND AVE,0560,ASSAULT,SIMPLE,TAVERN/LIQUOR STORE,4130,False,False,1333,12,27,28,08A,1165726,1901925,2008,2008-07-02 06:38:43,41.886471844,-87.666867499,"(41.886471844, -87.666867499)" -5565328,HN356933,2007-05-21 21:30:57,070XX S JEFFERY BLVD,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,VEHICLE NON-COMMERCIAL,4147,True,False,331,3,5,43,18,1190805,1858575,2007,ERROR,41.766945825,-87.576175796,"(41.766945825, -87.576175796)" -3248772,HK265125,2004-03-27 02:54:00,0000X W DIVISION ST,3710,INTERFERENCE WITH PUBLIC OFFICER,RESIST/OBSTRUCT/DISARM OFFICER,SIDEWALK,4310,True,False,1824,18,42,8,24,1175892,1908408,2004,2014-04-12 12:43:35,41.904038802,-87.629340436,"(41.904038802, -87.629340436)" -1757877,G572420,2001-09-24 01:00:00,009XX N HARDING AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,797,False,False,1112,NA,NA,NA,07,1149924,1905981,2001,ERROR,41.897924046,-87.72479098,"(41.897924046, -87.72479098)" -2774357,HJ418762,2003-06-09 22:26:00,017XX N TALMAN AVE,0320,ROBBERY,STRONGARM - NO WEAPON,STREET,826,False,False,1421,NA,1,24,03,1158398,1911205,2003,ERROR,41.912089977,-87.693523584,"(41.912089977, -87.693523584)" -8926173,HV598195,2012-12-11 15:00:00,001XX N KEDZIE AVE,2092,NARCOTICS,SOLICIT NARCOTICS ON PUBLICWAY,SIDEWALK,4028,True,False,1331,12,27,27,26,1155069,1900663,2012,2012-11-12 15:22:54,41.883229246,-87.706036593,"(41.883229246, -87.706036593)" -5741562,HN545599,2007-08-23 11:06:35,056XX W CORCORAN PL,0560,ASSAULT,SIMPLE,GROCERY FOOD STORE,2009,True,False,1512,15,29,25,08A,1138929,1901964,2007,ERROR,41.887107805,-87.765272755,"(41.887107805, -87.765272755)" -7388091,HS188642,2010-03-02 16:00:00,059XX W AUGUSTA BLVD,0460,BATTERY,SIMPLE,SIDEWALK,4552,False,False,1511,15,29,25,08B,1136861,1906101,2010,2010-04-03 11:52:03,41.898497579,-87.772767903,"(41.898497579, -87.772767903)" -4148394,HL472015,2005-07-09 03:00:00,004XX W 98TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,VEHICLE NON-COMMERCIAL,1031,False,True,2223,22,21,73,08B,1174873,1839956,2005,ERROR,41.716222926,-87.635126228,"(41.716222926, -87.635126228)" -7111964,HR520191,2009-09-04 19:15:00,040XX W LAKE ST,2024,NARCOTICS,POSS: HEROIN(WHITE),CTA PLATFORM,1207,True,False,1114,11,28,26,18,1149614,1901481,2009,2009-04-09 20:50:05,41.885581599,-87.726046569,"(41.885581599, -87.726046569)" -1498551,G234518,2001-04-24 20:15:00,005XX N COLUMBUS DR,0810,THEFT,OVER $500,STREET,1805,False,False,1834,NA,NA,NA,06,1178452,1903693,2001,2014-04-12 12:43:35,41.891042598,-87.620081013,"(41.891042598, -87.620081013)" -1470135,G198684,2001-03-30 19:30:00,049XX W WEST END AV,0460,BATTERY,SIMPLE,APARTMENT,883,False,True,1532,NA,NA,NA,08B,1143503,1900491,2001,ERROR,41.882981399,-87.748512379,"(41.882981399, -87.748512379)" -4380629,HL672144,2005-10-14 08:30:00,002XX W 87TH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),2556,False,False,622,6,21,44,14,1176403,1847255,2005,ERROR,41.736218161,-87.629303966,"(41.736218161, -87.629303966)" -3828054,HL198936,2005-02-23 21:00:00,049XX N MILWAUKEE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,PARKING LOT/GARAGE(NON.RESID.),1349,False,False,1623,16,45,11,14,1139081,1932636,2005,ERROR,41.971272283,-87.763966593,"(41.971272283, -87.763966593)" -5649370,HN457869,2007-07-10 15:30:00,121XX S PRINCETON AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,2266,False,False,523,5,34,53,04A,1176434,1824279,2007,ERROR,41.673168048,-87.629877991,"(41.673168048, -87.629877991)" -1926664,G777431,2001-12-30 12:22:03,075XX S COTTAGE GROVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,2792,True,False,624,NA,NA,NA,18,1182916,1854849,2001,ERROR,41.756908237,-87.605207385,"(41.756908237, -87.605207385)" -3349468,HK391905,2004-05-25 15:00:00,015XX E 93RD ST,0820,THEFT,$500 AND UNDER,SIDEWALK,483,False,False,413,4,8,48,06,1187948,1843656,2004,2014-04-12 12:43:35,41.726075187,-87.587121912,"(41.726075187, -87.587121912)" -9289687,HW434804,2013-09-02 18:45:00,057XX S PRAIRIE AVE,2023,NARCOTICS,POSS: HEROIN(BRN/TAN),VACANT LOT/LAND,3421,True,False,232,2,20,40,18,1178985,1866850,2013,2013-03-09 11:05:41,41.789930619,-87.619248524,"(41.789930619, -87.619248524)" -4657553,HM172738,2006-02-09 20:15:00,001XX E WACKER DR,1505,PROSTITUTION,CALL OPERATION,HOTEL/MOTEL,2254,True,False,124,1,42,32,16,1177757,1902582,2006,2006-01-04 03:33:39,41.888009783,-87.622667166,"(41.888009783, -87.622667166)" -1848637,G686275,2001-10-17 17:00:00,031XX W 103 ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,BANK,2485,False,False,2211,NA,NA,NA,11,1157251,1836208,2001,ERROR,41.706311774,-87.699768468,"(41.706311774, -87.699768468)" -1714907,G518024,2001-08-30 00:38:59,122XX S PEORIA ST,0326,ROBBERY,AGGRAVATED VEHICULAR HIJACKING,STREET,2852,False,False,524,NA,NA,NA,03,1172502,1823677,2001,ERROR,41.671603244,-87.644286984,"(41.671603244, -87.644286984)" -8501862,HV177514,2012-02-19 16:00:00,027XX N MOBILE AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,3247,False,False,2512,25,29,19,26,1133987,1917369,2012,ERROR,41.9294694,-87.783058569,"(41.9294694, -87.783058569)" -2788429,HJ437145,2003-06-17 08:00:00,084XX W GREGORY ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3143,False,False,1614,NA,41,76,14,NA,NA,2003,ERROR,NA,NA, -7308921,HS113429,2010-01-10 10:28:00,130XX S DR MARTIN LUTHER KING JR DR,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,4532,True,True,533,5,9,54,08B,1180948,1818658,2010,2010-11-01 05:08:49,41.657640861,-87.613528366,"(41.657640861, -87.613528366)" -9411869,HW555535,2013-11-28 08:00:00,032XX W DOUGLAS BLVD,0890,THEFT,FROM BUILDING,COMMERCIAL / BUSINESS OFFICE,2178,False,False,1022,10,24,29,06,1154818,1893309,2013,2013-02-12 13:43:47,41.86305413,-87.707155285,"(41.86305413, -87.707155285)" -6863000,HR267765,2009-04-14 15:32:00,016XX E 53RD ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,TAXICAB,1052,False,False,2132,2,4,41,11,1188194,1870489,2009,ERROR,41.799701444,-87.585366136,"(41.799701444, -87.585366136)" -8079527,HT312157,2011-05-17 14:00:00,063XX N CLAREMONT AVE,0620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,4304,False,False,2413,24,50,2,05,1159464,1941832,2011,ERROR,41.99611031,-87.688761143,"(41.99611031, -87.688761143)" -5959995,HN755465,2007-11-06 08:00:00,076XX S PHILLIPS AVE,1150,DECEPTIVE PRACTICE,CREDIT CARD FRAUD,BANK,3955,False,True,421,4,7,43,11,1193897,1854798,2007,2008-12-01 01:05:03,41.756506203,-87.564966253,"(41.756506203, -87.564966253)" -4579723,HM166790,2006-02-06 17:30:00,084XX S INGLESIDE AVE,0460,BATTERY,SIMPLE,SIDEWALK,2807,False,False,632,6,8,44,08B,1183976,1849454,2006,ERROR,41.74207911,-87.601490881,"(41.74207911, -87.601490881)" -5789960,HN600058,2007-09-20 10:00:00,071XX W DICKENS AVE,0820,THEFT,$500 AND UNDER,STREET,270,False,False,2512,25,36,25,06,1127875,1913121,2007,2014-04-12 12:43:35,41.917917786,-87.805614941,"(41.917917786, -87.805614941)" -4775666,HM388940,2006-05-30 13:00:00,072XX S KIMBARK AVE,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,2394,False,False,324,3,5,69,07,1186082,1857490,2006,2006-04-06 04:24:23,41.764081271,-87.593521441,"(41.764081271, -87.593521441)" -7711055,HS518043,2010-09-16 12:05:00,026XX E 79TH ST,0460,BATTERY,SIMPLE,OTHER,3669,False,False,421,4,7,43,08B,1195505,1853147,2010,ERROR,41.751936174,-87.559127815,"(41.751936174, -87.559127815)" -8137536,HT371329,2011-06-29 00:08:00,038XX W FLOURNOY ST,041A,BATTERY,AGGRAVATED: HANDGUN,RESIDENTIAL YARD (FRONT/BACK),4277,False,False,1133,11,24,26,04B,1150802,1896712,2011,ERROR,41.872471787,-87.721808751,"(41.872471787, -87.721808751)" -7387445,HS189260,2010-01-24 20:37:00,016XX W 32ND ST,2826,OTHER OFFENSE,HARASSMENT BY ELECTRONIC MEANS,RESIDENCE,3922,False,False,922,9,11,59,26,1166016,1883413,2010,2010-05-03 08:02:26,41.835667093,-87.666330688,"(41.835667093, -87.666330688)" -1834918,G668790,2001-11-05 19:00:00,015XX N SPRINGFIELD AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,3471,False,False,2535,NA,NA,NA,07,1150124,1910319,2001,ERROR,41.909824052,-87.723943209,"(41.909824052, -87.723943209)" -6824043,HR227480,2009-03-21 10:35:00,124XX S EMERALD AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,896,False,False,523,5,34,53,14,1173548,1822149,2009,ERROR,41.667387143,-87.640503609,"(41.667387143, -87.640503609)" -3334126,HK375058,2004-05-18 19:25:00,018XX W FARWELL AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,1815,False,False,2424,24,49,1,26,1162731,1945686,2004,ERROR,42.00661768,-87.676634619,"(42.00661768, -87.676634619)" -4991479,HM599065,2006-09-13 14:20:00,004XX N STATE ST,0460,BATTERY,SIMPLE,RESTAURANT,4867,True,False,1831,18,42,8,08B,1176246,1903580,2006,ERROR,41.890782553,-87.628185879,"(41.890782553, -87.628185879)" -4779523,HM394310,2006-06-02 15:30:00,042XX N CICERO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,VEHICLE NON-COMMERCIAL,2942,False,False,1624,16,45,15,14,1143559,1928046,2006,2006-07-06 04:08:49,41.958594104,-87.747615647,"(41.958594104, -87.747615647)" -7209980,HR625015,2009-11-04 00:05:00,012XX W DIVISION ST,2022,NARCOTICS,POSS: COCAINE,STREET,851,True,False,1323,12,27,24,18,1168223,1908112,2009,2009-04-11 01:46:02,41.903395808,-87.657518982,"(41.903395808, -87.657518982)" -4855527,HM466819,2006-07-06 21:00:00,055XX N CLARK ST,0890,THEFT,FROM BUILDING,CHURCH/SYNAGOGUE/PLACE OF WORSHIP,3503,False,False,2012,20,40,77,06,1164942,1936997,2006,ERROR,41.982728013,-87.668748145,"(41.982728013, -87.668748145)" -5216189,HN101090,2007-01-01 14:47:51,002XX E 136TH ST,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE,4188,False,False,533,5,9,54,05,1180454,1815072,2007,ERROR,41.647811613,-87.615445268,"(41.647811613, -87.615445268)" -6782563,HR197644,2009-03-03 19:00:00,076XX S CRANDON AVE,0890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",1821,False,False,414,4,7,43,06,1192816,1854954,2009,2009-04-03 06:03:14,41.756960706,-87.568922754,"(41.756960706, -87.568922754)" -3363754,HK410972,2004-06-05 17:27:50,110XX S AVENUE M,0560,ASSAULT,SIMPLE,STREET,4448,True,False,433,4,10,52,08A,1201506,1832221,2004,ERROR,41.694363358,-87.537846019,"(41.694363358, -87.537846019)" -9749727,HX399758,2014-08-23 16:50:00,101XX S VERNON AVE,0810,THEFT,OVER $500,RESIDENCE,4015,False,False,511,5,9,49,06,1181071,1837939,2014,ERROR,41.71054785,-87.612487964,"(41.71054785, -87.612487964)" -3810647,HL177913,2005-02-12 19:10:00,072XX N SHERIDAN RD,1365,CRIMINAL TRESPASS,TO RESIDENCE,NURSING HOME/RETIREMENT HOME,4948,True,False,2423,24,49,1,26,1166257,1947965,2005,ERROR,42.012796343,-87.66359639,"(42.012796343, -87.66359639)" -2167336,HH418150,2002-06-04 06:00:00,001XX W SUPERIOR ST,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,3092,False,False,1832,NA,42,8,06,1175214,1905375,2002,2014-04-12 12:43:35,41.895731339,-87.631921962,"(41.895731339, -87.631921962)" -2336983,HH635814,2002-09-08 20:00:00,086XX S ELIZABETH ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1484,False,False,613,NA,21,71,14,1169547,1847226,2002,ERROR,41.736289738,-87.654422772,"(41.736289738, -87.654422772)" -2283233,HH562586,2002-08-06 12:00:00,032XX W FLOURNOY ST,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,2392,False,True,1134,NA,24,27,26,1154671,1896885,2002,ERROR,41.87287,-87.707599224,"(41.87287, -87.707599224)" -9145362,HW290799,2013-05-25 18:20:00,066XX S HALSTED ST,1330,CRIMINAL TRESPASS,TO LAND,SMALL RETAIL STORE,2918,False,False,723,7,6,68,26,1172149,1860963,2013,ERROR,41.773929092,-87.644486986,"(41.773929092, -87.644486986)" -8134619,HT369020,2011-06-27 18:35:00,094XX S WESTERN AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,1575,True,False,2221,22,19,72,18,1162082,1841641,2011,ERROR,41.721121942,-87.68192693,"(41.721121942, -87.68192693)" -1662674,G451886,2001-07-31 08:30:00,077XX S CALUMET AV,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,4005,False,False,623,NA,NA,NA,05,1179859,1853565,2001,ERROR,41.753455253,-87.616449881,"(41.753455253, -87.616449881)" -5926846,HN721506,2007-11-21 06:00:00,012XX W 98TH ST,0281,CRIM SEXUAL ASSAULT,NON-AGGRAVATED,RESIDENCE,3077,False,False,2213,22,21,73,02,1169700,1839736,2007,ERROR,41.715732768,-87.654078763,"(41.715732768, -87.654078763)" -2621303,HJ224035,2003-03-05 10:00:00,019XX W GREENLEAF AVE,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,STREET,1523,False,False,2424,NA,49,1,07,1162189,1946919,2003,ERROR,42.010012453,-87.67859402,"(42.010012453, -87.67859402)" -2334124,HH631588,2002-09-06 21:00:00,025XX N LINDER AVE,0610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,3020,False,False,2515,NA,30,19,05,1139329,1916155,2002,ERROR,41.926042297,-87.763457601,"(41.926042297, -87.763457601)" -8519471,HV196442,2012-03-12 21:40:00,100XX S CRANDON AVE,033A,ROBBERY,ATTEMPT: ARMED-HANDGUN,STREET,3149,False,False,431,4,7,51,03,1193441,1839086,2012,2012-11-04 16:56:10,41.713402235,-87.567149974,"(41.713402235, -87.567149974)" -2508938,HH852379,2002-12-21 02:00:00,025XX N KEDZIE BLVD,0890,THEFT,FROM BUILDING,OTHER,3585,False,False,1414,NA,35,22,06,1154663,1916875,2002,ERROR,41.92772456,-87.707092848,"(41.92772456, -87.707092848)" -4690771,HM291349,2006-04-14 20:50:00,012XX W 72ND ST,0460,BATTERY,SIMPLE,SIDEWALK,1089,False,False,734,7,17,67,08B,1169088,1857072,2006,ERROR,41.763318426,-87.655820347,"(41.763318426, -87.655820347)" -3831802,HL200488,2005-02-24 21:20:56,124XX S EGGLESTON AVE,143A,WEAPONS VIOLATION,UNLAWFUL POSS OF HANDGUN,RESIDENCE,3847,False,False,523,5,34,53,15,1175509,1822487,2005,2014-04-12 12:43:35,41.668271184,-87.633316824,"(41.668271184, -87.633316824)" -4288666,HL600343,2005-09-09 00:45:00,033XX W OGDEN AVE,2850,PUBLIC PEACE VIOLATION,BOMB THREAT,POLICE FACILITY/VEH PARKING LOT,4337,False,False,1024,10,24,29,26,1154500,1890985,2005,ERROR,41.856683172,-87.708384737,"(41.856683172, -87.708384737)" -6404121,HP476419,2008-07-26 18:15:00,068XX S CLAREMONT AVE,0530,ASSAULT,AGGRAVATED: OTHER DANG WEAPON,STREET,3421,False,True,832,8,17,66,04A,1161871,1859315,2008,2008-07-08 10:22:37,41.76962648,-87.682209929,"(41.76962648, -87.682209929)" -7629586,HS432289,2010-07-26 14:00:00,011XX W 62ND ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,2636,False,True,712,7,16,68,08B,1169767,1863724,2010,ERROR,41.781557634,-87.653138853,"(41.781557634, -87.653138853)" -1504741,G234331,2001-04-24 19:30:00,027XX N SAWYER AV,2027,NARCOTICS,POSS: CRACK,SIDEWALK,4441,True,False,1412,NA,NA,NA,18,1154131,1917989,2001,ERROR,41.930792109,-87.709017944,"(41.930792109, -87.709017944)" -8748002,HV422718,2012-08-09 12:20:00,103XX S AVENUE L,0915,MOTOR VEHICLE THEFT,"TRUCK, BUS, MOTOR HOME",STREET,3008,False,False,432,4,10,52,07,1201793,1836826,2012,ERROR,41.706992596,-87.536639296,"(41.706992596, -87.536639296)" -3768741,HL139720,2005-01-23 13:30:00,035XX N ELSTON AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,1452,False,False,1733,17,35,21,06,1154312,1923546,2005,2014-04-12 12:43:35,41.946037311,-87.708203891,"(41.946037311, -87.708203891)" -4462522,HL759778,2005-11-28 11:36:00,074XX N GREENVIEW AVE,0460,BATTERY,SIMPLE,APARTMENT,3452,False,False,2422,24,49,1,08B,1164955,1949681,2005,ERROR,42.017532926,-87.668338035,"(42.017532926, -87.668338035)" -6045601,HP146797,2008-01-26 15:00:00,006XX W WAYMAN ST,0610,BURGLARY,FORCIBLE ENTRY,CONSTRUCTION SITE,1006,False,False,1212,12,27,28,05,1171516,1902377,2008,2008-01-02 20:14:43,41.887586797,-87.645592029,"(41.887586797, -87.645592029)" -5682032,HN490569,2007-07-23 00:01:00,004XX N DEARBORN ST,1130,DECEPTIVE PRACTICE,FRAUD OR CONFIDENCE GAME,RESTAURANT,3345,False,False,1831,18,42,8,11,1175894,1903544,2007,ERROR,41.890691698,-87.629479667,"(41.890691698, -87.629479667)" -8520242,HV196949,2012-03-14 12:15:00,015XX W 45TH ST,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,STREET,4644,False,False,924,9,3,61,03,1167048,1874840,2012,ERROR,41.812119833,-87.662789453,"(41.812119833, -87.662789453)" -8071070,HT292750,2011-05-12 17:18:00,006XX E GRAND AVE,0860,THEFT,RETAIL THEFT,OTHER,2071,True,False,1834,18,42,8,06,1180772,1904096,2011,ERROR,41.892095212,-87.611548469,"(41.892095212, -87.611548469)" -9957363,HY146143,2014-12-27 21:00:00,013XX W CHICAGO AVE,0810,THEFT,OVER $500,RESIDENCE,904,False,False,1215,12,27,24,06,1167548,1905439,2014,ERROR,41.896075483,-87.660075443,"(41.896075483, -87.660075443)" -10067136,HY256096,2015-05-11 16:00:00,087XX S BEVERLY AVE,0820,THEFT,$500 AND UNDER,STREET,466,False,False,2221,22,21,71,06,1164962,1846395,2015,ERROR,41.734107372,-87.671244102,"(41.734107372, -87.671244102)" -8115927,HT350334,2011-06-16 12:00:00,058XX N KENMORE AVE,0560,ASSAULT,SIMPLE,RESIDENCE PORCH/HALLWAY,2492,False,False,2022,20,48,77,08A,1168225,1939040,2011,ERROR,41.988263519,-87.656614711,"(41.988263519, -87.656614711)" -3295784,HK327947,2004-04-27 12:42:44,055XX W CHICAGO AVE,0860,THEFT,RETAIL THEFT,DRUG STORE,630,True,False,1524,15,37,25,06,1139149,1904830,2004,ERROR,41.894968468,-87.764395055,"(41.894968468, -87.764395055)" -4118774,HL445725,2005-06-26 18:35:00,076XX S CICERO AVE,0560,ASSAULT,SIMPLE,OTHER,3553,True,False,833,8,13,65,08A,1145766,1853738,2005,ERROR,41.75464162,-87.741385158,"(41.75464162, -87.741385158)" -4313295,HL623082,2005-09-19 22:30:00,078XX S CREGIER AVE,2820,OTHER OFFENSE,TELEPHONE THREAT,RESIDENCE,2726,False,True,414,4,8,43,26,1189530,1853090,2005,ERROR,41.751925214,-87.581024925,"(41.751925214, -87.581024925)" -5275302,HM771318,2006-12-12 14:30:00,016XX N VINE ST,0460,BATTERY,SIMPLE,CHA APARTMENT,3342,False,False,1813,18,43,7,08B,1171741,1910972,2006,2007-04-02 09:14:02,41.911167023,-87.644512341,"(41.911167023, -87.644512341)" -9571206,HX221842,2014-04-12 21:00:00,036XX W ARMITAGE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,4457,True,True,2535,25,26,22,08B,1151558,1912999,2014,ERROR,41.91715014,-87.718604687,"(41.91715014, -87.718604687)" -8225563,HT459910,2011-06-02 10:00:00,034XX N OVERHILL AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,4580,False,True,1631,16,36,17,10,1124187,1921874,2011,ERROR,41.941998641,-87.818972224,"(41.941998641, -87.818972224)" -3698614,HK800968,2004-12-06 07:28:00,039XX W 55TH ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,3905,False,False,822,8,23,62,14,1151189,1867799,2004,ERROR,41.793123142,-87.721144397,"(41.793123142, -87.721144397)" -6279492,HP366498,2008-05-31 01:49:48,024XX E 77TH ST,0560,ASSAULT,SIMPLE,STREET,3375,False,False,421,4,7,43,08A,1193751,1854422,2008,2008-10-06 17:19:23,41.755478007,-87.565513603,"(41.755478007, -87.565513603)" -3809022,HL179005,2005-02-12 23:00:00,079XX S SACRAMENTO AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,4081,False,False,835,8,18,70,14,1157711,1852042,2005,ERROR,41.749753656,-87.69765575,"(41.749753656, -87.69765575)" -2448823,HH773171,2002-11-11 16:55:00,024XX W 46TH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,4003,False,False,914,NA,12,58,08B,1160595,1874059,2002,ERROR,41.810112404,-87.686480579,"(41.810112404, -87.686480579)" -8784290,HV458206,2012-09-02 15:00:00,010XX W BRYN MAWR AVE,0820,THEFT,$500 AND UNDER,SIDEWALK,324,False,False,2022,20,48,77,06,1168220,1937410,2012,2012-03-09 10:10:19,41.98379087,-87.656680467,"(41.98379087, -87.656680467)" -5066596,HM672873,2006-10-21 01:10:00,063XX S ELIZABETH ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,ALLEY,1796,False,True,724,7,16,67,08B,1169122,1862553,2006,2006-04-11 05:54:38,41.778358245,-87.655537413,"(41.778358245, -87.655537413)" -9049125,HW191204,2013-03-13 19:00:00,031XX N SHEFFIELD AVE,0820,THEFT,$500 AND UNDER,STREET,247,False,False,1933,19,44,6,06,1169094,1921197,2013,ERROR,41.939282865,-87.65393884,"(41.939282865, -87.65393884)" -7764239,HS572350,2010-10-19 16:30:00,048XX N SPAULDING AVE,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,3988,True,False,1713,17,39,14,18,1153546,1931968,2010,ERROR,41.969163134,-87.710794575,"(41.969163134, -87.710794575)" -2410766,HH726508,2002-10-19 20:00:00,041XX W GRANVILLE AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,3555,False,False,1711,NA,39,12,14,1147823,1940905,2002,ERROR,41.993799031,-87.731607315,"(41.993799031, -87.731607315)" -6473955,HP548589,2008-09-02 10:38:27,002XX S LAVERGNE AVE,2017,NARCOTICS,MANU/DELIVER:CRACK,SIDEWALK,4717,True,False,1533,15,28,25,18,1143332,1898687,2008,2008-04-09 10:02:31,41.878034197,-87.749185395,"(41.878034197, -87.749185395)" -3811299,HL180923,2005-02-14 14:30:00,001XX W CERMAK RD,0890,THEFT,FROM BUILDING,RESTAURANT,4526,False,False,2111,9,25,34,06,1175413,1889712,2005,ERROR,41.852746625,-87.631661358,"(41.852746625, -87.631661358)" -8254428,HT488217,2011-09-09 08:20:00,012XX S KILDARE AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,1355,True,True,1011,10,24,29,08B,1147879,1893831,2011,2011-10-09 08:30:21,41.864622619,-87.732614499,"(41.864622619, -87.732614499)" -3052579,HJ766530,2003-11-18 11:15:00,010XX W NORTH AVE,0312,ROBBERY,ARMED:KNIFE/CUTTING INSTRUMENT,SMALL RETAIL STORE,1967,False,False,1811,18,32,7,03,1169395,1910873,2003,ERROR,41.910946738,-87.653133577,"(41.910946738, -87.653133577)" -2802395,HJ456446,2003-06-26 17:00:00,014XX N MAPLEWOOD AVE,0810,THEFT,OVER $500,STREET,3051,False,False,1423,14,26,24,06,1159110,1909223,2003,2014-04-12 12:43:35,41.906636608,-87.690962425,"(41.906636608, -87.690962425)" -8467589,HV143840,2012-02-03 12:45:00,064XX S ST LAWRENCE AVE,1330,CRIMINAL TRESPASS,TO LAND,RESIDENCE-GARAGE,2128,False,False,312,3,20,42,26,1181306,1862283,2012,2012-05-02 07:39:28,41.777345128,-87.610878867,"(41.777345128, -87.610878867)" -8672044,HV346931,2012-06-22 02:30:00,002XX N ASHLAND AVE,0820,THEFT,$500 AND UNDER,STREET,66,False,False,1333,12,27,28,06,1165729,1901839,2012,ERROR,41.88623579,-87.666858935,"(41.88623579, -87.666858935)" -2087824,HH307538,2002-04-14 17:00:00,112XX S CORLISS AV,0820,THEFT,$500 AND UNDER,PARKING LOT/GARAGE(NON.RESID.),121,False,False,531,NA,NA,NA,06,1184357,1830749,2002,2014-04-12 12:43:35,41.690741459,-87.60067812,"(41.690741459, -87.60067812)" -8209337,HT443374,2011-08-11 18:35:00,079XX S HALSTED ST,031A,ROBBERY,ARMED: HANDGUN,ATM (AUTOMATIC TELLER MACHINE),1050,False,False,621,6,17,71,03,1172299,1852411,2011,ERROR,41.750458051,-87.644188274,"(41.750458051, -87.644188274)" -8256672,HT490030,2011-09-10 01:45:00,116XX S DOTY AVE W,0460,BATTERY,SIMPLE,PARKING LOT/GARAGE(NON.RESID.),2252,False,False,532,5,9,54,08B,1183932,1827765,2011,2011-11-09 06:14:39,41.68256287,-87.602326758,"(41.68256287, -87.602326758)" -5916746,HN714104,2007-11-18 02:00:00,026XX W CORTLAND ST,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,644,False,False,1421,14,1,22,14,1158683,1912488,2007,ERROR,41.91560479,-87.692441353,"(41.91560479, -87.692441353)" -8191615,HT405749,2011-07-19 18:00:00,009XX W WINONA ST,2032,NARCOTICS,MANU/DELIVER: METHAMPHETAMINES,RESIDENCE,2116,True,False,2024,20,48,3,18,1169251,1934368,2011,2011-01-08 11:42:26,41.975421135,-87.652977507,"(41.975421135, -87.652977507)" -2973180,HJ659852,2003-09-28 22:39:00,097XX S HARVARD AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3610,False,True,511,5,21,49,08B,1175644,1839981,2003,ERROR,41.716274337,-87.632301694,"(41.716274337, -87.632301694)" -2653149,HJ262801,2003-03-26 22:50:00,083XX S ELLIS AVE,0610,BURGLARY,FORCIBLE ENTRY,APARTMENT,721,False,False,632,NA,8,44,05,1184303,1849697,2003,ERROR,41.742738291,-87.600285187,"(41.742738291, -87.600285187)" -2813880,HJ468442,2003-07-02 17:55:00,103XX S CHARLES ST,0930,MOTOR VEHICLE THEFT,THEFT/RECOVERY: AUTOMOBILE,OTHER,1416,False,False,2212,22,19,72,07,1168443,1836435,2003,ERROR,41.70670143,-87.658777228,"(41.70670143, -87.658777228)" -6853270,HR212470,2009-03-12 20:24:00,014XX W 63RD ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,3705,True,False,725,7,16,67,18,1167591,1862923,2009,ERROR,41.779406548,-87.661139539,"(41.779406548, -87.661139539)" -4345470,HL643338,2005-09-29 12:30:00,054XX S WENTWORTH AVE,0860,THEFT,RETAIL THEFT,SMALL RETAIL STORE,3555,True,False,232,2,3,37,06,1175924,1869100,2005,ERROR,41.796174063,-87.6304048,"(41.796174063, -87.6304048)" -3145808,HK138334,2004-01-20 14:45:00,001XX W 104TH ST,1750,OFFENSE INVOLVING CHILDREN,CHILD ABUSE,RESIDENCE,1034,False,True,512,5,34,49,20,1177238,1836035,2004,ERROR,41.705410205,-87.626582292,"(41.705410205, -87.626582292)" -2564500,HJ117629,2003-01-10 06:30:00,046XX S SACRAMENTO AVE,1513,PROSTITUTION,SOLICIT FOR BUSINESS,STREET,4870,True,False,912,NA,14,58,16,1157201,1873342,2003,ERROR,41.808214288,-87.698948812,"(41.808214288, -87.698948812)" -2168460,HH416094,2002-05-31 17:00:00,063XX S ROCKWELL ST,0460,BATTERY,SIMPLE,STREET,1695,False,False,825,NA,15,66,08B,1160083,1862752,2002,ERROR,41.779095055,-87.688669541,"(41.779095055, -87.688669541)" -3960086,HL326851,2005-04-30 08:50:00,017XX W HOWARD ST,0860,THEFT,RETAIL THEFT,GROCERY FOOD STORE,1739,False,False,2422,24,49,1,06,1163125,1950306,2005,ERROR,42.019286753,-87.675054325,"(42.019286753, -87.675054325)" -7233563,HR577284,2009-10-03 04:35:00,047XX S KILPATRICK AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,2783,False,False,815,8,23,56,14,1145784,1872768,2009,ERROR,41.80686277,-87.740838663,"(41.80686277, -87.740838663)" -5041658,HM636747,2006-10-02 22:15:00,015XX N CALIFORNIA AVE,0560,ASSAULT,SIMPLE,STREET,4574,False,True,1423,14,26,24,08A,1157485,1910358,2006,ERROR,41.90978438,-87.696900782,"(41.90978438, -87.696900782)" -1848119,G681456,2001-11-12 15:00:00,045XX S DAMEN AV,0820,THEFT,$500 AND UNDER,DEPARTMENT STORE,255,True,False,914,NA,NA,NA,06,1163704,1874123,2001,2014-04-12 12:43:35,41.810223247,-87.675075347999993,"(41.810223247, -87.675075348)" -3152831,HK148739,2004-01-26 19:00:00,008XX W 52ND ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,4518,False,False,934,9,3,61,07,1171851,1870417,2004,ERROR,41.799878475,-87.64530206,"(41.799878475, -87.64530206)" -3800712,HL168190,2005-02-06 18:00:00,026XX W 74TH ST,0460,BATTERY,SIMPLE,STREET,4990,False,False,835,8,18,66,08B,1159986,1855543,2005,ERROR,41.759314508,-87.689223078,"(41.759314508, -87.689223078)" -4838698,HM450854,2006-07-02 20:22:36,066XX S DAMEN AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,RESIDENCE,3325,False,True,726,7,15,67,08B,1164211,1860657,2006,2006-08-07 04:09:46,41.773260178,-87.673594762,"(41.773260178, -87.673594762)" -4567800,HM152622,2006-01-30 01:05:00,062XX S PULASKI RD,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,2362,True,True,823,8,13,65,08B,1150823,1862618,2006,2006-04-02 03:37:59,41.778912821,-87.72262144,"(41.778912821, -87.72262144)" -4954048,HM567985,2006-08-28 19:00:00,039XX W NORTH AVE,0820,THEFT,$500 AND UNDER,RESTAURANT,63,False,False,2535,25,30,23,06,1149603,1910380,2006,2014-04-12 12:43:35,41.910001584,-87.725855574,"(41.910001584, -87.725855574)" -6442605,HP523830,2008-08-19 19:15:00,022XX N STOCKTON DR,0810,THEFT,OVER $500,STREET,4144,False,False,1814,18,43,7,06,1174044,1915453,2008,ERROR,41.923412022,-87.635918111,"(41.923412022, -87.635918111)" -8013905,HT245828,2011-04-12 01:00:00,117XX S ASHLAND AVE,0325,ROBBERY,VEHICULAR HIJACKING,STREET,3478,False,False,524,5,34,53,03,1167822,1827065,2011,ERROR,41.681001922,-87.66131902,"(41.681001922, -87.66131902)" -2134668,HH365544,2002-05-11 19:52:00,012XX W 69TH ST,2111,NARCOTICS,SALE/DEL HYPODERMIC NEEDLE,STREET,3604,True,False,724,NA,17,67,26,1169493,1859073,2002,ERROR,41.768800662,-87.654278043,"(41.768800662, -87.654278043)" -5610513,HN414573,2007-06-19 04:45:00,050XX W DICKENS AVE,1320,CRIMINAL DAMAGE,TO VEHICLE,STREET,1912,False,False,2522,25,31,19,14,1142601,1913456,2007,ERROR,41.918575659,-87.75150172,"(41.918575659, -87.75150172)" -8573841,HV248444,2012-04-19 00:45:00,048XX S MICHIGAN AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,OTHER,1936,False,False,224,2,3,38,14,1178018,1872850,2012,ERROR,41.806417165,-87.622612308,"(41.806417165, -87.622612308)" -1561696,G322059,2001-06-04 02:17:00,051XX S WESTERN AV,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,OTHER,1450,True,False,915,NA,NA,NA,07,1161425,1870775,2001,ERROR,41.801083515,-87.683527305,"(41.801083515, -87.683527305)" -3927547,HL299959,2005-04-17 00:05:00,106XX S PERRY AVE,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,4821,False,False,512,5,34,49,14,1177525,1834390,2005,ERROR,41.700889625,-87.625580837,"(41.700889625, -87.625580837)" -4652877,HM250481,2006-03-24 14:50:00,006XX N AVERS AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,3812,False,False,1122,11,27,23,04B,1150574,1903795,2006,ERROR,41.891912762,-87.722460741,"(41.891912762, -87.722460741)" -5843579,HN653528,2007-10-15 01:00:00,021XX E 83RD ST,1310,CRIMINAL DAMAGE,TO PROPERTY,RESIDENCE,1948,False,False,414,4,8,46,14,1191722,1850396,2007,ERROR,41.744479768,-87.573079607,"(41.744479768, -87.573079607)" -3203166,HK216335,2004-03-02 13:30:00,003XX N OAKLEY BLVD,0810,THEFT,OVER $500,STREET,4568,False,False,1332,12,27,28,06,1160987,1901959,2004,2014-04-12 12:43:35,41.886664822,-87.684269315,"(41.886664822, -87.684269315)" -1606977,G378687,2001-06-29 10:15:00,0000X W RANDOLPH ST,0560,ASSAULT,SIMPLE,OTHER,3282,False,True,122,NA,NA,NA,08A,1176018,1901322,2001,ERROR,41.884591617,-87.629091254,"(41.884591617, -87.629091254)" -4840076,HM452107,2006-07-03 13:00:00,040XX W 26TH ST,1210,DECEPTIVE PRACTICE,THEFT OF LABOR/SERVICES,CTA BUS,3532,True,False,1013,10,22,30,11,1150073,1886464,2006,2006-06-07 04:48:17,41.844364255,-87.724751946,"(41.844364255, -87.724751946)" -2414638,HH721521,2002-10-18 01:45:00,057XX S NEWCASTLE AVE,0560,ASSAULT,SIMPLE,RESIDENCE,4205,True,True,811,NA,23,56,08A,1131678,1865389,2002,ERROR,41.786868643,-87.792746288,"(41.786868643, -87.792746288)" -9984576,HY173853,2015-03-06 12:20:00,036XX S PAULINA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,2794,True,True,912,9,11,59,08B,1165657,1880409,2015,ERROR,41.827431448,-87.667733383,"(41.827431448, -87.667733383)" -4690605,HM294209,2006-04-15 23:30:00,035XX W DIVERSEY AVE,0810,THEFT,OVER $500,VEHICLE NON-COMMERCIAL,4065,False,False,1412,14,35,21,06,1152451,1918432,2006,2014-04-12 12:43:35,41.93204114,-87.715179885,"(41.93204114, -87.715179885)" -9817517,HX467213,2014-10-14 12:15:00,023XX S MICHIGAN AVE,0560,ASSAULT,SIMPLE,APARTMENT,592,False,False,131,1,2,33,08A,1177532,1889067,2014,ERROR,41.850928923,-87.623903608,"(41.850928923, -87.623903608)" -4924804,HM540163,2006-08-14 05:20:00,040XX W POTOMAC AVE,0820,THEFT,$500 AND UNDER,VEHICLE NON-COMMERCIAL,295,False,False,2534,25,27,23,06,1149398,1908322,2006,2014-04-12 12:43:35,41.90435821,-87.726662138,"(41.90435821, -87.726662138)" -5819771,HN629390,2007-10-04 22:30:00,087XX S SAGINAW AVE,0430,BATTERY,AGGRAVATED: OTHER DANG WEAPON,STREET,2737,False,False,423,4,7,46,04B,1195348,1847736,2007,ERROR,41.737091832,-87.559881365,"(41.737091832, -87.559881365)" -4431290,HL717454,2005-11-05 14:30:00,001XX W LAKE ST,0870,THEFT,POCKET-PICKING,CTA PLATFORM,1953,False,False,113,1,42,32,06,1175460,1901776,2005,ERROR,41.885849966,-87.631126643,"(41.885849966, -87.631126643)" -3020488,HJ684755,2003-10-10 16:45:00,075XX S MORGAN ST,1811,NARCOTICS,POSS: CANNABIS 30GMS OR LESS,STREET,865,True,False,612,6,17,71,18,1170904,1855024,2003,ERROR,41.75765901,-87.649224054,"(41.75765901, -87.649224054)" -7534781,HS338561,2010-06-01 17:30:00,015XX N CICERO AVE,0486,BATTERY,DOMESTIC BATTERY SIMPLE,DEPARTMENT STORE,1334,False,True,2533,25,37,25,08B,1144129,1910138,2010,2010-06-06 10:23:35,41.909442134,-87.745971135,"(41.909442134, -87.745971135)" -8552792,HV228661,2012-04-03 00:00:00,053XX W FOSTER AVE,1720,OFFENSE INVOLVING CHILDREN,CONTRIBUTE DELINQUENCY OF A CHILD,APARTMENT,3251,False,False,1623,16,45,11,20,1139799,1934106,2012,ERROR,41.975292963,-87.761290293,"(41.975292963, -87.761290293)" -2489010,HH826679,2002-11-30 21:00:00,023XX S LAKE SHORE DR E,0890,THEFT,FROM BUILDING,OTHER,2775,False,False,133,NA,2,33,06,NA,NA,2002,ERROR,NA,NA, -2690599,HJ311147,2003-04-19 21:46:00,059XX S ADA ST,0486,BATTERY,DOMESTIC BATTERY SIMPLE,APARTMENT,4856,False,True,713,NA,16,67,08B,1168389,1865153,2003,ERROR,41.785508785,-87.658149785,"(41.785508785, -87.658149785)" -3823642,HL190768,2005-02-19 15:30:00,028XX N MOZART ST,0910,MOTOR VEHICLE THEFT,AUTOMOBILE,STREET,2877,False,False,1411,14,35,21,07,1156853,1918544,2005,ERROR,41.932260245,-87.699000048,"(41.932260245, -87.699000048)" From 8409ab71335edb26c4a4bae9c90a7cf60d4f882a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:34:50 -0700 Subject: [PATCH 067/248] Delete crime-spring.csv --- .../work-with-data/dataprep/data/crime-spring.csv | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-spring.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime-spring.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime-spring.csv deleted file mode 100644 index 3750a186..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime-spring.csv +++ /dev/null @@ -1,11 +0,0 @@ -ID,Case Number,Date,Block,IUCR,Primary Type,Description,Location Description,Arrest,Domestic,Beat,District,Ward,Community Area,FBI Code,X Coordinate,Y Coordinate,Year,Updated On,Latitude,Longitude,Location -10498554,HZ239907,4/4/2016 23:56,007XX E 111TH ST,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,OTHER,FALSE,FALSE,531,5,9,50,11,1183356,1831503,2016,5/11/2016 15:48,41.69283384,-87.60431945,"(41.692833841, -87.60431945)" -10516598,HZ258664,4/15/2016 17:00,082XX S MARSHFIELD AVE,890,THEFT,FROM BUILDING,RESIDENCE,FALSE,FALSE,614,6,21,71,6,1166776,1850053,2016,5/12/2016 15:48,41.74410697,-87.66449429,"(41.744106973, -87.664494285)" -10519196,HZ261252,4/15/2016 10:00,104XX S SACRAMENTO AVE,1154,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT $300 AND UNDER,RESIDENCE,FALSE,FALSE,2211,22,19,74,11,,,2016,5/12/2016 15:50,,, -10519591,HZ261534,4/15/2016 9:00,113XX S PRAIRIE AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,FALSE,FALSE,531,5,9,49,10,,,2016,5/13/2016 15:51,,, -10534446,HZ277630,4/15/2016 10:00,055XX N KEDZIE AVE,890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",FALSE,FALSE,1712,17,40,13,6,,,2016,5/25/2016 15:59,,, -10535059,HZ278872,4/15/2016 4:30,004XX S KILBOURN AVE,810,THEFT,OVER $500,RESIDENCE,FALSE,FALSE,1131,11,24,26,6,,,2016,5/25/2016 15:59,,, -10499802,HZ240778,4/15/2016 10:00,010XX N MILWAUKEE AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,FALSE,FALSE,1213,12,27,24,11,,,2016,5/27/2016 15:45,,, -10522293,HZ264802,4/15/2016 16:00,019XX W DIVISION ST,1110,DECEPTIVE PRACTICE,BOGUS CHECK,RESTAURANT,FALSE,FALSE,1424,14,1,24,11,1163094,1908003,2016,5/16/2016 15:48,41.90320604,-87.67636193,"(41.903206037, -87.676361925)" -10523111,HZ265911,4/15/2016 8:00,061XX N SHERIDAN RD,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,FALSE,FALSE,2433,24,48,77,11,,,2016,5/16/2016 15:50,,, -10525877,HZ268138,4/15/2016 15:00,023XX W EASTWOOD AVE,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,,FALSE,FALSE,1911,19,47,4,11,,,2016,5/18/2016 15:50,,, From f22adb79499b4900aa12dde5b82ab0f78e0b5cdb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:35:00 -0700 Subject: [PATCH 068/248] Delete crime-winter.csv --- .../work-with-data/dataprep/data/crime-winter.csv | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-winter.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime-winter.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime-winter.csv deleted file mode 100644 index 4c70d468..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime-winter.csv +++ /dev/null @@ -1,11 +0,0 @@ -ID,Case Number,Date,Block,IUCR,Primary Type,Description,Location Description,Arrest,Domestic,Beat,District,Ward,Community Area,FBI Code,X Coordinate,Y Coordinate,Year,Updated On,Latitude,Longitude,Location -10378283,HZ114126,1/10/2016 11:00,033XX W IRVING PARK RD,610,BURGLARY,FORCIBLE ENTRY,RESIDENCE-GARAGE,TRUE,FALSE,1724,17,33,16,5,1153593,1926401,2016,5/22/2016 15:51,41.95388599,-87.71077048,"(41.95388599, -87.710770479)" -10382154,HZ118288,1/10/2016 21:00,055XX S FRANCISCO AVE,1754,OFFENSE INVOLVING CHILDREN,AGG SEX ASSLT OF CHILD FAM MBR,RESIDENCE,FALSE,TRUE,824,8,14,63,2,1157983,1867874,2016,6/1/2016 15:51,41.79319349,-87.69622926,"(41.793193489, -87.696229255)" -10374287,HZ110730,1/10/2016 11:50,043XX W ARMITAGE AVE,5002,OTHER OFFENSE,OTHER VEHICLE OFFENSE,STREET,FALSE,TRUE,2522,25,30,20,26,1146917,1912931,2016,6/7/2016 15:55,41.91705356,-87.73565764,"(41.917053561, -87.735657637)" -10374662,HZ110403,1/10/2016 1:30,073XX S CLAREMONT AVE,497,BATTERY,AGGRAVATED DOMESTIC BATTERY: OTHER DANG WEAPON,STREET,FALSE,TRUE,835,8,18,66,04B,1162007,1855951,2016,2/4/2016 15:44,41.76039236,-87.68180481,"(41.760392356, -87.681804812)" -10374720,HZ110836,1/10/2016 7:30,079XX S RHODES AVE,890,THEFT,FROM BUILDING,OTHER,FALSE,FALSE,624,6,6,44,6,1181279,1852568,2016,2/4/2016 15:44,41.75068679,-87.61127681,"(41.75068679, -87.611276811)" -10375178,HZ110832,1/10/2016 14:20,057XX S KEDZIE AVE,460,BATTERY,SIMPLE,RESTAURANT,FALSE,FALSE,824,8,14,63,08B,1156029,1866379,2016,2/4/2016 15:44,41.78913051,-87.7034346,"(41.78913051, -87.703434602)" -10398695,HZ135279,1/10/2016 23:00,031XX S PARNELL AVE,620,BURGLARY,UNLAWFUL ENTRY,RESIDENCE-GARAGE,FALSE,FALSE,915,9,11,60,5,1173138,1884117,2016,2/4/2016 15:44,41.8374442,-87.64017699,"(41.837444199, -87.640176991)" -10402270,HZ138745,1/10/2016 11:00,051XX S ELIZABETH ST,620,BURGLARY,UNLAWFUL ENTRY,APARTMENT,FALSE,FALSE,934,9,16,61,5,,,2016,2/4/2016 6:53,,, -10380619,HZ116583,1/10/2016 9:41,091XX S PAXTON AVE,4387,OTHER OFFENSE,VIOLATE ORDER OF PROTECTION,RESIDENCE,TRUE,TRUE,413,4,7,48,26,1192434,1844707,2016,2/2/2016 15:56,41.72885134,-87.57065553,"(41.728851343, -87.570655525)" -10400131,HZ136171,1/10/2016 18:00,0000X W TERMINAL ST,810,THEFT,OVER $500,AIRPORT BUILDING NON-TERMINAL - SECURE AREA,FALSE,FALSE,1651,16,41,76,6,,,2016,2/2/2016 15:58,,, From 5bf4b0bafe5a14510d94bfb348bec49c68acc792 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:35:11 -0700 Subject: [PATCH 069/248] Delete crime.dprep --- .../work-with-data/dataprep/data/crime.dprep | 204 ------------------ 1 file changed, 204 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.dprep diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime.dprep b/how-to-use-azureml/work-with-data/dataprep/data/crime.dprep deleted file mode 100644 index 58a84196..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime.dprep +++ /dev/null @@ -1,204 +0,0 @@ -{ - "id": "75637565-60ad-4baa-87d3-396a7930cfe7", - "blocks": [ - { - "id": "ba5a8061-129e-4618-953a-ce3e89c8f2cb", - "type": "Microsoft.DPrep.GetFilesBlock", - "arguments": { - "path": { - "target": 0, - "resourceDetails": [ - { - "path": "./crime-spring.csv" - } - ] - } - }, - "isEnabled": true, - "name": null, - "annotation": null - }, - { - "id": "1b345643-6b60-4ca1-99f9-2a64ae932a23", - "type": "Microsoft.DPrep.ParseDelimitedBlock", - "arguments": { - "columnHeadersMode": 1, - "fileEncoding": 0, - "handleQuotedLineBreaks": false, - "preview": false, - "separator": ",", - "skipRowsMode": 0 - }, - "isEnabled": true, - "name": null, - "annotation": null - }, - { - "id": "12cf73a2-1487-4915-bfa7-c86be7de08c0", - "type": "Microsoft.DPrep.SetColumnTypesBlock", - "arguments": { - "columnConversion": [ - { - "column": { - "type": 2, - "details": { - "selectedColumn": "ID" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "IUCR" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Domestic" - } - }, - "typeProperty": 1 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Beat" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "District" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Ward" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Community Area" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Year" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Longitude" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Arrest" - } - }, - "typeProperty": 1 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "X Coordinate" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Updated On" - } - }, - "typeArguments": { - "dateTimeFormats": [ - "%m/%d/%Y %I:%M:%S %p" - ] - }, - "typeProperty": 4 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Date" - } - }, - "typeArguments": { - "dateTimeFormats": [ - "%m/%d/%Y %I:%M:%S %p" - ] - }, - "typeProperty": 4 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Y Coordinate" - } - }, - "typeProperty": 3 - }, - { - "column": { - "type": 2, - "details": { - "selectedColumn": "Latitude" - } - }, - "typeProperty": 3 - } - ] - }, - "isEnabled": true, - "name": null, - "annotation": null - }, - { - "id": "dfd62543-9285-412b-a930-0aeaaffde699", - "type": "Microsoft.DPrep.HandlePathColumnBlock", - "arguments": { - "pathColumnOperation": 0 - }, - "isEnabled": true, - "name": null, - "annotation": null - } - ], - "inspectors": [] -} \ No newline at end of file From 39384aea5216290d6674b98150fe9063280f4888 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:35:20 -0700 Subject: [PATCH 070/248] Delete crime.parquet --- .../work-with-data/dataprep/data/crime.parquet | Bin 3607 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.parquet diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime.parquet b/how-to-use-azureml/work-with-data/dataprep/data/crime.parquet deleted file mode 100644 index dc06b73120f80a4d13b3791adc1f7d12c8ebe9f2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3607 zcma)C|F3u8=U$UC_VhDu7gTPl~CF)EHUDcvN-%wV>;*fCvbw__w(sbtGW z8>WQHrG(RVbtxw*Su471QmNIpDw|L1pk|+WXU5n));a$1KF{y_yZ@f&`3##8<_e?W zatO|b=EJ7oQxDcdp=|czQOKWROiXk%nS(VUg3G2d-G|DtKG?h@H&^dvLfyf*^nrl*F>@&dI+%Xv@5E&Nx++#+LA+4dN{Gk7BfLoXT8xj=O1_$_?*Gd-8#% z19C-m=wUghsWkI|AG>bX%X6#EMsGBof9kTeu?Fieaai0N{>0hY;ZbzQYnoX^eJi(i zPKfjG1xKx2Ja5@7Pp^hFp5uoH3pJi^V&Hc4q_y+e?@DTPAqHY*&@)I`e#})xXE$_~ zt=u*J#>z*dg=yEr*ZcS=mA{^FEm^p+RcJGC5smrr*+KpKyf!!@;vM=)cG}kXO9Y(X z+=R-6>B5$VJE0q+v%d^ul-_^N!U-N^Y*im>m|*Hf~dJ4L;N+NzY2-^(5EgMXnWRFMZ=m9iH3`;>WAbO_+xB+ z1ukD9b57gjf@Avk?`ii-q{(orsSZXO!=DA$#A%vdiH6@zZdiExAA}SaBDQ^A#zm<@ zzdt-?pGaY|>_q!$)b-B8hF(qFWhHBaMUQDMq!re<#V#}N8I?Bg6{1d`@s4dPmdJXr zoo}Dp)!N#8m0Dz!5q)kS`tWzL476L`mAU?V{O^IuP|e?&IR&%6Rp*$FfjcH|&+3pX zghm%~C5b=?O{I~%E?APk6$d5P%4f}ZQ@Q)Ha_^CjmKV=QpKOcV_BhhQ&%Zh44(4_e z-OpnwbDpte-?T$)kL?L-;O`qL73UA$*PmhR;@G_-QP#LJDytxO%|Jt2@YfqNwr^OK ziYx7%X?;`*H`fox*JLj<>Uk-QByT?|F`=br*!?V8cZ5*gr7X13l+oKl+1I3wy$B5t z|4kXQ7=%VTF>t9O)sd0;dSlTL(ROD7t!0@-T94AMP54Xmou3D-#}eoA{US%i=JZb| zMrqt|!mPC?7ew@S+Z^-T9=SWM=I~;A zxmdT9`g({NK^OQsR6r*Ki)u^`t&w-wvo|zo&%T{a*OoAKdLY)+$s44-H;Ke)P9*X} z4Ab3#@t;ukRnJ3P(>g5J57EJw0t6U+ZIJm%_{W+cfz6buZPJULp%ni2cb(F6c6eeE z{D>ZZ;ezv_y4@XAcG5q`OPQW|sUBjfvj%0%{hJ6U)X{9Xe3})*qZ^0+%H5KAYm>Zvu}wgH z!9H^GM-TjhWFqs7*h_}hSns`2*Q%*0u%7>aSU+MZv|q+e{|%NFn?GBNm<$c^WVIPiQFOqh)} zLkF=?FcEwh25=Jjw9qZ07`}8i(A5KbSQbadSBr5>p@h3xB~WQ$gTe#C)B++~DiCp` zNwn2T34E0tF~;I2a;1UUCWX3)DlvFL?qfG7RZul3@M+Z4gng~Kb4zevgP!^T8L5M^gr&+5K$7_=W zSyN2Sspex8dps2;n0xBsQRb>@!&r(br30eWLH6JsvA+sYVWLJlu>}Zr98GD100Ouy z3>DVXa7bIUzz_sv07${<45^!i5N|M)4`?6+#0Py{AV>qXp;SXa27odHoryoS6#+ZZ zlw34m0C?3<2O3W3Cc>3tD8p!g0IrUt<0frCqR@<{6rceM6gtUN7^TTlGZF~mMu`P7 z09-WI0pnvbj$AYbNRi2eG*zR6h}9J@G66u>bR950PzZDrq8x{S96-aSItUpvt(7te z$W(49I^ZwEr$tL3KmoLQhOP|bBZ)xe5TyVDasc(2>FoV!OcAgZqFjamqjGF90h~Cz zTCg6twE$qRr4B?!8UflN%2pr(@-C`wq$bQcLKUGYsh|>6fZey!nZawPU+XI!4dejo zvC%=gGohtY&;U?Twi61WJt+v3j-zB^fE=8f-dPk=l!FypeQP;|@@2HGd}*TU;&5|v Tb@Fg>Tj-5?1m0sd_(}K&3>y?D From bc0a8e0152ae2468e84daa637e0f701ee7a07f5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:35:30 -0700 Subject: [PATCH 071/248] Delete crime.txt --- .../work-with-data/dataprep/data/crime.txt | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.txt diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime.txt b/how-to-use-azureml/work-with-data/dataprep/data/crime.txt deleted file mode 100644 index d6d8b8d7..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime.txt +++ /dev/null @@ -1,10 +0,0 @@ -10140490 HY329907 7/5/2015 23:50 050XX N NEWLAND AVE 820 THEFT -10139776 HY329265 7/5/2015 23:30 011XX W MORSE AVE 460 BATTERY -10140270 HY329253 7/5/2015 23:20 121XX S FRONT AVE 486 BATTERY -10139885 HY329308 7/5/2015 23:19 051XX W DIVISION ST 610 BURGLARY -10140379 HY329556 7/5/2015 23:00 012XX W LAKE ST 930 MOTOR VEHICLE THEFT -10140868 HY330421 7/5/2015 22:54 118XX S PEORIA ST 1320 CRIMINAL DAMAGE -10139762 HY329232 7/5/2015 22:42 026XX W 37TH PL 1020 ARSON -10139722 HY329228 7/5/2015 22:30 016XX S CENTRAL PARK AVE 1811 NARCOTICS -10139774 HY329209 7/5/2015 22:15 048XX N ASHLAND AVE 1310 CRIMINAL DAMAGE -10139697 HY329177 7/5/2015 22:10 058XX S ARTESIAN AVE 1320 CRIMINAL DAMAGE From 6389cc16f9df984cf23edabdb75acebad1c21c93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:35:41 -0700 Subject: [PATCH 072/248] Delete crime.xlsx --- .../work-with-data/dataprep/data/crime.xlsx | Bin 16109 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.xlsx diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime.xlsx b/how-to-use-azureml/work-with-data/dataprep/data/crime.xlsx deleted file mode 100644 index 21f200b4e38cb035371f6a27f7325b6af6302bca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16109 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�Y6u9g?9=Ac@xSQb+-PGTVqR5$h^XU4+z#(9*cn4yYO<71`Lk36xpw#*%W-F|BJgAD|$$5yt8PpyMGD7|QF_tTZ(r{PAs~Yx}kk;JQ zBz?KVCc4Ca&gHYc*6iKuW3kb+7GJsHn0eBrTHp1}wV+v2i@Vp*yVHxkbeWdQZ5HC# zlVQl-W+7(}h?dDvXvRW-ToXm38R!_vUGn=x+T~bMx=q`6{1nVf5fcb%!iFmyslig$ zieFgXW$Nb!IMQHbOq4!;y8IFmHvP%Cv7{-v2p%%}{tJ~xm~etb{+=4|>1yfBq352W zvuXkq<>EB9u9Ok3oFlfJHj)s!ma(taVv@?FgUY1rK|+?=2it8pMoSEgFWWckqOIEj zf=hz_MtHHi`WOW@NiCseaAQdyTw_>@l0aqk7+8oR926FtY+cM8O^aJabLmJ!9je0^ zrx?Ale$aA{#y_g|H6;biFv~RRHR9T_9E2gGnv0T9G%4&Z9 zW)Hi2{tHwi>5Mv7wnBpwj(ED&owIH{4pvowNGz8|%%>qJrl>@>*d97r``&p&XUJr}C3uQ6Hk_0zMAj)g(ICC+eNfrR zqznxqw#;I3XVxJ-Phv6nO{>fbJK^k*J(TH=aegoL!Hh%9egO9t;`a;TnJVf$tLIO2 zc4g-DjYw#-E)p$2W;{Z`I~nORMwq2lTRwFMS69mcYFKDt5M*Z9?kpWYaPXd&QSc9> zji@;a&>l*p-8~E~x6B$rJA3iC+I;0Gkl&LPvQ8kSe3-%=h-K3WS&mT+gIR0gq@a8C zq_TiskyxOMeXHA!qUa-^gykxT_;LT18Ms30aQbGLe$B$ynmkl zWOJKt)DJZzL`r)EtMyX`3|QQBkeP^PM-lbN4UEiWZR>!+NFqd6`=ty1+< zMAwyyNj#pjR#HTyrCBT4Lw2}YyLxpPGjc=E9MwYTI0^2;dfeyCXCfMXooy-)gEo*` zv*x;2;J(w})9*W0F`2(22IlTG7PV*$2dlOH@CFD6 z_(hFi-KysyuE1n2LA^=NVM|O#sohD;y=)sGb+K|Nm2`t_5J?~(UzBXJXQp7~Ck4F# zM0y9_{SZAabs?Sd#je}^#FyHar&RZ$(JB^_$*a)3b3=9Cn%X`iwK_s#^MQLw0W=*X zhIOoV0!lR!iEG{kJ+368AViA+ytyOEFTbGxwTNb6GpP-k-pm@hv`)W*6(Ki9&}##-pu6UZqYRWVXMx zvsG=A_gYvT=8Vjy_jIX}VuQSEWDMx`mQ-ME%1ik+q?0I-wOFs3ZmQve(vDorYDrxTPHgU-H+9|}sO5>RI zT}C0lo5aUt3R>Oc+Q9ardqSx_V7vR@Wg)pTmjR>x>I5a=F#CHalQIE2%{xR z_5|fR>9qEk2+h5YF!iZ(W?QG!qfpmKS2XMg?2B#v6QlNuVHW#k0*kfXD2X)zow62d zqh^`X;xh6xAR|Y4n}0R-1QjCBXD}P{>>@F1!RzVaNb<~NdioTK&?KU9yu0X?3C^9N z`3BsYIgiDftu?%b7Ord7p{gaM%A|+abrY}|L$s&O^pQ_Zg+6Khpm0_$s}f7Z`k3Oe{6d>%0QX81Gj0VU_n68|K;o^x^{*J3J!LrR>r^iyt|TSL=GFeNBPXF zP8Od<-Y3SLZll=2Arxb8OdAL?mP`4dcMedF-_XTo?{D42->JdIcx)}q^WCOyri`?| zXt(CP2G`M~JP5KFsR)a( zhCVJmjks-EJzfi@J~bMxEY#gT%`d$m-~%YPa@UD^?yUxAm#;c{SLP_YsG6Isr5+HR zIN~9u9bBv_{Ln@@FbQ!{rr&ucQ5n1TWSS2shu_%M^x9CkR-Oz`h=S098A|=o2kFp=)lV zyM=p+t%nxP%r6!gdjYpa@oZ_j0NY}R&g(T6NWm=0m^j-uHWw|stKcPAj|Gn|R?GbS zRo)so<>9)oOLWy1_Yf{}4ogDvJ14sSd+-$|E`4m=89UA0Tk)=*N{lXlP~Qw$vKU3F$?GriL0g6z z2~d;o6kWSVaIK&8qHy{~h%jZFD;zB5>nb~~B5Ov^aiDO-@=f9fI8sO&W23~XJ3eMu zOtQ9Co4+$EHpfDZ@1z$4$H`Gd1pwYf5Gy;X4E7+m$P%F%zo8c8L69S1Ch)Z>ltS+v zd#9(j01+eOQfSF!q_&Ve*I$P}D`LmSw6)d)aVyp}YCT^25AQ6w7eU6C~Ne<$eKUE48{P(efQw4VW9vuw3;b76Nn4Gf_^XjNpK!frcJsv zH<6;vHz77$)xscom6YhMJ%d>?DKeaCl8)B(gdZdRRh7O*7AUdEuMMJT@e7%6s$bE} z8iaE}p`#DZ2t_hOmk=J>+6au^U~eem2Y6n37Mqc~5IhOI-sgbhzaY}J{o_m_w6PVwYK9)(vncEUwyI>{9!7@55 z9Z#h0G<{n#_@_@2LH&^`81R*Ta%9ig-JU&*mEo{Ok$gLg;z2HqgZCl06D7rFmKWO4 zH4L9>PieP2lzq5(&#Vi|` zXdack4GKw6+u$@(niaCp#T>Nmvq`kQE>ZYUY#?QLEw7&>b@KxtW8x%T&Awd@zMQ6j z4+X!?Sd;l_ULzr+d77i|+bPvk$xjmul1J-sW{dF-d_Erb1)AXFO``Jy9&G60$cnx5 zKRUtq`p23spaalifPhf^?gTc#wc5eZPQlQ@;pd{w@XK!|dOcICBgIjPWm#-qmdfM3 zd?fT`2f17t+dYJsqLt4{xlR&OzGN&7woDH4FrkByA|iR-cW?Q`66iH=K%1P1d!cP| zcJo;l;y0ekE3kE~r9Mjmfcn|XkY4mV@FVQeV1Diau+Ty{2+Uv%RUoI~CU8|P+2Ee$e?9~+>&guk?{m|^Vg`|~zF?soy3 z55(;zZ;zX{6t6;fAGZz``}3;j&XMOz&IzcUHQ>Hq#8oQabCnich@QQ`K90~kEr2T; z?^mrATCHb~Q+5;FDj>kTVC~y5q@x1f_49q$y1n=1l5wm`eUFpM2y@H+FR?7=Sf(aIYrL(VvR(abAjF4#-*2@9vE{1x1EUT1VqaShm*y*Plk6 z#Gn!lV5LxJ1)*X@m-W6tng;D%(?YIu_=?0TF|NAvq9;^fzRaf{taP+&oZ#G7Tnsf^ z7=(JE@KmS8%l>&&W40OXTa^ghJ6fA^%eo0s(9G<-I>L3d<(Px_n9KK$3wQL;_g@B; zC^|K327Av9(4N$hxAMh8pmF?6O6cqqv_6Iu9HSWu3l%WsF{N3+>N<=N^qpQ`^6wlL z9*eplp7WEWF$v)$T?euY%x%5g^HwqZ<8t(3F{BapGb;ge7RsOfP}j!hKW+##*}tyT zXhCZLBZA*4_zfY#3NGiOEP_`_wix?Wg)V4xo$=><{j55&z>=t|`G`8Xc~xXcSJHce zbp9B5<^H-sF0nmth90}95QG-QyvqQg<>RlKPbfIi=Xs{y0Ya%Dy>TxOqLvDQkprMc zct0vp-pgr72G#k`t$Q1eOJK;G2Lc=-vw#PBQgkxZ&&ZTrJgI(&txHleY@k#2^*Daa zK&10IzCZK)8jMgf>lhkV?SIE`O=zspAuD%tX_6&pM^Bv(@bdT+{)tQ3ZnZe=J)#AN zigLc7?1g2fRp*r?;BA8J_wYG<6*wy4+b(nUprc8mD-ORsDZ9Qm`qy=pI0x@Y$e&TB z-pqmcN>u6MA#E>nm#;XtzD3YT#eMvS>g#9U)0zWyW?lO}h>wH-`@<@#@%$y-uKSyP zqA(8oD_vZK^EG4ktgyZemBiw;G5#N#%K^B;XHEN;Sxd9;1PA+*=$Q~_=omQPdko~W zy?|_g-))^}4|zO4Kiu9Xd5ymuG-e@ROK*Gu?ymejqjuYLc5MP(*y;Ckc7Iw*9qk>g zE&t=i|Mp=JkeayBZ~$;Iy^VW7!gSLkath5Mo0jq{7Lzv4&DC^xquY?KQq{>!#$r0_ z%rGg%bx~E;BGU1LJ7HMY?p8jo6X&fuHm|6IfGmjG+s}IiR1bC9`r%-QzDn7wZ}a!S zFjq$TJQI1?^8NcTbif(1j?wYczW3{zY@<@^LVKz`CM~nZ*?2DS_`Ms4hm|Ci!7#yM z7W$CIqiRg8@fs&w?z&lhNL>`#GPQX6D0ysa9K(Jt8L3<*t8itG!w^55*ppZ~1)1-= zy6KSkF40D4fmgj``u>0&?%+_*AB>LL+M^l3L(mq8FeFUCMC^~+%|lFz$24Y}PuUx3 z$n$ABk&zymhOP=NmjCsr&+yqolLf#|k?4E6DgH(OQD#V2c}Vkz&a}UjO1fS8c4CBG zFe$ZNs(h4gK3Wk>9(72xmXwI5G!KutiJD)0+bQ#%B1RR{+?ExQ^envna^u;0e3xKI zGU`y}DJj>|8|Hj>sT{!}Dsk-BN%-eNnrG!#GPS*oPHitrw=Ah9`LV+$+FTpHWwi=` zx;n&VMgf#}m}eMOJN?<@4*{+EtBu}W(|!&Y+f0nYZm0TH!n*bF{AY_@3c}pg??-;z zt+uBEfG&*PF3p!b(5_o#{hR-a4Nx#TU{C0uPoe(d3cr8*hcl_Nl79vG>w&mG1JnU? z#-EPI{VMqDv7kRh_kof6%ORm(h5vdM;SW&|kV?4Ug#Vk93BTg}I+^|l(jmfsDe<>C z^RD<$&(O=t#zasqF#P|aNj`mj@{9{YwSHNF;0)GG^086L88ud?re{=|b1^l(N z`U4P|{x`s1>g#{3xBus$n2i4u(BG=JUqS!M{{PSu1O%TM1mthEz^~$eC2fBe&tv_Q r_`fLJuhM_bmw%QvVgHk~{(ogpSxHD>!2aZiC?E Date: Sun, 28 Jul 2019 00:35:51 -0700 Subject: [PATCH 073/248] Delete crime.zip --- .../work-with-data/dataprep/data/crime.zip | Bin 3685 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.zip diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime.zip b/how-to-use-azureml/work-with-data/dataprep/data/crime.zip deleted file mode 100644 index 772352804b68a9b4c1fa26ad2c9f33eb05d059f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3685 zcmZ{nXH*kP7JvhxNH2yeRRS1ls8W0o30umrdm0kqt5$Q!kk4P5@A`zr_ zk*Cs&AR>W)3Q`x}zW0v1dv@lWxo76bH~0Se&boPMkOaP|Cr^X=Ax3h;-y=54lDEwi($f+BT!c1;_MwGs1+2dS7=IU+vvwN=Ar zSK2+a-s*R8ST1(LwAF@&$fKY!OliqcAgjZf4^er7k?=1`x_4|qYZfb=E6v_LPf?O> z?q2)a6?lhDjeX03BN?GNYauAV9e%t~&#Rv6MtrprJ z5Zpp&&l*-ewlCk6FeqlUS&qocDS&peom}y}n7in%7Vu(nZ4;(!Ua+Hi{t333+?G-& z_pHzmgbwFr0r4`E^!0I{cHNPqwXtQVZ~~wX z%>A}>-9pu+u349etL+t&%YW)%u9Ma?W#`Y79R-FEkmr4>>wplQ zH?H4AvszOKBZQ(RJHycHDDQ$>`$40^Wto+A$&xI{gpO&B~;6&B38P$f@leMig}!5=n$UTMJ3lgL+2nY%$Uoa?P@=I z?lJqlqABe$lVJGRH|xsVo#l)*N?weC<>R_a=MeUM%?}prY-0?2W6?+gOWcLQm9ah} zQ=b&xxT|Mh94yVG3n`&R7mPLuWt*cg2M68}n8APb4yP%|MrUvR8sa&!K6I2O`AY~;^yH;Orky1@D@KJ#~kA(mxqL; zM>2hyQcV13`tq(T`&+Xwt#g!Q8Jf!IJ|5Rk&57O@{HXR-??=!c+Ui>SRpPB5yS}@? zOiPQ-hPip~jd|?B@oj1naj|^vRE5a2m(J(YGEAfV^7BT>o^R~FZ$iQ`!%(2@QB#D{ z)M365?)i5~?F2l&_wbl>ne^R<&Z;q1J7JpFZg~+gPu$8US48p$PIF&>gWW4S=Ob~D^~B8NXj)h0x$Qkl0PjXJ4$1GC-|uP z&K0*ejp(I7IQg80rGJA_6b+ApX@*25eS*nXjuZ1pv8|yHwLK?G9R=OJqh) zKYP9?=JHSjU%I4B3zkb-G2+e7$m9FiDmqrcG}d;zC$b(an0z6$ zPQ|Ngh{H6s1yeUP=$Ev6Y4At_a=)aQU6?RdUMg|Qq99qh7V9#HOEy0$ zNnvp(%bKMyyKdI*oN&cpMO&3D8@O%$sP{Uk+}>if=3=kWb-2PRMc`uNJ20b1^wY~J zwEW>zO$uJdG+gC%x%J+Rq1ta^ec$_87@+Gv;m*e|8926OcTt{;zy(k%pCx;oTs0io z|DCJ6P;Ay&cEr{J)m|HJ`m%lF&{vHNy^nWKBs$&r@j7A)A_*Ex zyiZfgpAb0WKX-RT&`{7??U^2FXFs?(F5rbNVf%3P>4(dqA!U{%%ZG7pb zl>@jSJg2KndyI-<*XuRs_udZIw_Sf82UBAF@M(zzg3EicFEJ7BMLE}%~& zUD$;=Q!NPXkg0bie&B0?rG*k6srW!YY$jkRJiP$MG&G^K%4wUzyjsVJnlAmA_&X$1(&e5erex^qVQ2H`#Usid* zhgqyPhka?37}jXJmYqa=Sd}$S-<)_TFRT`vAtGYA8a31?yC)-_Y>Y9#;P=iw+JrV< zOg`9YR;f0{YDiE2na5JA`H+FQEgX~1%8Rpw9|$NX^M$+X=!#e3OW0mAaZRv;rL#zn zB~-;#V2)-z4HtKz1FYTJ-)t?M*a!8Mhjx5D34D+G**V~U;NCBoeWSU#2y^=b6{jf< zDO0iAXkDFXX+5i0hlw5gddJvKO3D|a{)6L1FMJICaJ0XPv(%)30khK4>8QNpvf__>JIfH?;K{OcM0KHm#<|pZ z4_qFDF2QjzRL^F@=#q7BH+LV0JcS#S7Gft`oqmS&|#^)vyl1*@W^R@yfVhaM&|n3 zm!R$lNsE$aXj_1nwlQ?-d%2q4$m6ZKBXWcx8M!*(|4mHbv!3SH68Q7{ulb4guV*p< zC!kKb#{v~NN%r6Icl`f0OuyrAotf{?@$8@W>36 Date: Sun, 28 Jul 2019 00:36:01 -0700 Subject: [PATCH 074/248] Delete crime_duplicate_headers.csv --- .../dataprep/data/crime_duplicate_headers.csv | 12 ------------ 1 file changed, 12 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_duplicate_headers.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_duplicate_headers.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_duplicate_headers.csv deleted file mode 100644 index 5f2efa26..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_duplicate_headers.csv +++ /dev/null @@ -1,12 +0,0 @@ -ID,Case Number,Date,Block,IUCR,Primary Type,Description,Location Description,Arrest,Domestic,Beat,District,Ward,Community Area,FBI Code,X Coordinate,Y Coordinate,Year,Updated On,Latitude,Longitude,Location -ID,Case Number,Date,Block,IUCR,Primary Type,Description,Location Description,Arrest,Domestic,Beat,District,Ward,Community Area,FBI Code,X Coordinate,Y Coordinate,Year,Updated On,Latitude,Longitude,Location -10498554,HZ239907,4/15/2016 23:56,007XX E 111TH ST,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,OTHER,FALSE,FALSE,531,5,9,50,11,1183356,1831503,2016,5/11/2016 15:48,41.69283384,-87.60431945,"(41.692833841, -87.60431945)" -10516598,HZ258664,4/15/2016 17:00,082XX S MARSHFIELD AVE,890,THEFT,FROM BUILDING,RESIDENCE,FALSE,FALSE,614,6,21,71,6,1166776,1850053,2016,5/12/2016 15:48,41.74410697,-87.66449429,"(41.744106973, -87.664494285)" -10519196,HZ261252,4/15/2016 10:00,104XX S SACRAMENTO AVE,1154,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT $300 AND UNDER,RESIDENCE,FALSE,FALSE,2211,22,19,74,11,,,2016,5/12/2016 15:50,,, -10519591,HZ261534,4/15/2016 9:00,113XX S PRAIRIE AVE,1120,DECEPTIVE PRACTICE,FORGERY,RESIDENCE,FALSE,FALSE,531,5,9,49,10,,,2016,5/13/2016 15:51,,, -10534446,HZ277630,4/15/2016 10:00,055XX N KEDZIE AVE,890,THEFT,FROM BUILDING,"SCHOOL, PUBLIC, BUILDING",FALSE,FALSE,1712,17,40,13,6,,,2016,5/25/2016 15:59,,, -10535059,HZ278872,4/15/2016 4:30,004XX S KILBOURN AVE,810,THEFT,OVER $500,RESIDENCE,FALSE,FALSE,1131,11,24,26,6,,,2016,5/25/2016 15:59,,, -10499802,HZ240778,4/15/2016 10:00,010XX N MILWAUKEE AVE,1152,DECEPTIVE PRACTICE,ILLEGAL USE CASH CARD,RESIDENCE,FALSE,FALSE,1213,12,27,24,11,,,2016,5/27/2016 15:45,,, -10522293,HZ264802,4/15/2016 16:00,019XX W DIVISION ST,1110,DECEPTIVE PRACTICE,BOGUS CHECK,RESTAURANT,FALSE,FALSE,1424,14,1,24,11,1163094,1908003,2016,5/16/2016 15:48,41.90320604,-87.67636193,"(41.903206037, -87.676361925)" -10523111,HZ265911,4/15/2016 8:00,061XX N SHERIDAN RD,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,RESIDENCE,FALSE,FALSE,2433,24,48,77,11,,,2016,5/16/2016 15:50,,, -10525877,HZ268138,4/15/2016 15:00,023XX W EASTWOOD AVE,1153,DECEPTIVE PRACTICE,FINANCIAL IDENTITY THEFT OVER $ 300,,FALSE,FALSE,1911,19,47,4,11,,,2016,5/18/2016 15:50,,, From 4f62f6420771568d42c5e2e27e9d2c12a00feb59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:36:10 -0700 Subject: [PATCH 075/248] Delete crime_fixed_width_file.txt --- .../dataprep/data/crime_fixed_width_file.txt | 10 ---------- 1 file changed, 10 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_fixed_width_file.txt diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_fixed_width_file.txt b/how-to-use-azureml/work-with-data/dataprep/data/crime_fixed_width_file.txt deleted file mode 100644 index d6d8b8d7..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_fixed_width_file.txt +++ /dev/null @@ -1,10 +0,0 @@ -10140490 HY329907 7/5/2015 23:50 050XX N NEWLAND AVE 820 THEFT -10139776 HY329265 7/5/2015 23:30 011XX W MORSE AVE 460 BATTERY -10140270 HY329253 7/5/2015 23:20 121XX S FRONT AVE 486 BATTERY -10139885 HY329308 7/5/2015 23:19 051XX W DIVISION ST 610 BURGLARY -10140379 HY329556 7/5/2015 23:00 012XX W LAKE ST 930 MOTOR VEHICLE THEFT -10140868 HY330421 7/5/2015 22:54 118XX S PEORIA ST 1320 CRIMINAL DAMAGE -10139762 HY329232 7/5/2015 22:42 026XX W 37TH PL 1020 ARSON -10139722 HY329228 7/5/2015 22:30 016XX S CENTRAL PARK AVE 1811 NARCOTICS -10139774 HY329209 7/5/2015 22:15 048XX N ASHLAND AVE 1310 CRIMINAL DAMAGE -10139697 HY329177 7/5/2015 22:10 058XX S ARTESIAN AVE 1320 CRIMINAL DAMAGE From d2c72ca149d78488707ec0fac61396d3738126ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:36:19 -0700 Subject: [PATCH 076/248] Delete crime_multiple_separators.csv --- .../dataprep/data/crime_multiple_separators.csv | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_multiple_separators.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/crime_multiple_separators.csv b/how-to-use-azureml/work-with-data/dataprep/data/crime_multiple_separators.csv deleted file mode 100644 index 5fd79a5a..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/crime_multiple_separators.csv +++ /dev/null @@ -1,11 +0,0 @@ -ID |CaseNumber| |Completed| -10140490 |HY329907| |Y| -10139776 |HY329265| |Y| -10140270 |HY329253| |N| -10139885 |HY329308| |Y| -10140379 |HY329556| |N| -10140868 |HY330421| |N| -10139762 |HY329232| |N| -10139722 |HY329228| |Y| -10139774 |HY329209| |N| -10139697 |HY329177| |N| \ No newline at end of file From 9716f3614eda4132e35ceb082fb7399df97c0a6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:36:30 -0700 Subject: [PATCH 077/248] Delete json.json --- .../work-with-data/dataprep/data/json.json | 1306 ----------------- 1 file changed, 1306 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/json.json diff --git a/how-to-use-azureml/work-with-data/dataprep/data/json.json b/how-to-use-azureml/work-with-data/dataprep/data/json.json deleted file mode 100644 index dfce4329..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/json.json +++ /dev/null @@ -1,1306 +0,0 @@ -{ - "inspections": [ - { - "business": { - "business_id": "16162", - "name": "Quick-N-Ezee Indian Foods", - "address": "3861 24th St ", - "city": "SF", - "postal_code": "94114", - "latitude": "", - "longitude": "", - "phone_number": "", - "TaxCode": "H34", - "business_certificate": "467114", - "application_date": "May 9 2005 12:00AM", - "owner_name": "Jagpreet Enterprises", - "owner_address": "23682 Clawiter Road\n Hayward\n CA\n 94545" - }, - "Score": "100", - "date": "20130223", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "69707", - "name": "Little Green Cyclo 2", - "address": " Off The Grid ", - "city": "", - "postal_code": "", - "latitude": "", - "longitude": "", - "phone_number": "", - "TaxCode": "H79", - "business_certificate": "453248", - "application_date": "Jul 12 2012 12:00AM", - "owner_name": "LITTLEGREENCYCLO LLC", - "owner_address": "100 Esplanade Ave., Apt. 99\n Pacifica\n CA\n 94044" - }, - "Score": "93", - "date": "20130224", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103112: No hot water or running water (High Risk)" } ] - }, - { - "business": { - "business_id": "67565", - "name": "King of Thai Noodles Cafe", - "address": "1541 TARAVAL St ", - "city": "SAN FRANCISCO", - "postal_code": "94116", - "latitude": "37.7427", - "longitude": "-122.483", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "", - "application_date": "Oct 12 2011 12:00AM", - "owner_name": "Royal Thai Noodles, Inc", - "owner_address": "2410 19th Ave\n SF\n CA\n 94116" - }, - "Score": "79", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103139: Improper food storage (Low Risk)" }, - { "description": "103119: Inadequate and inaccessible handwashing facilities (Moderate Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" }, - { "description": "103144: Unapproved or unmaintained equipment or utensils (Low Risk)" }, - { "description": "103161: Low risk vermin infestation (Low Risk)" }, - { "description": "103105: Improper cooling methods (High Risk)" } - ] - }, - { - "business": { - "business_id": "67565", - "name": "King of Thai Noodles Cafe", - "address": "1541 TARAVAL St ", - "city": "SAN FRANCISCO", - "postal_code": "94116", - "latitude": "37.7427", - "longitude": "-122.483", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "", - "application_date": "Oct 12 2011 12:00AM", - "owner_name": "Royal Thai Noodles, Inc", - "owner_address": "2410 19th Ave\n SF\n CA\n 94116" - }, - "Score": "", - "date": "20130225", - "type": "Complaint", - "violations": [ - { "description": "103139: Improper food storage (Low Risk)" }, - { "description": "103119: Inadequate and inaccessible handwashing facilities (Moderate Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" }, - { "description": "103144: Unapproved or unmaintained equipment or utensils (Low Risk)" }, - { "description": "103161: Low risk vermin infestation (Low Risk)" }, - { "description": "103105: Improper cooling methods (High Risk)" } - ] - }, - { - "business": { - "business_id": "68701", - "name": "Grindz", - "address": "832 Clement St ", - "city": "SF", - "postal_code": "94118", - "latitude": "37.7828", - "longitude": "-122.468", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "467498", - "application_date": "Mar 16 2012 12:00AM", - "owner_name": "Ono Grindz, LLC", - "owner_address": "1055 Granada St.\n Vallejo\n CA\n 94591" - }, - "Score": "100", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "69186", - "name": "Premier Catering & Events, Inc.", - "address": "1255 22nd St ", - "city": "S.F.", - "postal_code": "94107", - "latitude": "", - "longitude": "", - "phone_number": "14155530288", - "TaxCode": "H30", - "business_certificate": "362812", - "application_date": "Apr 30 2012 12:00AM", - "owner_name": "Premier Catering & Events, Inc.", - "owner_address": "298 Magellan Ave.\n SF\n CA\n 94116" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "2689", - "name": "THE BLUE PLATE", - "address": "3218 MISSION St ", - "city": "SF", - "postal_code": "94110", - "latitude": "37.7452", - "longitude": "-122.42", - "phone_number": "14155286777", - "TaxCode": "H25", - "business_certificate": "325714", - "application_date": "", - "owner_name": "BLUE ENCLAVE LLC", - "owner_address": "3218 MISSION ST.\n SAN FRANCISCO\n CA\n 94110" - }, - "Score": "98", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103143: Inadequate warewashing facilities or equipment (Low Risk)" } ] - }, - { - "business": { - "business_id": "15806", - "name": "Vital Tea Leaf", - "address": "1044 Grant Ave", - "city": "San Francisco", - "postal_code": "94133", - "latitude": "37.7966", - "longitude": "-122.407", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "388301", - "application_date": "May 23 2005 12:00AM", - "owner_name": "Minh H. Duong", - "owner_address": "1044 Grant Ave\n San Francisco\n CA\n 94133" - }, - "Score": "98", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103157: Food safety certificate or food handler card not available (Low Risk)" } ] - }, - { - "business": { - "business_id": "21807", - "name": "The Front Porch", - "address": "65 29th St A", - "city": "SF", - "postal_code": "94110", - "latitude": "37.7439", - "longitude": "-122.422", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "398500", - "application_date": "Jun 7 2006 12:00AM", - "owner_name": "Front Porch Restaurant LLC", - "owner_address": "65A 29th Street\n SF\n CA\n 94110" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "69041", - "name": "Washington Cafe", - "address": "826 Washington St ", - "city": "San Francisco", - "postal_code": "94108", - "latitude": "37.7951", - "longitude": "-122.407", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "468548", - "application_date": "Apr 18 2012 12:00AM", - "owner_name": "Washington Caf�, Inc. / Louis Kuang", - "owner_address": "333 Third Avenue\n Daly City\n CA\n 94014" - }, - "Score": "65", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" }, - { "description": "103156: Permit license or inspection report not posted (Low Risk)" }, - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" }, - { "description": "103133: Foods not protected from contamination (Moderate Risk)" }, - { "description": "103114: High risk vermin infestation (High Risk)" }, - { "description": "103109: Unclean or unsanitary food contact surfaces (High Risk)" }, - { "description": "103108: Contaminated or adulterated food (High Risk)" }, - { "description": "103144: Unapproved or unmaintained equipment or utensils (Low Risk)" } - ] - }, - { - "business": { - "business_id": "6018", - "name": "3RD BAPTIST FELLOWSHIP HALL", - "address": "1399 MCALLISTER St ", - "city": "SAN FRANCISCO", - "postal_code": "94115", - "latitude": "37.7782", - "longitude": "-122.435", - "phone_number": "", - "TaxCode": "AA", - "business_certificate": "", - "application_date": "", - "owner_name": "3RD BAPTIST FELLOWSHIP HALL", - "owner_address": "1399 MC ALLISTER STREET\n SAN FRANCISCO\n CA\n 94115" - }, - "Score": "98", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103143: Inadequate warewashing facilities or equipment (Low Risk)" } ] - }, - { - "business": { - "business_id": "23702", - "name": "Doo Bu Restaurant", - "address": "1723 Buchanan St", - "city": "San Francisco", - "postal_code": "94115", - "latitude": "37.786", - "longitude": "-122.43", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "205289", - "application_date": "Jun 30 2006 12:00AM", - "owner_name": "Jung Un Hong", - "owner_address": "1723 Buchanan St\n San Francisco\n CA\n 94115" - }, - "Score": "90", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" }, - { "description": "103131: Moderate risk vermin infestation (Moderate Risk)" } - ] - }, - { - "business": { - "business_id": "23702", - "name": "Doo Bu Restaurant", - "address": "1723 Buchanan St", - "city": "San Francisco", - "postal_code": "94115", - "latitude": "37.786", - "longitude": "-122.43", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "205289", - "application_date": "Jun 30 2006 12:00AM", - "owner_name": "Jung Un Hong", - "owner_address": "1723 Buchanan St\n San Francisco\n CA\n 94115" - }, - "Score": "", - "date": "20130225", - "type": "Complaint", - "violations": [ - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" }, - { "description": "103131: Moderate risk vermin infestation (Moderate Risk)" } - ] - }, - { - "business": { - "business_id": "34244", - "name": "Vital Tea Leaf Inc", - "address": "905 Grant Ave ", - "city": "San Francisco", - "postal_code": "94108", - "latitude": "37.7953", - "longitude": "-122.407", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "417300", - "application_date": "May 17 2007 12:00AM", - "owner_name": "Vital Tea Leaf Inc Minh Hong Duong", - "owner_address": "905 Grant Ave\n San Francisco\n CA\n 94108" - }, - "Score": "100", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "63503", - "name": "Mason Street Deli and Market", - "address": "39 MASON", - "city": "SF", - "postal_code": "94102", - "latitude": "37.7841", - "longitude": "-122.409", - "phone_number": "14155624312", - "TaxCode": "H07", - "business_certificate": "450988", - "application_date": "Jun 28 2010 12:00AM", - "owner_name": "Hifdallah Ahmed Homran and Arkan Ali Hassan Alwasyi", - "owner_address": "39 Mason Street\n San Francisco\n CA\n 94102" - }, - "Score": "100", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "1427", - "name": "MIFUNE DON", - "address": "22 PEACE PLAZA 275", - "city": "SF", - "postal_code": "94115", - "latitude": "37.785", - "longitude": "-122.43", - "phone_number": "14155341993", - "TaxCode": "H24", - "business_certificate": "314685", - "application_date": "", - "owner_name": "Osaka Eiko, Inc", - "owner_address": "22 PEACE PLAZA, #275\n SF\n CA\n 94115" - }, - "Score": "86", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103102: Unclean hands or improper use of gloves (High Risk)" }, - { "description": "103114: High risk vermin infestation (High Risk)" } - ] - }, - { - "business": { - "business_id": "3331", - "name": "HARVEY'S", - "address": "500 CASTRO St ", - "city": "SAN FRANCISCO", - "postal_code": "94114", - "latitude": "37.7607", - "longitude": "-122.435", - "phone_number": "14155434278", - "TaxCode": "H26", - "business_certificate": "945743", - "application_date": "", - "owner_name": "LANGLEY ENTERPRISES", - "owner_address": "500 CASTRO ST\n SF\n CA\n 94114" - }, - "Score": "83", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103149: Wiping cloths not clean or properly stored or inadequate sanitizer (Low Risk)" }, - { "description": "103147: Inadequate ventilation or lighting (Low Risk)" }, - { "description": "103131: Moderate risk vermin infestation (Moderate Risk)" }, - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" }, - { "description": "103103: High risk food holding temperature (High Risk)" } - ] - }, - { - "business": { - "business_id": "5907", - "name": "LILIENTHAL ELEMENTARY SCHOOL", - "address": "3630 DIVISADERO St ", - "city": "S.F.", - "postal_code": "94118", - "latitude": "37.8035", - "longitude": "-122.444", - "phone_number": "14155743516", - "TaxCode": "H91", - "business_certificate": "", - "application_date": "", - "owner_name": "San Francisco Unified School District", - "owner_address": "3630 Divisadero Street\n San Francisco\n CA\n 94123" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "65050", - "name": "House of Banquet", - "address": "939 Clement St ", - "city": "San Francisco", - "postal_code": "94118", - "latitude": "37.7827", - "longitude": "-122.469", - "phone_number": "14155780203", - "TaxCode": "H26", - "business_certificate": "455173", - "application_date": "Jan 11 2011 12:00AM", - "owner_name": "LYS Trading, Inc. / Yong Shong", - "owner_address": "939 Clement Street\n San Francisco\n CA\n 94118" - }, - "Score": "87", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103149: Wiping cloths not clean or properly stored or inadequate sanitizer (Low Risk)" }, - { "description": "103103: High risk food holding temperature (High Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" } - ] - }, - { - "business": { - "business_id": "71534", - "name": "7 Eleven #2366-36039A", - "address": "644 Mission St ", - "city": "San Francisco", - "postal_code": "94105", - "latitude": "", - "longitude": "", - "phone_number": "14155610309", - "TaxCode": "H07", - "business_certificate": "475970", - "application_date": "Jan 24 2013 12:00AM", - "owner_name": "Bhrighu Muniwar, Inc.", - "owner_address": "538 Pyramid Ct.\n Fairfield\n CA\n 94534" - }, - "Score": "100", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "71769", - "name": "Lucky One Mini Mart", - "address": "1010 Market St ", - "city": "San Francisco", - "postal_code": "94102", - "latitude": "37.7819", - "longitude": "-122.411", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "473612", - "application_date": "Feb 15 2013 12:00AM", - "owner_name": "Charles Ahn", - "owner_address": "1010 Market Street\n San Francisco\n CA\n 94102" - }, - "Score": "100", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "5884", - "name": "Gordon J Lau Elementary School", - "address": "950 Clay St", - "city": "San Francisco", - "postal_code": "94108", - "latitude": "37.794", - "longitude": "-122.409", - "phone_number": "", - "TaxCode": "H91", - "business_certificate": "", - "application_date": "", - "owner_name": "S.F. Unified School District", - "owner_address": "950 Clay St\n San Francisco\n CA\n 94108" - }, - "Score": "96", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" } ] - }, - { - "business": { - "business_id": "69635", - "name": "Sophie's Crepes", - "address": "1581 Webster St 275", - "city": "S.F.", - "postal_code": "94115", - "latitude": "", - "longitude": "", - "phone_number": "", - "TaxCode": "H28", - "business_certificate": "470456", - "application_date": "Jul 5 2012 12:00AM", - "owner_name": "Sophie's Crepes, LLC", - "owner_address": "1581 Webster St., #275\n SF\n CA\n 94115" - }, - "Score": "", - "date": "20130225", - "type": "Non-inspection site visit", - "violations": [ ] - }, - { - "business": { - "business_id": "3633", - "name": "Magnolia Pub & Brewery", - "address": "1398 Haight St", - "city": "San Francisco", - "postal_code": "94117", - "latitude": "37.7703", - "longitude": "-122.445", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "306120", - "application_date": "", - "owner_name": "McLean Breweries, Inc", - "owner_address": "1398 Haight St\n San Francisco\n CA\n 94117" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "5905", - "name": "MARINA MIDDLE SCHOOL", - "address": "3500 FILLMORE St ", - "city": "S.F.", - "postal_code": "94123", - "latitude": "37.8018", - "longitude": "-122.436", - "phone_number": "14155743495", - "TaxCode": "H91", - "business_certificate": "", - "application_date": "", - "owner_name": "San Francisco Unified School district", - "owner_address": "3500 Fillmore Street\n San Francisco\n CA\n 94123" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "19277", - "name": "Farmer Brown", - "address": "25 Mason St ", - "city": "San Francisco", - "postal_code": "94102", - "latitude": "37.7837", - "longitude": "-122.409", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "397481", - "application_date": "Apr 20 2006 12:00AM", - "owner_name": "Black Rabbit Hospitality", - "owner_address": "25 Mason St\n San Francisco\n CA\n 94102" - }, - "Score": "100", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "1775", - "name": "Sapporo-Ya", - "address": "1581 WEBSTER St ", - "city": "SF", - "postal_code": "94115", - "latitude": "37.7852", - "longitude": "-122.431", - "phone_number": "14155567400", - "TaxCode": "H25", - "business_certificate": "98407", - "application_date": "", - "owner_name": "TURNER SHIBATA INC.", - "owner_address": "1581 WEBSTER ST\n SF\n CA\n 94115" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "61135", - "name": "Old Mandarin Islamic Restaurant", - "address": "3132 VICENTE St ", - "city": "SF", - "postal_code": "94116", - "latitude": "37.7382", - "longitude": "-122.501", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "442429", - "application_date": "Sep 14 2009 12:00AM", - "owner_name": "Shuai Yang", - "owner_address": "3132 Vicente St.\n SF\n CA\n 94116" - }, - "Score": "84", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103144: Unapproved or unmaintained equipment or utensils (Low Risk)" }, - { "description": "103132: Improper thawing methods (Moderate Risk)" }, - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" }, - { "description": "103142: Unclean nonfood contact surfaces (Low Risk)" }, - { "description": "103139: Improper food storage (Low Risk)" }, - { "description": "103124: Inadequately cleaned or sanitized food contact surfaces (Moderate Risk)" } - ] - }, - { - "business": { - "business_id": "765", - "name": "APERTO RESTAURANT", - "address": "1434 18th St ", - "city": "S.F.", - "postal_code": "94107", - "latitude": "37.7626", - "longitude": "-122.397", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "921479", - "application_date": "Apr 16 1992 12:00AM", - "owner_name": "APERTO INC.", - "owner_address": "245 LAWTON ST.\n S.F.\n CA\n 94122" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "3373", - "name": "New Delhi Restaurant", - "address": "160 Ellis St ", - "city": "San Francisco", - "postal_code": "94102", - "latitude": "37.7855", - "longitude": "-122.409", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "173398", - "application_date": "", - "owner_name": "New Delhi Restaurant", - "owner_address": "160 Ellis St\n San Francisco\n CA\n 94102" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "3373", - "name": "New Delhi Restaurant", - "address": "160 Ellis St ", - "city": "San Francisco", - "postal_code": "94102", - "latitude": "37.7855", - "longitude": "-122.409", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "173398", - "application_date": "", - "owner_name": "New Delhi Restaurant", - "owner_address": "160 Ellis St\n San Francisco\n CA\n 94102" - }, - "Score": "", - "date": "20130225", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "33891", - "name": "Harlot", - "address": "46 Minna St ", - "city": "San Francisco", - "postal_code": "94105", - "latitude": "37.7887", - "longitude": "-122.398", - "phone_number": "", - "TaxCode": "H87", - "business_certificate": "404920", - "application_date": "Apr 26 2007 12:00AM", - "owner_name": "Vespertine, Inc Robert Nunez", - "owner_address": "46 Minna Street\n San Francisco\n CA\n 94105" - }, - "Score": "87", - "date": "20130225", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103119: Inadequate and inaccessible handwashing facilities (Moderate Risk)" }, - { "description": "103162: Other low risk violation (Low Risk)" }, - { "description": "103109: Unclean or unsanitary food contact surfaces (High Risk)" } - ] - }, - { - "business": { - "business_id": "28828", - "name": "The Sandwich Shop", - "address": "635 19th St ", - "city": "S.F.", - "postal_code": "94107", - "latitude": "37.7617", - "longitude": "-122.389", - "phone_number": "", - "TaxCode": "H28", - "business_certificate": "402498", - "application_date": "Oct 11 2006 12:00AM", - "owner_name": "Hye Hwa Cho", - "owner_address": "635 19th Street\n SF\n CA\n 94107" - }, - "Score": "88", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103124: Inadequately cleaned or sanitized food contact surfaces (Moderate Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" }, - { "description": "103119: Inadequate and inaccessible handwashing facilities (Moderate Risk)" } - ] - }, - { - "business": { - "business_id": "60933", - "name": "Mayes", - "address": "1233 Polk St ", - "city": "San Francisco", - "postal_code": "94109", - "latitude": "37.7883", - "longitude": "-122.42", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "441175", - "application_date": "Aug 27 2009 12:00AM", - "owner_name": "1233 Polk Street LLC Fred Duncan", - "owner_address": "1233 Polk St\n San Francisco\n CA\n 94109" - }, - "Score": "85", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103114: High risk vermin infestation (High Risk)" }, - { "description": "103119: Inadequate and inaccessible handwashing facilities (Moderate Risk)" }, - { "description": "103150: Improper or defective plumbing (Low Risk)" }, - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" } - ] - }, - { - "business": { - "business_id": "62688", - "name": "Auntie April's", - "address": "4618 03rd St ", - "city": "SF", - "postal_code": "94124", - "latitude": "37.7363", - "longitude": "-122.39", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "428950", - "application_date": "Apr 2 2010 12:00AM", - "owner_name": "April Spears", - "owner_address": "4618 3rd Street\n SF\n CA\n 94124" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "3373", - "name": "New Delhi Restaurant", - "address": "160 Ellis St ", - "city": "San Francisco", - "postal_code": "94102", - "latitude": "37.7855", - "longitude": "-122.409", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "173398", - "application_date": "", - "owner_name": "New Delhi Restaurant", - "owner_address": "160 Ellis St\n San Francisco\n CA\n 94102" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "2756", - "name": "STARBUCKS", - "address": "3595 CALIFORNIA St ", - "city": "SF", - "postal_code": "94118", - "latitude": "37.7864", - "longitude": "-122.453", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "911744", - "application_date": "Oct 30 1995 12:00AM", - "owner_name": "STARBUCKS COFFEE CO, INC.", - "owner_address": "3595 CALIFORNIA ST\n SF\n CA\n 94118" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ { "description": "103157: Food safety certificate or food handler card not available (Low Risk)" } ] - }, - { - "business": { - "business_id": "7489", - "name": "GAS & SHOP", - "address": "599 South Van Ness Ave ", - "city": "S.F.", - "postal_code": "94110", - "latitude": "37.7638", - "longitude": "-122.417", - "phone_number": "14155866835", - "TaxCode": "H10", - "business_certificate": "922993", - "application_date": "Aug 13 1993 12:00AM", - "owner_name": "SELF SERVE PETROLEUM, INC.", - "owner_address": "2240 SKY FARM\n HILLSBOROUGH\n CA\n 94010" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "19094", - "name": "Rigolo", - "address": "3465 California St ", - "city": "SF", - "postal_code": "94118", - "latitude": "37.7867", - "longitude": "-122.451", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "373994", - "application_date": "Mar 1 2004 12:00AM", - "owner_name": "Laurel Village Bakery LLC", - "owner_address": "2132 Pine Street\n SF\n CA\n 94118" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "65051", - "name": "Mission Cheese", - "address": "736 Valencia St ", - "city": "SF", - "postal_code": "94110", - "latitude": "37.7611", - "longitude": "-122.422", - "phone_number": "14155558667", - "TaxCode": "H24", - "business_certificate": "455293", - "application_date": "Jan 11 2011 12:00AM", - "owner_name": "Mission Cheese LLC", - "owner_address": "363 Hermann St.\n SF\n CA\n 94117" - }, - "Score": "", - "date": "20130226", - "type": "Non-inspection site visit", - "violations": [ ] - }, - { - "business": { - "business_id": "3802", - "name": "THE GREAT AMERICAN MUSIC HALL", - "address": "859 O'FARRELL St ", - "city": "SAN FRANCISCO", - "postal_code": "94109", - "latitude": "37.785", - "longitude": "-122.419", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "358240", - "application_date": "", - "owner_name": "MUSIC HALL, LLC", - "owner_address": "859 O'FARRELL St\n SAN FRANCISCO\n CA\n 94109" - }, - "Score": "94", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103161: Low risk vermin infestation (Low Risk)" }, - { "description": "103142: Unclean nonfood contact surfaces (Low Risk)" }, - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" } - ] - }, - { - "business": { - "business_id": "475", - "name": "Mara's", - "address": "503 Columbus Ave ", - "city": "San Francisco", - "postal_code": "94133", - "latitude": "37.7995", - "longitude": "-122.409", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "147903", - "application_date": "", - "owner_name": "Filomena & Gennaro Torrano", - "owner_address": "503 Columbus Ave\n San Francisco\n CA\n 94133" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "1193", - "name": "PEET'S COFFEES & TEAS", - "address": "3419 CALIFORNIA St ", - "city": "SAN FRANCISCO", - "postal_code": "94118", - "latitude": "37.7868", - "longitude": "-122.45", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "196325", - "application_date": "", - "owner_name": "Peet's Coffee", - "owner_address": "3419 California\n SF\n CA\n 94118" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "2548", - "name": "NOAH'S NEW YORK BAGELS #2120", - "address": "3519 CALIFORNIA St ", - "city": "SF", - "postal_code": "94118", - "latitude": "37.7866", - "longitude": "-122.452", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "353177", - "application_date": "Mar 15 2002 12:00AM", - "owner_name": "EINSTEIN AND NOAH CORP.", - "owner_address": "555 Zang St., Suite 300\n Lakewood\n CO\n 80228" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "6913", - "name": "XTRA OIL CORP", - "address": "3750 03rd St ", - "city": "S.F.", - "postal_code": "94124", - "latitude": "37.7432", - "longitude": "-122.388", - "phone_number": "", - "TaxCode": "H07", - "business_certificate": "144903", - "application_date": "May 17 1993 12:00AM", - "owner_name": "EDWARD T SIMAS", - "owner_address": "2307 PACIFIC AVE.\n ALAMEDA\n CA\n 94501" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "4923", - "name": "TED'S MARKET", - "address": "1530 HOWARD St ", - "city": "S.F.", - "postal_code": "94103", - "latitude": "37.7727", - "longitude": "-122.416", - "phone_number": "", - "TaxCode": "H28", - "business_certificate": "321004", - "application_date": "", - "owner_name": "ZOUZOUNIS DAVID P", - "owner_address": "1530 HOWARD ST\n SAN FRANCISCO\n CA\n 94103" - }, - "Score": "100", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ ] - }, - { - "business": { - "business_id": "36020", - "name": "Cadillac Market", - "address": "499 Eddy St", - "city": "San Francisco", - "postal_code": "94109", - "latitude": "37.7835", - "longitude": "-122.416", - "phone_number": "", - "TaxCode": "H07", - "business_certificate": "379395", - "application_date": "Oct 29 2007 12:00AM", - "owner_name": "Irfan Barkat Ali", - "owner_address": "499 Eddy St\n San Francisco\n CA\n 94109" - }, - "Score": "98", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103143: Inadequate warewashing facilities or equipment (Low Risk)" } ] - }, - { - "business": { - "business_id": "3935", - "name": "Le Colonial, SF, LLC", - "address": "20 Cosmo Pl ", - "city": "San Francisco", - "postal_code": "94109", - "latitude": "37.7881", - "longitude": "-122.412", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "317110", - "application_date": "", - "owner_name": "Le Colonial, SF, LLC", - "owner_address": "20 Cosmo PL\n San Francisco\n CA\n 94109" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "1259", - "name": "KD'S GROG & GROCERY", - "address": "2416 MARKET St ", - "city": "SF", - "postal_code": "94114", - "latitude": "37.7626", - "longitude": "-122.435", - "phone_number": "14155863736", - "TaxCode": "H24", - "business_certificate": "198913", - "application_date": "", - "owner_name": "KIM, SUNG U.", - "owner_address": "2416 MARKET ST.\n SAN FRANCISCO\n CA\n 94114" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "65396", - "name": "Carmelina's Cafe", - "address": "1855 Folsom St ", - "city": "SF", - "postal_code": "94103", - "latitude": "37.7677", - "longitude": "-122.415", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "181141", - "application_date": "Mar 2 2011 12:00AM", - "owner_name": "Carmelina Narciso", - "owner_address": "1855 Folsom Street\n SF\n CA\n 94103" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "477", - "name": "Il Pollaio", - "address": "555 Columbus Ave ", - "city": "San Francisco", - "postal_code": "94133", - "latitude": "37.8", - "longitude": "-122.41", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "147775", - "application_date": "", - "owner_name": "Antonio & Jose Castellucci", - "owner_address": "555 Columbus Ave\n San Francisco\n CA\n 94133" - }, - "Score": "90", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103154: Unclean or degraded floors walls or ceilings (Low Risk)" }, - { "description": "103124: Inadequately cleaned or sanitized food contact surfaces (Moderate Risk)" }, - { "description": "103120: Moderate risk food holding temperature (Moderate Risk)" } - ] - }, - { - "business": { - "business_id": "1199", - "name": "PANCHO'S", - "address": "3440 GEARY Blvd ", - "city": "SAN FRANCISCO", - "postal_code": "94118", - "latitude": "37.7815", - "longitude": "-122.456", - "phone_number": "", - "TaxCode": "H24", - "business_certificate": "318180", - "application_date": "Jun 17 1998 12:00AM", - "owner_name": "CAL. SOL. CONCEPTS LLC", - "owner_address": "3440 GEARY Blvd\n S.F.\n CA\n 94118" - }, - "Score": "", - "date": "20130226", - "type": "Reinspection/Followup", - "violations": [ ] - }, - { - "business": { - "business_id": "1549", - "name": "Cafe Bellini", - "address": "235 Powell St ", - "city": "San Francisco", - "postal_code": "94102", - "latitude": "37.787", - "longitude": "-122.408", - "phone_number": "", - "TaxCode": "H25", - "business_certificate": "384285", - "application_date": "", - "owner_name": "SEGA FOOD GROUP INC", - "owner_address": "\t235 POWELL ST\n SAN FRANCISCO\n CA\n 94102" - }, - "Score": "96", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ { "description": "103124: Inadequately cleaned or sanitized food contact surfaces (Moderate Risk)" } ] - }, - { - "business": { - "business_id": "4257", - "name": "DELUXE", - "address": "1509 HAIGHT St ", - "city": "SF", - "postal_code": "94117", - "latitude": "37.7699", - "longitude": "-122.447", - "phone_number": "14155556949", - "TaxCode": "H25", - "business_certificate": "", - "application_date": "", - "owner_name": "JAY JOHNSON", - "owner_address": "1509 HAIGHT STREET\n SAN FRANCISCO\n CA\n 94117" - }, - "Score": "", - "date": "20130226", - "type": "Administrative or Document Review", - "violations": [ ] - }, - { - "business": { - "business_id": "68775", - "name": "Dandelion Chocolate", - "address": "740 Valencia St ", - "city": "San Francisco", - "postal_code": "94110", - "latitude": "37.761", - "longitude": "-122.422", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "466375", - "application_date": "Mar 21 2012 12:00AM", - "owner_name": "Cocoa Co., Inc.", - "owner_address": "334 Santana Row #335\n San Jose\n Ca\n 95128" - }, - "Score": "", - "date": "20130226", - "type": "Complaint", - "violations": [ ] - }, - { - "business": { - "business_id": "68037", - "name": "Focaccia Market Bakery", - "address": "185 BERRY St #1430", - "city": "S.F.", - "postal_code": "94107", - "latitude": "37.776", - "longitude": "-122.393", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "455335", - "application_date": "Dec 1 2011 12:00AM", - "owner_name": "Focaccia Market Bakery, Inc.", - "owner_address": "119 Sacramento St.\n SF\n CA\n 94111" - }, - "Score": "91", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103109: Unclean or unsanitary food contact surfaces (High Risk)" }, - { "description": "103150: Improper or defective plumbing (Low Risk)" } - ] - }, - { - "business": { - "business_id": "69945", - "name": "Linda's Catering", - "address": "290 Townsend St ", - "city": "SF", - "postal_code": "94107", - "latitude": "", - "longitude": "", - "phone_number": "", - "TaxCode": "H79", - "business_certificate": "470527", - "application_date": "Aug 15 2012 12:00AM", - "owner_name": "Hong Yan Fang-Li", - "owner_address": "3623 Kirkham St.\n SF\n CA\n 94122" - }, - "Score": "96", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103142: Unclean nonfood contact surfaces (Low Risk)" }, - { "description": "103147: Inadequate ventilation or lighting (Low Risk)" } - ] - }, - { - "business": { - "business_id": "70920", - "name": "Stock in Trade", - "address": "2036 LOMBARD St ", - "city": "SF", - "postal_code": "94123", - "latitude": "", - "longitude": "", - "phone_number": "", - "TaxCode": "H26", - "business_certificate": "470757", - "application_date": "Nov 9 2012 12:00AM", - "owner_name": "4 Item Combo Plate / Tod Alsman, Chris Fogarty", - "owner_address": "2036 Lombard Street\n San Francisco\n CA\n 94123" - }, - "Score": "90", - "date": "20130226", - "type": "Routine - Unscheduled", - "violations": [ - { "description": "103149: Wiping cloths not clean or properly stored or inadequate sanitizer (Low Risk)" }, - { "description": "103139: Improper food storage (Low Risk)" }, - { "description": "103145: Improper storage of equipment utensils or linens (Low Risk)" }, - { "description": "103150: Improper or defective plumbing (Low Risk)" }, - { "description": "103142: Unclean nonfood contact surfaces (Low Risk)" } - ] - } - ] -} \ No newline at end of file From bd1bedd56331594fd5ab092a22f02228393ac397 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:36:43 -0700 Subject: [PATCH 078/248] Delete large_dflow.json --- .../dataprep/data/large_dflow.json | 4415 ----------------- 1 file changed, 4415 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/large_dflow.json diff --git a/how-to-use-azureml/work-with-data/dataprep/data/large_dflow.json b/how-to-use-azureml/work-with-data/dataprep/data/large_dflow.json deleted file mode 100644 index 8cff8b07..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/large_dflow.json +++ /dev/null @@ -1,4415 +0,0 @@ -{ - "blocks": [ - { - "id": "36442a99-73bd-4307-985e-11e3a496abdd", - "type": "Microsoft.DPrep.ReferenceAndInverseSplitBlock", - "arguments": { - "sourceFilter": { - "referenceType": 2, - "referenceContainerPath": null, - "referencedStep": { - "referencedStepId": "00000000-0000-0000-0000-000000000000", - "fallback": 1 - }, - "anonymousSteps": [ - { - "id": "509f625c-951b-410c-b2a5-ba7d77ac5805", - "description": { - "localDataProperties": [], - "blockGroup": 0, - "supportedTargets": [ - 4 - ], - "supportedFieldTypes": null, - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Creates a reference to an existing activity object.", - "type": "Microsoft.DPrep.ReferenceBlock", - "propertyDescriptions": [ - { - "name": "reference", - "type": 21, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The reference activity." - } - ], - "dataEffectDetails": { - "dataEffect": 1 - } - }, - "type": "Microsoft.DPrep.ReferenceBlock", - "dataEffectDetails": { - "dataEffect": 1 - }, - "propertyDescriptions": [ - { - "name": "reference", - "type": 21, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The reference activity." - } - ], - "arguments": { - "reference": { - "referenceType": 1, - "referenceContainerPath": "dataset://35f16a99-532a-4a47-9e93-00305f6c40f2/maytest/mayworkspace/train_raw", - "referencedStep": null, - "anonymousSteps": null - } - } - }, - { - "id": "49f2a633-169b-412c-8565-4cfe9a3e10bd", - "description": { - "localDataProperties": [], - "blockGroup": 5, - "supportedTargets": [ - 1 - ], - "supportedFieldTypes": null, - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Takes a random sample of the available records.", - "type": "Microsoft.DPrep.TakeSampleBlock", - "propertyDescriptions": [ - { - "name": "probability", - "type": 3, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 1.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0.1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The probability of a record being included in the sample." - }, - { - "name": "seed", - "type": 2, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 4294967295.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The seed to use for the random generator." - } - ], - "dataEffectDetails": { - "dataEffect": 6 - } - }, - "type": "Microsoft.DPrep.TakeSampleBlock", - "dataEffectDetails": { - "dataEffect": 6 - }, - "propertyDescriptions": [ - { - "name": "probability", - "type": 3, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 1.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0.1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The probability of a record being included in the sample." - }, - { - "name": "seed", - "type": 2, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 4294967295.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The seed to use for the random generator." - } - ], - "arguments": { - "probability": 0.2, - "seed": 3923004803 - } - }, - { - "id": "8eb37cb0-0e45-4230-a69e-70a9b481d9a3", - "description": { - "localDataProperties": [], - "blockGroup": 6, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": null, - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Drops the specified columns.", - "type": "Microsoft.DPrep.DropColumnsBlock", - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - } - ], - "dataEffectDetails": { - "columnsRemovedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 4 - } - }, - "type": "Microsoft.DPrep.DropColumnsBlock", - "dataEffectDetails": { - "columnsRemovedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 4 - }, - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - } - ], - "arguments": { - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "AVProductStatesIdentifier", - "AVProductsEnabled", - "AutoSampleOptIn", - "AvSigVersion", - "AvSigVersionEncoded", - "Census_ActivationChannel", - "Census_ChassisTypeName", - "Census_DeviceFamily", - "Census_GenuineStateName", - "Census_InternalBatteryNumberOfCharges", - "Census_InternalBatteryType", - "Census_InternalPrimaryDiagonalDisplaySizeInInches", - "Census_InternalPrimaryDisplayResolutionHorizontal", - "Census_InternalPrimaryDisplayResolutionVertical", - "Census_IsFlightingInternal", - "Census_IsFlightsDisabled", - "Census_IsPortableOperatingSystem", - "Census_IsSecureBootEnabled", - "Census_IsWIMBootEnabled", - "Census_MDC2FormFactor", - "Census_OSArchitecture", - "Census_OSBranch", - "Census_OSBuildNumber", - "Census_OSBuildRevision", - "Census_OSEdition", - "Census_OSInstallTypeName", - "Census_OSSkuName", - "Census_OSVersion", - "Census_OSWUAutoUpdateOptionsName", - "Census_PowerPlatformRoleName", - "Census_PrimaryDiskTypeName", - "Census_ProcessorClass", - "Census_SystemVolumeTotalCapacity", - "Census_ThresholdOptIn", - "CountryIdentifier", - "DefaultBrowsersIdentifier", - "Firewall", - "HasTpm", - "IsBeta", - "MachineIdentifier", - "OrganizationIdentifier", - "OsBuild", - "OsBuildLab", - "OsPlatformSubRelease", - "OsSuite", - "OsVer", - "Platform", - "Processor", - "ProductName", - "PuaMode", - "SMode", - "SkuEdition", - "SmartScreen", - "UacLuaenable" - ] - } - } - } - }, - { - "id": "164eb9f4-bc3b-485e-8d76-55a5fcd1b2a8", - "description": { - "localDataProperties": [], - "blockGroup": 7, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": [ - 0, - 2 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Converts the values in the specified columns to floating point numbers.", - "type": "Microsoft.DPrep.ToNumberBlock", - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "decimalPoint", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "DecimalMark", - "enumType": "Microsoft.DPrep.Engine.Blocks.ToNumberBlock+DecimalMark, Microsoft.DPrep.Engine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The symbol to use as the decimal mark." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.ToNumberBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "decimalPoint", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "DecimalMark", - "enumType": "Microsoft.DPrep.Engine.Blocks.ToNumberBlock+DecimalMark, Microsoft.DPrep.Engine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The symbol to use as the decimal mark." - } - ], - "arguments": { - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "AVProductsInstalled", - "Census_ProcessorCoreCount", - "Census_PrimaryDiskTotalCapacity", - "Census_TotalPhysicalRAM" - ] - } - }, - "decimalPoint": 0 - } - }, - { - "id": "7e2a6355-de6b-4d03-b869-9d6097eb2012", - "description": { - "localDataProperties": [], - "blockGroup": 3, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": [ - 1, - 4, - 3, - 2, - 0, - 5 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Replaces values in the specified columns with nulls. You can choose to use the default list, supply your own, or both.", - "type": "Microsoft.DPrep.ReplaceNaBlock", - "propertyDescriptions": [ - { - "name": "useDefaultNaList", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Use the default list and replace 'null', 'NaN', 'NA', and 'N/A' with null." - }, - { - "name": "useEmptyStringAsNa", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Replace empty strings with null." - }, - { - "name": "useNanAsNa", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Replace NaNs with Null." - }, - { - "name": "customNaList", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Provide a comma separated list of values to replace with null." - }, - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.ReplaceNaBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "useDefaultNaList", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Use the default list and replace 'null', 'NaN', 'NA', and 'N/A' with null." - }, - { - "name": "useEmptyStringAsNa", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Replace empty strings with null." - }, - { - "name": "useNanAsNa", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Replace NaNs with Null." - }, - { - "name": "customNaList", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Provide a comma separated list of values to replace with null." - }, - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - } - ], - "arguments": { - "columns": { - "type": 1, - "details": { - "ignoreCase": false, - "term": ".*", - "useRegex": true, - "matchWholeWord": false, - "invert": false - } - }, - "useDefaultNaList": true, - "useEmptyStringAsNa": true, - "useNanAsNa": true - } - }, - { - "id": "9d738031-d05e-41ab-a45c-3a6859155198", - "description": { - "localDataProperties": [], - "blockGroup": 4, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": null, - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": false, - "documentation": "Replaces null values in a column with the specified replacement value.", - "type": "Microsoft.DPrep.FillNullsBlock", - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "replaceWithType", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "FieldType", - "enumType": "Microsoft.DPrep.Engine.FieldType, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1, - 3, - 4, - 6, - 10 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The replacement value type." - }, - { - "name": "stringReplaceWith", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 0 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "doubleReplaceWith", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 3 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "datetimeReplaceWith", - "type": 20, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 4 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "booleanReplaceWith", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "ReplaceBoolValues", - "enumType": "Microsoft.DPrep.Engine.ReplaceBoolValues, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 1 - }, - "aggregate": null - }, - "documentation": "The replacement value." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.FillNullsBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "replaceWithType", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "FieldType", - "enumType": "Microsoft.DPrep.Engine.FieldType, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1, - 3, - 4, - 6, - 10 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The replacement value type." - }, - { - "name": "stringReplaceWith", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 0 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "doubleReplaceWith", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 3 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "datetimeReplaceWith", - "type": 20, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 4 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "booleanReplaceWith", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "ReplaceBoolValues", - "enumType": "Microsoft.DPrep.Engine.ReplaceBoolValues, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 1 - }, - "aggregate": null - }, - "documentation": "The replacement value." - } - ], - "arguments": { - "booleanReplaceWith": 1, - "columns": { - "type": 1, - "details": { - "ignoreCase": false, - "term": ".*", - "useRegex": true, - "matchWholeWord": false, - "invert": false - } - }, - "doubleReplaceWith": 0.0, - "replaceWithType": 3 - } - }, - { - "id": "bd960a6b-0959-4062-91aa-ba072f0e8058", - "description": { - "localDataProperties": [], - "blockGroup": 4, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": null, - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": false, - "documentation": "Replaces values in a column that match the specified search value.", - "type": "Microsoft.DPrep.ReplaceBlock", - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "valueToFindType", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "FieldType", - "enumType": "Microsoft.DPrep.Engine.FieldType, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1, - 3, - 4, - 6, - 7, - 10 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to find type." - }, - { - "name": "stringValueToFind", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 0 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "doubleValueToFind", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 3 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "datetimeValueToFind", - "type": 20, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 4 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "booleanValueToFind", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "ReplaceBoolValues", - "enumType": "Microsoft.DPrep.Engine.ReplaceBoolValues, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 1 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "replaceWithType", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "FieldType", - "enumType": "Microsoft.DPrep.Engine.FieldType, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1, - 3, - 4, - 6, - 7, - 10 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The replacement value type." - }, - { - "name": "stringReplaceWith", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 0 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "doubleReplaceWith", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 3 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "datetimeReplaceWith", - "type": 20, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 4 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "booleanReplaceWith", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "ReplaceBoolValues", - "enumType": "Microsoft.DPrep.Engine.ReplaceBoolValues, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 1 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "errorReplaceWith", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 6 - }, - "aggregate": null - }, - "documentation": "The replacement error code." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.ReplaceBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "valueToFindType", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "FieldType", - "enumType": "Microsoft.DPrep.Engine.FieldType, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1, - 3, - 4, - 6, - 7, - 10 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to find type." - }, - { - "name": "stringValueToFind", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 0 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "doubleValueToFind", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 3 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "datetimeValueToFind", - "type": 20, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 4 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "booleanValueToFind", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "ReplaceBoolValues", - "enumType": "Microsoft.DPrep.Engine.ReplaceBoolValues, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "valueToFindType" - ] - }, - "comparison": 0, - "value": 1 - }, - "aggregate": null - }, - "documentation": "The value to find." - }, - { - "name": "replaceWithType", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "FieldType", - "enumType": "Microsoft.DPrep.Engine.FieldType, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1, - 3, - 4, - 6, - 7, - 10 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The replacement value type." - }, - { - "name": "stringReplaceWith", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 0 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "doubleReplaceWith", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 3 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "datetimeReplaceWith", - "type": 20, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 4 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "booleanReplaceWith", - "type": 6, - "multipleValues": false, - "domain": { - "type": 1, - "details": { - "enumName": "ReplaceBoolValues", - "enumType": "Microsoft.DPrep.Engine.ReplaceBoolValues, Microsoft.DPrep.EngineAPI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null", - "enumValues": [ - 0, - 1 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 1 - }, - "aggregate": null - }, - "documentation": "The replacement value." - }, - { - "name": "errorReplaceWith", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": { - "condition": { - "property": { - "propertyPath": [ - "replaceWithType" - ] - }, - "comparison": 0, - "value": 6 - }, - "aggregate": null - }, - "documentation": "The replacement error code." - } - ], - "arguments": { - "booleanReplaceWith": 1, - "booleanValueToFind": 1, - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "Census_PrimaryDiskTotalCapacity" - ] - } - }, - "doubleReplaceWith": 0.0, - "replaceWithType": 3, - "valueToFindType": 6 - } - }, - { - "id": "6397d50d-e60f-4121-9970-9596cfa945b1", - "description": { - "localDataProperties": [], - "blockGroup": 3, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": [ - 3, - 2 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": false, - "documentation": "Clips values so that all values are between the lower and upper boundaries.", - "type": "Microsoft.DPrep.ClipBlock", - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "lower", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "All values lower than this value will be set to this value." - }, - { - "name": "upper", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "All values higher than this value will be set to this value." - }, - { - "name": "useValues", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "If true, values outside boundaries will be set to the boundary values. If false, those values will be set to null." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.ClipBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - }, - { - "name": "lower", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "All values lower than this value will be set to this value." - }, - { - "name": "upper", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "All values higher than this value will be set to this value." - }, - { - "name": "useValues", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": true, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "If true, values outside boundaries will be set to the boundary values. If false, those values will be set to null." - } - ], - "arguments": { - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "Census_TotalPhysicalRAM" - ] - } - }, - "lower": 0.0, - "upper": 16384.0, - "useValues": true - } - }, - { - "id": "2b897794-0e8c-4c05-9147-730ec9e10770", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 0 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Creates a new column where values in the source column have been replaced with encoded labels.", - "type": "Microsoft.DPrep.LabelEncoderBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "newColumnId", - "type": 1, - "multipleValues": false, - "domain": { - "type": 3, - "details": null - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The name of the newly added column that contains the encoded labels." - }, - { - "name": "encodedLabelsMap", - "type": 7, - "multipleValues": true, - "domain": { - "type": 0, - "details": [ - { - "name": "valueToLabel", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to label." - }, - { - "name": "encodedLabel", - "type": 2, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The encoded label." - } - ] - }, - "multiValueDetails": { - "isOrdered": false - }, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The values to label and their encoded labels." - } - ], - "dataEffectDetails": { - "columnsAddedProperties": [ - { - "propertyPath": [ - "newColumnId" - ] - } - ], - "dataEffect": 3 - } - }, - "type": "Microsoft.DPrep.LabelEncoderBlock", - "dataEffectDetails": { - "columnsAddedProperties": [ - { - "propertyPath": [ - "newColumnId" - ] - } - ], - "dataEffect": 3 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "newColumnId", - "type": 1, - "multipleValues": false, - "domain": { - "type": 3, - "details": null - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The name of the newly added column that contains the encoded labels." - }, - { - "name": "encodedLabelsMap", - "type": 7, - "multipleValues": true, - "domain": { - "type": 0, - "details": [ - { - "name": "valueToLabel", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to label." - }, - { - "name": "encodedLabel", - "type": 2, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The encoded label." - } - ] - }, - "multiValueDetails": { - "isOrdered": false - }, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The values to label and their encoded labels." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "EngineVersion" - } - }, - "encodedLabelsMap": [ - { - "encodedLabel": 0, - "valueToLabel": "1.1.15200.1" - }, - { - "encodedLabel": 1, - "valueToLabel": "1.1.15100.1" - }, - { - "encodedLabel": 2, - "valueToLabel": "1.1.15000.2" - }, - { - "encodedLabel": 3, - "valueToLabel": "1.1.14901.4" - }, - { - "encodedLabel": 4, - "valueToLabel": "1.1.14600.4" - }, - { - "encodedLabel": 5, - "valueToLabel": "1.1.14800.3" - }, - { - "encodedLabel": 6, - "valueToLabel": "1.1.15300.6" - }, - { - "encodedLabel": 7, - "valueToLabel": "1.1.14104.0" - }, - { - "encodedLabel": 8, - "valueToLabel": "1.1.13504.0" - }, - { - "encodedLabel": 9, - "valueToLabel": "1.1.15300.5" - }, - { - "encodedLabel": 10, - "valueToLabel": "1.1.14700.5" - }, - { - "encodedLabel": 11, - "valueToLabel": "1.1.14500.5" - }, - { - "encodedLabel": 12, - "valueToLabel": "1.1.14405.2" - }, - { - "encodedLabel": 13, - "valueToLabel": "1.1.14306.0" - }, - { - "encodedLabel": 14, - "valueToLabel": "1.1.14202.0" - }, - { - "encodedLabel": 15, - "valueToLabel": "1.1.14003.0" - }, - { - "encodedLabel": 16, - "valueToLabel": "1.1.13903.0" - }, - { - "encodedLabel": 17, - "valueToLabel": "1.1.13303.0" - }, - { - "encodedLabel": 18, - "valueToLabel": "1.1.13804.0" - }, - { - "encodedLabel": 19, - "valueToLabel": "1.1.13407.0" - }, - { - "encodedLabel": 20, - "valueToLabel": "1.1.13601.0" - }, - { - "encodedLabel": 21, - "valueToLabel": "1.1.12902.0" - }, - { - "encodedLabel": 22, - "valueToLabel": "1.1.13701.0" - }, - { - "encodedLabel": 23, - "valueToLabel": "1.1.14305.0" - }, - { - "encodedLabel": 24, - "valueToLabel": "1.1.13704.0" - }, - { - "encodedLabel": 25, - "valueToLabel": "1.1.13202.0" - }, - { - "encodedLabel": 26, - "valueToLabel": "1.1.13103.0" - }, - { - "encodedLabel": 27, - "valueToLabel": "1.1.13000.0" - }, - { - "encodedLabel": 28, - "valueToLabel": "1.1.12805.0" - }, - { - "encodedLabel": 29, - "valueToLabel": "1.1.15000.1" - }, - { - "encodedLabel": 30, - "valueToLabel": "1.1.14901.3" - }, - { - "encodedLabel": 31, - "valueToLabel": "1.1.14700.3" - }, - { - "encodedLabel": 32, - "valueToLabel": "1.1.14700.4" - }, - { - "encodedLabel": 33, - "valueToLabel": "1.1.14800.1" - }, - { - "encodedLabel": 34, - "valueToLabel": "1.1.14303.0" - }, - { - "encodedLabel": 35, - "valueToLabel": "1.1.14500.2" - }, - { - "encodedLabel": 36, - "valueToLabel": "1.1.14201.0" - }, - { - "encodedLabel": 37, - "valueToLabel": "1.1.14103.0" - }, - { - "encodedLabel": 38, - "valueToLabel": "1.1.12101.0" - }, - { - "encodedLabel": 39, - "valueToLabel": "1.1.11701.0" - }, - { - "encodedLabel": 40, - "valueToLabel": "1.1.13902.0" - }, - { - "encodedLabel": 41, - "valueToLabel": "1.1.14102.0" - }, - { - "encodedLabel": 42, - "valueToLabel": "1.1.13803.0" - }, - { - "encodedLabel": 43, - "valueToLabel": "1.1.13802.0" - }, - { - "encodedLabel": 44, - "valueToLabel": "1.1.14001.0" - }, - { - "encodedLabel": 45, - "valueToLabel": "1.1.14002.0" - }, - { - "encodedLabel": 46, - "valueToLabel": "1.1.13406.0" - }, - { - "encodedLabel": 47, - "valueToLabel": "1.1.12400.0" - }, - { - "encodedLabel": 48, - "valueToLabel": "1.1.12603.0" - }, - { - "encodedLabel": 49, - "valueToLabel": "1.1.12804.0" - }, - { - "encodedLabel": 50, - "valueToLabel": "1.1.9700.0" - }, - { - "encodedLabel": 51, - "valueToLabel": "1.1.12505.0" - }, - { - "encodedLabel": 52, - "valueToLabel": "1.1.13102.0" - }, - { - "encodedLabel": 53, - "valueToLabel": "1.1.10302.0" - }, - { - "encodedLabel": 54, - "valueToLabel": "1.1.12706.0" - }, - { - "encodedLabel": 55, - "valueToLabel": "1.1.12205.0" - }, - { - "encodedLabel": 56, - "valueToLabel": "1.1.12300.0" - }, - { - "encodedLabel": 57, - "valueToLabel": "1.1.11602.0" - }, - { - "encodedLabel": 58, - "valueToLabel": "1.1.12002.0" - }, - { - "encodedLabel": 59, - "valueToLabel": "1.1.11804.0" - }, - { - "encodedLabel": 60, - "valueToLabel": "1.1.10401.0" - } - ], - "newColumnId": "EngineVersionEncoded" - } - }, - { - "id": "3e931e3f-efbb-4896-9ffe-e69d7c298618", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 0 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Creates a new column where values in the source column have been replaced with encoded labels.", - "type": "Microsoft.DPrep.LabelEncoderBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "newColumnId", - "type": 1, - "multipleValues": false, - "domain": { - "type": 3, - "details": null - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The name of the newly added column that contains the encoded labels." - }, - { - "name": "encodedLabelsMap", - "type": 7, - "multipleValues": true, - "domain": { - "type": 0, - "details": [ - { - "name": "valueToLabel", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to label." - }, - { - "name": "encodedLabel", - "type": 2, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The encoded label." - } - ] - }, - "multiValueDetails": { - "isOrdered": false - }, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The values to label and their encoded labels." - } - ], - "dataEffectDetails": { - "columnsAddedProperties": [ - { - "propertyPath": [ - "newColumnId" - ] - } - ], - "dataEffect": 3 - } - }, - "type": "Microsoft.DPrep.LabelEncoderBlock", - "dataEffectDetails": { - "columnsAddedProperties": [ - { - "propertyPath": [ - "newColumnId" - ] - } - ], - "dataEffect": 3 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "newColumnId", - "type": 1, - "multipleValues": false, - "domain": { - "type": 3, - "details": null - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The name of the newly added column that contains the encoded labels." - }, - { - "name": "encodedLabelsMap", - "type": 7, - "multipleValues": true, - "domain": { - "type": 0, - "details": [ - { - "name": "valueToLabel", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to label." - }, - { - "name": "encodedLabel", - "type": 2, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The encoded label." - } - ] - }, - "multiValueDetails": { - "isOrdered": false - }, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The values to label and their encoded labels." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "AppVersion" - } - }, - "encodedLabelsMap": [ - { - "encodedLabel": 0, - "valueToLabel": "4.18.1807.18075" - }, - { - "encodedLabel": 1, - "valueToLabel": "4.18.1806.18062" - }, - { - "encodedLabel": 2, - "valueToLabel": "4.12.16299.15" - }, - { - "encodedLabel": 3, - "valueToLabel": "4.10.209.0" - }, - { - "encodedLabel": 4, - "valueToLabel": "4.13.17134.1" - }, - { - "encodedLabel": 5, - "valueToLabel": "4.16.17656.18052" - }, - { - "encodedLabel": 6, - "valueToLabel": "4.13.17134.228" - }, - { - "encodedLabel": 7, - "valueToLabel": "4.8.10240.17443" - }, - { - "encodedLabel": 8, - "valueToLabel": "4.9.10586.1106" - }, - { - "encodedLabel": 9, - "valueToLabel": "4.14.17639.18041" - }, - { - "encodedLabel": 10, - "valueToLabel": "4.12.17007.18022" - }, - { - "encodedLabel": 11, - "valueToLabel": "4.9.10586.0" - }, - { - "encodedLabel": 12, - "valueToLabel": "4.11.15063.447" - }, - { - "encodedLabel": 13, - "valueToLabel": "4.10.14393.0" - }, - { - "encodedLabel": 14, - "valueToLabel": "4.11.15063.0" - }, - { - "encodedLabel": 15, - "valueToLabel": "4.12.17007.18011" - }, - { - "encodedLabel": 16, - "valueToLabel": "4.14.17613.18039" - }, - { - "encodedLabel": 17, - "valueToLabel": "4.8.10240.16384" - }, - { - "encodedLabel": 18, - "valueToLabel": "4.10.14393.1794" - }, - { - "encodedLabel": 19, - "valueToLabel": "4.11.15063.1155" - }, - { - "encodedLabel": 20, - "valueToLabel": "4.9.10586.494" - }, - { - "encodedLabel": 21, - "valueToLabel": "4.10.14393.1198" - }, - { - "encodedLabel": 22, - "valueToLabel": "4.9.10586.672" - }, - { - "encodedLabel": 23, - "valueToLabel": "4.13.17134.191" - }, - { - "encodedLabel": 24, - "valueToLabel": "4.10.14393.1613" - }, - { - "encodedLabel": 25, - "valueToLabel": "4.18.1809.2" - }, - { - "encodedLabel": 26, - "valueToLabel": "4.12.17007.17123" - }, - { - "encodedLabel": 27, - "valueToLabel": "4.9.10586.589" - }, - { - "encodedLabel": 28, - "valueToLabel": "4.13.17134.112" - }, - { - "encodedLabel": 29, - "valueToLabel": "4.9.10586.1045" - }, - { - "encodedLabel": 30, - "valueToLabel": "4.10.14393.1593" - }, - { - "encodedLabel": 31, - "valueToLabel": "4.10.14393.953" - }, - { - "encodedLabel": 32, - "valueToLabel": "4.10.14393.1066" - }, - { - "encodedLabel": 33, - "valueToLabel": "4.9.218.0" - }, - { - "encodedLabel": 34, - "valueToLabel": "4.9.10586.916" - }, - { - "encodedLabel": 35, - "valueToLabel": "4.9.10586.965" - }, - { - "encodedLabel": 36, - "valueToLabel": "4.8.10240.17946" - }, - { - "encodedLabel": 37, - "valueToLabel": "4.9.10586.962" - }, - { - "encodedLabel": 38, - "valueToLabel": "4.9.10586.839" - }, - { - "encodedLabel": 39, - "valueToLabel": "4.9.10586.873" - }, - { - "encodedLabel": 40, - "valueToLabel": "4.8.207.0" - }, - { - "encodedLabel": 41, - "valueToLabel": "4.5.218.0" - }, - { - "encodedLabel": 42, - "valueToLabel": "4.8.10240.17202" - }, - { - "encodedLabel": 43, - "valueToLabel": "4.8.10240.17914" - }, - { - "encodedLabel": 44, - "valueToLabel": "4.8.10240.17889" - }, - { - "encodedLabel": 45, - "valueToLabel": "4.13.17134.319" - }, - { - "encodedLabel": 46, - "valueToLabel": "4.8.204.0" - }, - { - "encodedLabel": 47, - "valueToLabel": "4.8.10240.17394" - }, - { - "encodedLabel": 48, - "valueToLabel": "4.8.10240.17071" - }, - { - "encodedLabel": 49, - "valueToLabel": "4.10.205.0" - }, - { - "encodedLabel": 50, - "valueToLabel": "4.8.10240.17146" - }, - { - "encodedLabel": 51, - "valueToLabel": "4.8.10240.17319" - }, - { - "encodedLabel": 52, - "valueToLabel": "4.14.17613.18038" - }, - { - "encodedLabel": 53, - "valueToLabel": "4.10.14393.2273" - }, - { - "encodedLabel": 54, - "valueToLabel": "4.6.305.0" - }, - { - "encodedLabel": 55, - "valueToLabel": "4.8.10240.17354" - }, - { - "encodedLabel": 56, - "valueToLabel": "4.7.205.0" - }, - { - "encodedLabel": 57, - "valueToLabel": "4.8.10240.17861" - }, - { - "encodedLabel": 58, - "valueToLabel": "4.8.10240.17797" - }, - { - "encodedLabel": 59, - "valueToLabel": "4.8.10240.17184" - }, - { - "encodedLabel": 60, - "valueToLabel": "4.18.1807.20063" - }, - { - "encodedLabel": 61, - "valueToLabel": "4.4.304.0" - }, - { - "encodedLabel": 62, - "valueToLabel": "4.8.10240.17918" - }, - { - "encodedLabel": 63, - "valueToLabel": "4.8.10240.17113" - }, - { - "encodedLabel": 64, - "valueToLabel": "4.8.10240.17609" - }, - { - "encodedLabel": 65, - "valueToLabel": "4.10.14393.2248" - }, - { - "encodedLabel": 66, - "valueToLabel": "4.5.216.0" - }, - { - "encodedLabel": 67, - "valueToLabel": "4.10.14393.726" - }, - { - "encodedLabel": 68, - "valueToLabel": "4.18.1807.18072" - }, - { - "encodedLabel": 69, - "valueToLabel": "4.17.17685.20082" - }, - { - "encodedLabel": 70, - "valueToLabel": "4.17.17672.1000" - }, - { - "encodedLabel": 71, - "valueToLabel": "4.8.10240.17770" - }, - { - "encodedLabel": 72, - "valueToLabel": "4.17.17686.1003" - }, - { - "encodedLabel": 73, - "valueToLabel": "4.11.15063.994" - }, - { - "encodedLabel": 74, - "valueToLabel": "4.10.14393.1532" - }, - { - "encodedLabel": 75, - "valueToLabel": "4.18.1806.20021" - }, - { - "encodedLabel": 76, - "valueToLabel": "4.10.14393.2457" - }, - { - "encodedLabel": 77, - "valueToLabel": "4.17.17682.1000" - }, - { - "encodedLabel": 78, - "valueToLabel": "4.17.17677.1000" - }, - { - "encodedLabel": 79, - "valueToLabel": "4.15.17666.1000" - }, - { - "encodedLabel": 80, - "valueToLabel": "4.9.10586.456" - }, - { - "encodedLabel": 81, - "valueToLabel": "4.13.17639.1000" - }, - { - "encodedLabel": 82, - "valueToLabel": "4.16.17656.18051" - }, - { - "encodedLabel": 83, - "valueToLabel": "4.9.10586.1177" - }, - { - "encodedLabel": 84, - "valueToLabel": "4.15.17650.1001" - }, - { - "encodedLabel": 85, - "valueToLabel": "4.4.306.0" - }, - { - "encodedLabel": 86, - "valueToLabel": "4.18.1806.20033" - }, - { - "encodedLabel": 87, - "valueToLabel": "4.12.17007.17121" - }, - { - "encodedLabel": 88, - "valueToLabel": "4.15.17661.1001" - }, - { - "encodedLabel": 89, - "valueToLabel": "4.8.10240.17533" - }, - { - "encodedLabel": 90, - "valueToLabel": "4.11.15063.1154" - }, - { - "encodedLabel": 91, - "valueToLabel": "4.8.10240.17446" - }, - { - "encodedLabel": 92, - "valueToLabel": "4.18.1806.20015" - }, - { - "encodedLabel": 93, - "valueToLabel": "4.18.1807.18070" - }, - { - "encodedLabel": 94, - "valueToLabel": "4.13.17634.1000" - }, - { - "encodedLabel": 95, - "valueToLabel": "4.13.17627.1000" - }, - { - "encodedLabel": 96, - "valueToLabel": "4.9.219.0" - }, - { - "encodedLabel": 97, - "valueToLabel": "4.12.17007.18021" - }, - { - "encodedLabel": 98, - "valueToLabel": "4.12.16299.0" - }, - { - "encodedLabel": 99, - "valueToLabel": "4.7.209.0" - }, - { - "encodedLabel": 100, - "valueToLabel": "4.15.17655.1000" - } - ], - "newColumnId": "AppVersionEncoded" - } - }, - { - "id": "e64c7560-76e1-4fb1-b558-491bf6166cfc", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 0 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Creates a new column where values in the source column have been replaced with encoded labels.", - "type": "Microsoft.DPrep.LabelEncoderBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "newColumnId", - "type": 1, - "multipleValues": false, - "domain": { - "type": 3, - "details": null - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The name of the newly added column that contains the encoded labels." - }, - { - "name": "encodedLabelsMap", - "type": 7, - "multipleValues": true, - "domain": { - "type": 0, - "details": [ - { - "name": "valueToLabel", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to label." - }, - { - "name": "encodedLabel", - "type": 2, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The encoded label." - } - ] - }, - "multiValueDetails": { - "isOrdered": false - }, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The values to label and their encoded labels." - } - ], - "dataEffectDetails": { - "columnsAddedProperties": [ - { - "propertyPath": [ - "newColumnId" - ] - } - ], - "dataEffect": 3 - } - }, - "type": "Microsoft.DPrep.LabelEncoderBlock", - "dataEffectDetails": { - "columnsAddedProperties": [ - { - "propertyPath": [ - "newColumnId" - ] - } - ], - "dataEffect": 3 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "newColumnId", - "type": 1, - "multipleValues": false, - "domain": { - "type": 3, - "details": null - }, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The name of the newly added column that contains the encoded labels." - }, - { - "name": "encodedLabelsMap", - "type": 7, - "multipleValues": true, - "domain": { - "type": 0, - "details": [ - { - "name": "valueToLabel", - "type": 1, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The value to label." - }, - { - "name": "encodedLabel", - "type": 2, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The encoded label." - } - ] - }, - "multiValueDetails": { - "isOrdered": false - }, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 2, - "condition": null, - "documentation": "The values to label and their encoded labels." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "Census_FlightRing" - } - }, - "encodedLabelsMap": [ - { - "encodedLabel": 0, - "valueToLabel": "Retail" - }, - { - "encodedLabel": 1, - "valueToLabel": "NOT_SET" - }, - { - "encodedLabel": 2, - "valueToLabel": "Unknown" - }, - { - "encodedLabel": 3, - "valueToLabel": "WIS" - }, - { - "encodedLabel": 4, - "valueToLabel": "RP" - }, - { - "encodedLabel": 5, - "valueToLabel": "WIF" - }, - { - "encodedLabel": 6, - "valueToLabel": "Disabled" - }, - { - "encodedLabel": 7, - "valueToLabel": "Canary" - } - ], - "newColumnId": "Census_FlightRingEncoded" - } - }, - { - "id": "a76a615b-8b6b-4292-8a57-6f26b96c54c6", - "description": { - "localDataProperties": [], - "blockGroup": 6, - "supportedTargets": [ - 2, - 3 - ], - "supportedFieldTypes": null, - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Drops the specified columns.", - "type": "Microsoft.DPrep.DropColumnsBlock", - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - } - ], - "dataEffectDetails": { - "columnsRemovedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 4 - } - }, - "type": "Microsoft.DPrep.DropColumnsBlock", - "dataEffectDetails": { - "columnsRemovedProperties": [ - { - "propertyPath": [ - "columns" - ] - } - ], - "dataEffect": 4 - }, - "propertyDescriptions": [ - { - "name": "columns", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 1, - "fieldTypes": [] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source columns." - } - ], - "arguments": { - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "EngineVersion", - "AppVersion", - "Census_FlightRing" - ] - } - } - } - }, - { - "id": "4a4443a7-caa6-445c-b9bc-1932765da295", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 3, - 2 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Scale values in the column to lie within the specified range (default=[0, 1]).", - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "AVProductsInstalled" - } - }, - "dataMax": 6.0, - "dataMin": 0.0, - "rangeMax": 1.0, - "rangeMin": 0.0 - } - }, - { - "id": "28dc01c4-036c-4562-9d9a-7ebee4c5f396", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 3, - 2 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Scale values in the column to lie within the specified range (default=[0, 1]).", - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "Census_ProcessorCoreCount" - } - }, - "dataMax": 112.0, - "dataMin": 0.0, - "rangeMax": 1.0, - "rangeMin": 0.0 - } - }, - { - "id": "826a8b62-1f79-4261-bbc6-0608393c65fb", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 3, - 2 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Scale values in the column to lie within the specified range (default=[0, 1]).", - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "Census_PrimaryDiskTotalCapacity" - } - }, - "dataMax": 47687668.0, - "dataMin": 0.0, - "rangeMax": 1.0, - "rangeMin": 0.0 - } - }, - { - "id": "245c19bb-97be-4879-bfd7-fd6e6e408d4c", - "description": { - "localDataProperties": [], - "blockGroup": 13, - "supportedTargets": [ - 2 - ], - "supportedFieldTypes": [ - 3, - 2 - ], - "supportedMessages": [], - "requiresInitialization": false, - "allowDefaultAdd": true, - "documentation": "Scale values in the column to lie within the specified range (default=[0, 1]).", - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - } - }, - "type": "Microsoft.DPrep.MinMaxScalerBlock", - "dataEffectDetails": { - "columnsTransformedProperties": [ - { - "propertyPath": [ - "column" - ] - } - ], - "dataEffect": 5 - }, - "propertyDescriptions": [ - { - "name": "column", - "type": 5, - "multipleValues": false, - "domain": { - "type": 12, - "details": { - "selectorDomainType": 0, - "fieldTypes": [ - 3, - 2 - ] - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 0, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 1, - "condition": null, - "documentation": "The source column." - }, - { - "name": "rangeMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the minimum value after scaling. Default is 0." - }, - { - "name": "rangeMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "This will be the maximum value after scaling. Default is 1." - }, - { - "name": "dataMin", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Minimum value of the data. If none is provided, a scan of the data will be performed to find the minimum." - }, - { - "name": "dataMax", - "type": 3, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "Maximum value of the data. If none is provided, a scan of the data will be performed to find the maximum." - } - ], - "arguments": { - "column": { - "type": 2, - "details": { - "selectedColumn": "Census_TotalPhysicalRAM" - } - }, - "dataMax": 16384.0, - "dataMin": 0.0, - "rangeMax": 1.0, - "rangeMin": 0.0 - } - }, - { - "id": "b5bded0f-6aad-41a4-b556-d08b2da1c71b", - "description": { - "type": "Microsoft.DPrep.RandomSplitStepDescription", - "propertyDescriptions": [ - { - "name": "probability", - "type": 3, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 1.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0.1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The probability of a record being included in the sample." - }, - { - "name": "seed", - "type": 2, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 4294967295.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The seed to use for the random generator." - }, - { - "name": "invert", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": false, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": null - } - ], - "dataEffectDetails": { - "dataEffect": 6 - } - }, - "type": "Microsoft.DPrep.RandomSplitStepDescription", - "dataEffectDetails": { - "dataEffect": 6 - }, - "propertyDescriptions": [ - { - "name": "probability", - "type": 3, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 1.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": 0.1, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The probability of a record being included in the sample." - }, - { - "name": "seed", - "type": 2, - "multipleValues": false, - "domain": { - "type": 4, - "details": { - "min": 0.0, - "max": 4294967295.0 - } - }, - "multiValueDetails": null, - "isRequired": true, - "origin": 1, - "defaultValue": null, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": "The seed to use for the random generator." - }, - { - "name": "invert", - "type": 4, - "multipleValues": false, - "domain": null, - "multiValueDetails": null, - "isRequired": false, - "origin": 1, - "defaultValue": false, - "initializeFromProperty": null, - "telemetryStrategy": 0, - "condition": null, - "documentation": null - } - ], - "arguments": { - "invert": false, - "probability": 0.3, - "seed": 3285947786 - } - } - ] - } - }, - "localData": {}, - "isEnabled": true, - "name": null, - "annotation": null - }, - { - "id": "84f3b9c2-96a1-4f9c-b906-558f2842cee8", - "type": "Microsoft.DPrep.DropColumnsBlock", - "arguments": { - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "HasDetections" - ] - } - } - }, - "localData": {}, - "isEnabled": true, - "name": null, - "annotation": null - } - ], - "inspectors": [] -} \ No newline at end of file From 9c6f1e2571d5180988cf5780d71673ced38d9a92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:36:52 -0700 Subject: [PATCH 079/248] Delete map_func.py --- how-to-use-azureml/work-with-data/dataprep/data/map_func.py | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/map_func.py diff --git a/how-to-use-azureml/work-with-data/dataprep/data/map_func.py b/how-to-use-azureml/work-with-data/dataprep/data/map_func.py deleted file mode 100644 index 7b97a8d1..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/map_func.py +++ /dev/null @@ -1,4 +0,0 @@ -def transform(df, index): - df['Latitude'].fillna('0', inplace=True) - df['Longitude'].fillna('0', inplace=True) - return df From 5e3c592d4b881db1438a4827071faf5d7bc315e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:37:02 -0700 Subject: [PATCH 080/248] Delete median_income.csv --- .../dataprep/data/median_income.csv | 251 ------------------ 1 file changed, 251 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/median_income.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/median_income.csv b/how-to-use-azureml/work-with-data/dataprep/data/median_income.csv deleted file mode 100644 index 742c4007..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/median_income.csv +++ /dev/null @@ -1,251 +0,0 @@ -median_income -4.4896 -2.1029 -2.3889 -3.707 -6.4788 -4.4074 -5.2907 -1.5156 -8.4411 -4.4085 -2.1439 -2.8971 -6.1008 -3.5258 -2.7694 -2.2356 -1.9509 -4.0905 -3.6726 -3.1696 -2.5389 -3.0319 -4.6779 -2.9076 -2.8616 -1.4722 -5.6413 -2.1167 -4.7308 -4.8173 -2.3438 -1.7333 -1.4429 -2.3253 -2.4022 -3.4048 -6.6073 -4.1080000000000005 -4.2829 -1.5727 -2.5211 -4.2679 -4.7328 -4.7069 -2.465 -5.0267 -2.8043 -2.4053 -1.2176 -2.39 -3.6364 -6.0162 -2.8088 -3.3984 -4.5 -3.9079 -4.9618 -2.9344 -2.4283 -3.7388 -1.6021 -2.3352 -4.0982 -1.9531 -3.2386 -5.1169 -4.692 -4.0 -6.4238 -3.7375 -2.8233 -2.8009 -3.767 -3.6761 -5.0282 -3.5296 -5.215 -4.0125 -9.4667 -5.9062 -3.9864 -2.0734 -2.875 -3.3611 -2.8214 -0.9946 -4.5446 -4.6908 -9.3198 -1.2826 -2.4943 -10.1882 -4.6731 -4.375 -2.8173 -2.0903 -2.725 -2.8547 -2.25 -1.9444 -1.7167 -1.9342 -4.9524 -3.65 -3.0856 -3.2396 -2.9324 -3.495 -1.9818 -4.6964 -3.925 -3.625 -2.9688 -4.0417 -9.7956 -3.8732 -2.6998 -2.006 -4.25 -3.1839999999999997 -5.9658 -2.628 -2.5057 -5.155 -4.6 -4.6681 -5.5942 -5.1104 -3.0759 -3.5757 -3.6845 -6.4667 -5.273 -3.0635 -11.2866 -4.0444 -5.2541 -5.5791 -4.5375 -9.8144 -6.7257 -4.1442 -4.0313 -2.2791 -4.1679 -3.2852 -3.2768 -5.021 -4.875 -4.419 -3.3272 -4.2386 -1.245 -5.152 -4.8125 -2.1638 -7.1621 -1.5372 -10.0481 -3.3869 -5.4591 -4.4318 -6.5044 -4.2865 -3.0461 -11.3283 -2.7026 -3.016 -3.0943 -3.225 -6.187 -3.8158 -3.0147 -15.0 -3.1364 -2.9 -5.5941 -3.4028 -6.0062 -8.3792 -3.8036 -2.0926 -6.7703 -4.2569 -4.744 -9.7037 -5.1292 -2.3148 -3.3021 -1.95 -3.025 -2.6523 -1.2188 -5.827999999999999 -3.1587 -2.45 -2.3851 -2.1221 -3.5313 -3.4821 -7.8252 -5.1878 -3.7459 -6.0097 -2.3194 -4.2061 -2.267 -2.2109 -2.7589 -2.6553 -6.3325 -5.7233 -4.337 -3.9667 -5.8623 -1.6806 -3.5851 -2.9716 -3.9 -2.7431 -3.3621 -1.9464 -7.3518 -4.775 -3.5968 -6.221 -10.0968 -1.9483 -2.0469 -3.725 -3.675 -1.8529 -1.7159 -1.7386 -3.6687 -3.4671 -4.8233 -4.3036 -1.6488 -2.9453 -5.0096 -3.175 -4.2031 -3.1667 -5.7204 -3.375 -6.5483 -4.2206 -2.6631 -3.5363 From adaa55675e6974c0e54f1688db655c4b48e86f0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:37:12 -0700 Subject: [PATCH 081/248] Delete median_income_transformed.csv --- .../data/median_income_transformed.csv | 251 ------------------ 1 file changed, 251 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/median_income_transformed.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/median_income_transformed.csv b/how-to-use-azureml/work-with-data/dataprep/data/median_income_transformed.csv deleted file mode 100644 index c6ca88e4..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/median_income_transformed.csv +++ /dev/null @@ -1,251 +0,0 @@ -median_income,median_income_uniform,median_income_normal -4.4896,0.688927015969381,0.4928112398942898 -2.1029,0.16242159563866576,-0.9845540061415601 -2.3889,0.20433495515563627,-0.8262365643809355 -3.707,0.5167832475474021,0.04208177981426486 -6.4788,0.7918154943685715,0.8127367410844715 -4.4074,0.6708459812590735,0.44225037403262457 -5.2907,0.7627885954411082,0.71530142355699 -1.5156,0.07635265842077493,-1.430040774223022 -8.4411,0.8397571522806675,0.9934602851577232 -4.4085,0.6710879415775812,0.44291928632820865 -2.1439,0.16843015417081886,-0.960387338010023 -2.8971,0.3028380993334766,-0.5162551753422808 -6.1008,0.7825804402531089,0.780937730437047 -3.5258,0.47180713824983866,-0.07072794893657437 -2.7694,0.2685175231133089,-0.6173027607303029 -2.2356,0.18186880825370766,-0.9082661605741446 -1.9509,0.14014596400726886,-1.0796637810446446 -4.0905,0.6011394131362455,0.25629744014575906 -3.6726,0.5092164884958867,0.023104366055624576 -3.1696,0.3760750376263169,-0.31580558952782856 -2.5389,0.2263174863708306,-0.7510293827903433 -3.0319,0.3390668673403568,-0.4150111583096138 -4.6779,0.7303462232193919,0.61386044030116 -2.9076,0.3056600731025585,-0.5081899386067169 -2.8616,0.29329714039991395,-0.5437779548183906 -1.4722,0.0699923793891787,-1.475847787309027 -5.6413,0.7713542302900003,0.7433140959507171 -2.1167,0.1644439885104636,-0.9763562034967139 -4.7308,0.7419823149003563,0.6494688564486208 -4.8173,0.7512227895726955,0.6783427156995535 -2.3438,0.19772554077026783,-0.8497733992585795 -1.7333,0.10825663872442697,-1.235852818864947 -1.4429,0.06569845829181076,-1.5086161030849279 -2.3253,0.19501436192039387,-0.8595652745311925 -2.4022,0.20628407292338352,-0.8193826233304142 -3.4048,0.4392872500537518,-0.15277653846062797 -6.6073,0.7949549241406269,0.8237349930522744 -4.1080000000000005,0.6049887818397783,0.2662814785234653 -4.2829,0.6434604724825127,0.3677239840415221 -1.5727,0.0847206753033589,-1.3740010688161062 -2.5211,0.22370889266662755,-0.7597270013437459 -4.2679,0.6401610135937705,0.35888920867930674 -4.7328,0.7424222427521885,0.6508311116191982 -4.7069,0.7367251770709602,0.6332817852325006 -2.465,0.21548742599214485,-0.7875245686101101 -5.0267,0.7563387163763406,0.6945735910123612 -2.8043,0.277897226402924,-0.5890996132954226 -2.4053,0.20673837856849753,-0.8177906162820535 -1.2176,0.03268069640658888,-1.8427782558151542 -2.39,0.2044961603845477,-0.8256682268514074 -3.6364,0.501253794377722,0.0031428016114447123 -6.0162,0.780513547189172,0.7739287859106961 -2.8088,0.2791066437325306,-0.5854974399696314 -3.3984,0.4375671898516448,-0.15714017005326586 -4.5,0.6912146407989088,0.4992962189785684 -3.9079,0.5609740002639567,0.1534391166508579 -4.9618,0.7547531211062519,0.6895237101278 -2.9344,0.3128628251988819,-0.4877518079508566 -2.4283,0.21010903335482733,-0.8060429810797759 -3.7388,0.5237781003915357,0.05963819257139614 -1.6021,0.089029251421537,-1.346757015256811 -2.3352,0.1964652089805967,-0.8543151087700283 -4.0982,0.6028331353658,0.26068721102120757 -1.9531,0.1404683744650917,-1.078217399304828 -3.2386,0.39461943668028376,-0.26729910818310126 -5.1169,0.7585424250568029,0.7016216442421952 -4.692,0.7334477145748096,0.6232738623769376 -4.0,0.5812326778408341,0.20504797284322906 -6.4238,0.7904717695634116,0.8080592738489488 -3.7375,0.5234921472878448,0.05892015392758171 -2.8233,0.28300365512792947,-0.5739416160725967 -2.8009,0.2769834444205546,-0.5918263314054893 -3.767,0.5299810831023711,0.07522231004048434 -3.6761,0.5099863622365932,0.025034712726592745 -5.0282,0.7563753634164814,0.6946905154674345 -3.5296,0.47282842399483976,-0.06816178418735802 -5.215,0.7609391414820063,0.70932677431432 -4.0125,0.583982226914786,0.21209163422132077 -9.4667,0.8648139551928855,1.1022060793492992 -5.9062,0.7778260975788522,0.7648719390554228 -3.9864,0.5782411684483745,0.19739599549652825 -2.0734,0.15809836449967754,-1.0023041289181829 -2.875,0.29689851644807563,-0.5333417486766315 -3.3611,0.4275424639862395,-0.1826343528680402 -2.8214,0.2824930122554289,-0.5754514381784691 -0.9946,9.999999977795539e-08,-5.199337582605575 -4.5446,0.7010250318947692,0.5273508961812362 -4.6908,0.7331837578637103,0.6224705781821348 -9.3198,0.861224988395104,1.085839464021226 -1.2826,0.04220645993317308,-1.725635992615424 -2.4943,0.2197813470895128,-0.7729318836756727 -10.1882,0.8824411815005742,1.1872788772739642 -4.6731,0.7292903963749944,0.6106682834354926 -4.375,0.6637191500593902,0.42263484449515154 -2.8173,0.281391098688454,-0.578713956288219 -2.0903,0.16057506301658947,-0.9920971718209968 -2.725,0.2565846054611911,-0.6539109002088199 -2.8547,0.29144270049451715,-0.5491749392049887 -2.25,0.18397913125036633,-0.9003044332369591 -1.9444,0.13919338765461042,-1.0839504359991745 -1.7167,0.10582390526994544,-1.2490472005138797 -1.9342,0.13769857553197723,-1.0907176288996137 -4.9524,0.7545234663213701,0.6887937530976251 -3.65,0.5042453037701816,0.010641599310222728 -3.0856,0.35349924747366146,-0.37589024233948426 -3.2396,0.394888196086863,-0.26660099147199706 -2.9324,0.3123253063857234,-0.48926992156445664 -3.495,0.46352934852719846,-0.09154607537767347 -1.9818,0.14467436543759887,-1.0595514059995472 -4.6964,0.7344155558488406,0.6262226873574688 -3.925,0.5647353833971228,0.16298628506764115 -3.625,0.4984680713824984,-0.003839985024398658 -2.9688,0.3221081487852074,-0.4618117868349911 -4.0417,0.5904051735515374,0.22858735593517016 -9.7956,0.8728494295277418,1.1399643807904891 -3.8732,0.5533412520346663,0.13410759250347515 -2.6998,0.24989741485432906,-0.6748126069650576 -2.006,0.1482208804736502,-1.0440943039822579 -4.25,0.6362236593198715,0.34838284885436693 -3.1839999999999997,0.3799451730810577,-0.3056247863400478 -5.9658,0.7792822066404437,0.7697712668826051 -2.628,0.23937510991265604,-0.7083141049607123 -2.5057,0.2214520194618676,-0.7672985355850374 -5.155,0.7594732598763774,0.7046091860898294 -4.6,0.7132110333905237,0.5627899373325242 -4.6681,0.7281905767454135,0.6073497232884044 -5.5942,0.7702035132295815,0.7395172425174374 -5.1104,0.7583836212161931,0.7011125840899696 -3.0759,0.35089228122984295,-0.38291260834816176 -3.5757,0.4852182326381423,-0.037060878177008386 -3.6845,0.5118340592142888,0.02966793907608783 -6.4667,0.7915198749114363,0.8117061751243242 -5.273,0.7623561603674476,0.7139021637992619 -3.0635,0.3475596645882605,-0.3919172875113563 -11.2866,0.9092765874276221,1.3363135019854007 -4.0444,0.5909990761515111,0.23011572277987793 -5.2541,0.7618944076616745,0.7124095804237914 -5.5791,0.7698345996921648,0.7383022482134728 -4.5375,0.6994632880207644,0.5228574972480653 -9.8144,0.8733087390975055,1.1421720249180776 -6.7257,0.7978475971757347,0.8339577268169219 -4.1442,0.6129514759579427,0.28701994562086086 -4.0313,0.5881175487220095,0.22270526607462063 -2.2791,0.18824374230611404,-0.88438672867467 -4.1679,0.6181646210021556,0.3006639542199363 -3.2852,0.40714362502687595,-0.23489883984002982 -3.2768,0.4048860460116104,-0.24072005796234255 -5.021,0.7561994576238059,0.6941293646505097 -4.875,0.7526324790501087,0.682797132481279 -4.419,0.6733975627997006,0.44931439580522814 -3.3272,0.41843152010320356,-0.20590766210173994 -4.2386,0.6337160705644274,0.341711709817628 -1.245,0.03669617210856439,-1.7903831065617093 -5.152,0.7593999657960959,0.704373718687922 -4.8125,0.7511055190442452,0.6779727645490474 -2.1638,0.1713465033120347,-0.9488576690059357 -7.1621,0.8085094427206763,0.872416661000832 -1.5372,0.0795181429157629,-1.408320169672634 -10.0481,0.8790183479514304,1.1700935990858978 -3.3869,0.43447645667598356,-0.16498865287495923 -5.4591,0.7669028364809068,0.7286850708477646 -4.4318,0.6762131010514274,0.4571353017049396 -6.5044,0.7924409371869732,0.8149199625504349 -4.2865,0.644252342615811,0.3698485817763834 -3.0461,0.3428832509137819,-0.40460687823111086 -11.3283,0.9102953751435343,1.3425761736583905 -2.7026,0.25056439475381626,-0.6727147380915197 -3.016,0.33479359277574705,-0.4267146406076349 -3.0943,0.35583745431090086,-0.3696075717076287 -3.225,0.39096430875080623,-0.2768065942137824 -6.187,0.7846864234931958,0.7881189136255171 -3.8158,0.5407153226870792,0.10223599868489697 -3.0147,0.33444420554719406,-0.42767409705501475 -15.0,0.9999999000000003,5.19933758270342 -3.1364,0.36715222532788644,-0.33940526790689773 -2.9,0.30361750161255635,-0.5140242974144523 -5.5941,0.7702010700935721,0.739509192607556 -3.4028,0.4387497312405934,-0.15413985695864643 -6.0062,0.7802692335882339,0.7731028191405914 -8.3792,0.8382448510908602,0.9872699911993058 -3.8036,0.5380317627909023,0.09547634997560216 -2.0926,0.1609121284952224,-0.9907160390730209 -6.7703,0.798937235835919,0.837831173103705 -4.2569,0.6377414104086929,0.3524281695696263 -4.744,0.7448858387224493,0.6584822133838069 -9.7037,0.87060418753512,1.1292518063856445 -5.1292,0.7588429307859569,0.7025854406375655 -2.3148,0.19347558473533027,-0.8651596484776254 -3.3021,0.41168565899806486,-0.22321096549396113 -1.95,0.1400140688199777,-1.0802561341135346 -3.025,0.33721242743496016,-0.42008295383958816 -2.6523,0.2429362799695175,-0.6968885244090585 -1.2188,0.032856556656310446,-1.8403755990446928 -5.827999999999999,0.7759155652195158,0.7584713308686281 -3.1587,0.3731455600946033,-0.3235336598161438 -2.45,0.21328917287062546,-0.7950604390156254 -2.3851,0.20377806436485135,-0.8282019693528496 -2.1221,0.16523535963421065,-0.9731661745087966 -3.5313,0.47328531498602444,-0.06701390942662634 -3.4821,0.4600623521823264,-0.10027663775339715 -7.8252,0.8247098775988859,0.9334643965884332 -5.1878,0.7602746084874545,0.7071861842977014 -3.7459,0.5253398442655404,0.06356034060479637 -6.0097,0.7803547433485621,0.773391847490294 -2.3194,0.19414971569259623,-0.862705456837268 -4.2061,0.6265672429721525,0.32277517627250846 -2.267,0.18647048478808834,-0.8909780060851004 -2.2109,0.1782490181136057,-0.9220585498888423 -2.7589,0.265695549344227,-0.6258838950234518 -2.6553,0.2433759305938214,-0.6954842771160817 -6.3325,0.7882411863868461,0.8003334507140982 -5.7233,0.7733576018176932,0.7499500376839813 -4.337,0.6553605208745764,0.3998337668630456 -3.9667,0.5739078791078263,0.18633222024962756 -5.8623,0.7767535608707337,0.7612749184789059 -1.6806,0.1005334427574887,-1.2785178769957448 -3.5851,0.48774457105998714,-0.03072463804138443 -2.9716,0.32286067512362926,-0.45971423541894674 -3.9,0.5592362852492191,0.14903320783722215 -2.7431,0.26144915072027514,-0.6388841474573944 -3.3621,0.4278112233928187,-0.18194938611936773 -1.9464,0.13948648807081301,-1.0826293461973695 -7.3518,0.8131440717304732,0.8895420092252918 -4.775,0.750189343040727,0.6750857069958222 -3.5968,0.4908890561169641,-0.022839735128387998 -6.221,0.7855170897363856,0.7909625929859541 -10.0968,0.8802081551879993,1.1760279942069634 -1.9483,0.1397649334662055,-1.0813760586453744 -2.0469,0.15421478398499322,-1.0185228067876306 -3.725,0.5207425982138929,0.05201743189676979 -3.675,0.5097444019180853,0.02442802263182327 -1.8529,0.1257840436133419,-1.1465489456932518 -1.7159,0.10570666510346441,-1.2496885811666654 -1.7386,0.10903335482736382,-1.2316851754273808 -3.6687,0.5083586291848137,0.020953509422343072 -3.4671,0.45603096108363783,-0.11043812057602183 -4.8233,0.7513693777332584,0.6788052852389578 -4.3036,0.6480137257489771,0.3799634475571365 -1.6488,0.0958731461398675,-1.3054305179573955 -2.9453,0.3157923027305955,-0.47949769802476955 -5.0096,0.7559209401187363,0.6932413225605799 -3.175,0.3775263384218447,-0.31198400815546146 -4.2031,0.625907351194404,0.32103311272888746 -3.1667,0.3752956353472371,-0.3178598218476214 -5.7204,0.7732867508734211,0.7497147894780406 -3.375,0.43127821973769076,-0.17312084617136517 -6.5483,0.7935134738950917,0.818672917584347 -4.2206,0.6297567198979367,0.33120908249828585 -2.6631,0.2445190222170115,-0.6918396326662699 -3.5363,0.4746291120189207,-0.06363831319524592 From 381d1a6f35a6a4c880893b6e5032289a18997610 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:37:20 -0700 Subject: [PATCH 082/248] Delete parquet.parquet --- .../work-with-data/dataprep/data/parquet.parquet | Bin 3091 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/parquet.parquet diff --git a/how-to-use-azureml/work-with-data/dataprep/data/parquet.parquet b/how-to-use-azureml/work-with-data/dataprep/data/parquet.parquet deleted file mode 100644 index bc61f97c9468fd8b7b26a91d61ae4f4deca8e962..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3091 zcma)9O>f*p7^^P}gydKvd zZC2bkA$|ad{sTbbgg8{m!VXCdbx=OM2_UWdE^c@y#$ zki-L4u!bW?QL;~UVUmg_c%G*>Gryt zn_a?Wr+c68Y}j}AEi&Gq8wzs-F1a$dkuh09|9(uQ8u22(ar<*u;hJC}oy|MKDZ%@Bkd2avs z>q7JI(-+M1i)+UG?Bc>aVLp~Q+)w8kPv@H7oo@btj{h$!h#4eQ8~qSNNQf;Y^qxdN zBC43Rp6(&Z2@~WLKQ_pk22pqB+%VhB}wk1 zj;&K0UP741GOTiEPsE{QrEM$kKocs*yQ>>etfNEA1r#@-30MP>%0N=PbQs-0c62os zlbft8VfmN>hcyzFM{bs&DXw^^f|?pt5gN@_O|mHV0l$brk{C|PmdT?imT)MN$v8?? z4wFtu)1oABVKL2-k^~3J#r8-gO=O%vP0EN3fcb$8CbfPWQA_^6#KeO7)mVU+GIV|F z*#@kLX;m@=Gf7rXHO$c4E`7{a|#!8T2G2T9CWx=bz%|Hb>l-g&?ls>nGOr} zq&yGHS*^BTorOMN^v=o#u@vsX3$O!m&22q!C%>lr@ASu8&{bo=@BZITpCQnlqPYj$I`U^E}>^7oBPuFcx=;Vz~~0i|68n#m>nt zrYE~go$xx-JZZ&^- Date: Sun, 28 Jul 2019 00:37:33 -0700 Subject: [PATCH 083/248] Delete secrets.dprep --- .../dataprep/data/secrets.dprep | 63 ------------------- 1 file changed, 63 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/secrets.dprep diff --git a/how-to-use-azureml/work-with-data/dataprep/data/secrets.dprep b/how-to-use-azureml/work-with-data/dataprep/data/secrets.dprep deleted file mode 100644 index bf156e3c..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/secrets.dprep +++ /dev/null @@ -1,63 +0,0 @@ -{ - "id": "b308e5b8-9b2a-47f8-9d32-0f542b4a34a4", - "name": "read_csv_duplicate_headers", - "blocks": [ - { - "id": "8d9ec228-6a4b-4abf-afb7-65f58dda1581", - "type": "Microsoft.DPrep.GetFilesBlock", - "arguments": { - "path": { - "target": 1, - "resourceDetails": [ - { - "path": "https://dpreptestfiles.blob.core.windows.net/testfiles/read_csv_duplicate_headers.csv", - "sas": { - "id": "https://dpreptestfiles.blob.core.windows.net/testfiles/read_csv_duplicate_headers.csv", - "secretType": "AzureMLSecret" - }, - "storageAccountName": null, - "storageAccountKey": null - } - ] - } - }, - "isEnabled": true, - "name": null, - "annotation": null - }, - { - "id": "4ad0460f-ec65-47c0-a0a4-44345404a462", - "type": "Microsoft.DPrep.ParseDelimitedBlock", - "arguments": { - "columnHeadersMode": 3, - "fileEncoding": 0, - "handleQuotedLineBreaks": false, - "preview": false, - "separator": ",", - "skipRows": 0, - "skipRowsMode": 0 - }, - "isEnabled": true, - "name": null, - "annotation": null - }, - { - "id": "1a3e11ba-5854-48da-aa47-53af61beb782", - "type": "Microsoft.DPrep.DropColumnsBlock", - "arguments": { - "columns": { - "type": 0, - "details": { - "selectedColumns": [ - "Path" - ] - } - } - }, - "isEnabled": true, - "name": null, - "annotation": null - } - ], - "inspectors": [] -} \ No newline at end of file From 0a9e076e5f8862cace0ebe5e8f7be1721c14e3eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:37:44 -0700 Subject: [PATCH 084/248] Delete stream-path.csv --- .../work-with-data/dataprep/data/stream-path.csv | 11 ----------- 1 file changed, 11 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/data/stream-path.csv diff --git a/how-to-use-azureml/work-with-data/dataprep/data/stream-path.csv b/how-to-use-azureml/work-with-data/dataprep/data/stream-path.csv deleted file mode 100644 index 175f3801..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/data/stream-path.csv +++ /dev/null @@ -1,11 +0,0 @@ -Stream Path -https://dataset.blob.core.windows.net/blobstore/container/2019/01/01/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/02/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/03/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/04/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/05/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/06/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/07/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/08/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/09/train.csv -https://dataset.blob.core.windows.net/blobstore/container/2019/01/10/train.csv From c0a5b2de79bdbe898a0d3c35431e55e6fcde824b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:37:56 -0700 Subject: [PATCH 085/248] Delete new-york-taxi.ipynb --- .../new-york-taxi/new-york-taxi.ipynb | 515 ------------------ 1 file changed, 515 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi.ipynb b/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi.ipynb deleted file mode 100644 index 45ab51ca..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi.ipynb +++ /dev/null @@ -1,515 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Cleaning up New York Taxi Cab data\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's use DataPrep to clean and featurize the data which can then be used to predict taxi trip duration. We will not use the For Hire Vehicle (FHV) datasets as they are not really taxi rides and they don't provide drop-off time and geo-coordinates." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from IPython.display import display\n", - "from os import path\n", - "from tempfile import mkdtemp\n", - "\n", - "import pandas as pd\n", - "import azureml.dataprep as dprep" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's take a quick peek at yellow cab data and green cab data to see what the data looks like. DataPrep supports globing, so you will notice below that we have added a `*` in the path.\n", - "\n", - "*We are using a small sample of the taxi data for this demo. You can find a bigger sample ~6GB by changing \"green-small\" to \"green-sample\" and \"yellow-small\" to \"yellow-sample\" in the paths below.*" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "pd.set_option('display.max_columns', None)\n", - "\n", - "cache_location = mkdtemp()\n", - "dataset_root = \"https://dprepdata.blob.core.windows.net/demo\"\n", - "\n", - "green_path = \"/\".join([dataset_root, \"green-small/*\"])\n", - "yellow_path = \"/\".join([dataset_root, \"yellow-small/*\"])\n", - "\n", - "print(\"Retrieving data from the following two sources:\")\n", - "print(green_path)\n", - "print(yellow_path)\n", - "\n", - "green_df = dprep.read_csv(path=green_path, header=dprep.PromoteHeadersMode.GROUPED)\n", - "yellow_df = dprep.auto_read_file(path=yellow_path)\n", - "\n", - "display(green_df.head(5))\n", - "display(yellow_df.head(5))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Data Cleanup" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's define some shortcut transforms that will apply to all Dataflows." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "all_columns = dprep.ColumnSelector(term=\".*\", use_regex=True)\n", - "drop_if_all_null = [all_columns, dprep.ColumnRelationship(dprep.ColumnRelationship.ALL)]\n", - "useful_columns = [\n", - " \"cost\", \"distance\"\"distance\", \"dropoff_datetime\", \"dropoff_latitude\", \"dropoff_longitude\",\n", - " \"passengers\", \"pickup_datetime\", \"pickup_latitude\", \"pickup_longitude\", \"store_forward\", \"vendor\"\n", - "]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's first work with the green taxi data and get it into a good shape that then can be combined with the yellow taxi data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = (green_df\n", - " .replace_na(columns=all_columns)\n", - " .drop_nulls(*drop_if_all_null)\n", - " .rename_columns(column_pairs={\n", - " \"VendorID\": \"vendor\",\n", - " \"lpep_pickup_datetime\": \"pickup_datetime\",\n", - " \"Lpep_dropoff_datetime\": \"dropoff_datetime\",\n", - " \"lpep_dropoff_datetime\": \"dropoff_datetime\",\n", - " \"Store_and_fwd_flag\": \"store_forward\",\n", - " \"store_and_fwd_flag\": \"store_forward\",\n", - " \"Pickup_longitude\": \"pickup_longitude\",\n", - " \"Pickup_latitude\": \"pickup_latitude\",\n", - " \"Dropoff_longitude\": \"dropoff_longitude\",\n", - " \"Dropoff_latitude\": \"dropoff_latitude\",\n", - " \"Passenger_count\": \"passengers\",\n", - " \"Fare_amount\": \"cost\",\n", - " \"Trip_distance\": \"distance\"\n", - " })\n", - " .keep_columns(columns=useful_columns))\n", - "tmp_df.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "green_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's do the same thing to yellow taxi data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = (yellow_df\n", - " .replace_na(columns=all_columns)\n", - " .drop_nulls(*drop_if_all_null)\n", - " .rename_columns(column_pairs={\n", - " \"vendor_name\": \"vendor\",\n", - " \"VendorID\": \"vendor\",\n", - " \"vendor_id\": \"vendor\",\n", - " \"Trip_Pickup_DateTime\": \"pickup_datetime\",\n", - " \"tpep_pickup_datetime\": \"pickup_datetime\",\n", - " \"Trip_Dropoff_DateTime\": \"dropoff_datetime\",\n", - " \"tpep_dropoff_datetime\": \"dropoff_datetime\",\n", - " \"store_and_forward\": \"store_forward\",\n", - " \"store_and_fwd_flag\": \"store_forward\",\n", - " \"Start_Lon\": \"pickup_longitude\",\n", - " \"Start_Lat\": \"pickup_latitude\",\n", - " \"End_Lon\": \"dropoff_longitude\",\n", - " \"End_Lat\": \"dropoff_latitude\",\n", - " \"Passenger_Count\": \"passengers\",\n", - " \"passenger_count\": \"passengers\",\n", - " \"Fare_Amt\": \"cost\",\n", - " \"fare_amount\": \"cost\",\n", - " \"Trip_Distance\": \"distance\",\n", - " \"trip_distance\": \"distance\"\n", - " })\n", - " .keep_columns(columns=useful_columns))\n", - "tmp_df.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "yellow_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's now append the rows from the `yellow_df` to `green_df`." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = green_df.append_rows(dataflows=[yellow_df])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's take a look at the pickup and drop-off coordinates' data profile to see how the data is distributed." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "decimal_type = dprep.TypeConverter(data_type=dprep.FieldType.DECIMAL)\n", - "combined_df = combined_df.set_column_types(type_conversions={\n", - " \"pickup_longitude\": decimal_type,\n", - " \"pickup_latitude\": decimal_type,\n", - " \"dropoff_longitude\": decimal_type,\n", - " \"dropoff_latitude\": decimal_type\n", - "})\n", - "combined_df.keep_columns(columns=[\n", - " \"pickup_longitude\", \"pickup_latitude\", \n", - " \"dropoff_longitude\", \"dropoff_latitude\"\n", - "]).get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "From the data profile, we can see that there are coordinates that are missing and coordinates that are not in New York. Let's filter out coordinates not in the [city border](https://mapmakerapp.com?map=5b60a055a191245990310739f658)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = (combined_df\n", - " .drop_nulls(\n", - " columns=[\"pickup_longitude\", \"pickup_latitude\", \"dropoff_longitude\", \"dropoff_latitude\"],\n", - " column_relationship=dprep.ColumnRelationship(dprep.ColumnRelationship.ANY)\n", - " ) \n", - " .filter(dprep.f_and(\n", - " dprep.col(\"pickup_longitude\") <= -73.72,\n", - " dprep.col(\"pickup_longitude\") >= -74.09,\n", - " dprep.col(\"pickup_latitude\") <= 40.88,\n", - " dprep.col(\"pickup_latitude\") >= 40.53,\n", - " dprep.col(\"dropoff_longitude\") <= -73.72,\n", - " dprep.col(\"dropoff_longitude\") >= -74.09,\n", - " dprep.col(\"dropoff_latitude\") <= 40.88,\n", - " dprep.col(\"dropoff_latitude\") >= 40.53\n", - " )))\n", - "tmp_df.keep_columns(columns=[\n", - " \"pickup_longitude\", \"pickup_latitude\", \n", - " \"dropoff_longitude\", \"dropoff_latitude\"\n", - "]).get_profile()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's take a look at the data profile for the `store_forward` column." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df.keep_columns(columns='store_forward').get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "From the data profile of `store_forward` above, we can see that the data is inconsistent and there are missing values. Let's fix them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = combined_df.replace(columns=\"store_forward\", find=\"0\", replace_with=\"N\").fill_nulls(\"store_forward\", \"N\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's now split the pick up and drop off datetimes into a date column and a time column. We will use `split_column_by_example` to perform the split. If the `example` parameter of `split_column_by_example` is omitted, we will automatically try to figure out where to split based on the data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = (combined_df\n", - " .split_column_by_example(source_column=\"pickup_datetime\")\n", - " .split_column_by_example(source_column=\"dropoff_datetime\"))\n", - "tmp_df.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's rename the columns generated by `split_column_by_example` into meaningful names." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = (combined_df\n", - " .rename_columns(column_pairs={\n", - " \"pickup_datetime_1\": \"pickup_date\",\n", - " \"pickup_datetime_2\": \"pickup_time\",\n", - " \"dropoff_datetime_1\": \"dropoff_date\",\n", - " \"dropoff_datetime_2\": \"dropoff_time\"\n", - " }))\n", - "tmp_df.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Feature Engineering" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Datetime features" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's split the pickup and drop-off date further into day of week, day of month, and month. For pickup and drop-off time columns, we will split it into hour, minute, and second." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = (combined_df\n", - " .derive_column_by_example(\n", - " source_columns=\"pickup_date\", \n", - " new_column_name=\"pickup_weekday\", \n", - " example_data=[(\"2009-01-04\", \"Sunday\"), (\"2013-08-22\", \"Thursday\")]\n", - " )\n", - " .derive_column_by_example(\n", - " source_columns=\"dropoff_date\",\n", - " new_column_name=\"dropoff_weekday\",\n", - " example_data=[(\"2013-08-22\", \"Thursday\"), (\"2013-11-03\", \"Sunday\")]\n", - " )\n", - " .split_column_by_example(source_column=\"pickup_date\")\n", - " .split_column_by_example(source_column=\"pickup_time\")\n", - " .split_column_by_example(source_column=\"dropoff_date\")\n", - " .split_column_by_example(source_column=\"dropoff_time\")\n", - " .split_column_by_example(source_column=\"pickup_time_1\")\n", - " .split_column_by_example(source_column=\"dropoff_time_1\")\n", - " .drop_columns(columns=[\n", - " \"pickup_date\", \"pickup_time\", \"dropoff_date\", \"dropoff_time\", \n", - " \"pickup_date_1\", \"dropoff_date_1\", \"pickup_time_1\", \"dropoff_time_1\"\n", - " ])\n", - " .rename_columns(column_pairs={\n", - " \"pickup_date_2\": \"pickup_month\",\n", - " \"pickup_date_3\": \"pickup_monthday\",\n", - " \"pickup_time_1_1\": \"pickup_hour\",\n", - " \"pickup_time_1_2\": \"pickup_minute\",\n", - " \"pickup_time_2\": \"pickup_second\",\n", - " \"dropoff_date_2\": \"dropoff_month\",\n", - " \"dropoff_date_3\": \"dropoff_monthday\",\n", - " \"dropoff_time_1_1\": \"dropoff_hour\",\n", - " \"dropoff_time_1_2\": \"dropoff_minute\",\n", - " \"dropoff_time_2\": \"dropoff_second\"\n", - " }))\n", - "tmp_df.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "From the data above, we can see that the pickup and drop-off date and time components produced from the transforms above looks good. Let's drop the `pickup_datetime` and `dropoff_datetime` columns as they are no longer needed." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tmp_df = combined_df.drop_columns(columns=[\"pickup_datetime\", \"dropoff_datetime\"])\n", - "tmp_df.head(5)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "combined_df = tmp_df" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's now save the transformation steps into a DataPrep package so we can use it to to run on spark." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dflow_path = path.join(mkdtemp(), \"new_york_taxi.dprep\")\n", - "combined_df.save(file_path=dflow_path)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi.png)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 85e487f74fffe0327dbf6ab30f14d4a8c14c15d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Sun, 28 Jul 2019 00:38:05 -0700 Subject: [PATCH 086/248] Delete new-york-taxi_scale-out.ipynb --- .../new-york-taxi_scale-out.ipynb | 136 ------------------ 1 file changed, 136 deletions(-) delete mode 100644 how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi_scale-out.ipynb diff --git a/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi_scale-out.ipynb b/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi_scale-out.ipynb deleted file mode 100644 index 3830935b..00000000 --- a/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi_scale-out.ipynb +++ /dev/null @@ -1,136 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Scale-Out Data Preparation\n", - "Copyright (c) Microsoft Corporation. All rights reserved.
    \n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once we are done with preparing and featurizing the data locally, we can run the same steps on the full dataset in scale-out mode. The new york taxi cab data is about 300GB in total, which is perfect for scale-out. Let's start by downloading the package we saved earlier to disk. Feel free to run the `new_york_taxi_cab.ipynb` notebook to generate the package yourself, in which case you may comment out the download code and set the `package_path` to where the package is saved." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from tempfile import mkdtemp\n", - "from os import path\n", - "from urllib.request import urlretrieve\n", - "\n", - "dflow_root = mkdtemp()\n", - "dflow_path = path.join(dflow_root, \"new_york_taxi.dprep\")\n", - "print(\"Downloading Dataflow to: {}\".format(dflow_path))\n", - "urlretrieve(\"https://dprepdata.blob.core.windows.net/demo/new_york_taxi_v2.dprep\", dflow_path)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's load the package we just downloaded." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.dataprep as dprep\n", - "\n", - "df = dprep.Dataflow.open(dflow_path)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Let's replace the datasources with the full dataset." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from uuid import uuid4\n", - "\n", - "other_step = df._get_steps()[7].arguments['dataflows'][0]['anonymousSteps'][0]\n", - "other_step['id'] = str(uuid4())\n", - "other_step['arguments']['path']['target'] = 1\n", - "other_step['arguments']['path']['resourceDetails'][0]['path'] = 'https://wranglewestus.blob.core.windows.net/nyctaxi/yellow_tripdata*'" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "green_dsource = dprep.BlobDataSource(\"https://wranglewestus.blob.core.windows.net/nyctaxi/green_tripdata*\")\n", - "df = df.replace_datasource(green_dsource)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Once we have replaced the datasource, we can now run the same steps on the full dataset. We will print the first 5 rows of the spark DataFrame. Since we are running on the full dataset, this might take a little while depending on your spark cluster's size." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "spark_df = df.to_spark_dataframe()\n", - "spark_df.head(5)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi_scale-out.png)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "sihhu" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.4" - }, - "skip_execute_as_test": true - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From b5ed94b4eb6b83d2a4a329dc40bc3c6530682cdc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Mon, 29 Jul 2019 09:32:47 -0700 Subject: [PATCH 087/248] Delete azure-ml-datadrift.ipynb --- .../data-drift/azure-ml-datadrift.ipynb | 709 ------------------ 1 file changed, 709 deletions(-) delete mode 100644 how-to-use-azureml/data-drift/azure-ml-datadrift.ipynb diff --git a/how-to-use-azureml/data-drift/azure-ml-datadrift.ipynb b/how-to-use-azureml/data-drift/azure-ml-datadrift.ipynb deleted file mode 100644 index 4f9a3737..00000000 --- a/how-to-use-azureml/data-drift/azure-ml-datadrift.ipynb +++ /dev/null @@ -1,709 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Track Data Drift between Training and Inference Data in Production \n", - "\n", - "With this notebook, you will learn how to enable the DataDrift service to automatically track and determine whether your inference data is drifting from the data your model was initially trained on. The DataDrift service provides metrics and visualizations to help stakeholders identify which specific features cause the concept drift to occur.\n", - "\n", - "Please email driftfeedback@microsoft.com with any issues. A member from the DataDrift team will respond shortly. \n", - "\n", - "The DataDrift Public Preview API can be found [here](https://docs.microsoft.com/en-us/python/api/azureml-contrib-datadrift/?view=azure-ml-py). " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/contrib/datadrift/azureml-datadrift.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Prerequisites and Setup" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Install the DataDrift package\n", - "\n", - "Install the azureml-contrib-datadrift, azureml-contrib-opendatasets and lightgbm packages before running this notebook.\n", - "```\n", - "pip install azureml-contrib-datadrift\n", - "pip install azureml-contrib-datasets\n", - "pip install lightgbm\n", - "```" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Import Dependencies" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import json\n", - "import os\n", - "import time\n", - "from datetime import datetime, timedelta\n", - "\n", - "import numpy as np\n", - "import pandas as pd\n", - "import requests\n", - "from azureml.contrib.datadrift import DataDriftDetector, AlertConfiguration\n", - "from azureml.contrib.opendatasets import NoaaIsdWeather\n", - "from azureml.core import Dataset, Workspace, Run\n", - "from azureml.core.compute import AksCompute, ComputeTarget\n", - "from azureml.core.conda_dependencies import CondaDependencies\n", - "from azureml.core.experiment import Experiment\n", - "from azureml.core.image import ContainerImage\n", - "from azureml.core.model import Model\n", - "from azureml.core.webservice import Webservice, AksWebservice\n", - "from azureml.widgets import RunDetails\n", - "from sklearn.externals import joblib\n", - "from sklearn.model_selection import train_test_split\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Set up Configuraton and Create Azure ML Workspace\n", - "\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, go through the [configuration notebook](../../configuration.ipynb) first if you haven't already to establish your connection to the AzureML Workspace." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Please type in your initials/alias. The prefix is prepended to the names of resources created by this notebook. \n", - "prefix = \"dd\"\n", - "\n", - "# NOTE: Please do not change the model_name, as it's required by the score.py file\n", - "model_name = \"driftmodel\"\n", - "image_name = \"{}driftimage\".format(prefix)\n", - "service_name = \"{}driftservice\".format(prefix)\n", - "\n", - "# optionally, set email address to receive an email alert for DataDrift\n", - "email_address = \"\"" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ws = Workspace.from_config()\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Generate Train/Testing Data\n", - "\n", - "For this demo, we will use NOAA weather data from [Azure Open Datasets](https://azure.microsoft.com/services/open-datasets/). You may replace this step with your own dataset. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "usaf_list = ['725724', '722149', '723090', '722159', '723910', '720279',\n", - " '725513', '725254', '726430', '720381', '723074', '726682',\n", - " '725486', '727883', '723177', '722075', '723086', '724053',\n", - " '725070', '722073', '726060', '725224', '725260', '724520',\n", - " '720305', '724020', '726510', '725126', '722523', '703333',\n", - " '722249', '722728', '725483', '722972', '724975', '742079',\n", - " '727468', '722193', '725624', '722030', '726380', '720309',\n", - " '722071', '720326', '725415', '724504', '725665', '725424',\n", - " '725066']\n", - "\n", - "columns = ['usaf', 'wban', 'datetime', 'latitude', 'longitude', 'elevation', 'windAngle', 'windSpeed', 'temperature', 'stationName', 'p_k']\n", - "\n", - "def enrich_weather_noaa_data(noaa_df):\n", - " hours_in_day = 23\n", - " week_in_year = 52\n", - " \n", - "\n", - " noaa_df = noaa_df.assign(hour=noaa_df[\"datetime\"].dt.hour,\n", - " weekofyear=noaa_df[\"datetime\"].dt.week,\n", - " sine_weekofyear=noaa_df['datetime'].transform(lambda x: np.sin((2*np.pi*x.dt.week-1)/week_in_year)),\n", - " cosine_weekofyear=noaa_df['datetime'].transform(lambda x: np.cos((2*np.pi*x.dt.week-1)/week_in_year)),\n", - " sine_hourofday=noaa_df['datetime'].transform(lambda x: np.sin(2*np.pi*x.dt.hour/hours_in_day)),\n", - " cosine_hourofday=noaa_df['datetime'].transform(lambda x: np.cos(2*np.pi*x.dt.hour/hours_in_day))\n", - " )\n", - " \n", - " return noaa_df\n", - "\n", - "\n", - "def add_window_col(input_df):\n", - " shift_interval = pd.Timedelta('-7 days') # your X days interval\n", - " df_shifted = input_df.copy()\n", - " df_shifted.loc[:,'datetime'] = df_shifted['datetime'] - shift_interval\n", - " df_shifted.drop(list(input_df.columns.difference(['datetime', 'usaf', 'wban', 'sine_hourofday', 'temperature'])), axis=1, inplace=True)\n", - "\n", - " # merge, keeping only observations where -1 lag is present\n", - " df2 = pd.merge(input_df,\n", - " df_shifted,\n", - " on=['datetime', 'usaf', 'wban', 'sine_hourofday'],\n", - " how='inner', # use 'left' to keep observations without lags\n", - " suffixes=['', '-7'])\n", - " return df2\n", - "\n", - "def get_noaa_data(start_time, end_time, cols, station_list):\n", - " isd = NoaaIsdWeather(start_time, end_time, cols=cols)\n", - " # Read into Pandas data frame.\n", - " noaa_df = isd.to_pandas_dataframe()\n", - " noaa_df = noaa_df.rename(columns={\"stationName\": \"station_name\"})\n", - " \n", - " df_filtered = noaa_df[noaa_df[\"usaf\"].isin(station_list)]\n", - " df_filtered.reset_index(drop=True)\n", - " \n", - " # Enrich with time features\n", - " df_enriched = enrich_weather_noaa_data(df_filtered)\n", - " \n", - " return df_enriched\n", - "\n", - "def get_featurized_noaa_df(start_time, end_time, cols, station_list):\n", - " df_1 = get_noaa_data(start_time - timedelta(days=7), start_time - timedelta(seconds=1), cols, station_list)\n", - " df_2 = get_noaa_data(start_time, end_time, cols, station_list)\n", - " noaa_df = pd.concat([df_1, df_2])\n", - " \n", - " print(\"Adding window feature\")\n", - " df_window = add_window_col(noaa_df)\n", - " \n", - " cat_columns = df_window.dtypes == object\n", - " cat_columns = cat_columns[cat_columns == True]\n", - " \n", - " print(\"Encoding categorical columns\")\n", - " df_encoded = pd.get_dummies(df_window, columns=cat_columns.keys().tolist())\n", - " \n", - " print(\"Dropping unnecessary columns\")\n", - " df_featurized = df_encoded.drop(['windAngle', 'windSpeed', 'datetime', 'elevation'], axis=1).dropna().drop_duplicates()\n", - " \n", - " return df_featurized" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Train model on Jan 1 - 14, 2009 data\n", - "df = get_featurized_noaa_df(datetime(2009, 1, 1), datetime(2009, 1, 14, 23, 59, 59), columns, usaf_list)\n", - "df.head()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "label = \"temperature\"\n", - "x_df = df.drop(label, axis=1)\n", - "y_df = df[[label]]\n", - "x_train, x_test, y_train, y_test = train_test_split(df, y_df, test_size=0.2, random_state=223)\n", - "print(x_train.shape, x_test.shape, y_train.shape, y_test.shape)\n", - "\n", - "training_dir = 'outputs/training'\n", - "training_file = \"training.csv\"\n", - "\n", - "# Generate training dataframe to register as Training Dataset\n", - "os.makedirs(training_dir, exist_ok=True)\n", - "training_df = pd.merge(x_train.drop(label, axis=1), y_train, left_index=True, right_index=True)\n", - "training_df.to_csv(training_dir + \"/\" + training_file)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Create/Register Training Dataset" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dataset_name = \"dataset\"\n", - "name_suffix = datetime.utcnow().strftime(\"%Y-%m-%d-%H-%M-%S\")\n", - "snapshot_name = \"snapshot-{}\".format(name_suffix)\n", - "\n", - "dstore = ws.get_default_datastore()\n", - "dstore.upload(training_dir, \"data/training\", show_progress=True)\n", - "dpath = dstore.path(\"data/training/training.csv\")\n", - "trainingDataset = Dataset.auto_read_files(dpath, include_path=True)\n", - "trainingDataset = trainingDataset.register(workspace=ws, name=dataset_name, description=\"dset\", exist_ok=True)\n", - "\n", - "trainingDataSnapshot = trainingDataset.create_snapshot(snapshot_name=snapshot_name, compute_target=None, create_data_snapshot=True)\n", - "datasets = [(Dataset.Scenario.TRAINING, trainingDataSnapshot)]\n", - "print(\"dataset registration done.\\n\")\n", - "datasets" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train and Save Model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import lightgbm as lgb\n", - "\n", - "train = lgb.Dataset(data=x_train, \n", - " label=y_train)\n", - "\n", - "test = lgb.Dataset(data=x_test, \n", - " label=y_test,\n", - " reference=train)\n", - "\n", - "params = {'learning_rate' : 0.1,\n", - " 'boosting' : 'gbdt',\n", - " 'metric' : 'rmse',\n", - " 'feature_fraction' : 1,\n", - " 'bagging_fraction' : 1,\n", - " 'max_depth': 6,\n", - " 'num_leaves' : 31,\n", - " 'objective' : 'regression',\n", - " 'bagging_freq' : 1,\n", - " \"verbose\": -1,\n", - " 'min_data_per_leaf': 100}\n", - "\n", - "model = lgb.train(params, \n", - " num_boost_round=500,\n", - " train_set=train,\n", - " valid_sets=[train, test],\n", - " verbose_eval=50,\n", - " early_stopping_rounds=25)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "model_file = 'outputs/{}.pkl'.format(model_name)\n", - "\n", - "os.makedirs('outputs', exist_ok=True)\n", - "joblib.dump(model, model_file)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Register Model" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "model = Model.register(model_path=model_file,\n", - " model_name=model_name,\n", - " workspace=ws,\n", - " datasets=datasets)\n", - "\n", - "print(model_name, image_name, service_name, model)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Deploy Model To AKS" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prepare Environment" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn', 'joblib', 'lightgbm', 'pandas'],\n", - " pip_packages=['azureml-monitoring', 'azureml-sdk[automl]'])\n", - "\n", - "with open(\"myenv.yml\",\"w\") as f:\n", - " f.write(myenv.serialize_to_string())" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Create Image" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Image creation may take up to 15 minutes.\n", - "\n", - "image_name = image_name + str(model.version)\n", - "\n", - "if not image_name in ws.images:\n", - " # Use the score.py defined in this directory as the execution script\n", - " # NOTE: The Model Data Collector must be enabled in the execution script for DataDrift to run correctly\n", - " image_config = ContainerImage.image_configuration(execution_script=\"score.py\",\n", - " runtime=\"python\",\n", - " conda_file=\"myenv.yml\",\n", - " description=\"Image with weather dataset model\")\n", - " image = ContainerImage.create(name=image_name,\n", - " models=[model],\n", - " image_config=image_config,\n", - " workspace=ws)\n", - "\n", - " image.wait_for_creation(show_output=True)\n", - "else:\n", - " image = ws.images[image_name]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Create Compute Target" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "aks_name = 'dd-demo-e2e'\n", - "prov_config = AksCompute.provisioning_configuration()\n", - "\n", - "if not aks_name in ws.compute_targets:\n", - " aks_target = ComputeTarget.create(workspace=ws,\n", - " name=aks_name,\n", - " provisioning_configuration=prov_config)\n", - "\n", - " aks_target.wait_for_completion(show_output=True)\n", - " print(aks_target.provisioning_state)\n", - " print(aks_target.provisioning_errors)\n", - "else:\n", - " aks_target=ws.compute_targets[aks_name]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Deploy Service" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "aks_service_name = service_name\n", - "\n", - "if not aks_service_name in ws.webservices:\n", - " aks_config = AksWebservice.deploy_configuration(collect_model_data=True, enable_app_insights=True)\n", - " aks_service = Webservice.deploy_from_image(workspace=ws,\n", - " name=aks_service_name,\n", - " image=image,\n", - " deployment_config=aks_config,\n", - " deployment_target=aks_target)\n", - " aks_service.wait_for_deployment(show_output=True)\n", - " print(aks_service.state)\n", - "else:\n", - " aks_service = ws.webservices[aks_service_name]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Run DataDrift Analysis" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Send Scoring Data to Service" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Download Scoring Data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Score Model on March 15, 2016 data\n", - "scoring_df = get_noaa_data(datetime(2016, 3, 15) - timedelta(days=7), datetime(2016, 3, 16), columns, usaf_list)\n", - "# Add the window feature column\n", - "scoring_df = add_window_col(scoring_df)\n", - "\n", - "# Drop features not used by the model\n", - "print(\"Dropping unnecessary columns\")\n", - "scoring_df = scoring_df.drop(['windAngle', 'windSpeed', 'datetime', 'elevation'], axis=1).dropna()\n", - "scoring_df.head()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# One Hot Encode the scoring dataset to match the training dataset schema\n", - "columns_dict = model.datasets[\"training\"][0].get_profile().columns\n", - "extra_cols = ('Path', 'Column1')\n", - "for k in extra_cols:\n", - " columns_dict.pop(k, None)\n", - "training_columns = list(columns_dict.keys())\n", - "\n", - "categorical_columns = scoring_df.dtypes == object\n", - "categorical_columns = categorical_columns[categorical_columns == True]\n", - "\n", - "test_df = pd.get_dummies(scoring_df[categorical_columns.keys().tolist()])\n", - "encoded_df = scoring_df.join(test_df)\n", - "\n", - "# Populate missing OHE columns with 0 values to match traning dataset schema\n", - "difference = list(set(training_columns) - set(encoded_df.columns.tolist()))\n", - "for col in difference:\n", - " encoded_df[col] = 0\n", - "encoded_df.head()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Serialize dataframe to list of row dictionaries\n", - "encoded_dict = encoded_df.to_dict('records')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Submit Scoring Data to Service" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%%time\n", - "\n", - "# retreive the API keys. AML generates two keys.\n", - "key1, key2 = aks_service.get_keys()\n", - "\n", - "total_count = len(scoring_df)\n", - "i = 0\n", - "load = []\n", - "for row in encoded_dict:\n", - " load.append(row)\n", - " i = i + 1\n", - " if i % 100 == 0:\n", - " payload = json.dumps({\"data\": load})\n", - " \n", - " # construct raw HTTP request and send to the service\n", - " payload_binary = bytes(payload,encoding = 'utf8')\n", - " headers = {'Content-Type':'application/json', 'Authorization': 'Bearer ' + key1}\n", - " resp = requests.post(aks_service.scoring_uri, payload_binary, headers=headers)\n", - " \n", - " print(\"prediction:\", resp.content, \"Progress: {}/{}\".format(i, total_count)) \n", - "\n", - " load = []\n", - " time.sleep(3)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Configure DataDrift" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "services = [service_name]\n", - "start = datetime.now() - timedelta(days=2)\n", - "end = datetime(year=2020, month=1, day=22, hour=15, minute=16)\n", - "feature_list = ['usaf', 'wban', 'latitude', 'longitude', 'station_name', 'p_k', 'sine_hourofday', 'cosine_hourofday', 'temperature-7']\n", - "alert_config = AlertConfiguration([email_address]) if email_address else None\n", - "\n", - "# there will be an exception indicating using get() method if DataDrift object already exist\n", - "try:\n", - " datadrift = DataDriftDetector.create(ws, model.name, model.version, services, frequency=\"Day\", alert_config=alert_config)\n", - "except KeyError:\n", - " datadrift = DataDriftDetector.get(ws, model.name, model.version)\n", - " \n", - "print(\"Details of DataDrift Object:\\n{}\".format(datadrift))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Run an Adhoc DataDriftDetector Run" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "target_date = datetime.today()\n", - "run = datadrift.run(target_date, services, feature_list=feature_list, create_compute_target=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "exp = Experiment(ws, datadrift._id)\n", - "dd_run = Run(experiment=exp, run_id=run)\n", - "RunDetails(dd_run).show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Get Drift Analysis Results" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "children = list(dd_run.get_children())\n", - "for child in children:\n", - " child.wait_for_completion()\n", - "\n", - "drift_metrics = datadrift.get_output(start_time=start, end_time=end)\n", - "drift_metrics" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Show all drift figures, one per serivice.\n", - "# If setting with_details is False (by default), only drift will be shown; if it's True, all details will be shown.\n", - "\n", - "drift_figures = datadrift.show(with_details=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Enable DataDrift Schedule" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "datadrift.enable_schedule()" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "rafarmah" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.6" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From 7648e8f51663af3a3154615ad652642380d5f51b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Mon, 29 Jul 2019 09:32:55 -0700 Subject: [PATCH 088/248] Delete readme.md --- how-to-use-azureml/data-drift/readme.md | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 how-to-use-azureml/data-drift/readme.md diff --git a/how-to-use-azureml/data-drift/readme.md b/how-to-use-azureml/data-drift/readme.md deleted file mode 100644 index 9eb416c2..00000000 --- a/how-to-use-azureml/data-drift/readme.md +++ /dev/null @@ -1,3 +0,0 @@ -## Using data drift APIs - -1. [Detect data drift for a model](azure-ml-datadrift.ipynb): Detect data drift for a deployed model. \ No newline at end of file From e4d9a2b4c5d2bb1b104927dbff233bfa5d3cb85a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Mon, 29 Jul 2019 09:33:11 -0700 Subject: [PATCH 089/248] Delete score.py --- how-to-use-azureml/data-drift/score.py | 58 -------------------------- 1 file changed, 58 deletions(-) delete mode 100644 how-to-use-azureml/data-drift/score.py diff --git a/how-to-use-azureml/data-drift/score.py b/how-to-use-azureml/data-drift/score.py deleted file mode 100644 index cda62f8b..00000000 --- a/how-to-use-azureml/data-drift/score.py +++ /dev/null @@ -1,58 +0,0 @@ -import pickle -import json -import numpy -import azureml.train.automl -from sklearn.externals import joblib -from sklearn.linear_model import Ridge -from azureml.core.model import Model -from azureml.core.run import Run -from azureml.monitoring import ModelDataCollector -import time -import pandas as pd - - -def init(): - global model, inputs_dc, prediction_dc, feature_names, categorical_features - - print("Model is initialized" + time.strftime("%H:%M:%S")) - model_path = Model.get_model_path(model_name="driftmodel") - model = joblib.load(model_path) - - feature_names = ["usaf", "wban", "latitude", "longitude", "station_name", "p_k", - "sine_weekofyear", "cosine_weekofyear", "sine_hourofday", "cosine_hourofday", - "temperature-7"] - - categorical_features = ["usaf", "wban", "p_k", "station_name"] - - inputs_dc = ModelDataCollector(model_name="driftmodel", - identifier="inputs", - feature_names=feature_names) - - prediction_dc = ModelDataCollector("driftmodel", - identifier="predictions", - feature_names=["temperature"]) - - -def run(raw_data): - global inputs_dc, prediction_dc - - try: - data = json.loads(raw_data)["data"] - data = pd.DataFrame(data) - - # Remove the categorical features as the model expects OHE values - input_data = data.drop(categorical_features, axis=1) - - result = model.predict(input_data) - - # Collect the non-OHE dataframe - collected_df = data[feature_names] - - inputs_dc.collect(collected_df.values) - prediction_dc.collect(result) - return result.tolist() - except Exception as e: - error = str(e) - - print(error + time.strftime("%H:%M:%S")) - return error From c0dae0c6451b4a80973263a06d51b9ce85bb95ed Mon Sep 17 00:00:00 2001 From: vizhur Date: Mon, 5 Aug 2019 18:39:19 +0000 Subject: [PATCH 090/248] update samples from Release-139 as a part of 1.0.55 SDK release --- configuration.ipynb | 2 +- end-to-end-samples/README.md | 0 .../automated-machine-learning/README.md | 11 +- ...uto-ml-classification-bank-marketing.ipynb | 4 +- ...-ml-classification-credit-card-fraud.ipynb | 2 +- .../auto-ml-classification-with-onnx.ipynb | 10 +- ...-ml-classification-with-whitelisting.ipynb | 2 +- .../auto-ml-classification.ipynb | 6 +- .../auto-ml-dataprep-remote-execution.ipynb | 2 +- .../auto-ml-exploring-previous-runs.ipynb | 10 +- .../auto-ml-forecasting-bike-share.ipynb | 9 +- .../auto-ml-forecasting-energy-demand.ipynb | 4 +- ...to-ml-forecasting-orange-juice-sales.ipynb | 2 +- ...ing-data-blacklist-early-termination.ipynb | 5 +- ...auto-ml-regression-concrete-strength.ipynb | 2 +- ...o-ml-regression-hardware-performance.ipynb | 2 +- .../auto-ml-remote-amlcompute-with-onnx.ipynb | 554 ++++++ .../auto-ml-remote-amlcompute-with-onnx.yml | 9 + .../auto-ml-remote-amlcompute.ipynb | 4 +- .../automl/automl-databricks-local-01.ipynb | 5 +- ...nes-use-databricks-as-compute-target.ipynb | 4 +- .../model-register-and-deploy.ipynb | 45 +- ...register-model-deploy-local-advanced.ipynb | 48 +- .../register-model-deploy-local.ipynb | 66 +- how-to-use-azureml/explain-model/README.md | 11 +- ...ve-retrieve-explanations-run-history.ipynb | 645 +++++++ ...save-retrieve-explanations-run-history.yml | 6 + .../azure-integration/scoring-time/score.py | 33 + ...ain-explain-model-locally-and-deploy.ipynb | 513 ++++++ ...train-explain-model-locally-and-deploy.yml | 7 + ...plain-model-on-amlcompute-and-deploy.ipynb | 548 ++++++ ...explain-model-on-amlcompute-and-deploy.yml | 7 + .../scoring-time/train_explain.py | 128 ++ ...eature-transformations-explain-local.ipynb | 523 ++++++ ...-feature-transformations-explain-local.yml | 7 + .../explain-binary-classification-local.ipynb | 404 +++++ .../explain-binary-classification-local.yml | 6 + ...lain-multiclass-classification-local.ipynb | 402 +++++ ...xplain-multiclass-classification-local.yml | 6 + .../explain-regression-local.ipynb | 397 +++++ .../tabular-data/explain-regression-local.yml | 6 + ...eature-transformations-explain-local.ipynb | 531 ++++++ ...-feature-transformations-explain-local.yml | 7 + .../intro-to-pipelines/README.md | 4 +- .../aml-pipelines-data-transfer.ipynb | 238 ++- .../aml-pipelines-getting-started.ipynb | 8 +- ...urebatch-to-run-a-windows-executable.ipynb | 2 +- ...l-pipelines-how-to-use-estimatorstep.ipynb | 2 +- ...nes-parameter-tuning-with-hyperdrive.ipynb | 2 +- ...-publish-and-run-using-rest-endpoint.ipynb | 4 +- ...up-schedule-for-a-published-pipeline.ipynb | 2 +- ...s-setup-versioned-pipeline-endpoints.ipynb | 2 +- ...nes-use-databricks-as-compute-target.ipynb | 39 +- ...with-automated-machine-learning-step.ipynb | 221 ++- ...pipelines-with-data-dependency-steps.ipynb | 4 +- .../databricks_train/train-db-local.py | 5 + .../training-with-deep-learning/README.md | 1 + .../training/logging-api/logging-api.ipynb | 2 +- model-deployment/README.md | 0 setup-environment/configuration.ipynb | 2 +- training/README.md | 0 tutorials/README.md | 9 +- .../img-classification-part1-training.ipynb | 16 +- .../tutorial-1st-experiment-sdk-train.ipynb | 2 +- .../tutorial-1st-experiment-sdk-train.yml | 5 + work-with-data/dataprep/README.md | 45 + .../how-to-guides/data-ingestion.ipynb | 34 +- .../datasets-diff/datasets-diff.ipynb | 796 +++++++++ .../datasets-diff/datasets-diff.ipynb | 1586 ++++++++--------- 69 files changed, 6879 insertions(+), 1147 deletions(-) create mode 100644 end-to-end-samples/README.md create mode 100644 how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb create mode 100644 how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml create mode 100644 how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.ipynb create mode 100644 how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.yml create mode 100644 how-to-use-azureml/explain-model/azure-integration/scoring-time/score.py create mode 100644 how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb create mode 100644 how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.yml create mode 100644 how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb create mode 100644 how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml create mode 100644 how-to-use-azureml/explain-model/azure-integration/scoring-time/train_explain.py create mode 100644 how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.ipynb create mode 100644 how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.yml create mode 100644 how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.ipynb create mode 100644 how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.yml create mode 100644 how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.ipynb create mode 100644 how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.yml create mode 100644 how-to-use-azureml/explain-model/tabular-data/explain-regression-local.ipynb create mode 100644 how-to-use-azureml/explain-model/tabular-data/explain-regression-local.yml create mode 100644 how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.ipynb create mode 100644 how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.yml create mode 100644 how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/databricks_train/train-db-local.py create mode 100644 model-deployment/README.md create mode 100644 training/README.md create mode 100644 tutorials/tutorial-1st-experiment-sdk-train.yml create mode 100644 work-with-data/datasets/datasets-diff/datasets-diff.ipynb diff --git a/configuration.ipynb b/configuration.ipynb index a94e015d..b89b6e00 100644 --- a/configuration.ipynb +++ b/configuration.ipynb @@ -103,7 +103,7 @@ "source": [ "import azureml.core\n", "\n", - "print(\"This notebook was created using version 1.0.53 of the Azure ML SDK\")\n", + "print(\"This notebook was created using version 1.0.55 of the Azure ML SDK\")\n", "print(\"You are currently using version\", azureml.core.VERSION, \"of the Azure ML SDK\")" ] }, diff --git a/end-to-end-samples/README.md b/end-to-end-samples/README.md new file mode 100644 index 00000000..e69de29b diff --git a/how-to-use-azureml/automated-machine-learning/README.md b/how-to-use-azureml/automated-machine-learning/README.md index d31a3729..4d95e16a 100644 --- a/how-to-use-azureml/automated-machine-learning/README.md +++ b/how-to-use-azureml/automated-machine-learning/README.md @@ -175,10 +175,19 @@ jupyter notebook - Example of training an automated ML forecasting model on multiple time-series - [auto-ml-classification-with-onnx.ipynb](classification-with-onnx/auto-ml-classification-with-onnx.ipynb) - - Dataset: scikit learn's [digit dataset](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_digits.html#sklearn.datasets.load_digits) + - Dataset: scikit learn's [iris dataset](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_iris.html) - Simple example of using automated ML for classification with ONNX models - Uses local compute for training +- [auto-ml-remote-amlcompute-with-onnx.ipynb](remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb) + - Dataset: scikit learn's [iris dataset](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_iris.html) + - Example of using automated ML for classification using remote AmlCompute for training + - Train the models with ONNX compatible config on + - Parallel execution of iterations + - Async tracking of progress + - Cancelling individual iterations or entire run + - Retrieving the ONNX models and do the inference with them + - [auto-ml-bank-marketing-subscribers-with-deployment.ipynb](bank-marketing-subscribers-with-deployment/auto-ml-bank-marketing-with-deployment.ipynb) - Dataset: UCI's [bank marketing dataset](https://www.kaggle.com/janiobachmann/bank-marketing-dataset) - Simple example of using automated ML for classification to predict term deposit subscriptions for a bank diff --git a/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb b/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb index 7a44c359..8827a394 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb @@ -224,7 +224,7 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_train.csv\"\n", - "dflow = dprep.auto_read_file(data)\n", + "dflow = dprep.read_csv(data, infer_column_types=True)\n", "dflow.get_profile()\n", "X_train = dflow.drop_columns(columns=['y'])\n", "y_train = dflow.keep_columns(columns=['y'], validate_column_exists=True)\n", @@ -630,7 +630,7 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_validate.csv\"\n", - "dflow = dprep.auto_read_file(data)\n", + "dflow = dprep.read_csv(data, infer_column_types=True)\n", "dflow.get_profile()\n", "X_test = dflow.drop_columns(columns=['y'])\n", "y_test = dflow.keep_columns(columns=['y'], validate_column_exists=True)\n", diff --git a/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb b/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb index 00a03fa6..73c96856 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb @@ -221,7 +221,7 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/creditcard.csv\"\n", - "dflow = dprep.auto_read_file(data)\n", + "dflow = dprep.read_csv(data, infer_column_types=True)\n", "dflow.get_profile()\n", "X = dflow.drop_columns(columns=['Class'])\n", "y = dflow.keep_columns(columns=['Class'], validate_column_exists=True)\n", diff --git a/how-to-use-azureml/automated-machine-learning/classification-with-onnx/auto-ml-classification-with-onnx.ipynb b/how-to-use-azureml/automated-machine-learning/classification-with-onnx/auto-ml-classification-with-onnx.ipynb index 6a0032af..63b71c31 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-with-onnx/auto-ml-classification-with-onnx.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-with-onnx/auto-ml-classification-with-onnx.ipynb @@ -29,7 +29,6 @@ "1. [Data](#Data)\n", "1. [Train](#Train)\n", "1. [Results](#Results)\n", - "1. [Test](#Test)\n", "\n" ] }, @@ -39,7 +38,7 @@ "source": [ "## Introduction\n", "\n", - "In this example we use the scikit-learn's [digit dataset](http://scikit-learn.org/stable/datasets/index.html#optical-recognition-of-handwritten-digits-dataset) to showcase how you can use AutoML for a simple classification problem.\n", + "In this example we use the scikit-learn's [iris dataset](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_iris.html) to showcase how you can use AutoML for a simple classification problem.\n", "\n", "Make sure you have executed the [configuration](../../../configuration.ipynb) before running this notebook.\n", "\n", @@ -49,7 +48,8 @@ "1. Create an `Experiment` in an existing `Workspace`.\n", "2. Configure AutoML using `AutoMLConfig`.\n", "3. Train the model using local compute with ONNX compatible config on.\n", - "4. Explore the results and save the ONNX model." + "4. Explore the results and save the ONNX model.\n", + "5. Inference with the ONNX model." ] }, { @@ -156,11 +156,11 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Train with enable ONNX compatible models config on\n", + "## Train\n", "\n", "Instantiate an `AutoMLConfig` object to specify the settings and data used to run the experiment.\n", "\n", - "Set the parameter enable_onnx_compatible_models=True, if you also want to generate the ONNX compatible models. Please note, the forecasting task and TensorFlow models are not ONNX compatible yet.\n", + "**Note:** Set the parameter enable_onnx_compatible_models=True, if you also want to generate the ONNX compatible models. Please note, the forecasting task and TensorFlow models are not ONNX compatible yet.\n", "\n", "|Property|Description|\n", "|-|-|\n", diff --git a/how-to-use-azureml/automated-machine-learning/classification-with-whitelisting/auto-ml-classification-with-whitelisting.ipynb b/how-to-use-azureml/automated-machine-learning/classification-with-whitelisting/auto-ml-classification-with-whitelisting.ipynb index 2723a277..59d6d57e 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-with-whitelisting/auto-ml-classification-with-whitelisting.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-with-whitelisting/auto-ml-classification-with-whitelisting.ipynb @@ -41,7 +41,7 @@ "In this example we use the scikit-learn's [digit dataset](http://scikit-learn.org/stable/datasets/index.html#optical-recognition-of-handwritten-digits-dataset) to showcase how you can use AutoML for a simple classification problem.\n", "\n", "Make sure you have executed the [configuration](../../../configuration.ipynb) before running this notebook.\n", - "This notebooks shows how can automl can be trained on a a selected list of models,see the readme.md for the models.\n", + "This notebooks shows how can automl can be trained on a selected list of models, see the readme.md for the models.\n", "This trains the model exclusively on tensorflow based models.\n", "\n", "In this notebook you will learn how to:\n", diff --git a/how-to-use-azureml/automated-machine-learning/classification/auto-ml-classification.ipynb b/how-to-use-azureml/automated-machine-learning/classification/auto-ml-classification.ipynb index cc5fd649..38a02b26 100644 --- a/how-to-use-azureml/automated-machine-learning/classification/auto-ml-classification.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification/auto-ml-classification.ipynb @@ -258,7 +258,11 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "tags": [ + "widget-rundetails-sample" + ] + }, "outputs": [], "source": [ "from azureml.widgets import RunDetails\n", diff --git a/how-to-use-azureml/automated-machine-learning/dataprep-remote-execution/auto-ml-dataprep-remote-execution.ipynb b/how-to-use-azureml/automated-machine-learning/dataprep-remote-execution/auto-ml-dataprep-remote-execution.ipynb index aa85a399..02ae40f7 100644 --- a/how-to-use-azureml/automated-machine-learning/dataprep-remote-execution/auto-ml-dataprep-remote-execution.ipynb +++ b/how-to-use-azureml/automated-machine-learning/dataprep-remote-execution/auto-ml-dataprep-remote-execution.ipynb @@ -128,7 +128,7 @@ "# You can also use `read_csv` and `to_*` transformations to read (with overridable delimiter)\n", "# and convert column types manually.\n", "example_data = 'https://dprepdata.blob.core.windows.net/demo/crime0-random.csv'\n", - "dflow = dprep.auto_read_file(example_data).skip(1) # Remove the header row.\n", + "dflow = dprep.read_csv(example_data, infer_column_types=True)\n", "dflow.get_profile()" ] }, diff --git a/how-to-use-azureml/automated-machine-learning/exploring-previous-runs/auto-ml-exploring-previous-runs.ipynb b/how-to-use-azureml/automated-machine-learning/exploring-previous-runs/auto-ml-exploring-previous-runs.ipynb index 3e05980f..61ece379 100644 --- a/how-to-use-azureml/automated-machine-learning/exploring-previous-runs/auto-ml-exploring-previous-runs.ipynb +++ b/how-to-use-azureml/automated-machine-learning/exploring-previous-runs/auto-ml-exploring-previous-runs.ipynb @@ -197,12 +197,12 @@ "display(HTML('

    Iterations

    '))\n", "RunDetails(ml_run).show() \n", "\n", - "children = list(ml_run.get_children())\n", + "all_metrics = ml_run.get_metrics(recursive=True)\n", "metricslist = {}\n", - "for run in children:\n", - " properties = run.get_properties()\n", - " metrics = {k: v for k, v in run.get_metrics().items() if isinstance(v, float)}\n", - " metricslist[int(properties['iteration'])] = metrics\n", + "for run_id, metrics in all_metrics.items():\n", + " iteration = int(run_id.split('_')[-1])\n", + " float_metrics = {k: v for k, v in metrics.items() if isinstance(v, float)}\n", + " metricslist[iteration] = float_metrics\n", "\n", "rundata = pd.DataFrame(metricslist).sort_index(1)\n", "display(HTML('

    Metrics

    '))\n", diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb index ca6f669a..33d45416 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-bike-share/auto-ml-forecasting-bike-share.ipynb @@ -345,7 +345,10 @@ "metadata": {}, "outputs": [], "source": [ - "fitted_model.named_steps['timeseriestransformer'].get_featurization_summary()" + "# Get the featurization summary as a list of JSON\n", + "featurization_summary = fitted_model.named_steps['timeseriestransformer'].get_featurization_summary()\n", + "# View the featurization summary as a pandas dataframe\n", + "pd.DataFrame.from_records(featurization_summary)" ] }, { @@ -522,7 +525,7 @@ "print('MAPE: %.2f' % MAPE(df_all[target_column_name], df_all['predicted']))\n", "\n", "# Plot outputs\n", - "%matplotlib notebook\n", + "%matplotlib inline\n", "test_pred = plt.scatter(df_all[target_column_name], df_all['predicted'], color='b')\n", "test_test = plt.scatter(y_test, y_test, color='g')\n", "plt.legend((test_pred, test_test), ('prediction', 'truth'), loc='upper left', fontsize=8)\n", @@ -564,7 +567,7 @@ "df_all_APE = df_all.assign(APE=APE(df_all[target_column_name], df_all['predicted']))\n", "APEs = [df_all_APE[df_all['horizon_origin'] == h].APE.values for h in range(1, max_horizon + 1)]\n", "\n", - "%matplotlib notebook\n", + "%matplotlib inline\n", "plt.boxplot(APEs)\n", "plt.yscale('log')\n", "plt.xlabel('horizon')\n", diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb index 69ad7ee8..12d6ae16 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb @@ -432,7 +432,7 @@ "print('MAPE: %.2f' % MAPE(df_all[target_column_name], df_all['predicted']))\n", "\n", "# Plot outputs\n", - "%matplotlib notebook\n", + "%matplotlib inline\n", "pred, = plt.plot(df_all[time_column_name], df_all['predicted'], color='b')\n", "actual, = plt.plot(df_all[time_column_name], df_all[target_column_name], color='g')\n", "plt.xticks(fontsize=8)\n", @@ -543,7 +543,7 @@ "print('MAPE: %.2f' % MAPE(df_lags[target_column_name], df_lags['predicted']))\n", "\n", "# Plot outputs\n", - "%matplotlib notebook\n", + "%matplotlib inline\n", "pred, = plt.plot(df_lags[time_column_name], df_lags['predicted'], color='b')\n", "actual, = plt.plot(df_lags[time_column_name], df_lags[target_column_name], color='g')\n", "plt.xticks(fontsize=8)\n", diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb index f1a55044..629edb02 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb @@ -463,7 +463,7 @@ "# Plot outputs\n", "import matplotlib.pyplot as plt\n", "\n", - "%matplotlib notebook\n", + "%matplotlib inline\n", "test_pred = plt.scatter(df_all[target_column_name], df_all['predicted'], color='b')\n", "test_test = plt.scatter(y_test, y_test, color='g')\n", "plt.legend((test_pred, test_test), ('prediction', 'truth'), loc='upper left', fontsize=8)\n", diff --git a/how-to-use-azureml/automated-machine-learning/missing-data-blacklist-early-termination/auto-ml-missing-data-blacklist-early-termination.ipynb b/how-to-use-azureml/automated-machine-learning/missing-data-blacklist-early-termination/auto-ml-missing-data-blacklist-early-termination.ipynb index 840cdd80..d407d90f 100644 --- a/how-to-use-azureml/automated-machine-learning/missing-data-blacklist-early-termination/auto-ml-missing-data-blacklist-early-termination.ipynb +++ b/how-to-use-azureml/automated-machine-learning/missing-data-blacklist-early-termination/auto-ml-missing-data-blacklist-early-termination.ipynb @@ -360,7 +360,10 @@ "metadata": {}, "outputs": [], "source": [ - "fitted_model.named_steps['datatransformer'].get_featurization_summary()" + "# Get the featurization summary as a list of JSON\n", + "featurization_summary = fitted_model.named_steps['datatransformer'].get_featurization_summary()\n", + "# View the featurization summary as a pandas dataframe\n", + "pd.DataFrame.from_records(featurization_summary)" ] }, { diff --git a/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb b/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb index 88d8bba0..4868b9ea 100644 --- a/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb +++ b/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb @@ -216,7 +216,7 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/compresive_strength_concrete.csv\"\n", - "dflow = dprep.auto_read_file(data)\n", + "dflow = dprep.read_csv(data, infer_column_types=True)\n", "dflow.get_profile()\n", "X = dflow.drop_columns(columns=['CONCRETE'])\n", "y = dflow.keep_columns(columns=['CONCRETE'], validate_column_exists=True)\n", diff --git a/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb b/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb index 0cebc885..cb0dd394 100644 --- a/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb +++ b/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb @@ -216,7 +216,7 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/machineData.csv\"\n", - "dflow = dprep.auto_read_file(data)\n", + "dflow = dprep.read_csv(data, infer_column_types=True)\n", "dflow.get_profile()\n", "X = dflow.drop_columns(columns=['ERP'])\n", "y = dflow.keep_columns(columns=['ERP'], validate_column_exists=True)\n", diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb new file mode 100644 index 00000000..5ca334e9 --- /dev/null +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb @@ -0,0 +1,554 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Automated Machine Learning\n", + "_**Remote Execution using AmlCompute**_\n", + "\n", + "## Contents\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Data](#Data)\n", + "1. [Train](#Train)\n", + "1. [Results](#Results)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "In this example we use the scikit-learn's [iris dataset](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_iris.html) to showcase how you can use AutoML for a simple classification problem.\n", + "\n", + "Make sure you have executed the [configuration](../../../configuration.ipynb) before running this notebook.\n", + "\n", + "In this notebook you would see\n", + "1. Create an `Experiment` in an existing `Workspace`.\n", + "2. Create or Attach existing AmlCompute to a workspace.\n", + "3. Configure AutoML using `AutoMLConfig`.\n", + "4. Train the model using AmlCompute with ONNX compatible config on.\n", + "5. Explore the results and save the ONNX model.\n", + "6. Inference with the ONNX model.\n", + "\n", + "In addition this notebook showcases the following features\n", + "- **Parallel** executions for iterations\n", + "- **Asynchronous** tracking of progress\n", + "- **Cancellation** of individual iterations or the entire run\n", + "- Retrieving models for any iteration or logged metric\n", + "- Specifying AutoML settings as `**kwargs`" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup\n", + "\n", + "As part of the setup you have already created an Azure ML `Workspace` object. For AutoML you will need to create an `Experiment` object, which is a named object in a `Workspace` used to run experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import logging\n", + "import os\n", + "import csv\n", + "\n", + "from matplotlib import pyplot as plt\n", + "import numpy as np\n", + "import pandas as pd\n", + "from sklearn import datasets\n", + "from sklearn.model_selection import train_test_split\n", + "\n", + "import azureml.core\n", + "from azureml.core.experiment import Experiment\n", + "from azureml.core.workspace import Workspace\n", + "from azureml.train.automl import AutoMLConfig\n", + "import azureml.dataprep as dprep" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ws = Workspace.from_config()\n", + "\n", + "# Choose a name for the run history container in the workspace.\n", + "experiment_name = 'automl-remote-amlcompute-with-onnx'\n", + "project_folder = './project'\n", + "\n", + "experiment = Experiment(ws, experiment_name)\n", + "\n", + "output = {}\n", + "output['SDK version'] = azureml.core.VERSION\n", + "output['Subscription ID'] = ws.subscription_id\n", + "output['Workspace Name'] = ws.name\n", + "output['Resource Group'] = ws.resource_group\n", + "output['Location'] = ws.location\n", + "output['Project Directory'] = project_folder\n", + "output['Experiment Name'] = experiment.name\n", + "pd.set_option('display.max_colwidth', -1)\n", + "outputDf = pd.DataFrame(data = output, index = [''])\n", + "outputDf.T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create or Attach existing AmlCompute\n", + "You will need to create a [compute target](https://docs.microsoft.com/azure/machine-learning/service/concept-azure-machine-learning-architecture#compute-target) for your AutoML run. In this tutorial, you create `AmlCompute` as your training compute resource.\n", + "\n", + "**Creation of AmlCompute takes approximately 5 minutes.** If the AmlCompute with that name is already in your workspace this code will skip the creation process.\n", + "\n", + "As with other Azure services, there are limits on certain resources (e.g. AmlCompute) associated with the Azure Machine Learning service. Please read [this article](https://docs.microsoft.com/en-us/azure/machine-learning/service/how-to-manage-quotas) on the default limits and how to request more quota." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import AmlCompute\n", + "from azureml.core.compute import ComputeTarget\n", + "\n", + "# Choose a name for your cluster.\n", + "amlcompute_cluster_name = \"cpu-cluster\"\n", + "\n", + "found = False\n", + "# Check if this compute target already exists in the workspace.\n", + "cts = ws.compute_targets\n", + "if amlcompute_cluster_name in cts and cts[amlcompute_cluster_name].type == 'AmlCompute':\n", + " found = True\n", + " print('Found existing compute target.')\n", + " compute_target = cts[amlcompute_cluster_name]\n", + "\n", + "if not found:\n", + " print('Creating a new compute target...')\n", + " provisioning_config = AmlCompute.provisioning_configuration(vm_size = \"STANDARD_D2_V2\", # for GPU, use \"STANDARD_NC6\"\n", + " #vm_priority = 'lowpriority', # optional\n", + " max_nodes = 6)\n", + "\n", + " # Create the cluster.\\n\",\n", + " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", + "\n", + " # Can poll for a minimum number of nodes and for a specific timeout.\n", + " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", + " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "\n", + " # For a more detailed view of current AmlCompute status, use get_status()." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Data\n", + "For remote executions, you need to make the data accessible from the remote compute.\n", + "This can be done by uploading the data to DataStore.\n", + "In this example, we upload scikit-learn's [load_iris](https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_iris.html) data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "iris = datasets.load_iris()\n", + "\n", + "if not os.path.isdir('data'):\n", + " os.mkdir('data')\n", + "\n", + "if not os.path.exists(project_folder):\n", + " os.makedirs(project_folder)\n", + "\n", + "X_train, X_test, y_train, y_test = train_test_split(iris.data, \n", + " iris.target, \n", + " test_size=0.2, \n", + " random_state=0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Ensure the x_train and x_test are pandas DataFrame." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Convert the X_train and X_test to pandas DataFrame and set column names,\n", + "# This is needed for initializing the input variable names of ONNX model, \n", + "# and the prediction with the ONNX model using the inference helper.\n", + "X_train = pd.DataFrame(X_train, columns=['c1', 'c2', 'c3', 'c4'])\n", + "X_test = pd.DataFrame(X_test, columns=['c1', 'c2', 'c3', 'c4'])\n", + "y_train = pd.DataFrame(y_train, columns=['label'])\n", + "\n", + "X_train.to_csv(\"data/X_train.csv\", index=False)\n", + "y_train.to_csv(\"data/y_train.csv\", index=False)\n", + "\n", + "ds = ws.get_default_datastore()\n", + "ds.upload(src_dir='./data', target_path='irisdata', overwrite=True, show_progress=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import RunConfiguration\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "import pkg_resources\n", + "\n", + "# create a new RunConfig object\n", + "conda_run_config = RunConfiguration(framework=\"python\")\n", + "\n", + "# Set compute target to AmlCompute\n", + "conda_run_config.target = compute_target\n", + "conda_run_config.environment.docker.enabled = True\n", + "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", + "\n", + "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", + "\n", + "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy','py-xgboost<=0.80'])\n", + "conda_run_config.environment.python.conda_dependencies = cd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Dprep reference\n", + "\n", + "Defined X and y as dprep references, which are passed to automated machine learning in the AutoMLConfig." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "X = dprep.read_csv(path=ds.path('irisdata/X_train.csv'), infer_column_types=True)\n", + "y = dprep.read_csv(path=ds.path('irisdata/y_train.csv'), infer_column_types=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train\n", + "\n", + "You can specify `automl_settings` as `**kwargs` as well. Also note that you can use a `get_data()` function for local excutions too.\n", + "\n", + "**Note:** Set the parameter enable_onnx_compatible_models=True, if you also want to generate the ONNX compatible models. Please note, the forecasting task and TensorFlow models are not ONNX compatible yet.\n", + "\n", + "**Note:** When using AmlCompute, you can't pass Numpy arrays directly to the fit method.\n", + "\n", + "|Property|Description|\n", + "|-|-|\n", + "|**primary_metric**|This is the metric that you want to optimize. Classification supports the following primary metrics:
    accuracy
    AUC_weighted
    average_precision_score_weighted
    norm_macro_recall
    precision_score_weighted|\n", + "|**iteration_timeout_minutes**|Time limit in minutes for each iteration.|\n", + "|**iterations**|Number of iterations. In each iteration AutoML trains a specific pipeline with the data.|\n", + "|**n_cross_validations**|Number of cross validation splits.|\n", + "|**max_concurrent_iterations**|Maximum number of iterations that would be executed in parallel. This should be less than the number of cores on the DSVM.|\n", + "|**enable_onnx_compatible_models**|Enable the ONNX compatible models in the experiment.|" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Set the preprocess=True, currently the InferenceHelper only supports this mode." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "automl_settings = {\n", + " \"iteration_timeout_minutes\": 10,\n", + " \"iterations\": 10,\n", + " \"n_cross_validations\": 5,\n", + " \"primary_metric\": 'AUC_weighted',\n", + " \"preprocess\": True,\n", + " \"max_concurrent_iterations\": 5,\n", + " \"verbosity\": logging.INFO\n", + "}\n", + "\n", + "automl_config = AutoMLConfig(task = 'classification',\n", + " debug_log = 'automl_errors.log',\n", + " path = project_folder,\n", + " run_configuration=conda_run_config,\n", + " X = X,\n", + " y = y,\n", + " enable_onnx_compatible_models=True, # This will generate ONNX compatible models.\n", + " **automl_settings\n", + " )" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Call the `submit` method on the experiment object and pass the run configuration. For remote runs the execution is asynchronous, so you will see the iterations get populated as they complete. You can interact with the widgets and models even when the experiment is running to retrieve the best model up to that point. Once you are satisfied with the model, you can cancel a particular iteration or the whole run.\n", + "In this example, we specify `show_output = False` to suppress console output while the run is in progress." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_run = experiment.submit(automl_config, show_output = False)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_run" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Results\n", + "\n", + "#### Loading executed runs\n", + "In case you need to load a previously executed run, enable the cell below and replace the `run_id` value." + ] + }, + { + "cell_type": "raw", + "metadata": {}, + "source": [ + "remote_run = AutoMLRun(experiment = experiment, run_id = 'AutoML_5db13491-c92a-4f1d-b622-8ab8d973a058')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Widget for Monitoring Runs\n", + "\n", + "The widget will first report a \"loading\" status while running the first iteration. After completing the first iteration, an auto-updating graph and table will be shown. The widget will refresh once per minute, so you should see the graph update as child runs complete.\n", + "\n", + "You can click on a pipeline to see run properties and output logs. Logs are also available on the DSVM under `/tmp/azureml_run/{iterationid}/azureml-logs`\n", + "\n", + "**Note:** The widget displays a link at the bottom. Use this link to open a web interface to explore the individual run details." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_run" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.widgets import RunDetails\n", + "RunDetails(remote_run).show() " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Wait until the run finishes.\n", + "remote_run.wait_for_completion(show_output = True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Cancelling Runs\n", + "\n", + "You can cancel ongoing remote runs using the `cancel` and `cancel_iteration` functions." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Cancel the ongoing experiment and stop scheduling new iterations.\n", + "# remote_run.cancel()\n", + "\n", + "# Cancel iteration 1 and move onto iteration 2.\n", + "# remote_run.cancel_iteration(1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Retrieve the Best ONNX Model\n", + "\n", + "Below we select the best pipeline from our iterations. The `get_output` method returns the best run and the fitted model. The Model includes the pipeline and any pre-processing. Overloads on `get_output` allow you to retrieve the best run and fitted model for *any* logged metric or for a particular *iteration*.\n", + "\n", + "Set the parameter return_onnx_model=True to retrieve the best ONNX model, instead of the Python model." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "best_run, onnx_mdl = remote_run.get_output(return_onnx_model=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Save the best ONNX model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.automl.core.onnx_convert import OnnxConverter\n", + "onnx_fl_path = \"./best_model.onnx\"\n", + "OnnxConverter.save_onnx_model(onnx_mdl, onnx_fl_path)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Predict with the ONNX model, using onnxruntime package" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import sys\n", + "import json\n", + "from azureml.automl.core.onnx_convert import OnnxConvertConstants\n", + "from azureml.train.automl import constants\n", + "\n", + "if sys.version_info < OnnxConvertConstants.OnnxIncompatiblePythonVersion:\n", + " python_version_compatible = True\n", + "else:\n", + " python_version_compatible = False\n", + "\n", + "try:\n", + " import onnxruntime\n", + " from azureml.automl.core.onnx_convert import OnnxInferenceHelper \n", + " onnxrt_present = True\n", + "except ImportError:\n", + " onnxrt_present = False\n", + "\n", + "def get_onnx_res(run):\n", + " res_path = 'onnx_resource.json'\n", + " run.download_file(name=constants.MODEL_RESOURCE_PATH_ONNX, output_file_path=res_path)\n", + " with open(res_path) as f:\n", + " onnx_res = json.load(f)\n", + " return onnx_res\n", + "\n", + "if onnxrt_present and python_version_compatible: \n", + " mdl_bytes = onnx_mdl.SerializeToString()\n", + " onnx_res = get_onnx_res(best_run)\n", + "\n", + " onnxrt_helper = OnnxInferenceHelper(mdl_bytes, onnx_res)\n", + " pred_onnx, pred_prob_onnx = onnxrt_helper.predict(X_test)\n", + "\n", + " print(pred_onnx)\n", + " print(pred_prob_onnx)\n", + "else:\n", + " if not python_version_compatible:\n", + " print('Please use Python version 3.6 or 3.7 to run the inference helper.') \n", + " if not onnxrt_present:\n", + " print('Please install the onnxruntime package to do the prediction with ONNX model.')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "savitam" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.6" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml new file mode 100644 index 00000000..6beced4e --- /dev/null +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml @@ -0,0 +1,9 @@ +name: auto-ml-remote-amlcompute-with-onnx +dependencies: +- pip: + - azureml-sdk + - azureml-train-automl + - azureml-widgets + - matplotlib + - pandas_ml + - onnxruntime diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb b/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb index 71553abf..82d2b610 100644 --- a/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb @@ -233,8 +233,8 @@ "metadata": {}, "outputs": [], "source": [ - "X = dprep.auto_read_file(path=ds.path('digitsdata/X_train.csv'))\n", - "y = dprep.auto_read_file(path=ds.path('digitsdata/y_train.csv'))" + "X = dprep.read_csv(path=ds.path('digitsdata/X_train.csv'), infer_column_types=True)\n", + "y = dprep.read_csv(path=ds.path('digitsdata/y_train.csv'), infer_column_types=True)" ] }, { diff --git a/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb b/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb index d38240d6..04223832 100644 --- a/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb +++ b/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb @@ -593,7 +593,10 @@ "metadata": {}, "outputs": [], "source": [ - "fitted_model.named_steps['datatransformer'].get_featurization_summary()" + "# Get the featurization summary as a list of JSON\n", + "featurization_summary = fitted_model.named_steps['datatransformer'].get_featurization_summary()\n", + "# View the featurization summary as a pandas dataframe\n", + "pd.DataFrame.from_records(featurization_summary)" ] }, { diff --git a/how-to-use-azureml/azure-databricks/databricks-as-remote-compute-target/aml-pipelines-use-databricks-as-compute-target.ipynb b/how-to-use-azureml/azure-databricks/databricks-as-remote-compute-target/aml-pipelines-use-databricks-as-compute-target.ipynb index e5b071da..3e2ea7ac 100644 --- a/how-to-use-azureml/azure-databricks/databricks-as-remote-compute-target/aml-pipelines-use-databricks-as-compute-target.ipynb +++ b/how-to-use-azureml/azure-databricks/databricks-as-remote-compute-target/aml-pipelines-use-databricks-as-compute-target.ipynb @@ -13,7 +13,7 @@ "metadata": {}, "source": [ "# Using Databricks as a Compute Target from Azure Machine Learning Pipeline\n", - "To use Databricks as a compute target from [Azure Machine Learning Pipeline](https://docs.microsoft.com/en-us/azure/machine-learning/service/concept-ml-pipelines), a [DatabricksStep](https://docs.microsoft.com/en-us/python/api/azureml-pipeline-steps/azureml.pipeline.steps.databricks_step.databricksstep?view=azure-ml-py) is used. This notebook demonstrates the use of DatabricksStep in Azure Machine Learning Pipeline.\n", + "To use Databricks as a compute target from [Azure Machine Learning Pipeline](https://aka.ms/pl-concept), a [DatabricksStep](https://docs.microsoft.com/en-us/python/api/azureml-pipeline-steps/azureml.pipeline.steps.databricks_step.databricksstep?view=azure-ml-py) is used. This notebook demonstrates the use of DatabricksStep in Azure Machine Learning Pipeline.\n", "\n", "The notebook will show:\n", "1. Running an arbitrary Databricks notebook that the customer has in Databricks workspace\n", @@ -675,7 +675,7 @@ "metadata": {}, "source": [ "# Next: ADLA as a Compute Target\n", - "To use ADLA as a compute target from Azure Machine Learning Pipeline, a AdlaStep is used. This [notebook](./aml-pipelines-use-adla-as-compute-target.ipynb) demonstrates the use of AdlaStep in Azure Machine Learning Pipeline." + "To use ADLA as a compute target from Azure Machine Learning Pipeline, a AdlaStep is used. This [notebook](https://aka.ms/pl-adla) demonstrates the use of AdlaStep in Azure Machine Learning Pipeline." ] }, { diff --git a/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb b/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb index bdb88a42..1175ddfd 100644 --- a/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb +++ b/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb @@ -77,7 +77,7 @@ "from azureml.core import Workspace\n", "\n", "ws = Workspace.from_config()\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" ] }, { @@ -108,11 +108,11 @@ "source": [ "from azureml.core.model import Model\n", "\n", - "model = Model.register(model_path = \"sklearn_regression_model.pkl\",\n", - " model_name = \"sklearn_regression_model.pkl\",\n", - " tags = {'area': \"diabetes\", 'type': \"regression\"},\n", - " description = \"Ridge regression model to predict diabetes\",\n", - " workspace = ws)" + "model = Model.register(model_path=\"sklearn_regression_model.pkl\",\n", + " model_name=\"sklearn_regression_model.pkl\",\n", + " tags={'area': \"diabetes\", 'type': \"regression\"},\n", + " description=\"Ridge regression model to predict diabetes\",\n", + " workspace=ws)" ] }, { @@ -177,7 +177,7 @@ "from azureml.core.webservice import AciWebservice, Webservice\n", "from azureml.exceptions import WebserviceException\n", "\n", - "deployment_config = AciWebservice.deploy_configuration(cpu_cores = 1, memory_gb = 1)\n", + "deployment_config = AciWebservice.deploy_configuration(cpu_cores=1, memory_gb=1)\n", "aci_service_name = 'aciservice1'\n", "\n", "try:\n", @@ -215,7 +215,7 @@ " [10,9,8,7,6,5,4,3,2,1]\n", "]})\n", "\n", - "test_sample_encoded = bytes(test_sample,encoding = 'utf8')\n", + "test_sample_encoded = bytes(test_sample, encoding='utf8')\n", "prediction = service.run(input_data=test_sample_encoded)\n", "print(prediction)" ] @@ -247,15 +247,38 @@ "source": [ "### Model Profiling\n", "\n", - "you can also take advantage of profiling feature for model\n", + "You can also take advantage of the profiling feature to estimate CPU and memory requirements for models.\n", "\n", "```python\n", - "\n", - "profile = model.profile(ws, \"profilename\", [model], inference_config, test_sample)\n", + "profile = Model.profile(ws, \"profilename\", [model], inference_config, test_sample)\n", "profile.wait_for_profiling(True)\n", "profiling_results = profile.get_results()\n", "print(profiling_results)\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Model Packaging\n", "\n", + "If you want to build a Docker image that encapsulates your model and its dependencies, you can use the model packaging option. The output image will be pushed to your workspace's ACR.\n", + "\n", + "You must include an Environment object in your inference configuration to use `Model.package()`.\n", + "\n", + "```python\n", + "package = Model.package(ws, [model], inference_config)\n", + "package.wait_for_creation(show_output=True) # Or show_output=False to hide the Docker build logs.\n", + "package.pull()\n", + "```\n", + "\n", + "Instead of a fully-built image, you can also generate a Dockerfile and download all the assets needed to build an image on top of your Environment.\n", + "\n", + "```python\n", + "package = Model.package(ws, [model], inference_config, generate_dockerfile=True)\n", + "package.wait_for_creation(show_output=True)\n", + "package.save(\"./local_context_dir\")\n", "```" ] } diff --git a/how-to-use-azureml/deploy-to-local/register-model-deploy-local-advanced.ipynb b/how-to-use-azureml/deploy-to-local/register-model-deploy-local-advanced.ipynb index 86496502..d4c61f96 100644 --- a/how-to-use-azureml/deploy-to-local/register-model-deploy-local-advanced.ipynb +++ b/how-to-use-azureml/deploy-to-local/register-model-deploy-local-advanced.ipynb @@ -72,7 +72,7 @@ "from azureml.core import Workspace\n", "\n", "ws = Workspace.from_config()\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" ] }, { @@ -103,11 +103,11 @@ "source": [ "from azureml.core.model import Model\n", "\n", - "model = Model.register(model_path = \"sklearn_regression_model.pkl\",\n", - " model_name = \"sklearn_regression_model.pkl\",\n", - " tags = {'area': \"diabetes\", 'type': \"regression\"},\n", - " description = \"Ridge regression model to predict diabetes\",\n", - " workspace = ws)" + "model = Model.register(model_path=\"sklearn_regression_model.pkl\",\n", + " model_name=\"sklearn_regression_model.pkl\",\n", + " tags={'area': \"diabetes\", 'type': \"regression\"},\n", + " description=\"Ridge regression model to predict diabetes\",\n", + " workspace=ws)" ] }, { @@ -127,10 +127,10 @@ "\n", "source_directory = \"C:/abc\"\n", "\n", - "os.makedirs(source_directory, exist_ok = True)\n", - "os.makedirs(\"C:/abc/x/y\", exist_ok = True)\n", - "os.makedirs(\"C:/abc/env\", exist_ok = True)\n", - "os.makedirs(\"C:/abc/dockerstep\", exist_ok = True)" + "os.makedirs(source_directory, exist_ok=True)\n", + "os.makedirs(\"C:/abc/x/y\", exist_ok=True)\n", + "os.makedirs(\"C:/abc/env\", exist_ok=True)\n", + "os.makedirs(\"C:/abc/dockerstep\", exist_ok=True)" ] }, { @@ -253,7 +253,7 @@ "from azureml.core.model import InferenceConfig\n", "\n", "inference_config = InferenceConfig(source_directory=\"C:/abc\",\n", - " runtime= \"python\", \n", + " runtime=\"python\", \n", " entry_script=\"x/y/score.py\",\n", " conda_file=\"env/myenv.yml\", \n", " extra_docker_file_steps=\"dockerstep/customDockerStep.txt\")" @@ -271,15 +271,10 @@ "\n", "NOTE:\n", "\n", - "we require docker running with linux container. If you are running Docker for Windows, you need to ensure the Linux Engine is running\n", + "The Docker image runs as a Linux container. If you are running Docker for Windows, you need to ensure the Linux Engine is running:\n", "\n", - " powershell command to switch to linux engine\n", - " & 'C:\\Program Files\\Docker\\Docker\\DockerCli.exe' -SwitchLinuxEngine\n", - "\n", - "and c drive is shared https://docs.docker.com/docker-for-windows/#shared-drives\n", - "sometimes you have to reshare c drive as docker \n", - "\n", - "" + " # PowerShell command to switch to Linux engine\n", + " & 'C:\\Program Files\\Docker\\Docker\\DockerCli.exe' -SwitchLinuxEngine" ] }, { @@ -295,7 +290,7 @@ "source": [ "from azureml.core.webservice import LocalWebservice\n", "\n", - "#this is optional, if not provided we choose random port\n", + "# This is optional, if not provided Docker will choose a random unused port.\n", "deployment_config = LocalWebservice.deploy_configuration(port=6789)\n", "\n", "local_service = Model.deploy(ws, \"test\", [model], inference_config, deployment_config)\n", @@ -427,9 +422,8 @@ "local_service.reload()\n", "print(\"--------------------------------------------------------------\")\n", "\n", - "# after reload now if you call run this will return updated return message\n", - "\n", - "print(local_service.run(input_data=sample_input))" + "# After calling reload(), run() will return the updated message.\n", + "local_service.run(input_data=sample_input)" ] }, { @@ -442,9 +436,9 @@ "\n", "```python\n", "\n", - "local_service.update(models = [SomeOtherModelObject],\n", - " deployment_config = local_config,\n", - " inference_config = inference_config)\n", + "local_service.update(models=[SomeOtherModelObject],\n", + " deployment_config=local_config,\n", + " inference_config=inference_config)\n", "```" ] }, @@ -468,7 +462,7 @@ "metadata": { "authors": [ { - "name": "raymondl" + "name": "keriehm" } ], "kernelspec": { diff --git a/how-to-use-azureml/deploy-to-local/register-model-deploy-local.ipynb b/how-to-use-azureml/deploy-to-local/register-model-deploy-local.ipynb index 2ef008ef..4726e141 100644 --- a/how-to-use-azureml/deploy-to-local/register-model-deploy-local.ipynb +++ b/how-to-use-azureml/deploy-to-local/register-model-deploy-local.ipynb @@ -68,7 +68,7 @@ "from azureml.core import Workspace\n", "\n", "ws = Workspace.from_config()\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep = '\\n')" + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" ] }, { @@ -99,11 +99,31 @@ "source": [ "from azureml.core.model import Model\n", "\n", - "model = Model.register(model_path = \"sklearn_regression_model.pkl\",\n", - " model_name = \"sklearn_regression_model.pkl\",\n", - " tags = {'area': \"diabetes\", 'type': \"regression\"},\n", - " description = \"Ridge regression model to predict diabetes\",\n", - " workspace = ws)" + "model = Model.register(model_path=\"sklearn_regression_model.pkl\",\n", + " model_name=\"sklearn_regression_model.pkl\",\n", + " tags={'area': \"diabetes\", 'type': \"regression\"},\n", + " description=\"Ridge regression model to predict diabetes\",\n", + " workspace=ws)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create Environment" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.conda_dependencies import CondaDependencies\n", + "from azureml.core.environment import Environment\n", + "\n", + "environment = Environment(\"LocalDeploy\")\n", + "environment.python.conda_dependencies = CondaDependencies(\"myenv.yml\")" ] }, { @@ -121,9 +141,8 @@ "source": [ "from azureml.core.model import InferenceConfig\n", "\n", - "inference_config = InferenceConfig(runtime= \"python\", \n", - " entry_script=\"score.py\",\n", - " conda_file=\"myenv.yml\")" + "inference_config = InferenceConfig(entry_script=\"score.py\",\n", + " environment=environment)" ] }, { @@ -138,15 +157,10 @@ "\n", "NOTE:\n", "\n", - "we require docker running with linux container. If you are running Docker for Windows, you need to ensure the Linux Engine is running\n", + "The Docker image runs as a Linux container. If you are running Docker for Windows, you need to ensure the Linux Engine is running:\n", "\n", - " powershell command to switch to linux engine\n", - " & 'C:\\Program Files\\Docker\\Docker\\DockerCli.exe' -SwitchLinuxEngine\n", - "\n", - "and c drive is shared https://docs.docker.com/docker-for-windows/#shared-drives\n", - "sometimes you have to reshare c drive as docker \n", - "\n", - "" + " # PowerShell command to switch to Linux engine\n", + " & 'C:\\Program Files\\Docker\\Docker\\DockerCli.exe' -SwitchLinuxEngine" ] }, { @@ -157,7 +171,7 @@ "source": [ "from azureml.core.webservice import LocalWebservice\n", "\n", - "#this is optional, if not provided we choose random port\n", + "# This is optional, if not provided Docker will choose a random unused port.\n", "deployment_config = LocalWebservice.deploy_configuration(port=6789)\n", "\n", "local_service = Model.deploy(ws, \"test\", [model], inference_config, deployment_config)\n", @@ -221,7 +235,7 @@ "\n", "sample_input = bytes(sample_input, encoding='utf-8')\n", "\n", - "print(local_service.run(input_data=sample_input))" + "local_service.run(input_data=sample_input)" ] }, { @@ -282,9 +296,8 @@ "local_service.reload()\n", "print(\"--------------------------------------------------------------\")\n", "\n", - "# after reload now if you call run this will return updated return message\n", - "\n", - "print(local_service.run(input_data=sample_input))" + "# After calling reload(), run() will return the updated message.\n", + "local_service.run(input_data=sample_input)" ] }, { @@ -296,10 +309,9 @@ "If you want to change your model(s), Conda dependencies, or deployment configuration, call `update()` to rebuild the Docker image.\n", "\n", "```python\n", - "\n", - "local_service.update(models = [SomeOtherModelObject],\n", - " deployment_config = local_config,\n", - " inference_config = inference_config)\n", + "local_service.update(models=[SomeOtherModelObject],\n", + " inference_config=inference_config,\n", + " deployment_config=local_config)\n", "```" ] }, @@ -323,7 +335,7 @@ "metadata": { "authors": [ { - "name": "raymondl" + "name": "keriehm" } ], "kernelspec": { diff --git a/how-to-use-azureml/explain-model/README.md b/how-to-use-azureml/explain-model/README.md index 4fc9147a..4973e51f 100644 --- a/how-to-use-azureml/explain-model/README.md +++ b/how-to-use-azureml/explain-model/README.md @@ -1,8 +1,11 @@ ## Using explain model APIs + +# Explain Model SDK Sample Notebooks + Follow these sample notebooks to learn: -1. [Explain tabular data locally](explain-tabular-data-local): Basic example of explaining model trained on tabular data. -4. [Explain on remote AMLCompute](explain-on-amlcompute): Explain a model on a remote AMLCompute target. -5. [Explain tabular data with Run History](explain-tabular-data-run-history): Explain a model with Run History. -7. [Explain raw features](explain-tabular-data-raw-features): Explain the raw features of a trained model. +1. [Explain tabular data locally](tabular-data): Basic examples of explaining model trained on tabular data. +2. [Explain on remote AMLCompute](azure-integration/remote-explanation): Explain a model on a remote AMLCompute target. +3. [Explain tabular data with Run History](azure-integration/run-history): Explain a model with Run History. +4. [Operationalize model explanation](azure-integration/scoring-time): Operationalize model explanation as a web service. diff --git a/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.ipynb b/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.ipynb new file mode 100644 index 00000000..485f8e71 --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.ipynb @@ -0,0 +1,645 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Save and retrieve explanations via Azure Machine Learning Run History\n", + "\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to save and retrieve classification model explanations to/from Azure Machine Learning Run History.**_\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Apply feature transformations\n", + " 1. Train a binary classification model\n", + " 1. Explain the model on raw features\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Upload model explanations to Azure Machine Learning Run History](#Upload)\n", + "1. [Download model explanations from Azure Machine Learning Run History](#Download)\n", + "1. [Visualize explanations](#Visualize)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook showcases how to explain a classification model predictions locally at training time, upload explanations to the Azure Machine Learning's run history, and download previously-uploaded explanations from the Run History.\n", + "It demonstrates the API calls that you need to make to upload/download the global and local explanations and a visualization dashboard that provides an interactive way of discovering patterns in data and downloaded explanations.\n", + "\n", + "We will showcase three tabular data explainers: TabularExplainer (SHAP), MimicExplainer (global surrogate), and PFIExplainer.\n", + "\n", + "\n", + "\n", + "Problem: IBM employee attrition classification with scikit-learn (run model explainer locally and upload explanation to the Azure Machine Learning Run History)\n", + "\n", + "1. Train a SVM classification model using Scikit-learn\n", + "2. Run 'explain_model' with AML Run History, which leverages run history service to store and manage the explanation data\n", + "---\n", + "\n", + "## Setup\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "### Run model explainer locally at training time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.pipeline import Pipeline\n", + "from sklearn.impute import SimpleImputer\n", + "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", + "from sklearn.svm import SVC\n", + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "# Explainers:\n", + "# 1. SHAP Tabular Explainer\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "# OR\n", + "\n", + "# 2. Mimic Explainer\n", + "from azureml.explain.model.mimic.mimic_explainer import MimicExplainer\n", + "# You can use one of the following four interpretable models as a global surrogate to the black box model\n", + "from azureml.explain.model.mimic.models.lightgbm_model import LGBMExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import LinearExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import SGDExplainableModel\n", + "from azureml.explain.model.mimic.models.tree_model import DecisionTreeExplainableModel\n", + "\n", + "# OR\n", + "\n", + "# 3. PFI Explainer\n", + "from azureml.explain.model.permutation.permutation_importance import PFIExplainer " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load the IBM employee attrition data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# get the IBM employee attrition dataset\n", + "outdirname = 'dataset.6.21.19'\n", + "try:\n", + " from urllib import urlretrieve\n", + "except ImportError:\n", + " from urllib.request import urlretrieve\n", + "import zipfile\n", + "zipfilename = outdirname + '.zip'\n", + "urlretrieve('https://publictestdatasets.blob.core.windows.net/data/' + zipfilename, zipfilename)\n", + "with zipfile.ZipFile(zipfilename, 'r') as unzip:\n", + " unzip.extractall('.')\n", + "attritionData = pd.read_csv('./WA_Fn-UseC_-HR-Employee-Attrition.csv')\n", + "\n", + "# Dropping Employee count as all values are 1 and hence attrition is independent of this feature\n", + "attritionData = attritionData.drop(['EmployeeCount'], axis=1)\n", + "# Dropping Employee Number since it is merely an identifier\n", + "attritionData = attritionData.drop(['EmployeeNumber'], axis=1)\n", + "\n", + "attritionData = attritionData.drop(['Over18'], axis=1)\n", + "\n", + "# Since all values are 80\n", + "attritionData = attritionData.drop(['StandardHours'], axis=1)\n", + "\n", + "# Converting target variables from string to numerical values\n", + "target_map = {'Yes': 1, 'No': 0}\n", + "attritionData[\"Attrition_numerical\"] = attritionData[\"Attrition\"].apply(lambda x: target_map[x])\n", + "target = attritionData[\"Attrition_numerical\"]\n", + "\n", + "attritionXData = attritionData.drop(['Attrition_numerical', 'Attrition'], axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Split data into train and test\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(attritionXData, \n", + " target, \n", + " test_size = 0.2,\n", + " random_state=0,\n", + " stratify=target)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Creating dummy columns for each categorical feature\n", + "categorical = []\n", + "for col, value in attritionXData.iteritems():\n", + " if value.dtype == 'object':\n", + " categorical.append(col)\n", + " \n", + "# Store the numerical columns in a list numerical\n", + "numerical = attritionXData.columns.difference(categorical) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Transform raw features" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can explain raw features by either using a `sklearn.compose.ColumnTransformer` or a list of fitted transformer tuples. The cell below uses `sklearn.compose.ColumnTransformer`. In case you want to run the example with the list of fitted transformer tuples, comment the cell below and uncomment the cell that follows after. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.compose import ColumnTransformer\n", + "\n", + "# We create the preprocessing pipelines for both numeric and categorical data.\n", + "numeric_transformer = Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='median')),\n", + " ('scaler', StandardScaler())])\n", + "\n", + "categorical_transformer = Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='constant', fill_value='missing')),\n", + " ('onehot', OneHotEncoder(handle_unknown='ignore'))])\n", + "\n", + "transformations = ColumnTransformer(\n", + " transformers=[\n", + " ('num', numeric_transformer, numerical),\n", + " ('cat', categorical_transformer, categorical)])\n", + "\n", + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', transformations),\n", + " ('classifier', SVC(kernel='linear', C = 1.0, probability=True))])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "'''\n", + "# Uncomment below if sklearn-pandas is not installed\n", + "#!pip install sklearn-pandas\n", + "from sklearn_pandas import DataFrameMapper\n", + "\n", + "# Impute, standardize the numeric features and one-hot encode the categorical features. \n", + "\n", + "\n", + "numeric_transformations = [([f], Pipeline(steps=[('imputer', SimpleImputer(strategy='median')), ('scaler', StandardScaler())])) for f in numerical]\n", + "\n", + "categorical_transformations = [([f], OneHotEncoder(handle_unknown='ignore', sparse=False)) for f in categorical]\n", + "\n", + "transformations = numeric_transformations + categorical_transformations\n", + "\n", + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', transformations),\n", + " ('classifier', SVC(kernel='linear', C = 1.0, probability=True))]) \n", + "\n", + "\n", + "\n", + "'''" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Train a SVM classification model, which you want to explain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model = clf.fit(x_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain predictions on your local machine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1. Using SHAP TabularExplainer\n", + "# clf.steps[-1][1] returns the trained classification model\n", + "explainer = TabularExplainer(clf.steps[-1][1], \n", + " initialization_examples=x_train, \n", + " features=attritionXData.columns, \n", + " classes=[\"Not leaving\", \"leaving\"], \n", + " transformations=transformations)\n", + "\n", + "\n", + "\n", + "\n", + "# 2. Using MimicExplainer\n", + "# augment_data is optional and if true, oversamples the initialization examples to improve surrogate model accuracy to fit original model. Useful for high-dimensional data where the number of rows is less than the number of columns. \n", + "# max_num_of_augmentations is optional and defines max number of times we can increase the input data size.\n", + "# LGBMExplainableModel can be replaced with LinearExplainableModel, SGDExplainableModel, or DecisionTreeExplainableModel\n", + "# explainer = MimicExplainer(clf.steps[-1][1], \n", + "# x_train, \n", + "# LGBMExplainableModel, \n", + "# augment_data=True, \n", + "# max_num_of_augmentations=10, \n", + "# features=attritionXData.columns, \n", + "# classes=[\"Not leaving\", \"leaving\"], \n", + "# transformations=transformations)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# 3. Using PFIExplainer\n", + "\n", + "# Use the parameter \"metric\" to pass a metric name or function to evaluate the permutation. \n", + "# Note that if a metric function is provided a higher value must be better.\n", + "# Otherwise, take the negative of the function or set the parameter \"is_error_metric\" to True.\n", + "# Default metrics: \n", + "# F1 Score for binary classification, F1 Score with micro average for multiclass classification and\n", + "# Mean absolute error for regression\n", + "\n", + "# explainer = PFIExplainer(clf.steps[-1][1], \n", + "# features=x_train.columns, \n", + "# transformations=transformations,\n", + "# classes=[\"Not leaving\", \"leaving\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate global explanations\n", + "Explain overall model predictions (global explanation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", + "global_explanation = explainer.explain_global(x_test)\n", + "\n", + "# Note: if you used the PFIExplainer in the previous step, use the next line of code instead\n", + "# global_explanation = explainer.explain_global(x_test, true_labels=y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted SHAP values\n", + "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", + "# Corresponding feature names\n", + "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", + "# Feature ranks (based on original order of features)\n", + "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", + "\n", + "# Note: PFIExplainer does not support per class explanations\n", + "# Per class feature names\n", + "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", + "# Per class feature importance values\n", + "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Print out a dictionary that holds the sorted feature importance names and values\n", + "print('global importance rank: {}'.format(global_explanation.get_feature_importance_dict()))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain overall model predictions as a collection of local (instance-level) explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# feature shap values for all features and all data points in the training data\n", + "print('local importance values: {}'.format(global_explanation.local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate local explanations\n", + "Explain local data points (individual instances)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# You can pass a specific data point or a group of data points to the explain_local function\n", + "\n", + "# E.g., Explain the first data point in the test set\n", + "instance_num = 1\n", + "local_explanation = explainer.explain_local(x_test[:instance_num])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get the prediction for the first member of the test set and explain why model made that prediction\n", + "prediction_value = clf.predict(x_test)[instance_num]\n", + "\n", + "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", + "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", + "\n", + "print('local importance values: {}'.format(sorted_local_importance_values))\n", + "print('local importance names: {}'.format(sorted_local_importance_names))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Upload\n", + "Upload explanations to Azure Machine Learning Run History" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import azureml.core\n", + "from azureml.core import Workspace, Experiment, Run\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", + "# Check core SDK version number\n", + "print(\"SDK version:\", azureml.core.VERSION)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ws = Workspace.from_config()\n", + "print('Workspace name: ' + ws.name, \n", + " 'Azure region: ' + ws.location, \n", + " 'Subscription id: ' + ws.subscription_id, \n", + " 'Resource group: ' + ws.resource_group, sep = '\\n')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "experiment_name = 'explain_model'\n", + "experiment = Experiment(ws, experiment_name)\n", + "run = experiment.start_logging()\n", + "client = ExplanationClient.from_run(run)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Uploading model explanation data for storage or visualization in webUX\n", + "# The explanation can then be downloaded on any compute\n", + "# Multiple explanations can be uploaded\n", + "client.upload_model_explanation(global_explanation, comment='global explanation: all features')\n", + "# Or you can only upload the explanation object with the top k feature info\n", + "#client.upload_model_explanation(global_explanation, top_k=2, comment='global explanation: Only top 2 features')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Uploading model explanation data for storage or visualization in webUX\n", + "# The explanation can then be downloaded on any compute\n", + "# Multiple explanations can be uploaded\n", + "client.upload_model_explanation(local_explanation, comment='local explanation for test point 1: all features')\n", + "\n", + "# Alterntively, you can only upload the local explanation object with the top k feature info\n", + "#client.upload_model_explanation(local_explanation, top_k=2, comment='local explanation: top 2 features')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Download\n", + "Download explanations from Azure Machine Learning Run History" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# List uploaded explanations\n", + "client.list_model_explanations()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for explanation in client.list_model_explanations():\n", + " \n", + " if explanation['comment'] == 'local explanation for test point 1: all features':\n", + " downloaded_local_explanation = client.download_model_explanation(explanation_id=explanation['id'])\n", + " # You can pass a k value to only download the top k feature importance values\n", + " downloaded_local_explanation_top2 = client.download_model_explanation(top_k=2, explanation_id=explanation['id'])\n", + " \n", + " \n", + " elif explanation['comment'] == 'global explanation: all features':\n", + " downloaded_global_explanation = client.download_model_explanation(explanation_id=explanation['id'])\n", + " # You can pass a k value to only download the top k feature importance values\n", + " downloaded_global_explanation_top2 = client.download_model_explanation(top_k=2, explanation_id=explanation['id'])\n", + " " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(downloaded_global_explanation, model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + "1. [Training time: regression problem](../../tabular-data/explain-binary-classification-local.ipynb) \n", + "1. [Training time: binary classification problem](../../tabular-data/explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](../../tabular-data/explain-multiclass-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](../../tabular-data/simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](../../tabular-data/advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.yml b/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.yml new file mode 100644 index 00000000..bc244c09 --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/run-history/save-retrieve-explanations-run-history.yml @@ -0,0 +1,6 @@ +name: save-retrieve-explanations-run-history +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/score.py b/how-to-use-azureml/explain-model/azure-integration/scoring-time/score.py new file mode 100644 index 00000000..82b0bd0f --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/score.py @@ -0,0 +1,33 @@ +import json +import numpy as np +import pandas as pd +import os +import pickle +from sklearn.externals import joblib +from sklearn.linear_model import LogisticRegression +from azureml.core.model import Model + + +def init(): + + global original_model + global scoring_explainer + + # Retrieve the path to the model file using the model name + # Assume original model is named original_prediction_model + original_model_path = Model.get_model_path('original_model') + scoring_explainer_path = Model.get_model_path('IBM_attrition_explainer') + + original_model = joblib.load(original_model_path) + scoring_explainer = joblib.load(scoring_explainer_path) + + +def run(raw_data): + # Get predictions and explanations for each data point + data = pd.read_json(raw_data) + # Make prediction + predictions = original_model.predict(data) + # Retrieve model explanations + local_importance_values = scoring_explainer.explain(data) + # You can return any data type as long as it is JSON-serializable + return {'predictions': predictions.tolist(), 'local_importance_values': local_importance_values} diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb new file mode 100644 index 00000000..4c7bdd53 --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb @@ -0,0 +1,513 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Train and explain models locally and deploy model and scoring explainer\n", + "\n", + "\n", + "_**This notebook illustrates how to use the Azure Machine Learning Interpretability SDK to deploy a locally-trained model and its corresponding scoring explainer to Azure Container Instances (ACI) as a web service.**_\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "Problem: IBM employee attrition classification with scikit-learn (train and explain a model locally and use Azure Container Instances (ACI) for deploying your model and its corresponding scoring explainer as a web service.)\n", + "\n", + "---\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Apply feature transformations\n", + " 1. Train a binary classification model\n", + " 1. Explain the model on raw features\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize explanations](#Visualize)\n", + "1. [Deploy model and scoring explainer](#Deploy)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "\n", + "This notebook showcases how to train and explain a classification model locally, and deploy the trained model and its corresponding explainer to Azure Container Instances (ACI).\n", + "It demonstrates the API calls that you need to make to submit a run for training and explaining a model to AMLCompute, download the compute explanations remotely, and visualizing the global and local explanations via a visualization dashboard that provides an interactive way of discovering patterns in model predictions and downloaded explanations. It also demonstrates how to use Azure Machine Learning MLOps capabilities to deploy your model and its corresponding explainer.\n", + "\n", + "We will showcase one of the tabular data explainers: TabularExplainer (SHAP) and follow these steps:\n", + "1.\tDevelop a machine learning script in Python which involves the training script and the explanation script.\n", + "2.\tRun the script locally.\n", + "3.\tUse the interpretability toolkit\u00e2\u20ac\u2122s visualization dashboard to visualize predictions and their explanation. If the metrics and explanations don't indicate a desired outcome, loop back to step 1 and iterate on your scripts.\n", + "5.\tAfter a satisfactory run is found, create a scoring explainer and register the persisted model and its corresponding explainer in the model registry.\n", + "6.\tDevelop a scoring script.\n", + "7.\tCreate an image and register it in the image registry.\n", + "8.\tDeploy the image as a web service in Azure.\n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup\n", + "Make sure you go through the [configuration notebook](../../../../configuration.ipynb) first if you haven't." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Check core SDK version number\n", + "import azureml.core\n", + "\n", + "print(\"SDK version:\", azureml.core.VERSION)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Initialize a Workspace\n", + "\n", + "Initialize a workspace object from persisted configuration" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "tags": [ + "create workspace" + ] + }, + "outputs": [], + "source": [ + "from azureml.core import Workspace\n", + "\n", + "ws = Workspace.from_config()\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "Create An Experiment: **Experiment** is a logical container in an Azure ML Workspace. It hosts run records which can include run metrics and output artifacts from your experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Experiment\n", + "experiment_name = 'explain_model_at_scoring_time'\n", + "experiment = Experiment(workspace=ws, name=experiment_name)\n", + "run = experiment.start_logging()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# get IBM attrition data\n", + "import os\n", + "import pandas as pd\n", + "\n", + "outdirname = 'dataset.6.21.19'\n", + "try:\n", + " from urllib import urlretrieve\n", + "except ImportError:\n", + " from urllib.request import urlretrieve\n", + "import zipfile\n", + "zipfilename = outdirname + '.zip'\n", + "urlretrieve('https://publictestdatasets.blob.core.windows.net/data/' + zipfilename, zipfilename)\n", + "with zipfile.ZipFile(zipfilename, 'r') as unzip:\n", + " unzip.extractall('.')\n", + "attritionData = pd.read_csv('./WA_Fn-UseC_-HR-Employee-Attrition.csv')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "from sklearn.externals import joblib\n", + "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", + "from sklearn.impute import SimpleImputer\n", + "from sklearn.pipeline import Pipeline\n", + "from sklearn.linear_model import LogisticRegression\n", + "from sklearn.ensemble import RandomForestClassifier\n", + "from sklearn_pandas import DataFrameMapper\n", + "\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "os.makedirs('./outputs', exist_ok=True)\n", + "\n", + "# Dropping Employee count as all values are 1 and hence attrition is independent of this feature\n", + "attritionData = attritionData.drop(['EmployeeCount'], axis=1)\n", + "# Dropping Employee Number since it is merely an identifier\n", + "attritionData = attritionData.drop(['EmployeeNumber'], axis=1)\n", + "attritionData = attritionData.drop(['Over18'], axis=1)\n", + "# Since all values are 80\n", + "attritionData = attritionData.drop(['StandardHours'], axis=1)\n", + "\n", + "# Converting target variables from string to numerical values\n", + "target_map = {'Yes': 1, 'No': 0}\n", + "attritionData[\"Attrition_numerical\"] = attritionData[\"Attrition\"].apply(lambda x: target_map[x])\n", + "target = attritionData[\"Attrition_numerical\"]\n", + "\n", + "attritionXData = attritionData.drop(['Attrition_numerical', 'Attrition'], axis=1)\n", + "\n", + "# Creating dummy columns for each categorical feature\n", + "categorical = []\n", + "for col, value in attritionXData.iteritems():\n", + " if value.dtype == 'object':\n", + " categorical.append(col)\n", + "\n", + "# Store the numerical columns in a list numerical\n", + "numerical = attritionXData.columns.difference(categorical)\n", + "\n", + "numeric_transformations = [([f], Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='median')),\n", + " ('scaler', StandardScaler())])) for f in numerical]\n", + "\n", + "categorical_transformations = [([f], OneHotEncoder(handle_unknown='ignore', sparse=False)) for f in categorical]\n", + "\n", + "transformations = numeric_transformations + categorical_transformations\n", + "\n", + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', DataFrameMapper(transformations)),\n", + " ('classifier', RandomForestClassifier())])\n", + "\n", + "# Split data into train and test\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(attritionXData,\n", + " target,\n", + " test_size = 0.2,\n", + " random_state=0,\n", + " stratify=target)\n", + "\n", + "# preprocess the data and fit the classification model\n", + "clf.fit(x_train, y_train)\n", + "model = clf.steps[-1][1]\n", + "\n", + "model_file_name = 'log_reg.pkl'\n", + "\n", + "# save model in the outputs folder so it automatically get uploaded\n", + "with open(model_file_name, 'wb') as file:\n", + " joblib.dump(value=clf, filename=os.path.join('./outputs/',\n", + " model_file_name))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Explain predictions on your local machine\n", + "tabular_explainer = TabularExplainer(model, \n", + " initialization_examples=x_train, \n", + " features=attritionXData.columns, \n", + " classes=[\"Not leaving\", \"leaving\"], \n", + " transformations=transformations)\n", + "\n", + "# Explain overall model predictions (global explanation)\n", + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations it will\n", + "# take longer although they may be more accurate\n", + "global_explanation = tabular_explainer.explain_global(x_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.explain.model.scoring.scoring_explainer import TreeScoringExplainer, save\n", + "# ScoringExplainer\n", + "scoring_explainer = TreeScoringExplainer(tabular_explainer)\n", + "# Pickle scoring explainer locally\n", + "save(scoring_explainer, exist_ok=True)\n", + "\n", + "# Register original model\n", + "run.upload_file('original_model.pkl', os.path.join('./outputs/', model_file_name))\n", + "original_model = run.register_model(model_name='original_model', model_path='original_model.pkl')\n", + "\n", + "# Register scoring explainer\n", + "run.upload_file('IBM_attrition_explainer.pkl', 'scoring_explainer.pkl')\n", + "scoring_explainer_model = run.register_model(model_name='IBM_attrition_explainer', model_path='IBM_attrition_explainer.pkl')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Visualize the explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, clf, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Deploy \n", + "\n", + "Deploy Model and ScoringExplainer" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.webservice import AciWebservice\n", + "\n", + "aciconfig = AciWebservice.deploy_configuration(cpu_cores=1, \n", + " memory_gb=1, \n", + " tags={\"data\": \"IBM_Attrition\", \n", + " \"method\" : \"local_explanation\"}, \n", + " description='Get local explanations for IBM Employee Attrition data')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.conda_dependencies import CondaDependencies \n", + "\n", + "# WARNING: to install this, g++ needs to be available on the Docker image and is not by default (look at the next cell)\n", + "azureml_pip_packages = [\n", + " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", + " 'azureml-explain-model'\n", + "]\n", + " \n", + "\n", + "# specify CondaDependencies obj\n", + "myenv = CondaDependencies.create(conda_packages=['scikit-learn', 'pandas'],\n", + " pip_packages=['sklearn-pandas', 'pyyaml'] + azureml_pip_packages,\n", + " pin_sdk_version=False)\n", + "\n", + "with open(\"myenv.yml\",\"w\") as f:\n", + " f.write(myenv.serialize_to_string())\n", + "\n", + "with open(\"myenv.yml\",\"r\") as f:\n", + " print(f.read())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile dockerfile\n", + "RUN apt-get update && apt-get install -y g++ " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.model import Model\n", + "# retrieve scoring explainer for deployment\n", + "scoring_explainer_model = Model(ws, 'IBM_attrition_explainer')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.webservice import Webservice\n", + "from azureml.core.image import ContainerImage\n", + "\n", + "# Use the custom scoring, docker, and conda files we created above\n", + "image_config = ContainerImage.image_configuration(execution_script=\"score.py\",\n", + " docker_file=\"dockerfile\", \n", + " runtime=\"python\", \n", + " conda_file=\"myenv.yml\")\n", + "\n", + "# Use configs and models generated above\n", + "service = Webservice.deploy_from_model(workspace=ws,\n", + " name='model-scoring',\n", + " deployment_config=aciconfig,\n", + " models=[scoring_explainer_model, original_model],\n", + " image_config=image_config)\n", + "\n", + "service.wait_for_deployment(show_output=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import requests\n", + "import json\n", + "\n", + "\n", + "# Create data to test service with\n", + "sample_data = '{\"Age\":{\"899\":49},\"BusinessTravel\":{\"899\":\"Travel_Rarely\"},\"DailyRate\":{\"899\":1098},\"Department\":{\"899\":\"Research & Development\"},\"DistanceFromHome\":{\"899\":4},\"Education\":{\"899\":2},\"EducationField\":{\"899\":\"Medical\"},\"EnvironmentSatisfaction\":{\"899\":1},\"Gender\":{\"899\":\"Male\"},\"HourlyRate\":{\"899\":85},\"JobInvolvement\":{\"899\":2},\"JobLevel\":{\"899\":5},\"JobRole\":{\"899\":\"Manager\"},\"JobSatisfaction\":{\"899\":3},\"MaritalStatus\":{\"899\":\"Married\"},\"MonthlyIncome\":{\"899\":18711},\"MonthlyRate\":{\"899\":12124},\"NumCompaniesWorked\":{\"899\":2},\"OverTime\":{\"899\":\"No\"},\"PercentSalaryHike\":{\"899\":13},\"PerformanceRating\":{\"899\":3},\"RelationshipSatisfaction\":{\"899\":3},\"StockOptionLevel\":{\"899\":1},\"TotalWorkingYears\":{\"899\":23},\"TrainingTimesLastYear\":{\"899\":2},\"WorkLifeBalance\":{\"899\":4},\"YearsAtCompany\":{\"899\":1},\"YearsInCurrentRole\":{\"899\":0},\"YearsSinceLastPromotion\":{\"899\":0},\"YearsWithCurrManager\":{\"899\":0}}'\n", + "\n", + "\n", + "\n", + "headers = {'Content-Type':'application/json'}\n", + "\n", + "# send request to service\n", + "resp = requests.post(service.scoring_uri, sample_data, headers=headers)\n", + "\n", + "print(\"POST to url\", service.scoring_uri)\n", + "# can covert back to Python objects from json string if desired\n", + "print(\"prediction:\", resp.text)\n", + "result = json.loads(resp.text)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "#plot the feature importance for the prediction\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt; plt.rcdefaults()\n", + "\n", + "labels = json.loads(sample_data)\n", + "labels = labels.keys()\n", + "objects = labels\n", + "y_pos = np.arange(len(objects))\n", + "performance = result[\"local_importance_values\"][0][0]\n", + "\n", + "plt.bar(y_pos, performance, align='center', alpha=0.5)\n", + "plt.xticks(y_pos, objects)\n", + "locs, labels = plt.xticks()\n", + "plt.setp(labels, rotation=90)\n", + "plt.ylabel('Feature impact - leaving vs not leaving')\n", + "plt.title('Local feature importance for prediction')\n", + "\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "service.delete()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + "1. [Training time: regression problem](../../tabular-data/explain-binary-classification-local.ipynb) \n", + "1. [Training time: binary classification problem](../../tabular-data/explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](../../tabular-data/explain-multiclass-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](../../tabular-data/simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](../../tabular-data/advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. [Inferencing time: deploy a remotely-trained model and explainer](./train-explain-model-on-amlcompute-and-deploy.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.yml b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.yml new file mode 100644 index 00000000..8338f5fe --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-locally-and-deploy.yml @@ -0,0 +1,7 @@ +name: train-explain-model-locally-and-deploy +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model + - sklearn-pandas diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb new file mode 100644 index 00000000..046cfd6d --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb @@ -0,0 +1,548 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Train and explain models remotely via Azure Machine Learning Compute and deploy model and scoring explainer\n", + "\n", + "\n", + "_**This notebook illustrates how to use the Azure Machine Learning Interpretability SDK to train and explain a classification model remotely on an Azure Machine Leanrning Compute Target (AMLCompute), and use Azure Container Instances (ACI) for deploying your model and its corresponding scoring explainer as a web service.**_\n", + "\n", + "Problem: IBM employee attrition classification with scikit-learn (train a model and run an explainer remotely via AMLCompute, and deploy model and its corresponding explainer.)\n", + "\n", + "---\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Apply feature transformations\n", + " 1. Train a binary classification model\n", + " 1. Explain the model on raw features\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize results](#Visualize)\n", + "1. [Deploy model and scoring explainer](#Deploy)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook showcases how to train and explain a classification model remotely via Azure Machine Learning Compute (AMLCompute), download the calculated explanations locally for visualization and inspection, and deploy the final model and its corresponding explainer to Azure Container Instances (ACI).\n", + "It demonstrates the API calls that you need to make to submit a run for training and explaining a model to AMLCompute, download the compute explanations remotely, and visualizing the global and local explanations via a visualization dashboard that provides an interactive way of discovering patterns in model predictions and downloaded explanations, and using Azure Machine Learning MLOps capabilities to deploy your model and its corresponding explainer.\n", + "\n", + "We will showcase one of the tabular data explainers: TabularExplainer (SHAP) and follow these steps:\n", + "1.\tDevelop a machine learning script in Python which involves the training script and the explanation script.\n", + "2.\tCreate and configure a compute target.\n", + "3.\tSubmit the scripts to the configured compute target to run in that environment. During training, the scripts can read from or write to datastore. And the records of execution (e.g., model, metrics, prediction explanations) are saved as runs in the workspace and grouped under experiments.\n", + "4.\tQuery the experiment for logged metrics and explanations from the current and past runs. Use the interpretability toolkit\u00e2\u20ac\u2122s visualization dashboard to visualize predictions and their explanation. If the metrics and explanations don't indicate a desired outcome, loop back to step 1 and iterate on your scripts.\n", + "5.\tAfter a satisfactory run is found, create a scoring explainer and register the persisted model and its corresponding explainer in the model registry.\n", + "6.\tDevelop a scoring script.\n", + "7.\tCreate an image and register it in the image registry.\n", + "8.\tDeploy the image as a web service in Azure.\n", + "\n", + "| ![azure-machine-learning-cycle](./img/azure-machine-learning-cycle.PNG) |\n", + "|:--:|" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup\n", + "Make sure you go through the [configuration notebook](../../../../configuration.ipynb) first if you haven't." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Check core SDK version number\n", + "import azureml.core\n", + "\n", + "print(\"SDK version:\", azureml.core.VERSION)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Initialize a Workspace\n", + "\n", + "Initialize a workspace object from persisted configuration" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "tags": [ + "create workspace" + ] + }, + "outputs": [], + "source": [ + "from azureml.core import Workspace\n", + "\n", + "ws = Workspace.from_config()\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "Create An Experiment: **Experiment** is a logical container in an Azure ML Workspace. It hosts run records which can include run metrics and output artifacts from your experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Experiment\n", + "experiment_name = 'explainer-remote-run-on-amlcompute'\n", + "experiment = Experiment(workspace=ws, name=experiment_name)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction to AmlCompute\n", + "\n", + "Azure Machine Learning Compute is managed compute infrastructure that allows the user to easily create single to multi-node compute of the appropriate VM Family. It is created **within your workspace region** and is a resource that can be used by other users in your workspace. It autoscales by default to the max_nodes, when a job is submitted, and executes in a containerized environment packaging the dependencies as specified by the user. \n", + "\n", + "Since it is managed compute, job scheduling and cluster management are handled internally by Azure Machine Learning service. \n", + "\n", + "For more information on Azure Machine Learning Compute, please read [this article](https://docs.microsoft.com/azure/machine-learning/service/how-to-set-up-training-targets#amlcompute)\n", + "\n", + "If you are an existing BatchAI customer who is migrating to Azure Machine Learning, please read [this article](https://aka.ms/batchai-retirement)\n", + "\n", + "**Note**: As with other Azure services, there are limits on certain resources (for eg. AmlCompute quota) associated with the Azure Machine Learning service. Please read [this article](https://docs.microsoft.com/azure/machine-learning/service/how-to-manage-quotas) on the default limits and how to request more quota.\n", + "\n", + "\n", + "The training script `run_explainer.py` is already created for you. Let's have a look." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Submit an AmlCompute run in a few different ways\n", + "\n", + "First lets check which VM families are available in your region. Azure is a regional service and some specialized SKUs (especially GPUs) are only available in certain regions. Since AmlCompute is created in the region of your workspace, we will use the supported_vms () function to see if the VM family we want to use ('STANDARD_D2_V2') is supported.\n", + "\n", + "You can also pass a different region to check availability and then re-create your workspace in that region through the [configuration notebook](../../../configuration.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import ComputeTarget, AmlCompute\n", + "\n", + "AmlCompute.supported_vmsizes(workspace=ws)\n", + "# AmlCompute.supported_vmsizes(workspace=ws, location='southcentralus')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create project directory\n", + "\n", + "Create a directory that will contain all the necessary code from your local machine that you will need access to on the remote resource. This includes the training script, and any additional files your training script depends on" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import shutil\n", + "\n", + "project_folder = './explainer-remote-run-on-amlcompute'\n", + "os.makedirs(project_folder, exist_ok=True)\n", + "shutil.copy('train_explain.py', project_folder)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Provision as a run based compute target\n", + "\n", + "You can provision AmlCompute as a compute target at run-time. In this case, the compute is auto-created for your run, scales up to max_nodes that you specify, and then **deleted automatically** after the run completes." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import RunConfiguration\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "from azureml.core.runconfig import DEFAULT_CPU_IMAGE\n", + "\n", + "# create a new runconfig object\n", + "run_config = RunConfiguration()\n", + "\n", + "# signal that you want to use AmlCompute to execute script.\n", + "run_config.target = \"amlcompute\"\n", + "\n", + "# AmlCompute will be created in the same region as workspace\n", + "# Set vm size for AmlCompute\n", + "run_config.amlcompute.vm_size = 'STANDARD_D2_V2'\n", + "\n", + "# enable Docker \n", + "run_config.environment.docker.enabled = True\n", + "\n", + "# set Docker base image to the default CPU-based image\n", + "run_config.environment.docker.base_image = DEFAULT_CPU_IMAGE\n", + "\n", + "# use conda_dependencies.yml to create a conda environment in the Docker image for execution\n", + "run_config.environment.python.user_managed_dependencies = False\n", + "\n", + "# auto-prepare the Docker image when used for execution (if it is not already prepared)\n", + "run_config.auto_prepare_environment = True\n", + "\n", + "azureml_pip_packages = [\n", + " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", + " 'azureml-explain-model'\n", + "]\n", + " \n", + "\n", + "\n", + "# specify CondaDependencies obj\n", + "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", + " pip_packages=['sklearn_pandas', 'pyyaml'] + azureml_pip_packages,\n", + " pin_sdk_version=False)\n", + "# Now submit a run on AmlCompute\n", + "from azureml.core.script_run_config import ScriptRunConfig\n", + "\n", + "script_run_config = ScriptRunConfig(source_directory=project_folder,\n", + " script='train_explain.py',\n", + " run_config=run_config)\n", + "\n", + "run = experiment.submit(script_run_config)\n", + "\n", + "# Show run details\n", + "run" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note: if you need to cancel a run, you can follow [these instructions](https://aka.ms/aml-docs-cancel-run)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%time\n", + "# Shows output of the run on stdout.\n", + "run.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Delete () is used to deprovision and delete the AmlCompute target. Useful if you want to re-use the compute name \n", + "# 'cpucluster' in this case but use a different VM family for instance.\n", + "\n", + "# cpu_cluster.delete()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Download Model Explanation, Model, and Data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retrieve model for visualization and deployment\n", + "from azureml.core.model import Model\n", + "from sklearn.externals import joblib\n", + "original_model = Model(ws, 'original_model')\n", + "model_path = original_model.download(exist_ok=True)\n", + "original_svm_model = joblib.load(model_path)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retrieve global explanation for visualization\n", + "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", + "\n", + "# get model explanation data\n", + "client = ExplanationClient.from_run(run)\n", + "global_explanation = client.download_model_explanation()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retrieve x_test for visualization\n", + "from sklearn.externals import joblib\n", + "x_test_path = './x_test.pkl'\n", + "run.download_file('x_test_ibm.pkl', output_file_path=x_test_path)\n", + "x_test = joblib.load(x_test_path)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Visualize the explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, original_svm_model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Deploy\n", + "Deploy Model and ScoringExplainer" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.webservice import AciWebservice\n", + "\n", + "aciconfig = AciWebservice.deploy_configuration(cpu_cores=1, \n", + " memory_gb=1, \n", + " tags={\"data\": \"IBM_Attrition\", \n", + " \"method\" : \"local_explanation\"}, \n", + " description='Get local explanations for IBM Employee Attrition data')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.conda_dependencies import CondaDependencies \n", + "\n", + "# WARNING: to install this, g++ needs to be available on the Docker image and is not by default (look at the next cell)\n", + "azureml_pip_packages = [\n", + " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", + " 'azureml-explain-model'\n", + "]\n", + " \n", + "\n", + "# specify CondaDependencies obj\n", + "myenv = CondaDependencies.create(conda_packages=['scikit-learn', 'pandas'],\n", + " pip_packages=['sklearn-pandas', 'pyyaml'] + azureml_pip_packages,\n", + " pin_sdk_version=False)\n", + "\n", + "with open(\"myenv.yml\",\"w\") as f:\n", + " f.write(myenv.serialize_to_string())\n", + "\n", + "with open(\"myenv.yml\",\"r\") as f:\n", + " print(f.read())" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile dockerfile\n", + "RUN apt-get update && apt-get install -y g++ " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retrieve scoring explainer for deployment\n", + "scoring_explainer_model = Model(ws, 'IBM_attrition_explainer')" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.webservice import Webservice\n", + "from azureml.core.image import ContainerImage\n", + "\n", + "# Use the custom scoring, docker, and conda files we created above\n", + "image_config = ContainerImage.image_configuration(execution_script=\"score.py\",\n", + " docker_file=\"dockerfile\", \n", + " runtime=\"python\", \n", + " conda_file=\"myenv.yml\")\n", + "\n", + "# Use configs and models generated above\n", + "service = Webservice.deploy_from_model(workspace=ws,\n", + " name='model-scoring-service',\n", + " deployment_config=aciconfig,\n", + " models=[scoring_explainer_model, original_model],\n", + " image_config=image_config)\n", + "\n", + "service.wait_for_deployment(show_output=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import requests\n", + "\n", + "# create data to test service with\n", + "examples = x_test[:4]\n", + "input_data = examples.to_json()\n", + "\n", + "headers = {'Content-Type':'application/json'}\n", + "\n", + "# send request to service\n", + "resp = requests.post(service.scoring_uri, input_data, headers=headers)\n", + "\n", + "print(\"POST to url\", service.scoring_uri)\n", + "# can covert back to Python objects from json string if desired\n", + "print(\"prediction:\", resp.text)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "service.delete()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + "1. [Training time: regression problem](../../tabular-data/explain-binary-classification-local.ipynb) \n", + "1. [Training time: binary classification problem](../../tabular-data/explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](../../tabular-data/explain-multiclass-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](../../tabular-data/simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](../../tabular-data/advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. [Inferencing time: deploy a locally-trained model and explainer](./train-explain-model-locally-and-deploy.ipynb)\n", + " " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml new file mode 100644 index 00000000..a78dd204 --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml @@ -0,0 +1,7 @@ +name: train-explain-model-on-amlcompute-and-deploy +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model + - sklearn-pandas diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train_explain.py b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train_explain.py new file mode 100644 index 00000000..f46e5ee7 --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train_explain.py @@ -0,0 +1,128 @@ +# --------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# --------------------------------------------------------- + +import os +import pandas as pd +import zipfile +from sklearn.model_selection import train_test_split +from sklearn.externals import joblib +from sklearn.preprocessing import StandardScaler, OneHotEncoder +from sklearn.impute import SimpleImputer +from sklearn.pipeline import Pipeline +from sklearn.linear_model import LogisticRegression +from sklearn_pandas import DataFrameMapper + +from azureml.core.run import Run +from azureml.explain.model.tabular_explainer import TabularExplainer +from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient +from azureml.explain.model.scoring.scoring_explainer import LinearScoringExplainer, save + +OUTPUT_DIR = './outputs/' +os.makedirs(OUTPUT_DIR, exist_ok=True) + +# get the IBM employee attrition dataset +outdirname = 'dataset.6.21.19' +try: + from urllib import urlretrieve +except ImportError: + from urllib.request import urlretrieve +zipfilename = outdirname + '.zip' +urlretrieve('https://publictestdatasets.blob.core.windows.net/data/' + zipfilename, zipfilename) +with zipfile.ZipFile(zipfilename, 'r') as unzip: + unzip.extractall('.') +attritionData = pd.read_csv('./WA_Fn-UseC_-HR-Employee-Attrition.csv') + +# dropping Employee count as all values are 1 and hence attrition is independent of this feature +attritionData = attritionData.drop(['EmployeeCount'], axis=1) +# dropping Employee Number since it is merely an identifier +attritionData = attritionData.drop(['EmployeeNumber'], axis=1) +attritionData = attritionData.drop(['Over18'], axis=1) +# since all values are 80 +attritionData = attritionData.drop(['StandardHours'], axis=1) + +# converting target variables from string to numerical values +target_map = {'Yes': 1, 'No': 0} +attritionData["Attrition_numerical"] = attritionData["Attrition"].apply(lambda x: target_map[x]) +target = attritionData["Attrition_numerical"] + +attritionXData = attritionData.drop(['Attrition_numerical', 'Attrition'], axis=1) + +# creating dummy columns for each categorical feature +categorical = [] +for col, value in attritionXData.iteritems(): + if value.dtype == 'object': + categorical.append(col) + +# store the numerical columns +numerical = attritionXData.columns.difference(categorical) + +numeric_transformations = [([f], Pipeline(steps=[ + ('imputer', SimpleImputer(strategy='median')), + ('scaler', StandardScaler())])) for f in numerical] + +categorical_transformations = [([f], OneHotEncoder(handle_unknown='ignore', sparse=False)) for f in categorical] + +transformations = numeric_transformations + categorical_transformations + +# append classifier to preprocessing pipeline +clf = Pipeline(steps=[('preprocessor', DataFrameMapper(transformations)), + ('classifier', LogisticRegression(solver='lbfgs'))]) + +# get the run this was submitted from to interact with run history +run = Run.get_context() + +# create an explanation client to store the explanation (contrib API) +client = ExplanationClient.from_run(run) + +# Split data into train and test +x_train, x_test, y_train, y_test = train_test_split(attritionXData, + target, + test_size=0.2, + random_state=0, + stratify=target) + +# write x_test out as a pickle file for later visualization +x_test_pkl = 'x_test.pkl' +with open(x_test_pkl, 'wb') as file: + joblib.dump(value=x_test, filename=os.path.join(OUTPUT_DIR, x_test_pkl)) +run.upload_file('x_test_ibm.pkl', os.path.join(OUTPUT_DIR, x_test_pkl)) + +# preprocess the data and fit the classification model +clf.fit(x_train, y_train) +model = clf.steps[-1][1] + +# save model for use outside the script +model_file_name = 'log_reg.pkl' +with open(model_file_name, 'wb') as file: + joblib.dump(value=clf, filename=os.path.join(OUTPUT_DIR, model_file_name)) + +# register the model with the model management service for later use +run.upload_file('original_model.pkl', os.path.join(OUTPUT_DIR, model_file_name)) +original_model = run.register_model(model_name='original_model', model_path='original_model.pkl') + +# create an explainer to validate or debug the model +tabular_explainer = TabularExplainer(model, + initialization_examples=x_train, + features=attritionXData.columns, + classes=["Not leaving", "leaving"], + transformations=transformations) + +# explain overall model predictions (global explanation) +# passing in test dataset for evaluation examples - note it must be a representative sample of the original data +# more data (e.g. x_train) will likely lead to higher accuracy, but at a time cost +global_explanation = tabular_explainer.explain_global(x_test) + +# uploading model explanation data for storage or visualization +comment = 'Global explanation on classification model trained on IBM employee attrition dataset' +client.upload_model_explanation(global_explanation, comment=comment) + +# also create a lightweight explainer for scoring time +scoring_explainer = LinearScoringExplainer(tabular_explainer) +# pickle scoring explainer locally +save(scoring_explainer, directory=OUTPUT_DIR, exist_ok=True) + +# register scoring explainer +run.upload_file('IBM_attrition_explainer.pkl', os.path.join(OUTPUT_DIR, 'scoring_explainer.pkl')) +scoring_explainer_model = run.register_model(model_name='IBM_attrition_explainer', + model_path='IBM_attrition_explainer.pkl') diff --git a/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.ipynb b/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.ipynb new file mode 100644 index 00000000..3f3e7469 --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.ipynb @@ -0,0 +1,523 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Explain binary classification model predictions with raw feature transformations\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to explain and visualize a binary classification model that uses advanced many to one or many to many feature transformations.**_\n", + "\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Apply feature transformations\n", + " 1. Train a binary classification model\n", + " 1. Explain the model on raw features\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize results](#Visualize)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook illustrates creating explanations for a binary classification model, Titanic passenger data classification, that uses many to one and many to many feature transformations from raw data to engineered features. For the many to one transformation, we sum 2 features `age` and `fare`. For many to many transformations two features are computed: one that is product of `age` and `fare` and another that is square of this product. Our tabular data explainer is then used to get the explanation object with the flag `allow_all_transformations` passed. The object is then used to get raw feature importances.\n", + "\n", + "\n", + "We will showcase raw feature transformations with three tabular data explainers: TabularExplainer (SHAP), MimicExplainer (global surrogate), and PFIExplainer.\n", + "\n", + "| ![Interpretability Toolkit Architecture](./img/interpretability-architecture.PNG) |\n", + "|:--:|\n", + "| *Interpretability Toolkit Architecture* |\n", + "\n", + "Problem: Titanic passenger data classification with scikit-learn (run model explainer locally)\n", + "\n", + "1. Transform raw features to engineered features\n", + "2. Train a Logistic Regression model using Scikit-learn\n", + "3. Run 'explain_model' globally and locally with full dataset in local mode, which doesn't contact any Azure services.\n", + "4. Visualize the global and local explanations with the visualization dashboard.\n", + "---\n", + "\n", + "## Setup\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "### Run model explainer locally at training time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.pipeline import Pipeline\n", + "from sklearn.impute import SimpleImputer\n", + "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", + "from sklearn.linear_model import LogisticRegression\n", + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "# Explainers:\n", + "# 1. SHAP Tabular Explainer\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "# OR\n", + "\n", + "# 2. Mimic Explainer\n", + "from azureml.explain.model.mimic.mimic_explainer import MimicExplainer\n", + "# You can use one of the following four interpretable models as a global surrogate to the black box model\n", + "from azureml.explain.model.mimic.models.lightgbm_model import LGBMExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import LinearExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import SGDExplainableModel\n", + "from azureml.explain.model.mimic.models.tree_model import DecisionTreeExplainableModel\n", + "\n", + "# OR\n", + "\n", + "# 3. PFI Explainer\n", + "from azureml.explain.model.permutation.permutation_importance import PFIExplainer " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load the Titanic passenger data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "titanic_url = ('https://raw.githubusercontent.com/amueller/'\n", + " 'scipy-2017-sklearn/091d371/notebooks/datasets/titanic3.csv')\n", + "data = pd.read_csv(titanic_url)\n", + "# fill missing values\n", + "data = data.fillna(method=\"ffill\")\n", + "data = data.fillna(method=\"bfill\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Similar to example [here](https://scikit-learn.org/stable/auto_examples/compose/plot_column_transformer_mixed_types.html#sphx-glr-auto-examples-compose-plot-column-transformer-mixed-types-py), use a subset of columns" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.model_selection import train_test_split\n", + "\n", + "numeric_features = ['age', 'fare']\n", + "categorical_features = ['embarked', 'sex', 'pclass']\n", + "\n", + "y = data['survived'].values\n", + "X = data[categorical_features + numeric_features]\n", + "\n", + "# Split data into train and test\n", + "x_train, x_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Transform raw features" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can explain raw features by either using a `sklearn.compose.ColumnTransformer` or a list of fitted transformer tuples. The cell below uses `sklearn.compose.ColumnTransformer`. In case you want to run the example with the list of fitted transformer tuples, comment the cell below and uncomment the cell that follows after. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# We add many to one and many to many transformations for illustration purposes.\n", + "# The support for raw feature explanations with many to one and many to many transformations are only supported \n", + "# When allow_all_transformations is set to True on explainer creation\n", + "from sklearn.preprocessing import FunctionTransformer\n", + "many_to_one_transformer = FunctionTransformer(lambda x: x.sum(axis=1).reshape(-1, 1))\n", + "many_to_many_transformer = FunctionTransformer(lambda x: np.hstack(\n", + " (np.prod(x, axis=1).reshape(-1, 1), (np.prod(x, axis=1)**2).reshape(-1, 1))\n", + "))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.compose import ColumnTransformer\n", + "\n", + "transformations = ColumnTransformer([\n", + " (\"age_fare_1\", Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='median')),\n", + " ('scaler', StandardScaler())\n", + " ]), [\"age\", \"fare\"]),\n", + " (\"age_fare_2\", many_to_one_transformer, [\"age\", \"fare\"]),\n", + " (\"age_fare_3\", many_to_many_transformer, [\"age\", \"fare\"]),\n", + " (\"embarked\", Pipeline(steps=[\n", + " (\"imputer\", SimpleImputer(strategy='constant', fill_value='missing')), \n", + " (\"encoder\", OneHotEncoder(sparse=False))]), [\"embarked\"]),\n", + " (\"sex_pclass\", OneHotEncoder(sparse=False), [\"sex\", \"pclass\"]) \n", + "])\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "'''\n", + "# Uncomment below if sklearn-pandas is not installed\n", + "#!pip install sklearn-pandas\n", + "from sklearn_pandas import DataFrameMapper\n", + "\n", + "# Impute, standardize the numeric features and one-hot encode the categorical features. \n", + "\n", + "transformations = [\n", + " ([\"age\", \"fare\"], Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='median')),\n", + " ('scaler', StandardScaler())\n", + " ])),\n", + " ([\"age\", \"fare\"], many_to_one_transformer),\n", + " ([\"age\", \"fare\"], many_to_many_transformer),\n", + " ([\"embarked\"], Pipeline(steps=[\n", + " (\"imputer\", SimpleImputer(strategy='constant', fill_value='missing')), \n", + " (\"encoder\", OneHotEncoder(sparse=False))])),\n", + " ([\"sex\", \"pclass\"], OneHotEncoder(sparse=False)) \n", + "]\n", + "\n", + "\n", + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', DataFrameMapper(transformations)),\n", + " ('classifier', LogisticRegression(solver='lbfgs'))])\n", + "'''" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Train a Logistic Regression model, which you want to explain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', transformations),\n", + " ('classifier', LogisticRegression(solver='lbfgs'))])\n", + "model = clf.fit(x_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain predictions on your local machine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1. Using SHAP TabularExplainer\n", + "# When the last parameter allow_all_transformations is passed, we handle many to one and many to many transformations to \n", + "# generate approximations to raw feature importances. When this flag is passed, for transformations not recognized as one to \n", + "# many, we distribute feature importances evenly to raw features generating them.\n", + "# clf.steps[-1][1] returns the trained classification model\n", + "explainer = TabularExplainer(clf.steps[-1][1], \n", + " initialization_examples=x_train, \n", + " features=x_train.columns, \n", + " transformations=transformations, \n", + " allow_all_transformations=True)\n", + "\n", + "\n", + "\n", + "\n", + "# 2. Using MimicExplainer\n", + "# augment_data is optional and if true, oversamples the initialization examples to improve surrogate model accuracy to fit original model. Useful for high-dimensional data where the number of rows is less than the number of columns. \n", + "# max_num_of_augmentations is optional and defines max number of times we can increase the input data size.\n", + "# LGBMExplainableModel can be replaced with LinearExplainableModel, SGDExplainableModel, or DecisionTreeExplainableModel\n", + "# explainer = MimicExplainer(clf.steps[-1][1], \n", + "# x_train, \n", + "# LGBMExplainableModel, \n", + "# augment_data=True, \n", + "# max_num_of_augmentations=10, \n", + "# features=x_train.columns, \n", + "# transformations=transformations, \n", + "# allow_all_transformations=True)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# 3. Using PFIExplainer\n", + "\n", + "# Use the parameter \"metric\" to pass a metric name or function to evaluate the permutation. \n", + "# Note that if a metric function is provided a higher value must be better.\n", + "# Otherwise, take the negative of the function or set the parameter \"is_error_metric\" to True.\n", + "# Default metrics: \n", + "# F1 Score for binary classification, F1 Score with micro average for multiclass classification and\n", + "# Mean absolute error for regression\n", + "\n", + "\n", + "# explainer = PFIExplainer(clf.steps[-1][1], \n", + "# features=x_train.columns, \n", + "# transformations=transformations)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate global explanations\n", + "Explain overall model predictions (global explanation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", + "\n", + "global_explanation = explainer.explain_global(x_test)\n", + "\n", + "# Note: if you used the PFIExplainer in the previous step, use the next line of code instead\n", + "# global_explanation = explainer.explain_global(x_test, true_labels=y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted SHAP values\n", + "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", + "# Corresponding feature names\n", + "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", + "# Feature ranks (based on original order of features)\n", + "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", + "# Per class feature names\n", + "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", + "# Per class feature importance values\n", + "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Print out a dictionary that holds the sorted feature importance names and values\n", + "print('global importance rank: {}'.format(global_explanation.get_feature_importance_dict()))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain overall model predictions as a collection of local (instance-level) explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# feature shap values for all features and all data points in the training data\n", + "print('local importance values: {}'.format(global_explanation.local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate local explanations\n", + "Explain local data points (individual instances)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# You can pass a specific data point or a group of data points to the explain_local function\n", + "\n", + "# E.g., Explain the first data point in the test set\n", + "instance_num = 1\n", + "local_explanation = explainer.explain_local(x_test[:instance_num])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get the prediction for the first member of the test set and explain why model made that prediction\n", + "prediction_value = clf.predict(x_test)[instance_num]\n", + "\n", + "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", + "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", + "\n", + "print('local importance values: {}'.format(sorted_local_importance_values))\n", + "print('local importance names: {}'.format(sorted_local_importance_names))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + " \n", + "1. [Training time: regression problem](./explain-regression-local.ipynb)\n", + "1. [Training time: binary classification problem](./explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](./explain-multiclass-classification-local.ipynb)\n", + "1. [Explain models with simple feature transformations](./simple-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../azure-integration/run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.yml b/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.yml new file mode 100644 index 00000000..f3ff11fb --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/advanced-feature-transformations-explain-local.yml @@ -0,0 +1,7 @@ +name: advanced-feature-transformations-explain-local +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model + - sklearn-pandas diff --git a/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.ipynb b/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.ipynb new file mode 100644 index 00000000..782e348c --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.ipynb @@ -0,0 +1,404 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Explain binary classification model predictions\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to explain and visualize a binary classification model predictions.**_\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Train a binary classification model\n", + " 1. Explain the model\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize results](#Visualize)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook illustrates how to explain a binary classification model predictions locally at training time without contacting any Azure services.\n", + "It demonstrates the API calls that you need to make to get the global and local explanations and a visualization dashboard that provides an interactive way of discovering patterns in data and explanations.\n", + "\n", + "We will showcase three tabular data explainers: TabularExplainer (SHAP), MimicExplainer (global surrogate), and PFIExplainer.\n", + "\n", + "| ![Interpretability Toolkit Architecture](./img/interpretability-architecture.PNG) |\n", + "|:--:|\n", + "| *Interpretability Toolkit Architecture* |\n", + "\n", + "Problem: Breast cancer diagnosis classification with scikit-learn (run model explainer locally)\n", + "\n", + "1. Train a SVM classification model using Scikit-learn\n", + "2. Run 'explain_model' globally and locally with full dataset in local mode, which doesn't contact any Azure services.\n", + "3. Visualize the global and local explanations with the visualization dashboard.\n", + "---\n", + "\n", + "## Setup\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "### Run model explainer locally at training time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.datasets import load_breast_cancer\n", + "from sklearn import svm\n", + "\n", + "# Explainers:\n", + "# 1. SHAP Tabular Explainer\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "# OR\n", + "\n", + "# 2. Mimic Explainer\n", + "from azureml.explain.model.mimic.mimic_explainer import MimicExplainer\n", + "# You can use one of the following four interpretable models as a global surrogate to the black box model\n", + "from azureml.explain.model.mimic.models.lightgbm_model import LGBMExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import LinearExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import SGDExplainableModel\n", + "from azureml.explain.model.mimic.models.tree_model import DecisionTreeExplainableModel\n", + "\n", + "# OR\n", + "\n", + "# 3. PFI Explainer\n", + "from azureml.explain.model.permutation.permutation_importance import PFIExplainer " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load the breast cancer diagnosis data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "breast_cancer_data = load_breast_cancer()\n", + "classes = breast_cancer_data.target_names.tolist()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Split data into train and test\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(breast_cancer_data.data, breast_cancer_data.target, test_size=0.2, random_state=0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Train a SVM classification model, which you want to explain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "clf = svm.SVC(gamma=0.001, C=100., probability=True)\n", + "model = clf.fit(x_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain predictions on your local machine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1. Using SHAP TabularExplainer\n", + "explainer = TabularExplainer(model, \n", + " x_train, \n", + " features=breast_cancer_data.feature_names, \n", + " classes=classes)\n", + "\n", + "\n", + "\n", + "\n", + "# 2. Using MimicExplainer\n", + "# augment_data is optional and if true, oversamples the initialization examples to improve surrogate model accuracy to fit original model. Useful for high-dimensional data where the number of rows is less than the number of columns. \n", + "# max_num_of_augmentations is optional and defines max number of times we can increase the input data size.\n", + "# LGBMExplainableModel can be replaced with LinearExplainableModel, SGDExplainableModel, or DecisionTreeExplainableModel\n", + "# explainer = MimicExplainer(model, \n", + "# x_train, \n", + "# LGBMExplainableModel, \n", + "# augment_data=True, \n", + "# max_num_of_augmentations=10, \n", + "# features=breast_cancer_data.feature_names, \n", + "# classes=classes)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# 3. Using PFIExplainer\n", + "\n", + "# Use the parameter \"metric\" to pass a metric name or function to evaluate the permutation. \n", + "# Note that if a metric function is provided a higher value must be better.\n", + "# Otherwise, take the negative of the function or set the parameter \"is_error_metric\" to True.\n", + "# Default metrics: \n", + "# F1 Score for binary classification, F1 Score with micro average for multiclass classification and\n", + "# Mean absolute error for regression\n", + "\n", + "# explainer = PFIExplainer(model, \n", + "# features=breast_cancer_data.feature_names, \n", + "# classes=classes)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate global explanations\n", + "Explain overall model predictions (global explanation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", + "global_explanation = explainer.explain_global(x_test)\n", + "\n", + "# Note: if you used the PFIExplainer in the previous step, use the next line of code instead\n", + "# global_explanation = explainer.explain_global(x_test, true_labels=y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted SHAP values\n", + "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", + "# Corresponding feature names\n", + "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", + "# Feature ranks (based on original order of features)\n", + "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", + "\n", + "# Note: PFIExplainer does not support per class explanations\n", + "# Per class feature names\n", + "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", + "# Per class feature importance values\n", + "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Print out a dictionary that holds the sorted feature importance names and values\n", + "print('global importance rank: {}'.format(global_explanation.get_feature_importance_dict()))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain overall model predictions as a collection of local (instance-level) explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# feature shap values for all features and all data points in the training data\n", + "print('local importance values: {}'.format(global_explanation.local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate local explanations\n", + "Explain local data points (individual instances)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# You can pass a specific data point or a group of data points to the explain_local function\n", + "\n", + "# E.g., Explain the first data point in the test set\n", + "instance_num = 0\n", + "local_explanation = explainer.explain_local(x_test[instance_num,:])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get the prediction for the first member of the test set and explain why model made that prediction\n", + "prediction_value = clf.predict(x_test)[instance_num]\n", + "\n", + "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", + "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", + "\n", + "print('local importance values: {}'.format(sorted_local_importance_values))\n", + "print('local importance names: {}'.format(sorted_local_importance_names))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + " \n", + "1. [Training time: regression problem](./explain-regression-local.ipynb)\n", + "1. [Training time: multiclass classification problem](./explain-multiclass-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](./simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](./advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../azure-integration/run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.yml b/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.yml new file mode 100644 index 00000000..08042837 --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/explain-binary-classification-local.yml @@ -0,0 +1,6 @@ +name: explain-binary-classification-local +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.ipynb b/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.ipynb new file mode 100644 index 00000000..51f13324 --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.ipynb @@ -0,0 +1,402 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Explain multiclass classification model's predictions\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to explain and visualize a multiclass classification model predictions.**_\n", + "\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Train a multiclass classification model\n", + " 1. Explain the model\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize results](#Visualize)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook illustrates how to explain a multiclass classification model predictions locally at training time without contacting any Azure services.\n", + "It demonstrates the API calls that you need to make to get the global and local explanations and a visualization dashboard that provides an interactive way of discovering patterns in data and explanations.\n", + "\n", + "We will showcase three tabular data explainers: TabularExplainer (SHAP), MimicExplainer (global surrogate), and PFIExplainer.\n", + "\n", + "| ![Interpretability Toolkit Architecture](./img/interpretability-architecture.PNG) |\n", + "|:--:|\n", + "| *Interpretability Toolkit Architecture* |\n", + "\n", + "Problem: Iris flower classification with scikit-learn (run model explainer locally)\n", + "\n", + "1. Train a SVM classification model using Scikit-learn\n", + "2. Run 'explain_model' globally and locally with full dataset in local mode, which doesn't contact any Azure services.\n", + "3. Visualize the global and local explanations with the visualization dashboard.\n", + "---\n", + "\n", + "## Setup\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "### Run model explainer locally at training time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.datasets import load_iris\n", + "from sklearn import svm\n", + "\n", + "# Explainers:\n", + "# 1. SHAP Tabular Explainer\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "# OR\n", + "\n", + "# 2. Mimic Explainer\n", + "from azureml.explain.model.mimic.mimic_explainer import MimicExplainer\n", + "# You can use one of the following four interpretable models as a global surrogate to the black box model\n", + "from azureml.explain.model.mimic.models.lightgbm_model import LGBMExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import LinearExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import SGDExplainableModel\n", + "from azureml.explain.model.mimic.models.tree_model import DecisionTreeExplainableModel\n", + "\n", + "# OR\n", + "\n", + "# 3. PFI Explainer\n", + "from azureml.explain.model.permutation.permutation_importance import PFIExplainer " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load the Iris flower dataset" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "iris = load_iris()\n", + "X = iris['data']\n", + "y = iris['target']\n", + "classes = iris['target_names']\n", + "feature_names = iris['feature_names']" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Split data into train and test\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Train a SVM classification model, which you want to explain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "clf = svm.SVC(gamma=0.001, C=100., probability=True)\n", + "model = clf.fit(x_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain predictions on your local machine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1. Using SHAP TabularExplainer\n", + "explainer = TabularExplainer(model, \n", + " x_train, \n", + " features=feature_names, \n", + " classes=classes)\n", + "\n", + "\n", + "\n", + "\n", + "# 2. Using MimicExplainer\n", + "# augment_data is optional and if true, oversamples the initialization examples to improve surrogate model accuracy to fit original model. Useful for high-dimensional data where the number of rows is less than the number of columns. \n", + "# max_num_of_augmentations is optional and defines max number of times we can increase the input data size.\n", + "# LGBMExplainableModel can be replaced with LinearExplainableModel, SGDExplainableModel, or DecisionTreeExplainableModel\n", + "# explainer = MimicExplainer(model, \n", + "# x_train, \n", + "# LGBMExplainableModel, \n", + "# augment_data=True, \n", + "# max_num_of_augmentations=10, \n", + "# features=feature_names, \n", + "# classes=classes)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# 3. Using PFIExplainer\n", + "\n", + "# Use the parameter \"metric\" to pass a metric name or function to evaluate the permutation. \n", + "# Note that if a metric function is provided a higher value must be better.\n", + "# Otherwise, take the negative of the function or set the parameter \"is_error_metric\" to True.\n", + "# Default metrics: \n", + "# F1 Score for binary classification, F1 Score with micro average for multiclass classification and\n", + "# Mean absolute error for regression\n", + "\n", + "# explainer = PFIExplainer(model, \n", + "# features=feature_names, \n", + "# classes=classes)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate global explanations\n", + "Explain overall model predictions (global explanation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", + "global_explanation = explainer.explain_global(x_test)\n", + "\n", + "# Note: if you used the PFIExplainer in the previous step, use the next line of code instead\n", + "# global_explanation = explainer.explain_global(x_test, true_labels=y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted SHAP values\n", + "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", + "# Corresponding feature names\n", + "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", + "# Feature ranks (based on original order of features)\n", + "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", + "\n", + "# Note: PFIExplainer does not support per class explanations\n", + "# Per class feature names\n", + "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", + "# Per class feature importance values\n", + "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Print out a dictionary that holds the sorted feature importance names and values\n", + "print('global importance rank: {}'.format(global_explanation.get_feature_importance_dict()))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain overall model predictions as a collection of local (instance-level) explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# feature shap values for all features and all data points in the training data\n", + "print('local importance values: {}'.format(global_explanation.local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate local explanations\n", + "Explain local data points (individual instances)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# You can pass a specific data point or a group of data points to the explain_local function\n", + "\n", + "# E.g., Explain the first data point in the test set\n", + "instance_num = 0\n", + "local_explanation = explainer.explain_local(x_test[instance_num,:])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get the prediction for the first member of the test set and explain why model made that prediction\n", + "prediction_value = clf.predict(x_test)[instance_num]\n", + "\n", + "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", + "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", + "\n", + "print('local importance values: {}'.format(sorted_local_importance_values))\n", + "print('local importance names: {}'.format(sorted_local_importance_names))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + "\n", + "1. [Training time: regression problem](./explain-regression-local.ipynb) \n", + "1. [Training time: binary classification problem](./explain-binary-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](./simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](./advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../azure-integration/run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)\n", + "\u00e2\u20ac\u2039\n" + ] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.yml b/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.yml new file mode 100644 index 00000000..98f22a4d --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/explain-multiclass-classification-local.yml @@ -0,0 +1,6 @@ +name: explain-multiclass-classification-local +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.ipynb b/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.ipynb new file mode 100644 index 00000000..da78126f --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.ipynb @@ -0,0 +1,397 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Explain regression model predictions\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to explain and visualize a regression model predictions.**_\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Train a regressor model\n", + " 1. Explain the model\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize results](#Visualize)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook illustrates how to explain regression model predictions locally at training time without contacting any Azure services.\n", + "It demonstrates the API calls that you need to make to get the global and local explanations and a visualization dashboard that provides an interactive way of discovering patterns in data and explanations.\n", + "\n", + "We will showcase three tabular data explainers: TabularExplainer (SHAP), MimicExplainer (global surrogate), and PFIExplainer.\n", + "\n", + "| ![Interpretability Toolkit Architecture](./img/interpretability-architecture.PNG) |\n", + "|:--:|\n", + "| *Interpretability Toolkit Architecture* |\n", + "\n", + "Problem: Boston Housing Price Prediction with scikit-learn (run model explainer locally)\n", + "\n", + "1. Train a GradientBoosting regression model using Scikit-learn\n", + "2. Run 'explain_model' globally and locally with full dataset in local mode, which doesn't contact any Azure services.\n", + "3. Visualize the global and local explanations with the visualization dashboard.\n", + "---\n", + "\n", + "## Setup\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "### Run model explainer locally at training time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn import datasets\n", + "from sklearn.ensemble import GradientBoostingRegressor\n", + "\n", + "# Explainers:\n", + "# 1. SHAP Tabular Explainer\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "# OR\n", + "\n", + "# 2. Mimic Explainer\n", + "from azureml.explain.model.mimic.mimic_explainer import MimicExplainer\n", + "# You can use one of the following four interpretable models as a global surrogate to the black box model\n", + "from azureml.explain.model.mimic.models.lightgbm_model import LGBMExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import LinearExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import SGDExplainableModel\n", + "from azureml.explain.model.mimic.models.tree_model import DecisionTreeExplainableModel\n", + "\n", + "# OR\n", + "\n", + "# 3. PFI Explainer\n", + "from azureml.explain.model.permutation.permutation_importance import PFIExplainer " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load the Boston house price data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "boston_data = datasets.load_boston()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Split data into train and test\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(boston_data.data, boston_data.target, test_size=0.2, random_state=0)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Train a GradientBoosting regression model, which you want to explain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "reg = GradientBoostingRegressor(n_estimators=100, max_depth=4,\n", + " learning_rate=0.1, loss='huber',\n", + " random_state=1)\n", + "model = reg.fit(x_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain predictions on your local machine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1. Using SHAP TabularExplainer\n", + "explainer = TabularExplainer(model, \n", + " x_train, \n", + " features = boston_data.feature_names)\n", + "\n", + "\n", + "\n", + "\n", + "# 2. Using MimicExplainer\n", + "# augment_data is optional and if true, oversamples the initialization examples to improve surrogate model accuracy to fit original model. Useful for high-dimensional data where the number of rows is less than the number of columns. \n", + "# max_num_of_augmentations is optional and defines max number of times we can increase the input data size.\n", + "# LGBMExplainableModel can be replaced with LinearExplainableModel, SGDExplainableModel, or DecisionTreeExplainableModel\n", + "# explainer = MimicExplainer(model, \n", + "# x_train, \n", + "# LGBMExplainableModel, \n", + "# augment_data=True, \n", + "# max_num_of_augmentations=10, \n", + "# features=boston_data.feature_names)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# 3. Using PFIExplainer\n", + "\n", + "# Use the parameter \"metric\" to pass a metric name or function to evaluate the permutation. \n", + "# Note that if a metric function is provided a higher value must be better.\n", + "# Otherwise, take the negative of the function or set the parameter \"is_error_metric\" to True.\n", + "# Default metrics: \n", + "# F1 Score for binary classification, F1 Score with micro average for multiclass classification and\n", + "# Mean absolute error for regression\n", + "\n", + "# explainer = PFIExplainer(model, \n", + "# features=boston_data.feature_names)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate global explanations\n", + "Explain overall model predictions (global explanation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", + "global_explanation = explainer.explain_global(x_test)\n", + "\n", + "# Note: if you used the PFIExplainer in the previous step, use the next line of code instead\n", + "# global_explanation = explainer.explain_global(x_test, true_labels=y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted SHAP values \n", + "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", + "# Corresponding feature names\n", + "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", + "# Feature ranks (based on original order of features)\n", + "print('global importance rank: {}'.format(global_explanation.global_importance_rank))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Print out a dictionary that holds the sorted feature importance names and values\n", + "print('global importance rank: {}'.format(global_explanation.get_feature_importance_dict()))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain overall model predictions as a collection of local (instance-level) explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# feature shap values for all features and all data points in the training data\n", + "print('local importance values: {}'.format(global_explanation.local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate local explanations\n", + "Explain local data points (individual instances)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# You can pass a specific data point or a group of data points to the explain_local function\n", + "\n", + "# E.g., Explain the first data point in the test set\n", + "local_explanation = explainer.explain_local(x_test[0,:])\n", + "\n", + "# E.g., Explain the first five data points in the test set\n", + "# local_explanation_group = explainer.explain_local(x_test[0:4,:])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted local feature importance information; reflects the original feature order\n", + "sorted_local_importance_names = local_explanation.get_ranked_local_names()\n", + "sorted_local_importance_values = local_explanation.get_ranked_local_values()\n", + "\n", + "print('sorted local importance names: {}'.format(sorted_local_importance_names))\n", + "print('sorted local importance values: {}'.format(sorted_local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + " \n", + "1. [Training time: binary classification problem](./explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](./explain-multiclass-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](./simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](./advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../azure-integration/run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.yml b/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.yml new file mode 100644 index 00000000..6002b9ab --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/explain-regression-local.yml @@ -0,0 +1,6 @@ +name: explain-regression-local +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.ipynb b/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.ipynb new file mode 100644 index 00000000..a7ddecdd --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.ipynb @@ -0,0 +1,531 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Explain binary classification model predictions with raw feature transformations\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to explain and visualize a binary classification model that uses one to one and one to many feature transformations.**_\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Run model explainer locally at training time](#Explain)\n", + " 1. Apply feature transformations\n", + " 1. Train a binary classification model\n", + " 1. Explain the model on raw features\n", + " 1. Generate global explanations\n", + " 1. Generate local explanations\n", + "1. [Visualize results](#Visualize)\n", + "1. [Next steps](#Next%20steps)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook illustrates creating explanations for a binary classification model, IBM employee attrition classification, that uses one to one and one to many feature transformations from raw data to engineered features. The one to many feature transformations include one hot encoding on categorical features. The one to one feature transformations apply standard scaling on numeric features. Our tabular data explainer is then used to get raw feature importances.\n", + "\n", + "\n", + "We will showcase raw feature transformations with three tabular data explainers: TabularExplainer (SHAP), MimicExplainer (global surrogate), and PFIExplainer.\n", + "\n", + "| ![Interpretability Toolkit Architecture](./img/interpretability-architecture.PNG) |\n", + "|:--:|\n", + "| *Interpretability Toolkit Architecture* |\n", + "\n", + "Problem: IBM employee attrition classification with scikit-learn (run model explainer locally)\n", + "\n", + "1. Transform raw features to engineered features\n", + "2. Train a SVC classification model using Scikit-learn\n", + "3. Run 'explain_model' globally and locally with full dataset in local mode, which doesn't contact any Azure services.\n", + "4. Visualize the global and local explanations with the visualization dashboard.\n", + "---\n", + "\n", + "## Setup\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Explain\n", + "\n", + "### Run model explainer locally at training time" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.pipeline import Pipeline\n", + "from sklearn.impute import SimpleImputer\n", + "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", + "from sklearn.svm import SVC\n", + "import pandas as pd\n", + "import numpy as np\n", + "\n", + "# Explainers:\n", + "# 1. SHAP Tabular Explainer\n", + "from azureml.explain.model.tabular_explainer import TabularExplainer\n", + "\n", + "# OR\n", + "\n", + "# 2. Mimic Explainer\n", + "from azureml.explain.model.mimic.mimic_explainer import MimicExplainer\n", + "# You can use one of the following four interpretable models as a global surrogate to the black box model\n", + "from azureml.explain.model.mimic.models.lightgbm_model import LGBMExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import LinearExplainableModel\n", + "from azureml.explain.model.mimic.models.linear_model import SGDExplainableModel\n", + "from azureml.explain.model.mimic.models.tree_model import DecisionTreeExplainableModel\n", + "\n", + "# OR\n", + "\n", + "# 3. PFI Explainer\n", + "from azureml.explain.model.permutation.permutation_importance import PFIExplainer " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Load the IBM employee attrition data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# get the IBM employee attrition dataset\n", + "outdirname = 'dataset.6.21.19'\n", + "try:\n", + " from urllib import urlretrieve\n", + "except ImportError:\n", + " from urllib.request import urlretrieve\n", + "import zipfile\n", + "zipfilename = outdirname + '.zip'\n", + "urlretrieve('https://publictestdatasets.blob.core.windows.net/data/' + zipfilename, zipfilename)\n", + "with zipfile.ZipFile(zipfilename, 'r') as unzip:\n", + " unzip.extractall('.')\n", + "attritionData = pd.read_csv('./WA_Fn-UseC_-HR-Employee-Attrition.csv')\n", + "\n", + "# Dropping Employee count as all values are 1 and hence attrition is independent of this feature\n", + "attritionData = attritionData.drop(['EmployeeCount'], axis=1)\n", + "# Dropping Employee Number since it is merely an identifier\n", + "attritionData = attritionData.drop(['EmployeeNumber'], axis=1)\n", + "\n", + "attritionData = attritionData.drop(['Over18'], axis=1)\n", + "\n", + "# Since all values are 80\n", + "attritionData = attritionData.drop(['StandardHours'], axis=1)\n", + "\n", + "# Converting target variables from string to numerical values\n", + "target_map = {'Yes': 1, 'No': 0}\n", + "attritionData[\"Attrition_numerical\"] = attritionData[\"Attrition\"].apply(lambda x: target_map[x])\n", + "target = attritionData[\"Attrition_numerical\"]\n", + "\n", + "attritionXData = attritionData.drop(['Attrition_numerical', 'Attrition'], axis=1)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Split data into train and test\n", + "from sklearn.model_selection import train_test_split\n", + "x_train, x_test, y_train, y_test = train_test_split(attritionXData, \n", + " target, \n", + " test_size = 0.2,\n", + " random_state=0,\n", + " stratify=target)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Creating dummy columns for each categorical feature\n", + "categorical = []\n", + "for col, value in attritionXData.iteritems():\n", + " if value.dtype == 'object':\n", + " categorical.append(col)\n", + " \n", + "# Store the numerical columns in a list numerical\n", + "numerical = attritionXData.columns.difference(categorical) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Transform raw features" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "We can explain raw features by either using a `sklearn.compose.ColumnTransformer` or a list of fitted transformer tuples. The cell below uses `sklearn.compose.ColumnTransformer`. In case you want to run the example with the list of fitted transformer tuples, comment the cell below and uncomment the cell that follows after. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.compose import ColumnTransformer\n", + "\n", + "# We create the preprocessing pipelines for both numeric and categorical data.\n", + "numeric_transformer = Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='median')),\n", + " ('scaler', StandardScaler())])\n", + "\n", + "categorical_transformer = Pipeline(steps=[\n", + " ('imputer', SimpleImputer(strategy='constant', fill_value='missing')),\n", + " ('onehot', OneHotEncoder(handle_unknown='ignore'))])\n", + "\n", + "transformations = ColumnTransformer(\n", + " transformers=[\n", + " ('num', numeric_transformer, numerical),\n", + " ('cat', categorical_transformer, categorical)])\n", + "\n", + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', transformations),\n", + " ('classifier', SVC(kernel='linear', C = 1.0, probability=True))])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "'''\n", + "# Uncomment below if sklearn-pandas is not installed\n", + "#!pip install sklearn-pandas\n", + "from sklearn_pandas import DataFrameMapper\n", + "\n", + "# Impute, standardize the numeric features and one-hot encode the categorical features. \n", + "\n", + "\n", + "numeric_transformations = [([f], Pipeline(steps=[('imputer', SimpleImputer(strategy='median')), ('scaler', StandardScaler())])) for f in numerical]\n", + "\n", + "categorical_transformations = [([f], OneHotEncoder(handle_unknown='ignore', sparse=False)) for f in categorical]\n", + "\n", + "transformations = numeric_transformations + categorical_transformations\n", + "\n", + "# Append classifier to preprocessing pipeline.\n", + "# Now we have a full prediction pipeline.\n", + "clf = Pipeline(steps=[('preprocessor', transformations),\n", + " ('classifier', SVC(kernel='linear', C = 1.0, probability=True))]) \n", + "\n", + "\n", + "\n", + "'''" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Train a SVM classification model, which you want to explain" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "model = clf.fit(x_train, y_train)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain predictions on your local machine" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# 1. Using SHAP TabularExplainer\n", + "# clf.steps[-1][1] returns the trained classification model\n", + "explainer = TabularExplainer(clf.steps[-1][1], \n", + " initialization_examples=x_train, \n", + " features=attritionXData.columns, \n", + " classes=[\"Not leaving\", \"leaving\"], \n", + " transformations=transformations)\n", + "\n", + "\n", + "\n", + "\n", + "# 2. Using MimicExplainer\n", + "# augment_data is optional and if true, oversamples the initialization examples to improve surrogate model accuracy to fit original model. Useful for high-dimensional data where the number of rows is less than the number of columns. \n", + "# max_num_of_augmentations is optional and defines max number of times we can increase the input data size.\n", + "# LGBMExplainableModel can be replaced with LinearExplainableModel, SGDExplainableModel, or DecisionTreeExplainableModel\n", + "# explainer = MimicExplainer(clf.steps[-1][1], \n", + "# x_train, \n", + "# LGBMExplainableModel, \n", + "# augment_data=True, \n", + "# max_num_of_augmentations=10, \n", + "# features=attritionXData.columns, \n", + "# classes=[\"Not leaving\", \"leaving\"], \n", + "# transformations=transformations)\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "# 3. Using PFIExplainer\n", + "\n", + "# Use the parameter \"metric\" to pass a metric name or function to evaluate the permutation. \n", + "# Note that if a metric function is provided a higher value must be better.\n", + "# Otherwise, take the negative of the function or set the parameter \"is_error_metric\" to True.\n", + "# Default metrics: \n", + "# F1 Score for binary classification, F1 Score with micro average for multiclass classification and\n", + "# Mean absolute error for regression\n", + "\n", + "# explainer = PFIExplainer(clf.steps[-1][1], \n", + "# features=x_train.columns, \n", + "# transformations=transformations,\n", + "# classes=[\"Not leaving\", \"leaving\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate global explanations\n", + "Explain overall model predictions (global explanation)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", + "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", + "global_explanation = explainer.explain_global(x_test)\n", + "\n", + "# Note: if you used the PFIExplainer in the previous step, use the next line of code instead\n", + "# global_explanation = explainer.explain_global(x_test, true_labels=y_test)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Sorted SHAP values\n", + "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", + "# Corresponding feature names\n", + "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", + "# Feature ranks (based on original order of features)\n", + "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", + "\n", + "# Note: PFIExplainer does not support per class explanations\n", + "# Per class feature names\n", + "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", + "# Per class feature importance values\n", + "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Print out a dictionary that holds the sorted feature importance names and values\n", + "print('global importance rank: {}'.format(global_explanation.get_feature_importance_dict()))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Explain overall model predictions as a collection of local (instance-level) explanations" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# feature shap values for all features and all data points in the training data\n", + "print('local importance values: {}'.format(global_explanation.local_importance_values))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Generate local explanations\n", + "Explain local data points (individual instances)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Note: PFIExplainer does not support local explanations\n", + "# You can pass a specific data point or a group of data points to the explain_local function\n", + "\n", + "# E.g., Explain the first data point in the test set\n", + "instance_num = 1\n", + "local_explanation = explainer.explain_local(x_test[:instance_num])" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get the prediction for the first member of the test set and explain why model made that prediction\n", + "prediction_value = clf.predict(x_test)[instance_num]\n", + "\n", + "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", + "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", + "\n", + "print('local importance values: {}'.format(sorted_local_importance_values))\n", + "print('local importance names: {}'.format(sorted_local_importance_names))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + " \n", + "1. [Training time: regression problem](./explain-regression-local.ipynb)\n", + "1. [Training time: binary classification problem](./explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](./explain-multiclass-classification-local.ipynb)\n", + "1. [Explain models with advanced feature transformations](./advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../azure-integration/run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. [Run explainers remotely on Azure Machine Learning Compute (AMLCompute)](../azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../azure-integration/scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.yml b/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.yml new file mode 100644 index 00000000..969e1f52 --- /dev/null +++ b/how-to-use-azureml/explain-model/tabular-data/simple-feature-transformations-explain-local.yml @@ -0,0 +1,7 @@ +name: simple-feature-transformations-explain-local +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model + - sklearn-pandas diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/README.md b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/README.md index 274c579b..8bb46a69 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/README.md +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/README.md @@ -12,7 +12,9 @@ These notebooks below are designed to go in sequence. 7. [aml-pipelines-how-to-use-estimatorstep.ipynb](https://aka.ms/pl-estimator): This notebook shows how to use the EstimatorStep. 8. [aml-pipelines-parameter-tuning-with-hyperdrive.ipynb](https://aka.ms/pl-hyperdrive): HyperDriveStep in Pipelines shows how you can do hyper parameter tuning using Pipelines. 9. [aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb](https://aka.ms/pl-azbatch): AzureBatchStep can be used to run your custom code in AzureBatch cluster. -10. [aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb](https://aka.ms/pl-schedule): Once you publish a Pipeline, you can schedule it to trigger based on an interval or on data change in a defined datastore. +10. [aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb](https://aka.ms/pl-schedule): Once you publish a Pipeline, you can schedule it to trigger based on an interval or on data change in a defined datastore. +11. [aml-pipelines-with-automated-machine-learning-step.ipynb](https://aka.ms/pl-automl): AutoMLStep in Pipelines shows how you can do automated machine learning using Pipelines. +12. [aml-pipelines-setup-versioned-pipeline-endpoints.ipynb](https://aka.ms/pl-ver-endpoint): This notebook shows how you can setup PipelineEndpoint and submit a Pipeline using the PipelineEndpoint. ![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/README.png) diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-data-transfer.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-data-transfer.ipynb index 437b4d90..b22fb9fa 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-data-transfer.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-data-transfer.ipynb @@ -22,9 +22,19 @@ "# Azure Machine Learning Pipeline with DataTranferStep\n", "This notebook is used to demonstrate the use of DataTranferStep in Azure Machine Learning Pipeline.\n", "\n", - "In certain cases, you will need to transfer data from one data location to another. For example, your data may be in Files storage and you may want to move it to Blob storage. Or, if your data is in an ADLS account and you want to make it available in the Blob storage. The built-in **DataTransferStep** class helps you transfer data in these situations.\n", + "In certain cases, you will need to transfer data from one data location to another. For example, your data may be in Azure SQL Database and you may want to move it to Azure Data Lake storage. Or, your data is in an ADLS account and you want to make it available in the Blob storage. The built-in **DataTransferStep** class helps you transfer data in these situations.\n", "\n", - "The below example shows how to move data between an ADLS account, Blob storage, SQL Server, PostgreSQL server. " + "The below examples show how to move data between an ADLS account, Blob storage, SQL Server, PostgreSQL server. \n", + "\n", + "## Data transfer currently supports following storage types:\n", + "\n", + "| Data store | Supported as a source | Supported as a sink |\n", + "| --- | --- | --- |\n", + "| Azure Blob Storage | Yes | Yes |\n", + "| Azure Data Lake Storage Gen 1 | Yes | Yes |\n", + "| Azure Data Lake Storage Gen 2 | Yes | Yes |\n", + "| Azure SQL Database | Yes | Yes |\n", + "| Azure Database for PostgreSQL | Yes | No |" ] }, { @@ -62,8 +72,7 @@ "\n", "Initialize a workspace object from persisted configuration. If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure the config file is present at .\\config.json\n", "\n", - "If you don't have a config.json file, please go through the configuration Notebook located here:\n", - "https://github.com/Azure/MachineLearningNotebooks. \n", + "If you don't have a config.json file, please go through the [configuration Notebook](https://aka.ms/pl-config) first.\n", "\n", "This sets you up with a working config file that has information on your workspace, subscription id, etc. " ] @@ -86,15 +95,58 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Register Datastores\n", - "\n", - "In the code cell below, you will need to fill in the appropriate values for the workspace name, datastore name, subscription id, resource group, store name, tenant id, client id, and client secret that are associated with your ADLS datastore. \n", + "## Register Datastores and create DataReferences\n", "\n", "For background on registering your data store, consult this article:\n", "\n", "https://docs.microsoft.com/en-us/azure/data-lake-store/data-lake-store-service-to-service-authenticate-using-active-directory\n", "\n", - "### register datastores for Azure Data Lake and Azure Blob storage" + "> Please make sure to update the following code examples with appropriate values." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Azure Blob Storage" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from msrest.exceptions import HttpOperationError\n", + "\n", + "blob_datastore_name='MyBlobDatastore'\n", + "account_name=os.getenv(\"BLOB_ACCOUNTNAME_62\", \"\") # Storage account name\n", + "container_name=os.getenv(\"BLOB_CONTAINER_62\", \"\") # Name of Azure blob container\n", + "account_key=os.getenv(\"BLOB_ACCOUNT_KEY_62\", \"\") # Storage account key\n", + "\n", + "try:\n", + " blob_datastore = Datastore.get(ws, blob_datastore_name)\n", + " print(\"found blob datastore with name: %s\" % blob_datastore_name)\n", + "except HttpOperationError:\n", + " blob_datastore = Datastore.register_azure_blob_container(\n", + " workspace=ws,\n", + " datastore_name=blob_datastore_name,\n", + " account_name=account_name, # Storage account name\n", + " container_name=container_name, # Name of Azure blob container\n", + " account_key=account_key) # Storage account key\n", + " print(\"registered blob datastore with name: %s\" % blob_datastore_name)\n", + "\n", + "blob_data_ref = DataReference(\n", + " datastore=blob_datastore,\n", + " data_reference_name=\"blob_test_data\",\n", + " path_on_datastore=\"testdata\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Azure Data Lake Storage Gen1" ] }, { @@ -128,34 +180,57 @@ " client_secret=client_secret) # the secret of service principal\n", " print(\"registered datastore with name: %s\" % datastore_name)\n", "\n", - "\n", - "\n", - "blob_datastore_name='MyBlobDatastore'\n", - "account_name=os.getenv(\"BLOB_ACCOUNTNAME_62\", \"\") # Storage account name\n", - "container_name=os.getenv(\"BLOB_CONTAINER_62\", \"\") # Name of Azure blob container\n", - "account_key=os.getenv(\"BLOB_ACCOUNT_KEY_62\", \"\") # Storage account key\n", - "\n", - "try:\n", - " blob_datastore = Datastore.get(ws, blob_datastore_name)\n", - " print(\"found blob datastore with name: %s\" % blob_datastore_name)\n", - "except HttpOperationError:\n", - " blob_datastore = Datastore.register_azure_blob_container(\n", - " workspace=ws,\n", - " datastore_name=blob_datastore_name,\n", - " account_name=account_name, # Storage account name\n", - " container_name=container_name, # Name of Azure blob container\n", - " account_key=account_key) # Storage account key\"\n", - " print(\"registered blob datastore with name: %s\" % blob_datastore_name)\n", - "\n", - "# CLI:\n", - "# az ml datastore attach-blob -n -a -c -k [-t ]" + "adls_data_ref = DataReference(\n", + " datastore=adls_datastore,\n", + " data_reference_name=\"adls_test_data\",\n", + " path_on_datastore=\"testdata\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "### register datastores for Azure SQL Server and Azure database for PostgreSQL" + "### Azure Data Lake Storage Gen2" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "\n", + "adlsgen2_datastore_name = 'myadlsgen2datastore'\n", + "account_name=os.getenv(\"ADLSGEN2_ACCOUNTNAME_62\", \"\") # ADLS Gen2 account name\n", + "tenant_id=os.getenv(\"ADLSGEN2_TENANT_62\", \"\") # tenant id of service principal\n", + "client_id=os.getenv(\"ADLSGEN2_CLIENTID_62\", \"\") # client id of service principal\n", + "client_secret=os.getenv(\"ADLSGEN2_CLIENT_SECRET_62\", \"\") # the secret of service principal\n", + "\n", + "try:\n", + " adlsgen2_datastore = Datastore.get(ws, adlsgen2_datastore_name)\n", + " print(\"found ADLS Gen2 datastore with name: %s\" % adlsgen2_datastore_name)\n", + "except:\n", + " adlsgen2_datastore = Datastore.register_azure_data_lake_gen2(\n", + " workspace=ws,\n", + " datastore_name=adlsgen2_datastore_name,\n", + " filesystem='test', # Name of ADLS Gen2 filesystem\n", + " account_name=account_name, # ADLS Gen2 account name\n", + " tenant_id=tenant_id, # tenant id of service principal\n", + " client_id=client_id, # client id of service principal\n", + " client_secret=client_secret) # the secret of service principal\n", + " print(\"registered datastore with name: %s\" % adlsgen2_datastore_name)\n", + "\n", + "adlsgen2_data_ref = DataReference(\n", + " datastore=adlsgen2_datastore,\n", + " data_reference_name='adlsgen2_test_data',\n", + " path_on_datastore='testdata')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Azure SQL Database" ] }, { @@ -186,7 +261,28 @@ " tenant_id=tenant_id)\n", " print(\"registered sql databse datastore with name: %s\" % sql_datastore_name)\n", "\n", - " \n", + "from azureml.data.sql_data_reference import SqlDataReference\n", + "\n", + "sql_query_data_ref = SqlDataReference(\n", + " datastore=sql_datastore,\n", + " data_reference_name=\"sql_query_data_ref\",\n", + " sql_query=\"select top 1 * from TestData\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Azure Database for PostgreSQL" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "\n", "psql_datastore_name=\"MyPostgreSqlDatastore\"\n", "server_name=os.getenv(\"PSQL_SERVERNAME_62\", \"\") # Name of PostgreSQL server \n", "database_name=os.getenv(\"PSQL_DATBASENAME_62\", \"\") # Name of PostgreSQL database\n", @@ -205,73 +301,13 @@ " user_id=user_id,\n", " user_password=user_password)\n", " print(\"registered PostgreSQL databse datastore with name: %s\" % psql_datastore_name)\n", - " " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Create DataReferences\n", - "### create DataReferences for Azure Data Lake and Azure Blob storage" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "adls_datastore = Datastore(workspace=ws, name=\"MyAdlsDatastore\")\n", "\n", - "# adls\n", - "adls_data_ref = DataReference(\n", - " datastore=adls_datastore,\n", - " data_reference_name=\"adls_test_data\",\n", - " path_on_datastore=\"testdata\")\n", - "\n", - "blob_datastore = Datastore(workspace=ws, name=\"MyBlobDatastore\")\n", - "\n", - "# blob data\n", - "blob_data_ref = DataReference(\n", - " datastore=blob_datastore,\n", - " data_reference_name=\"blob_test_data\",\n", - " path_on_datastore=\"testdata\")\n", - "\n", - "print(\"obtained adls, blob data references\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### create DataReferences for Azure SQL Server and Azure database for PostgreSQL" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ "from azureml.data.sql_data_reference import SqlDataReference\n", "\n", - "sql_datastore = Datastore(workspace=ws, name=\"MySqlDatastore\")\n", - "\n", - "sql_query_data_ref = SqlDataReference(\n", - " datastore=sql_datastore,\n", - " data_reference_name=\"sql_query_data_ref\",\n", - " sql_query=\"select top 1 * from TestData\")\n", - "\n", - "\n", - "psql_datastore = Datastore(workspace=ws, name=\"MyPostgreSqlDatastore\")\n", - "\n", "psql_query_data_ref = SqlDataReference(\n", " datastore=psql_datastore,\n", " data_reference_name=\"psql_query_data_ref\",\n", - " sql_query=\"SELECT * FROM testtable\")\n", - "\n", - "print(\"obtained Sql server, PostgreSQL data references\")" + " sql_query=\"SELECT * FROM testtable\")" ] }, { @@ -304,11 +340,7 @@ " \n", "data_factory_compute = get_or_create_data_factory(ws, data_factory_name)\n", "\n", - "print(\"setup data factory account complete\")\n", - "\n", - "# CLI:\n", - "# Create: az ml computetarget setup datafactory -n \n", - "# BYOC: az ml computetarget attach datafactory -n -i " + "print(\"setup data factory account complete\")" ] }, { @@ -357,6 +389,13 @@ "metadata": {}, "outputs": [], "source": [ + "\n", + "transfer_adlsgen2_to_blob = DataTransferStep(\n", + " name='transfer_adlsgen2_to_blob',\n", + " source_data_reference=adlsgen2_data_ref,\n", + " destination_data_reference=blob_data_ref,\n", + " compute_target=data_factory_compute)\n", + "\n", "transfer_sql_to_blob = DataTransferStep(\n", " name=\"transfer_sql_to_blob\",\n", " source_data_reference=sql_query_data_ref,\n", @@ -405,7 +444,7 @@ "pipeline_02 = Pipeline(\n", " description=\"data_transfer_02\",\n", " workspace=ws,\n", - " steps=[transfer_sql_to_blob,transfer_psql_to_blob])\n", + " steps=[transfer_sql_to_blob,transfer_psql_to_blob, transfer_adlsgen2_to_blob])\n", "\n", "pipeline_run_02 = Experiment(ws, \"Data_Transfer_example_02\").submit(pipeline_02)\n", "pipeline_run_02.wait_for_completion()" @@ -439,11 +478,12 @@ ] }, { + "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Next: Databricks as a Compute Target\n", - "To use Databricks as a compute target from Azure Machine Learning Pipeline, a DatabricksStep is used. This [notebook](./aml-pipelines-use-databricks-as-compute-target.ipynb) demonstrates the use of a DatabricksStep in an Azure Machine Learning Pipeline." + "To use Databricks as a compute target from Azure Machine Learning Pipeline, a DatabricksStep is used. This [notebook](https://aka.ms/pl-databricks) demonstrates the use of a DatabricksStep in an Azure Machine Learning Pipeline." ] } ], diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb index c11afc66..474d9496 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb @@ -33,7 +33,7 @@ "\n", "Azure's Machine Learning pipelines give you a way to combine multiple steps like these into one configurable workflow, so that multiple agents/users can share and/or reuse this workflow. Machine learning pipelines thus provide a consistent, reproducible mechanism for building, evaluating, deploying, and running ML systems.\n", "\n", - "To get more information about Azure machine learning pipelines, please read our [Azure Machine Learning Pipelines](https://docs.microsoft.com/en-us/azure/machine-learning/service/concept-ml-pipelines) overview, or the [readme article](../README.md).\n", + "To get more information about Azure machine learning pipelines, please read our [Azure Machine Learning Pipelines](https://aka.ms/pl-concept) overview, or the [readme article](https://aka.ms/pl-readme).\n", "\n", "In this notebook, we provide a gentle introduction to Azure machine learning pipelines. We build a pipeline that runs jobs unattended on different compute clusters; in this notebook, you'll see how to use the basic Azure ML SDK APIs for constructing this pipeline.\n", " " @@ -44,7 +44,7 @@ "metadata": {}, "source": [ "## Prerequisites and Azure Machine Learning Basics\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration notebook](../../../configuration.ipynb) located at https://github.com/Azure/MachineLearningNotebooks first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n" + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration notebook](https://aka.ms/pl-config) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n" ] }, { @@ -127,7 +127,7 @@ "metadata": {}, "source": [ "### Required data and script files for the the tutorial\n", - "Sample files required to finish this tutorial are already copied to the corresponding source_directory locations. Even though the .py provided in the samples don't have much \"ML work,\" as a data scientist, you will work on this extensively as part of your work. To complete this tutorial, the contents of these files are not very important. The one-line files are for demostration purpose only." + "Sample files required to finish this tutorial are already copied to the corresponding source_directory locations. Even though the .py provided in the samples does not have much \"ML work\" as a data scientist, you will work on this extensively as part of your work. To complete this tutorial, the contents of these files are not very important. The one-line files are for demostration purpose only." ] }, { @@ -597,7 +597,7 @@ "metadata": {}, "source": [ "# Next: Pipelines with data dependency\n", - "The next [notebook](./aml-pipelines-with-data-dependency-steps.ipynb) demostrates how to construct a pipeline with data dependency." + "The next [notebook](https://aka.ms/pl-data-dep) demostrates how to construct a pipeline with data dependency." ] } ], diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb index 07cf623c..16f46f2e 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-azurebatch-to-run-a-windows-executable.ipynb @@ -74,7 +74,7 @@ "source": [ "Initialize a workspace object from persisted configuration. Make sure the config file is present at .\\config.json\n", "\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, If you don't have a config.json file, please go through the configuration Notebook located [here](https://github.com/Azure/MachineLearningNotebooks). \n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, If you don't have a config.json file, please go through the [configuration Notebook](https://aka.ms/pl-config) located [here](https://github.com/Azure/MachineLearningNotebooks). \n", "\n", "This sets you up with a working config file that has information on your workspace, subscription id, etc. " ] diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb index 2c2f5e79..c5011aaa 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-how-to-use-estimatorstep.ipynb @@ -27,7 +27,7 @@ "\n", "## Prerequisite:\n", "* Understand the [architecture and terms](https://docs.microsoft.com/azure/machine-learning/service/concept-azure-machine-learning-architecture) introduced by Azure Machine Learning\n", - "* If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, go through the [configuration notebook](../../../configuration.ipynb) to:\n", + "* If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, go through the [configuration notebook](https://aka.ms/pl-config) to:\n", " * install the AML SDK\n", " * create a workspace and its configuration file (`config.json`)" ] diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb index 9ee1222b..a7e1dabe 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb @@ -30,7 +30,7 @@ "metadata": {}, "source": [ "## Prerequisites and Azure Machine Learning Basics\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the configuration Notebook located at https://github.com/Azure/MachineLearningNotebooks first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration Notebook](https://aka.ms/pl-config) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n", "\n", "## Azure Machine Learning and Pipeline SDK-specific imports" ] diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb index 435b8abc..04cccd09 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-publish-and-run-using-rest-endpoint.ipynb @@ -28,7 +28,7 @@ "metadata": {}, "source": [ "## Prerequisites and Azure Machine Learning Basics\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the configuration Notebook located at https://github.com/Azure/MachineLearningNotebooks first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration Notebook](https://aka.ms/pl-config) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n", "\n", "### Initialization Steps" ] @@ -393,7 +393,7 @@ "metadata": {}, "source": [ "# Next: Data Transfer\n", - "The next [notebook](./aml-pipelines-data-transfer.ipynb) will showcase data transfer steps between different types of data stores." + "The next [notebook](https://aka.ms/pl-data-trans) will showcase data transfer steps between different types of data stores." ] } ], diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb index 935de43f..7a410a75 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-schedule-for-a-published-pipeline.ipynb @@ -28,7 +28,7 @@ "metadata": {}, "source": [ "## Prerequisites and AML Basics\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the configuration Notebook located at https://github.com/Azure/MachineLearningNotebooks first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc.\n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration Notebook](https://aka.ms/pl-config) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc.\n", "\n", "### Initialization Steps" ] diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb index 4f2608df..a2c5561f 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-setup-versioned-pipeline-endpoints.ipynb @@ -32,7 +32,7 @@ "metadata": {}, "source": [ "### Prerequisites and AML Basics\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration Notebook](https://github.com/Azure/MachineLearningNotebooks) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc.\n" + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration Notebook](https://aka.ms/pl-config) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc.\n" ] }, { diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb index 1d5fefd6..8b6d280f 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb @@ -20,7 +20,7 @@ "metadata": {}, "source": [ "# Using Databricks as a Compute Target from Azure Machine Learning Pipeline\n", - "To use Databricks as a compute target from [Azure Machine Learning Pipeline](https://docs.microsoft.com/en-us/azure/machine-learning/service/concept-ml-pipelines), a [DatabricksStep](https://docs.microsoft.com/en-us/python/api/azureml-pipeline-steps/azureml.pipeline.steps.databricks_step.databricksstep?view=azure-ml-py) is used. This notebook demonstrates the use of DatabricksStep in Azure Machine Learning Pipeline.\n", + "To use Databricks as a compute target from [Azure Machine Learning Pipeline](https://aka.ms/pl-concept), a [DatabricksStep](https://docs.microsoft.com/en-us/python/api/azureml-pipeline-steps/azureml.pipeline.steps.databricks_step.databricksstep?view=azure-ml-py) is used. This notebook demonstrates the use of DatabricksStep in Azure Machine Learning Pipeline.\n", "\n", "The notebook will show:\n", "1. Running an arbitrary Databricks notebook that the customer has in Databricks workspace\n", @@ -290,7 +290,7 @@ "metadata": {}, "source": [ "## Use Databricks from Azure Machine Learning Pipeline\n", - "To use Databricks as a compute target from Azure Machine Learning Pipeline, a DatabricksStep is used. Let's define a datasource (via DataReference) and intermediate data (via PipelineData) to be used in DatabricksStep." + "To use Databricks as a compute target from Azure Machine Learning Pipeline, a DatabricksStep is used. Let's define a datasource (via DataReference), intermediate data (via PipelineData) and a pipeline parameter (via PipelineParameter) to be used in DatabricksStep." ] }, { @@ -299,10 +299,14 @@ "metadata": {}, "outputs": [], "source": [ + "from azureml.pipelince.core import PipelineParameter\n", + "\n", "# Use the default blob storage\n", "def_blob_store = Datastore(ws, \"workspaceblobstore\")\n", "print('Datastore {} will be used'.format(def_blob_store.name))\n", "\n", + "pipeline_param = PipelineParameter(name=\"my_pipeline_param\", default_value=\"pipeline_param1\")\n", + "\n", "# We are uploading a sample file in the local directory to be used as a datasource\n", "def_blob_store.upload_files(files=[\"./testdata.txt\"], target_path=\"dbtest\", overwrite=False)\n", "\n", @@ -406,7 +410,9 @@ "### 1. Running the demo notebook already added to the Databricks workspace\n", "Create a notebook in the Azure Databricks workspace, and provide the path to that notebook as the value associated with the environment variable \"DATABRICKS_NOTEBOOK_PATH\". This will then set the variable\u00c2\u00a0notebook_path\u00c2\u00a0when you run the code cell below:\n", "\n", - "your notebook's path in Azure Databricks UI by hovering over to notebook's title. A typical path of notebook looks like this `/Users/example@databricks.com/example`. See [Databricks Workspace](https://docs.azuredatabricks.net/user-guide/workspace.html) to learn about the folder structure." + "your notebook's path in Azure Databricks UI by hovering over to notebook's title. A typical path of notebook looks like this `/Users/example@databricks.com/example`. See [Databricks Workspace](https://docs.azuredatabricks.net/user-guide/workspace.html) to learn about the folder structure.\n", + "\n", + "Note: DataPath `PipelineParameter` should be provided in list of inputs. Such parameters can be accessed by the datapath `name`." ] }, { @@ -423,7 +429,8 @@ " outputs=[step_1_output],\n", " num_workers=1,\n", " notebook_path=notebook_path,\n", - " notebook_params={'myparam': 'testparam'},\n", + " notebook_params={'myparam': 'testparam', \n", + " 'myparam2': pipeline_param},\n", " run_name='DB_Notebook_demo',\n", " compute_target=databricks_compute,\n", " allow_reuse=True\n", @@ -434,7 +441,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "#### Build and submit the Experiment" + "#### Build and submit the Experiment\n", + "\n", + "Note: Default value of `pipeline_param` will be used if different value is not specified in pipeline parameters during submission" ] }, { @@ -479,7 +488,9 @@ "dbfs cp ./train-db-dbfs.py dbfs:/train-db-dbfs.py\n", "```\n", "\n", - "The code in the below cell assumes that you have completed the previous step of uploading the script `train-db-dbfs.py` to the root folder in DBFS." + "The code in the below cell assumes that you have completed the previous step of uploading the script `train-db-dbfs.py` to the root folder in DBFS.\n", + "\n", + "Note: `pipeline_param` will add two values in the python_script_params, a name followed by value. the name will be in this format `--MY_PIPELINE_PARAM`. For example, in the given case, python_script_params will be `[\"arg1\", \"--MY_PIPELINE_PARAM\", \"pipeline_param1\", \"arg2\"]`" ] }, { @@ -495,7 +506,7 @@ " inputs=[step_1_input],\n", " num_workers=1,\n", " python_script_path=python_script_path,\n", - " python_script_params={'--input_data'},\n", + " python_script_params={'arg1', pipeline_param, 'arg2},\n", " run_name='DB_Python_demo',\n", " compute_target=databricks_compute,\n", " allow_reuse=True\n", @@ -545,7 +556,9 @@ "### 3. Running a Python script in Databricks that currenlty is in local computer\n", "To run a Python script that is currently in your local computer, follow the instructions below. \n", "\n", - "The commented out code below code assumes that you have `train-db-local.py` in the `scripts` subdirectory under the current working directory.\n", + "The commented out code below code assumes that you have `train-db-local.py` in the `source_directory` subdirectory under the current working directory. \n", + "\n", + "The best practice is to use separate folders for scripts and its dependent files for each step and specify that folder as the `source_directory` for the step. This helps reduce the size of the snapshot created for the step (only the specific folder is snapshotted). Since changes in any files in the `source_directory` would trigger a re-upload of the snapshot, this helps keep the reuse of the step when there are no changes in the `source_directory` of the step.\n", "\n", "In this case, the Python script will be uploaded first to DBFS, and then the script will be run in Databricks." ] @@ -557,7 +570,7 @@ "outputs": [], "source": [ "python_script_name = \"train-db-local.py\"\n", - "source_directory = \".\"\n", + "source_directory = \"./databricks_train\"\n", "\n", "dbPythonInLocalMachineStep = DatabricksStep(\n", " name=\"DBPythonInLocalMachine\",\n", @@ -618,7 +631,9 @@ "\n", "```\n", "dbfs cp ./train-db-dbfs.jar dbfs:/train-db-dbfs.jar\n", - "```" + "```\n", + "\n", + "Note: `pipeline_param` will add two values in the python_script_params, a name followed by value. the name will be in this format `--MY_PIPELINE_PARAM`. For example, in the given case, python_script_params will be `[\"arg1\", \"--MY_PIPELINE_PARAM\", \"pipeline_param1\", \"arg2\"]`" ] }, { @@ -635,7 +650,7 @@ " inputs=[step_1_input],\n", " num_workers=1,\n", " main_class_name=main_jar_class_name,\n", - " jar_params={'arg1', 'arg2'},\n", + " jar_params={'arg1', pipeline_param, 'arg2'},\n", " run_name='DB_JAR_demo',\n", " jar_libraries=[JarLibrary(jar_library_dbfs_path)],\n", " compute_target=databricks_compute,\n", @@ -684,7 +699,7 @@ "metadata": {}, "source": [ "# Next: ADLA as a Compute Target\n", - "To use ADLA as a compute target from Azure Machine Learning Pipeline, a AdlaStep is used. This [notebook](./aml-pipelines-use-adla-as-compute-target.ipynb) demonstrates the use of AdlaStep in Azure Machine Learning Pipeline." + "To use ADLA as a compute target from Azure Machine Learning Pipeline, a AdlaStep is used. This [notebook](https://aka.ms/pl-adla) demonstrates the use of AdlaStep in Azure Machine Learning Pipeline." ] } ], diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb index 30ace755..cd42882b 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb @@ -28,24 +28,19 @@ "metadata": {}, "source": [ "## Introduction\n", - "In this example we use the scikit-learn's [digit dataset](http://scikit-learn.org/stable/datasets/index.html#optical-recognition-of-handwritten-digits-dataset) to showcase how you can use AutoML for a simple classification problem.\n", + "In this example we showcase how you can use the `azureml.dataprep` SDK to load and prepare data for AutoML via AML Pipeline. `azureml.dataprep` can also be used standalone; full documentation can be found [here](https://github.com/Microsoft/PendletonDocs).\n", "\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you have executed the [configuration](../../../configuration.ipynb) before running this notebook.\n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you have executed the [configuration](https://aka.ms/pl-config) before running this notebook.\n", "\n", - "In this notebook you would see\n", + "In this notebook you will learn how to:\n", "1. Create an `Experiment` in an existing `Workspace`.\n", "2. Create or Attach existing AmlCompute to a workspace.\n", - "3. Configure AutoML using `AutoMLConfig`.\n", - "4. Use AutoMLStep\n", - "5. Train the model using AmlCompute\n", - "6. Explore the results.\n", - "7. Test the best fitted model.\n", - "\n", - "In addition this notebook showcases the following features\n", - "- **Parallel** executions for iterations\n", - "- **Asynchronous** tracking of progress\n", - "- Retrieving models for any iteration or logged metric\n", - "- Specifying AutoML settings as `**kwargs`" + "3. Define data loading and preparation steps in a `Dataflow` using `azureml.dataprep`.\n", + "4. Configure AutoML using `AutoMLConfig`.\n", + "5. Use AutoMLStep\n", + "6. Train the model using AmlCompute\n", + "7. Explore the results.\n", + "8. Test the best fitted model." ] }, { @@ -69,6 +64,8 @@ "import numpy as np\n", "import pandas as pd\n", "from sklearn import datasets\n", + "import pkg_resources\n", + "import azureml.dataprep as dprep\n", "\n", "import azureml.core\n", "from azureml.core.experiment import Experiment\n", @@ -131,7 +128,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Create or Attach existing AmlCompute\n", + "### Create or Attach an AmlCompute cluster\n", "You will need to create a [compute target](https://docs.microsoft.com/azure/machine-learning/service/concept-azure-machine-learning-architecture#compute-target) for your AutoML run. In this tutorial, you get the default `AmlCompute` as your training compute resource." ] }, @@ -168,45 +165,6 @@ " # For a more detailed view of current AmlCompute status, use get_status()." ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prepare and Point to Data\n", - "For remote executions, you need to make the data accessible from the remote compute.\n", - "This can be done by uploading the data to DataStore.\n", - "In this example, we upload scikit-learn's [load_digits](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_digits.html) data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "data_train = datasets.load_digits()\n", - "\n", - "if not os.path.isdir('data'):\n", - " os.mkdir('data')\n", - " \n", - "if not os.path.exists(project_folder):\n", - " os.makedirs(project_folder)\n", - " \n", - "pd.DataFrame(data_train.data).to_csv(\"data/X_train.tsv\", index=False, header=False, quoting=csv.QUOTE_ALL, sep=\"\\t\")\n", - "pd.DataFrame(data_train.target).to_csv(\"data/y_train.tsv\", index=False, header=False, sep=\"\\t\")\n", - "\n", - "ds = ws.get_default_datastore()\n", - "ds.upload(src_dir='./data', target_path='bai_data', overwrite=True, show_progress=True)\n", - "\n", - "from azureml.data.data_reference import DataReference \n", - "input_data = DataReference(datastore=ds, \n", - " data_reference_name=\"input_data_reference\",\n", - " path_on_datastore='bai_data',\n", - " mode='download',\n", - " path_on_compute='/tmp/azureml_runs',\n", - " overwrite=False)" - ] - }, { "cell_type": "code", "execution_count": null, @@ -216,54 +174,77 @@ "# create a new RunConfig object\n", "conda_run_config = RunConfiguration(framework=\"python\")\n", "\n", - "# Set compute target to AmlCompute\n", - "#conda_run_config.target = compute_target\n", - "\n", "conda_run_config.environment.docker.enabled = True\n", "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]'], \n", - " conda_packages=['numpy', 'py-xgboost'], \n", - " pin_sdk_version=False)\n", + " conda_packages=['numpy', 'py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd\n", "\n", "print('run config is ready')" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Data" + ] + }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ - "%%writefile $project_folder/get_data.py\n", - "\n", - "import pandas as pd\n", - "\n", - "def get_data():\n", - " X_train = pd.read_csv(\"/tmp/azureml_runs/bai_data/X_train.tsv\", delimiter=\"\\t\", header=None, quotechar='\"')\n", - " y_train = pd.read_csv(\"/tmp/azureml_runs/bai_data/y_train.tsv\", delimiter=\"\\t\", header=None, quotechar='\"')\n", - "\n", - " return { \"X\" : X_train.values, \"y\" : y_train.values.flatten() }\n" + "# You can use `auto_read_file` which intelligently figures out delimiters and datatypes of a file.\n", + "# The data referenced here was a 1MB simple random sample of the Chicago Crime data into a local temporary directory.\n", + "# You can also use `read_csv` and `to_*` transformations to read (with overridable delimiter)\n", + "# and convert column types manually.\n", + "example_data = 'https://dprepdata.blob.core.windows.net/demo/crime0-random.csv'\n", + "dflow = dprep.auto_read_file(example_data).skip(1) # Remove the header row.\n", + "dflow.get_profile()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# As `Primary Type` is our y data, we need to drop the values those are null in this column.\n", + "dflow = dflow.drop_nulls('Primary Type')\n", + "dflow.head(5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Set up AutoMLConfig for Training\n", + "### Review the Data Preparation Result\n", "\n", - "You can specify `automl_settings` as `**kwargs` as well. Also note that you can use a `get_data()` function for local excutions too.\n", + "You can peek the result of a Dataflow at any range using `skip(i)` and `head(j)`. Doing so evaluates only `j` records for all the steps in the Dataflow, which makes it fast even against large datasets.\n", "\n", - "**Note:** When using AmlCompute, you can't pass Numpy arrays directly to the fit method.\n", - "\n", - "|Property|Description|\n", - "|-|-|\n", - "|**primary_metric**|This is the metric that you want to optimize. Classification supports the following primary metrics:
    accuracy
    AUC_weighted
    average_precision_score_weighted
    norm_macro_recall
    precision_score_weighted|\n", - "|**iteration_timeout_minutes**|Time limit in minutes for each iteration.|\n", - "|**iterations**|Number of iterations. In each iteration AutoML trains a specific pipeline with the data.|\n", - "|**n_cross_validations**|Number of cross validation splits.|\n", - "|**max_concurrent_iterations**|Maximum number of iterations that would be executed in parallel. This should be less than the number of cores on the DSVM.|" + "`Dataflow` objects are immutable and are composed of a list of data preparation steps. A `Dataflow` object can be branched at any point for further usage." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "X = dflow.drop_columns(columns=['Primary Type', 'FBI Code'])\n", + "y = dflow.keep_columns(columns=['Primary Type'], validate_column_exists=True)\n", + "print('X and y are ready!')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train\n", + "This creates a general AutoML settings object." ] }, { @@ -273,20 +254,19 @@ "outputs": [], "source": [ "automl_settings = {\n", - " \"iteration_timeout_minutes\": 5,\n", - " \"iterations\": 20,\n", - " \"n_cross_validations\": 5,\n", - " \"primary_metric\": 'AUC_weighted',\n", - " \"preprocess\": False,\n", - " \"max_concurrent_iterations\": 3,\n", - " \"verbosity\": logging.INFO\n", + " \"iteration_timeout_minutes\" : 5,\n", + " \"iterations\" : 2,\n", + " \"primary_metric\" : 'AUC_weighted',\n", + " \"preprocess\" : True,\n", + " \"verbosity\" : logging.INFO\n", "}\n", "automl_config = AutoMLConfig(task = 'classification',\n", " debug_log = 'automl_errors.log',\n", " path = project_folder,\n", " compute_target=compute_target,\n", " run_configuration=conda_run_config,\n", - " data_script = project_folder + \"/get_data.py\",\n", + " X = X,\n", + " y = y,\n", " **automl_settings\n", " )" ] @@ -295,15 +275,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Call the `submit` method on the experiment object and pass the run configuration. For remote runs the execution is asynchronous, so you will see the iterations get populated as they complete. You can interact with the widgets and models even when the experiment is running to retrieve the best model up to that point. Once you are satisfied with the model, you can cancel a particular iteration or the whole run.\n", - "In this example, we specify `show_output = False` to suppress console output while the run is in progress." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Define AutoMLStep" + "You can define outputs for the AutoMLStep using TrainingOutput." ] }, { @@ -314,6 +286,7 @@ "source": [ "from azureml.pipeline.core import PipelineData, TrainingOutput\n", "\n", + "ds = ws.get_default_datastore()\n", "metrics_output_name = 'metrics_output'\n", "best_model_output_name = 'best_model_output'\n", "\n", @@ -327,6 +300,13 @@ " training_output=TrainingOutput(type='Model'))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Create an AutoMLStep." + ] + }, { "cell_type": "code", "execution_count": null, @@ -335,9 +315,7 @@ "source": [ "automl_step = AutoMLStep(\n", " name='automl_module',\n", - " experiment=experiment,\n", " automl_config=automl_config,\n", - " inputs=[input_data],\n", " outputs=[metirics_data, model_data],\n", " allow_reuse=True)" ] @@ -411,7 +389,7 @@ "source": [ "import json\n", "with open(metrics_output._path_on_datastore) as f: \n", - " metrics_output_result = f.read()\n", + " metrics_output_result = f.read()\n", " \n", "deserialized_metrics_output = json.loads(metrics_output_result)\n", "df = pd.DataFrame(deserialized_metrics_output)\n", @@ -441,11 +419,11 @@ "metadata": {}, "outputs": [], "source": [ - " import pickle\n", + "import pickle\n", "\n", - " with open(best_model_output._path_on_datastore, \"rb\" ) as f:\n", - " best_model = pickle.load(f)\n", - " best_model" + "with open(best_model_output._path_on_datastore, \"rb\" ) as f:\n", + " best_model = pickle.load(f)\n", + "best_model" ] }, { @@ -453,7 +431,8 @@ "metadata": {}, "source": [ "### Test the Model\n", - "#### Load Test Data" + "#### Load Test Data\n", + "For the test data, it should have the same preparation step as the train data. Otherwise it might get failed at the preprocessing step." ] }, { @@ -462,17 +441,17 @@ "metadata": {}, "outputs": [], "source": [ - "digits = datasets.load_digits()\n", - "X_test = digits.data[:10, :]\n", - "y_test = digits.target[:10]\n", - "images = digits.images[:10]" + "dflow_test = dprep.auto_read_file(path='https://dprepdata.blob.core.windows.net/demo/crime0-test.csv').skip(1)\n", + "dflow_test = dflow_test.drop_nulls('Primary Type')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "#### Testing Best Model" + "#### Testing Our Best Fitted Model\n", + "\n", + "We will use confusion matrix to see how our model works." ] }, { @@ -481,17 +460,19 @@ "metadata": {}, "outputs": [], "source": [ - "# Randomly select digits and test.\n", - "for index in np.random.choice(len(y_test), 3, replace = False):\n", - " print(index)\n", - " predicted = best_model.predict(X_test[index:index + 1])[0]\n", - " label = y_test[index]\n", - " title = \"Label value = %d Predicted value = %d \" % (label, predicted)\n", - " fig = plt.figure(1, figsize=(3,3))\n", - " ax1 = fig.add_axes((0,0,.8,.8))\n", - " ax1.set_title(title)\n", - " plt.imshow(images[index], cmap = plt.cm.gray_r, interpolation = 'nearest')\n", - " plt.show()" + "from pandas_ml import ConfusionMatrix\n", + "\n", + "y_test = dflow_test.keep_columns(columns=['Primary Type']).to_pandas_dataframe()\n", + "X_test = dflow_test.drop_columns(columns=['Primary Type', 'FBI Code']).to_pandas_dataframe()\n", + "\n", + "\n", + "ypred = best_model.predict(X_test)\n", + "\n", + "cm = ConfusionMatrix(y_test['Primary Type'], ypred)\n", + "\n", + "print(cm)\n", + "\n", + "cm.plot()" ] } ], diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb index f6e618c1..8131b6e0 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-data-dependency-steps.ipynb @@ -28,7 +28,7 @@ "metadata": {}, "source": [ "## Prerequisites and Azure Machine Learning Basics\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the configuration Notebook located at https://github.com/Azure/MachineLearningNotebooks first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration Notebook](https://aka.ms/pl-config) first if you haven't. This sets you up with a working config file that has information on your workspace, subscription id, etc. \n", "\n", "### Azure Machine Learning and Pipeline SDK-specific Imports" ] @@ -517,7 +517,7 @@ "metadata": {}, "source": [ "# Next: Publishing the Pipeline and calling it from the REST endpoint\n", - "See this [notebook](./aml-pipelines-publish-and-run-using-rest-endpoint.ipynb) to understand how the pipeline is published and you can call the REST endpoint to run the pipeline." + "See this [notebook](https://aka.ms/pl-pub-rep) to understand how the pipeline is published and you can call the REST endpoint to run the pipeline." ] } ], diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/databricks_train/train-db-local.py b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/databricks_train/train-db-local.py new file mode 100644 index 00000000..99b511af --- /dev/null +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/databricks_train/train-db-local.py @@ -0,0 +1,5 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +print("In train.py") +print("As a data scientist, this is where I use my training code.") diff --git a/how-to-use-azureml/training-with-deep-learning/README.md b/how-to-use-azureml/training-with-deep-learning/README.md index b5200946..6a842f45 100644 --- a/how-to-use-azureml/training-with-deep-learning/README.md +++ b/how-to-use-azureml/training-with-deep-learning/README.md @@ -14,6 +14,7 @@ These examples show you: 10. [Distributed training using Chainer](distributed-chainer) 11. [Export run history records to Tensorboard](export-run-history-to-tensorboard) 12. [Use TensorBoard to monitor training execution](tensorboard) +13. [Resuming training from previous run](train-tensorflow-resume-training) Learn more about how to use `Estimator` class to [train deep neural networks with Azure Machine Learning](https://docs.microsoft.com/azure/machine-learning/service/how-to-train-ml-models). diff --git a/how-to-use-azureml/training/logging-api/logging-api.ipynb b/how-to-use-azureml/training/logging-api/logging-api.ipynb index d483ab75..3f044803 100644 --- a/how-to-use-azureml/training/logging-api/logging-api.ipynb +++ b/how-to-use-azureml/training/logging-api/logging-api.ipynb @@ -100,7 +100,7 @@ "\n", "# Check core SDK version number\n", "\n", - "print(\"This notebook was created using SDK version 1.0.53, you are currently running version\", azureml.core.VERSION)" + "print(\"This notebook was created using SDK version 1.0.55, you are currently running version\", azureml.core.VERSION)" ] }, { diff --git a/model-deployment/README.md b/model-deployment/README.md new file mode 100644 index 00000000..e69de29b diff --git a/setup-environment/configuration.ipynb b/setup-environment/configuration.ipynb index 4e0457b9..8d32f260 100644 --- a/setup-environment/configuration.ipynb +++ b/setup-environment/configuration.ipynb @@ -102,7 +102,7 @@ "source": [ "import azureml.core\n", "\n", - "print(\"This notebook was created using version 1.0.53 of the Azure ML SDK\")\n", + "print(\"This notebook was created using version 1.0.55 of the Azure ML SDK\")\n", "print(\"You are currently using version\", azureml.core.VERSION, \"of the Azure ML SDK\")" ] }, diff --git a/training/README.md b/training/README.md new file mode 100644 index 00000000..e69de29b diff --git a/tutorials/README.md b/tutorials/README.md index dbcb5c1e..07575bc0 100644 --- a/tutorials/README.md +++ b/tutorials/README.md @@ -8,15 +8,20 @@ two sets of tutorial articles for: If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, run the [configuration Notebook](../configuration.ipynb) notebook first to set up your Azure ML Workspace. Then, run the notebooks in following recommended order. +### Create first ML experiment + +* [Part 1](https://docs.microsoft.com/azure/machine-learning/service/tutorial-quickstart-setup): Set up workspace & dev environment +* [Part 2](tutorial-quickstart-train-model.ipynb): Learn the foundational design patterns in Azure Machine Learning service, and train a simple scikit-learn model based on the diabetes data set + ### Image classification * [Part 1](img-classification-part1-training.ipynb): Train an image classification model with Azure Machine Learning. * [Part 2](img-classification-part2-deploy.ipynb): Deploy an image classification model from first tutorial in Azure Container Instance (ACI). ### Regression - * [Part 1](regression-part1-data-prep.ipynb): Prepare the data using Azure Machine Learning Data Prep SDK. + * [Part 1](regression-part1-data-prep.ipynb): Prepare the data using Azure Machine Learning Data Prep SDK. * [Part 2](regression-part2-automated-ml.ipynb): Train a model using Automated Machine Learning. Also find quickstarts and how-tos on the [official documentation site for Azure Machine Learning service](https://docs.microsoft.com/en-us/azure/machine-learning/service/). -![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/README.png) \ No newline at end of file +![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/README.png) \ No newline at end of file diff --git a/tutorials/img-classification-part1-training.ipynb b/tutorials/img-classification-part1-training.ipynb index 81fd73e1..b9b80b4e 100644 --- a/tutorials/img-classification-part1-training.ipynb +++ b/tutorials/img-classification-part1-training.ipynb @@ -218,7 +218,7 @@ "source": [ "### Display some sample images\n", "\n", - "Load the compressed files into `numpy` arrays. Then use `matplotlib` to plot 30 random images from the dataset with their labels above them. Note this step requires a `load_data` function that's included in an `util.py` file. This file is included in the sample folder. Please make sure it is placed in the same folder as this notebook. The `load_data` function simply parses the compresse files into numpy arrays." + "Load the compressed files into `numpy` arrays. Then use `matplotlib` to plot 30 random images from the dataset with their labels above them. Note this step requires a `load_data` function that's included in an `utils.py` file. This file is included in the sample folder. Please make sure it is placed in the same folder as this notebook. The `load_data` function simply parses the compresse files into numpy arrays." ] }, { @@ -260,7 +260,7 @@ "\n", "Now make the data accessible remotely by uploading that data from your local machine into Azure so it can be accessed for remote training. The datastore is a convenient construct associated with your workspace for you to upload/download data, and interact with it from your remote compute targets. It is backed by Azure blob storage account.\n", "\n", - "The MNIST files are uploaded into a directory named `mnist` at the root of the datastore." + "The MNIST files are uploaded into a directory named `mnist` at the root of the datastore. See [access data from your datastores](https://docs.microsoft.com/bs-latn-ba/azure/machine-learning/service/how-to-access-data) for more information." ] }, { @@ -674,6 +674,18 @@ "language": "python", "name": "python36" }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.6" + }, "msauthor": "roastala" }, "nbformat": 4, diff --git a/tutorials/tutorial-1st-experiment-sdk-train.ipynb b/tutorials/tutorial-1st-experiment-sdk-train.ipynb index a838b767..6a5dc7e2 100644 --- a/tutorials/tutorial-1st-experiment-sdk-train.ipynb +++ b/tutorials/tutorial-1st-experiment-sdk-train.ipynb @@ -11,7 +11,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/tutorial-1st-experiment-sdk-train.png)" + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/tutorial-quickstart-train-model.png)" ] }, { diff --git a/tutorials/tutorial-1st-experiment-sdk-train.yml b/tutorials/tutorial-1st-experiment-sdk-train.yml new file mode 100644 index 00000000..ae943e7b --- /dev/null +++ b/tutorials/tutorial-1st-experiment-sdk-train.yml @@ -0,0 +1,5 @@ +name: tutorial-1st-experiment-sdk-train +dependencies: +- pip: + - azureml-sdk + - sklearn diff --git a/work-with-data/dataprep/README.md b/work-with-data/dataprep/README.md index 4346cd20..a356d134 100644 --- a/work-with-data/dataprep/README.md +++ b/work-with-data/dataprep/README.md @@ -31,6 +31,51 @@ If you have any questions or feedback, send us an email at: [askamldataprep@micr ## Release Notes +### 2019-07-25 (version 1.1.9) +New features +- Added support for reading a file directly from a http or https url. + +Bug fixes and improvements +- Improved error message when attempting to read a Parquet Dataset from a remote source (which is not currently supported). +- Fixed a bug when writing to Parquet file format in ADLS Gen 2, and updating the ADLS Gen 2 container name in the path. + +### 2019-07-09 (version 1.1.8) + +New features +- Dataflow objects can now be iterated over, producing a sequence of records. See documentation for `Dataflow.to_record_iterator`. + +Bug fixes and improvements +- Increased the robustness of DataPrep SDK. +- Improved handling of pandas DataFrames with non-string Column Indexes. +- Improved the performance of `to_pandas_dataframe` in Datasets. +- Fixed a bug where Spark execution of Datasets failed when run in a multi-node environment. + +### 2019-07-01 (version 1.1.7) + +We reverted a change that improved performance, as it was causing issues for some customers using Azure Databricks. If you experienced an issue on Azure Databricks, you can upgrade to version 1.1.7 using one of the methods below: +1. Run this script to upgrade: `%sh /home/ubuntu/databricks/python/bin/pip install azureml-dataprep==1.1.7` +2. Recreate the cluster, which will install the latest Data Prep SDK version. + +### 2019-06-24 (version 1.1.6) + +New features +- Added summary functions for top values (`SummaryFunction.TOPVALUES`) and bottom values (`SummaryFunction.BOTTOMVALUES`). + +Bug fixes and improvements +- Significantly improved the performance of `read_pandas_dataframe`. +- Fixed a bug that would cause `get_profile()` on a Dataflow pointing to binary files to fail. +- Exposed `set_diagnostics_collection()` to allow for programmatic enabling/disabling of the telemetry collection. +- Changed the behavior of `get_profile()`. NaN values are now ignored for Min, Mean, Std, and Sum, which aligns with the behavior of Pandas. + +### 2019-06-10 (version 1.1.5) + +Bug fixes and improvements +- For interpreted datetime values that have a 2-digit year format, the range of valid years has been updated to match Windows May Release. The range has been changed from 1930-2029 to 1950-2049. +- When reading in a file and setting `handleQuotedLineBreaks=True`, `\r` will be treated as a new line. +- Fixed a bug that caused `read_pandas_dataframe` to fail in some cases. +- Improved performance of `get_profile`. +- Improved error messages. + ### 2019-05-28 (version 1.1.4) New features diff --git a/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb b/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb index e3c9ba6a..b5e48ae3 100644 --- a/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb +++ b/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb @@ -48,7 +48,8 @@ "[Read From Azure Blob](#azure-blob)
    \n", "[Read From ADLS](#adls)
    \n", "[Read From ADLSGen2](#adlsgen2)
    \n", - "[Read Pandas DataFrame](#pandas-df)
    " + "[Read Pandas DataFrame](#pandas-df)
    \n", + "[Read From HTTP/HTTPS Link](#http)
    " ] }, { @@ -1047,6 +1048,37 @@ "source": [ "dflow_df.head(5)" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Read from HTTP/HTTPS Link" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can pass in an HTTP/HTTPS path when loading remote data source." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "dflow = dprep.read_csv('https://dprepdata.blob.core.windows.net/test/Sample-Spreadsheet-10-rows.csv')\n", + "dflow.head(5)" + ] } ], "metadata": { diff --git a/work-with-data/datasets/datasets-diff/datasets-diff.ipynb b/work-with-data/datasets/datasets-diff/datasets-diff.ipynb new file mode 100644 index 00000000..66b5d5f0 --- /dev/null +++ b/work-with-data/datasets/datasets-diff/datasets-diff.ipynb @@ -0,0 +1,796 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks//notebooks/work-with-data/datasets/datasets-tutorial/datasets-diff.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#
    Detect drift using Dataset Diff API
    \n", + "\n", + "
    \n", + "\n", + " This notebook provides step by step instructions on how to compare two different datasets. It includes two parts\u00ef\u00bc\u0161\n", + "
        ☑ compare two datasets using local compute;\n", + "
        ☑ compare two datasets remotely using Azure ML compute.\n", + "
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Prerequisites and Setup\n", + "\n", + "This section is shared by both local and remote execution, you may need duplicate this section if splitting this notebook into separate local/remote notebooks.\n", + "\n", + "\n", + "## Prerequisites\n", + "\n", + "### Install Supporting Packages" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "scrolled": true + }, + "source": [ + "    pip install scipy
    \n", + "    pip install tqdm
    \n", + "    pip install pandas
    \n", + "    pip install pyarrow
    \n", + "    pip install ipywidgets
    \n", + "    pip install lightgbm
    \n", + "    pip install matplotlib
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Install AzureML Packages" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "scrolled": true + }, + "source": [ + "    pip install --user azureml-core
    \n", + "\n", + "    pip install --user azureml-opendatasets
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import Dependencies" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import sys\n", + "import warnings\n", + "import requests\n", + "import pandas as pd\n", + "import numpy as np\n", + "import ipywidgets as widgets\n", + "\n", + "import azureml.core\n", + "\n", + "from io import StringIO\n", + "from tqdm import tqdm\n", + "from IPython import display\n", + "from datetime import datetime, timedelta\n", + "from azureml.core import Datastore, Dataset\n", + "from azureml.opendatasets import NoaaIsdWeather\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Declare Variables For Demo\n", + "\n", + "Feel free to customize them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "year = 2016\n", + "month = 1\n", + "date = 1\n", + "b_days = 2 # for baseline\n", + "t_days = 7 # for target\n", + "\n", + "local_folder = \"demo\"\n", + "baseline_file = 'baseline.csv'\n", + "\n", + "feature_columns = ['usaf', 'wban', 'latitude', 'longitude', 'elevation', 'temperature', 'p_k']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Datasets\n", + "\n", + "The diff calcualtion is always between two datasets, here for demo, we use \"baseline\" and \"target\" to present them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "os.makedirs(local_folder, exist_ok=True)\n", + "\n", + "local_baseline = os.path.join(local_folder, baseline_file)\n", + "\n", + "start_date = datetime(year, month, date)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prepare Baseline Dataset\n", + "Retrieve wether data from NOAA for declared days (b_days declared in above cell). It may takes 2 minutes for 2 days." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "start = start_date\n", + "isd = NoaaIsdWeather(start, start + timedelta(days=b_days))\n", + "\n", + "baseline_df = isd.to_pandas_dataframe()\n", + "baseline_df.head()\n", + "\n", + "baseline_df.to_csv(local_baseline)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prepare Target Dataset(s)\n", + "\n", + "Retrieve wether data from NOAA for declared days (t_days declared in above cell). It may takes 5 minutes for 7 days." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for day in tqdm(range(0, t_days)):\n", + " start = start_date + timedelta(days=day)\n", + " isd = NoaaIsdWeather(start, start + timedelta(days=1))\n", + "\n", + " target_df = isd.to_pandas_dataframe()\n", + " target_df = target_df[feature_columns]\n", + " target_df.to_csv(os.path.join(local_folder, 'target_{}.csv'.format(day)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Predefine Methods For Result Processing\n", + "\n", + "## Parse and Present Datasets' Diff Results\n", + "\n", + "Each diff result is a list of \"DiffMetric\" objects. Typically each objec present a detailed measurement output for a specific column.\n", + "

    Below is an example of \"DiffMetric\" object:
    \n", + "\n", + "
        {  \n", + "
           'name':'percentage_difference_median',                        --> measurement name\n", + "
           'value':0.01270670472603889,                                  --> the result value a number to indicate how big the diff is for current measurement.\n", + "
           'extended_properties':{  \n", + "

              'action_id':'3d3da05d-0871-4cc9-93cb-f43859aae13b',        --> (remote calculation only) action id\n", + "
              'from_dataset_id':'12edc566-8803-4e0f-ba91-c2ee05eeddee',  --> (remote calculation only) baseline dataset\n", + "
              'from_dataset_version':'1',                                --> (remote calculation only) baseline version\n", + "
              'to_dataset_id':'9b85c9ba-50c2-4227-a9bc-91dee4a18228',    --> (remote calculation only) target dataset\n", + "
              'to_dataset_version':'1',                                  --> (remote calculation only) target version\n", + "

              'column_name':'elevation',                                 --> column name in dataset, 
                                                                             could be ['name':'datadrift_coefficient'] for dataset level diff\n", + "
              'metric_category':'profile_diff'                           --> category, could be :
                                                                                 dataset_drift (dataset level)
                                                                                 profile_diff (column level)
                                                                                 statistical_distance (column level)\n", + "
           }\n", + "
        }\n", + "
    " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def parse_result(rst, columns, measurements):\n", + " columnlist = list(columns)\n", + " columnlist.insert(0, \"measurements \\ columns\")\n", + " measurementlist = list(measurements)\n", + " \n", + " daily_result = []\n", + " daily_result.append(columnlist)\n", + " \n", + " drift = None\n", + " daily_contribution = {}\n", + " \n", + " for m in measurements:\n", + " emptylist = ([''] * len(columns))\n", + " emptylist.insert(0, m)\n", + " daily_result.append(emptylist)\n", + "\n", + " for r in rst:\n", + " # get dataset level diff (drift)\n", + " if r.name == \"datadrift_coefficient\":\n", + " drift = r.value\n", + " # get diff (drift) contribution for each column:\n", + " elif r.name == \"datadrift_contribution\":\n", + " daily_contribution[r.extended_properties[\"column_name\"]] = r.value\n", + " # get column level diff measurements\n", + " else:\n", + " if \"column_name\" in r.extended_properties:\n", + " col = r.extended_properties[\"column_name\"]\n", + " msm = r.name\n", + " val = r.value\n", + " cid = columnlist.index(col)\n", + " kid = measurementlist.index(msm) + 1\n", + " daily_result[kid][cid] = val\n", + "\n", + " return daily_result, drift, daily_contribution" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Present Dataset Level Diff (aka drift)\n", + "\n", + "This method will generate two graphs, the left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "\n", + "import matplotlib.dates as mdates\n", + "import matplotlib.pyplot as plt \n", + "import matplotlib as mpl\n", + "\n", + "def show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute):\n", + " drifts = [drift_metrics[day] for day in drift_metrics]\n", + " daily_summary_contribution = list(summary_contribute.values())\n", + " xrange = pd.date_range(dates[0], dates[-1], freq='D')\n", + "\n", + " figure = plt.figure(figsize=(16, 4))\n", + " plt.tight_layout()\n", + "\n", + " # left graph\n", + " ax1 = plt.subplot(1, 2, 1)\n", + " ax1.grid()\n", + " plt.sca(ax1)\n", + " plt.title(\"Diff(Drift) Trend\\n\", fontsize=20)\n", + " plt.xticks(rotation=30)\n", + " plt.xlabel(\"Date\", fontsize=16)\n", + " plt.ylabel(\"Drift Coefficent\", fontsize=16)\n", + " plt.plot_date(dates, drifts, '-r', marker='.', linewidth=0.5, markersize=5)\n", + "\n", + " # right graph\n", + " ax2 = plt.subplot(1, 2, 2)\n", + " plt.sca(ax2)\n", + " plt.title(\"Drift Contribution of columns\\n\", fontsize=20)\n", + " plt.xticks(xrange, rotation=30)\n", + " plt.xlabel(\"Date\", fontsize=16)\n", + " plt.ylabel(\"Drift Contribution\", fontsize=16)\n", + "\n", + " yvals = ax2.get_yticks()\n", + " ax2.set_yticklabels(['{:,.2%}'.format(v) for v in yvals])\n", + " ax2.xaxis.set_major_formatter(mdates.DateFormatter('%Y%m-%d'))\n", + "\n", + " for c in columns:\n", + " contribution = []\n", + " for dt in drift_contributions:\n", + " contribution.append(drift_contributions[dt][c])\n", + " bar_ratio = [x / y for x, y in zip(contribution, daily_summary_contribution)]\n", + "\n", + " ax2.bar(dates, height=bar_ratio, bottom=bottoms_contribute)\n", + " bottoms_contribute = [x + y for x, y in zip(bottoms_contribute, bar_ratio)]\n", + "\n", + " plt.legend(columns)\n", + "\n", + " plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Execute Datasets' Diff Calculation Locally\n", + "\n", + "Local execution let you to run in a Jupyter Notebook or Code editor in a local computer.\n", + "\n", + "## Calculate Dataset Diff At Local\n", + "\n", + "### Create Baseline Dataset\n", + "\n", + "Create baseline dataset object from the retrieved baseline data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Dataset\n", + "\n", + "baseline = Dataset.auto_read_files(local_baseline, include_path=True)\n", + "\n", + "# The baseline data is not filtered by feature columns list, thus all retrieved data columns will be listed below.\n", + "# You'll see \"Column1\" in the output, which is a default name added when the original column is not available.\n", + "baseline.get_profile()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Target Datasets\n", + "\n", + "Create target dataset objects from retrieved target data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "targets = {}\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " target = Dataset.auto_read_files(os.path.join(local_folder, 'target_{}.csv'.format(day)))\n", + " targets[day] = target" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Diff Between Each Target Dataset And Baseline Dataset\n", + "\n", + "Compare each target dataset with baseline dataset to calculate diff between them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "buf = {}\n", + "\n", + "columns = set()\n", + "measurements = set()\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " diff_action = baseline.diff(rhs_dataset=targets[day])\n", + " diff_action.wait_for_completion()\n", + " \n", + " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", + " buf[dt] = diff_action._result\n", + " \n", + " for r in diff_action._result:\n", + " if r.name not in measurements:\n", + " measurements.add(r.name)\n", + " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in columns:\n", + " columns.add(r.extended_properties[\"column_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parse And Present Local Execution Results\n", + "\n", + "\n", + "
    The diff outputs usually contains two different level information:\n", + "
        1. General diff, aka dataset level diff. The output is a number between 0 and 1 to indicate what level the diff is. This dataset level diff is also called drift between two datasets.\n", + "
        2. Detailed diff, aka column level diff. The output is a metrics organized like a 2-D array. One dimension is column names, that is why it's in column level. The other dimension are measurements. The diff calculation actually includes variuos measurements from different perspectives, each measurement will generate an index for each column to present how big impacts this column contributed.\n", + "
    \n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Parse and List Column Level Diff Results\n", + "\n", + "Here will iteratively list all details per each measurement per column calculated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas import DataFrame\n", + "\n", + "dates = []\n", + "drift_metrics = {}\n", + "drift_contributions = {}\n", + "summary_contribute = {}\n", + "bottoms_contribute = []\n", + "\n", + "for dt, rst in buf.items():\n", + " dates.append(dt)\n", + " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", + " \n", + " daily_result, drift, daily_contribution = parse_result(rst, columns, measurements)\n", + " drift_metrics[dt] = drift\n", + " drift_contributions[dt] = daily_contribution\n", + "\n", + " sum_contribution = 0\n", + " bottoms_contribute.append(0)\n", + " for col, val in daily_contribution.items():\n", + " sum_contribution += val\n", + " summary_contribute[dt] = sum_contribution\n", + "\n", + " \n", + " display.display(pd.DataFrame(daily_result))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Present Dataset Level Diff (aka drift) In Graphs\n", + "\n", + "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Excute Datasets's Diff Calculation Remotely\n", + "\n", + "Remote execution let you to data compare on more powerful computes - Machine Learning Compute clusters." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Remote Environment\n", + "### Get Workspace\n", + "\n", + "
    If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, check the configuration notebook first if you haven't already to establish your connection to the AzureML Workspace.\n", + "
    " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.workspace import Workspace\n", + "from azureml.core.authentication import InteractiveLoginAuthentication\n", + "\n", + "ws = Workspace.from_config()\n", + "\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep=\"\\n\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Compute Resource For Calculation\n", + "Check if compute resouce exists and create a new one if not." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import AmlCompute, ComputeTarget\n", + "\n", + "existing = False\n", + "del_cmpt = False\n", + "cts = ws.compute_targets\n", + "\n", + "if (ws.DEFAULT_CPU_CLUSTER_NAME in cts and cts[ws.DEFAULT_CPU_CLUSTER_NAME].type == 'AmlCompute'):\n", + " existing = True\n", + " aml_compute = cts[ws.DEFAULT_CPU_CLUSTER_NAME]\n", + " \n", + "if not existing:\n", + " aml_compute = AmlCompute.create(ws,ws.DEFAULT_CPU_CLUSTER_NAME,ws.DEFAULT_CPU_CLUSTER_CONFIGURATION)\n", + " aml_compute.wait_for_completion(show_output=True)\n", + " del_cmpt = True" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Upload Sample Data To Datastore\n", + "\n", + "Upload data files to the blob storage in Azure ML workspace." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Datastore, Dataset\n", + "import azureml.data\n", + "from azureml.data.azure_storage_datastore import AzureFileDatastore, AzureBlobDatastore\n", + "\n", + "remote_data_path ='demo'\n", + "\n", + "dstore = ws.get_default_datastore()\n", + "dstore.upload_files([local_baseline],\n", + " target_path=remote_data_path,\n", + " overwrite=True,\n", + " show_progress=True)\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " target_file = os.path.join(local_folder, 'target_{}.csv'.format(day))\n", + " dstore.upload_files([target_file],\n", + " target_path=remote_data_path,\n", + " overwrite=True,\n", + " show_progress=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Register DataSets\n", + "\n", + "Create and Register Datasets." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Datastore, Dataset\n", + "dstore = ws.get_default_datastore()\n", + "\n", + "xpath = remote_data_path + '/' + baseline_file\n", + "toregister_baseline = Dataset.from_delimited_files(dstore.path(xpath))\n", + "registered_baseline = toregister_baseline.register(workspace = ws,\n", + " name = 'dataset baseline for diff demo',\n", + " description = 'dataset baseline for diff comparison',\n", + " exist_ok = True,\n", + " update_if_exist = True\n", + " )\n", + "\n", + "registered_targets = {}\n", + "for day in tqdm(range(0, t_days)):\n", + " target_file = 'target_{}.csv'.format(day)\n", + " toregister_target = Dataset.from_delimited_files(dstore.path(remote_data_path + '/' + target_file))\n", + " registered_target = toregister_target.register(workspace = ws,\n", + " name = 'dataset target-{} for diff demo'.format(day),\n", + " description = 'target target-{} for diff comparison'.format(day),\n", + " exist_ok = True,\n", + " update_if_exist = True\n", + " )\n", + " registered_targets[day] = registered_target" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Calculate Dataset Diff Remotely\n", + "\n", + "Perform the calculation remotely. This may take 20 minutes.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_diffs = {}\n", + "\n", + "r_columns = set()\n", + "r_measurements = set()\n", + "\n", + "for day, registered_target in registered_targets.items():\n", + " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", + " remote_diff = registered_baseline.diff(registered_target, compute_target=ws.DEFAULT_CPU_CLUSTER_NAME)\n", + " remote_diff.wait_for_completion()\n", + " \n", + " remote_diffs[dt] = remote_diff.get_result()\n", + " \n", + " for r in remote_diff.get_result():\n", + " if r.name not in r_measurements:\n", + " r_measurements.add(r.name)\n", + " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in r_columns:\n", + " r_columns.add(r.extended_properties[\"column_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parse And Present Remote Execution Results\n", + "\n", + "### Parse And List Column Level Diff Results\n", + "\n", + "Here will iteratively list all details per each measurement per column calculated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas import DataFrame\n", + "\n", + "r_dates = []\n", + "r_drift_metrics = {}\n", + "r_drift_contributions = {}\n", + "r_summary_contribute = {}\n", + "r_bottoms_contribute = []\n", + "\n", + "for dt, rst in remote_diffs.items():\n", + " r_dates.append(dt)\n", + " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", + " \n", + " daily_result, drift, daily_contribution = parse_result(rst, r_columns, r_measurements)\n", + " r_drift_metrics[dt] = drift\n", + " r_drift_contributions[dt] = daily_contribution\n", + "\n", + " sum_contribution = 0\n", + " r_bottoms_contribute.append(0)\n", + " for col, val in daily_contribution.items():\n", + " sum_contribution += val\n", + " r_summary_contribute[dt] = sum_contribution\n", + "\n", + " \n", + " display.display(pd.DataFrame(daily_result))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Present Dataset Level Diff (aka drift) In Graphs\n", + "\n", + "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "show_diff(r_drift_metrics, r_dates, r_columns, r_drift_contributions, r_summary_contribute, r_bottoms_contribute)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Clean Resources Created" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "if del_cmpt == True:\n", + " try:\n", + " aml_compute.delete()\n", + " aml_compute.wait_for_completion()\n", + " except Exception as e:\n", + " if 'ComputeTargetNotFound' in e.message:\n", + " print(\"Compute target deleted.\")\n", + " del_cmpt = False" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Reference\n", + "\n", + "Detailed description of Dataset Diff attribute can be found at
    \n", + "https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.dataset(class)?view=azure-ml-py#diff-rhs-dataset--compute-target-none--columns-none-" + ] + } + ], + "metadata": { + "authors": [ + { + "name": "davx" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + }, + "notice": "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License." + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb b/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb index 96cd59e2..d60960c4 100644 --- a/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb +++ b/work-with-data/datasets/datasets-tutorial/datasets-diff/datasets-diff.ipynb @@ -1,796 +1,796 @@ { - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks//notebooks/work-with-data/datasets/datasets-tutorial/datasets-diff.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "#
    Detect drift using Dataset Diff API
    \n", - "\n", - "
    \n", - "\n", - " This notebook provides step by step instructions on how to compare two different datasets. It includes two parts:\n", - "
        ☑ compare two datasets using local compute;\n", - "
        ☑ compare two datasets remotely using Azure ML compute.\n", - "
    " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Prerequisites and Setup\n", - "\n", - "This section is shared by both local and remote execution, you may need duplicate this section if splitting this notebook into separate local/remote notebooks.\n", - "\n", - "\n", - "## Prerequisites\n", - "\n", - "### Install Supporting Packages" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "scrolled": true - }, - "source": [ - "    pip install scipy
    \n", - "    pip install tqdm
    \n", - "    pip install pandas
    \n", - "    pip install pyarrow
    \n", - "    pip install ipywidgets
    \n", - "    pip install lightgbm
    \n", - "    pip install matplotlib
    " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Install AzureML Packages" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "scrolled": true - }, - "source": [ - "    pip install --user azureml-core
    \n", - "\n", - "    pip install --user azureml-opendatasets
    " - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Import Dependencies" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "import sys\n", - "import warnings\n", - "import requests\n", - "import pandas as pd\n", - "import numpy as np\n", - "import ipywidgets as widgets\n", - "\n", - "import azureml.core\n", - "\n", - "from io import StringIO\n", - "from tqdm import tqdm\n", - "from IPython import display\n", - "from datetime import datetime, timedelta\n", - "from azureml.core import Datastore, Dataset\n", - "from azureml.opendatasets import NoaaIsdWeather\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Declare Variables For Demo\n", - "\n", - "Feel free to customize them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "year = 2016\n", - "month = 1\n", - "date = 1\n", - "b_days = 2 # for baseline\n", - "t_days = 7 # for target\n", - "\n", - "local_folder = \"demo\"\n", - "baseline_file = 'baseline.csv'\n", - "\n", - "feature_columns = ['usaf', 'wban', 'latitude', 'longitude', 'elevation', 'temperature', 'p_k']" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prepare Datasets\n", - "\n", - "The diff calcualtion is always between two datasets, here for demo, we use \"baseline\" and \"target\" to present them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "os.makedirs(local_folder, exist_ok=True)\n", - "\n", - "local_baseline = os.path.join(local_folder, baseline_file)\n", - "\n", - "start_date = datetime(year, month, date)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prepare Baseline Dataset\n", - "Retrieve wether data from NOAA for declared days (b_days declared in above cell). It may takes 2 minutes for 2 days." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "start = start_date\n", - "isd = NoaaIsdWeather(start, start + timedelta(days=b_days))\n", - "\n", - "baseline_df = isd.to_pandas_dataframe()\n", - "baseline_df.head()\n", - "\n", - "baseline_df.to_csv(local_baseline)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Prepare Target Dataset(s)\n", - "\n", - "Retrieve wether data from NOAA for declared days (t_days declared in above cell). It may takes 5 minutes for 7 days." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "for day in tqdm(range(0, t_days)):\n", - " start = start_date + timedelta(days=day)\n", - " isd = NoaaIsdWeather(start, start + timedelta(days=1))\n", - "\n", - " target_df = isd.to_pandas_dataframe()\n", - " target_df = target_df[feature_columns]\n", - " target_df.to_csv(os.path.join(local_folder, 'target_{}.csv'.format(day)))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Predefine Methods For Result Processing\n", - "\n", - "## Parse and Present Datasets' Diff Results\n", - "\n", - "Each diff result is a list of \"DiffMetric\" objects. Typically each objec present a detailed measurement output for a specific column.\n", - "

    Below is an example of \"DiffMetric\" object:
    \n", - "\n", - "
        {  \n", - "
           'name':'percentage_difference_median',                        --> measurement name\n", - "
           'value':0.01270670472603889,                                  --> a number to indicate how big the diff is for current measurement.\n", - "
           'extended_properties':{  \n", - "

              'action_id':'3d3da05d-0871-4cc9-93cb-f43859aae13b',        --> (remote calculation only) action id\n", - "
              'from_dataset_id':'12edc566-8803-4e0f-ba91-c2ee05eeddee',  --> (remote calculation only) baseline dataset\n", - "
              'from_dataset_version':'1',                                --> (remote calculation only) baseline version\n", - "
              'to_dataset_id':'9b85c9ba-50c2-4227-a9bc-91dee4a18228',    --> (remote calculation only) target dataset\n", - "
              'to_dataset_version':'1',                                  --> (remote calculation only) target version\n", - "

              'column_name':'elevation',                                 --> column name in dataset, 
                                                                             could be ['name':'datadrift_coefficient'] for dataset level diff\n", - "
              'metric_category':'profile_diff'                           --> category, could be :
                                                                                 dataset_drift (dataset level)
                                                                                 profile_diff (column level)
                                                                                 statistical_distance (column level)\n", - "
           }\n", - "
        }\n", - "
    " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "def parse_result(rst, columns, measurements):\n", - " columnlist = list(columns)\n", - " columnlist.insert(0, \"measurements \\ columns\")\n", - " measurementlist = list(measurements)\n", - " \n", - " daily_result = []\n", - " daily_result.append(columnlist)\n", - " \n", - " drift = None\n", - " daily_contribution = {}\n", - " \n", - " for m in measurements:\n", - " emptylist = ([''] * len(columns))\n", - " emptylist.insert(0, m)\n", - " daily_result.append(emptylist)\n", - "\n", - " for r in rst:\n", - " # get dataset level diff (drift)\n", - " if r.name == \"datadrift_coefficient\":\n", - " drift = r.value\n", - " # get diff (drift) contribution for each column:\n", - " elif r.name == \"datadrift_contribution\":\n", - " daily_contribution[r.extended_properties[\"column_name\"]] = r.value\n", - " # get column level diff measurements\n", - " else:\n", - " if \"column_name\" in r.extended_properties:\n", - " col = r.extended_properties[\"column_name\"]\n", - " msm = r.name\n", - " val = r.value\n", - " cid = columnlist.index(col)\n", - " kid = measurementlist.index(msm) + 1\n", - " daily_result[kid][cid] = val\n", - "\n", - " return daily_result, drift, daily_contribution" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Present Dataset Level Diff (aka drift)\n", - "\n", - "This method will generate two graphs, the left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%matplotlib inline\n", - "\n", - "import matplotlib.dates as mdates\n", - "import matplotlib.pyplot as plt \n", - "import matplotlib as mpl\n", - "\n", - "def show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute):\n", - " drifts = [drift_metrics[day] for day in drift_metrics]\n", - " daily_summary_contribution = list(summary_contribute.values())\n", - " xrange = pd.date_range(dates[0], dates[-1], freq='D')\n", - "\n", - " figure = plt.figure(figsize=(16, 4))\n", - " plt.tight_layout()\n", - "\n", - " # left graph\n", - " ax1 = plt.subplot(1, 2, 1)\n", - " ax1.grid()\n", - " plt.sca(ax1)\n", - " plt.title(\"Diff(Drift) Trend\\n\", fontsize=20)\n", - " plt.xticks(rotation=30)\n", - " plt.xlabel(\"Date\", fontsize=16)\n", - " plt.ylabel(\"Drift Coefficent\", fontsize=16)\n", - " plt.plot_date(dates, drifts, '-r', marker='.', linewidth=0.5, markersize=5)\n", - "\n", - " # right graph\n", - " ax2 = plt.subplot(1, 2, 2)\n", - " plt.sca(ax2)\n", - " plt.title(\"Drift Contribution of columns\\n\", fontsize=20)\n", - " plt.xticks(xrange, rotation=30)\n", - " plt.xlabel(\"Date\", fontsize=16)\n", - " plt.ylabel(\"Drift Contribution\", fontsize=16)\n", - "\n", - " yvals = ax2.get_yticks()\n", - " ax2.set_yticklabels(['{:,.2%}'.format(v) for v in yvals])\n", - " ax2.xaxis.set_major_formatter(mdates.DateFormatter('%Y%m-%d'))\n", - "\n", - " for c in columns:\n", - " contribution = []\n", - " for dt in drift_contributions:\n", - " contribution.append(drift_contributions[dt][c])\n", - " bar_ratio = [x / y for x, y in zip(contribution, daily_summary_contribution)]\n", - "\n", - " ax2.bar(dates, height=bar_ratio, bottom=bottoms_contribute)\n", - " bottoms_contribute = [x + y for x, y in zip(bottoms_contribute, bar_ratio)]\n", - "\n", - " plt.legend(columns)\n", - "\n", - " plt.show()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Execute Datasets' Diff Calculation Locally\n", - "\n", - "Local execution let you to run in a Jupyter Notebook or Code editor in a local computer.\n", - "\n", - "## Calculate Dataset Diff At Local\n", - "\n", - "### Create Baseline Dataset\n", - "\n", - "Create baseline dataset object from the retrieved baseline data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Dataset\n", - "\n", - "baseline = Dataset.auto_read_files(local_baseline, include_path=True)\n", - "\n", - "# The baseline data is not filtered by feature columns list, thus all retrieved data columns will be listed below.\n", - "# You'll see \"Column1\" in the output, which is a default name added when the original column is not available.\n", - "baseline.get_profile()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create Target Datasets\n", - "\n", - "Create target dataset objects from retrieved target data." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "targets = {}\n", - "\n", - "for day in tqdm(range(0, t_days)):\n", - " target = Dataset.auto_read_files(os.path.join(local_folder, 'target_{}.csv'.format(day)))\n", - " targets[day] = target" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Calculate Diff Between Each Target Dataset And Baseline Dataset\n", - "\n", - "Compare each target dataset with baseline dataset to calculate diff between them." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "buf = {}\n", - "\n", - "columns = set()\n", - "measurements = set()\n", - "\n", - "for day in tqdm(range(0, t_days)):\n", - " diff_action = baseline.diff(rhs_dataset=targets[day])\n", - " diff_action.wait_for_completion()\n", - " \n", - " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", - " buf[dt] = diff_action._result\n", - " \n", - " for r in diff_action._result:\n", - " if r.name not in measurements:\n", - " measurements.add(r.name)\n", - " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in columns:\n", - " columns.add(r.extended_properties[\"column_name\"])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Parse And Present Local Execution Results\n", - "\n", - "\n", - "
    The diff outputs usually contains two different level information:\n", - "
        1. General diff, aka dataset level diff. The output is a number between 0 and 1 to indicate what level the diff is. This dataset level diff is also called drift between two datasets.\n", - "
        2. Detailed diff, aka column level diff. The output is a metrics organized like a 2-D array. One dimension is column names, that is why it's in column level. The other dimension are measurements. The diff calculation actually includes variuos measurements from different perspectives, each measurement will generate an index for each column to present how big impacts this column contributed.\n", - "
    \n", - "\n", - "\n" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Parse and List Column Level Diff Results\n", - "\n", - "Here will iteratively list all details per each measurement per column calculated." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from pandas import DataFrame\n", - "\n", - "dates = []\n", - "drift_metrics = {}\n", - "drift_contributions = {}\n", - "summary_contribute = {}\n", - "bottoms_contribute = []\n", - "\n", - "for dt, rst in buf.items():\n", - " dates.append(dt)\n", - " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", - " \n", - " daily_result, drift, daily_contribution = parse_result(rst, columns, measurements)\n", - " drift_metrics[dt] = drift\n", - " drift_contributions[dt] = daily_contribution\n", - "\n", - " sum_contribution = 0\n", - " bottoms_contribute.append(0)\n", - " for col, val in daily_contribution.items():\n", - " sum_contribution += val\n", - " summary_contribute[dt] = sum_contribution\n", - "\n", - " \n", - " display.display(pd.DataFrame(daily_result))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Present Dataset Level Diff (aka drift) In Graphs\n", - "\n", - "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Excute Datasets's Diff Calculation Remotely\n", - "\n", - "Remote execution let you to data compare on more powerful computes - Machine Learning Compute clusters." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prepare Remote Environment\n", - "### Get Workspace\n", - "\n", - "
    If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, check the configuration notebook first if you haven't already to establish your connection to the AzureML Workspace.\n", - "
    " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.workspace import Workspace\n", - "from azureml.core.authentication import InteractiveLoginAuthentication\n", - "\n", - "ws = Workspace.from_config()\n", - "\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep=\"\\n\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create Compute Resource For Calculation\n", - "Check if compute resouce exists and create a new one if not." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.compute import AmlCompute, ComputeTarget\n", - "\n", - "existing = False\n", - "del_cmpt = False\n", - "cts = ws.compute_targets\n", - "\n", - "if (ws.DEFAULT_CPU_CLUSTER_NAME in cts and cts[ws.DEFAULT_CPU_CLUSTER_NAME].type == 'AmlCompute'):\n", - " existing = True\n", - " aml_compute = cts[ws.DEFAULT_CPU_CLUSTER_NAME]\n", - " \n", - "if not existing:\n", - " aml_compute = AmlCompute.create(ws,ws.DEFAULT_CPU_CLUSTER_NAME,ws.DEFAULT_CPU_CLUSTER_CONFIGURATION)\n", - " aml_compute.wait_for_completion(show_output=True)\n", - " del_cmpt = True" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Upload Sample Data To Datastore\n", - "\n", - "Upload data files to the blob storage in Azure ML workspace." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Datastore, Dataset\n", - "import azureml.data\n", - "from azureml.data.azure_storage_datastore import AzureFileDatastore, AzureBlobDatastore\n", - "\n", - "remote_data_path ='demo'\n", - "\n", - "dstore = ws.get_default_datastore()\n", - "dstore.upload_files([local_baseline],\n", - " target_path=remote_data_path,\n", - " overwrite=True,\n", - " show_progress=True)\n", - "\n", - "for day in tqdm(range(0, t_days)):\n", - " target_file = os.path.join(local_folder, 'target_{}.csv'.format(day))\n", - " dstore.upload_files([target_file],\n", - " target_path=remote_data_path,\n", - " overwrite=True,\n", - " show_progress=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Register DataSets\n", - "\n", - "Create and Register Datasets." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Datastore, Dataset\n", - "dstore = ws.get_default_datastore()\n", - "\n", - "xpath = remote_data_path + '/' + baseline_file\n", - "toregister_baseline = Dataset.from_delimited_files(dstore.path(xpath))\n", - "registered_baseline = toregister_baseline.register(workspace = ws,\n", - " name = 'dataset baseline for diff demo',\n", - " description = 'dataset baseline for diff comparison',\n", - " exist_ok = True,\n", - " update_if_exist = True\n", - " )\n", - "\n", - "registered_targets = {}\n", - "for day in tqdm(range(0, t_days)):\n", - " target_file = 'target_{}.csv'.format(day)\n", - " toregister_target = Dataset.from_delimited_files(dstore.path(remote_data_path + '/' + target_file))\n", - " registered_target = toregister_target.register(workspace = ws,\n", - " name = 'dataset target-{} for diff demo'.format(day),\n", - " description = 'target target-{} for diff comparison'.format(day),\n", - " exist_ok = True,\n", - " update_if_exist = True\n", - " )\n", - " registered_targets[day] = registered_target" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Calculate Dataset Diff Remotely\n", - "\n", - "Perform the calculation remotely. This may take 20 minutes.\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "remote_diffs = {}\n", - "\n", - "r_columns = set()\n", - "r_measurements = set()\n", - "\n", - "for day, registered_target in registered_targets.items():\n", - " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", - " remote_diff = registered_baseline.diff(registered_target, compute_target=ws.DEFAULT_CPU_CLUSTER_NAME)\n", - " remote_diff.wait_for_completion()\n", - " \n", - " remote_diffs[dt] = remote_diff.get_result()\n", - " \n", - " for r in remote_diff.get_result():\n", - " if r.name not in r_measurements:\n", - " r_measurements.add(r.name)\n", - " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in r_columns:\n", - " r_columns.add(r.extended_properties[\"column_name\"])" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Parse And Present Remote Execution Results\n", - "\n", - "### Parse And List Column Level Diff Results\n", - "\n", - "Here will iteratively list all details per each measurement per column calculated." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from pandas import DataFrame\n", - "\n", - "r_dates = []\n", - "r_drift_metrics = {}\n", - "r_drift_contributions = {}\n", - "r_summary_contribute = {}\n", - "r_bottoms_contribute = []\n", - "\n", - "for dt, rst in remote_diffs.items():\n", - " r_dates.append(dt)\n", - " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", - " \n", - " daily_result, drift, daily_contribution = parse_result(rst, r_columns, r_measurements)\n", - " r_drift_metrics[dt] = drift\n", - " r_drift_contributions[dt] = daily_contribution\n", - "\n", - " sum_contribution = 0\n", - " r_bottoms_contribute.append(0)\n", - " for col, val in daily_contribution.items():\n", - " sum_contribution += val\n", - " r_summary_contribute[dt] = sum_contribution\n", - "\n", - " \n", - " display.display(pd.DataFrame(daily_result))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Present Dataset Level Diff (aka drift) In Graphs\n", - "\n", - "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "show_diff(r_drift_metrics, r_dates, r_columns, r_drift_contributions, r_summary_contribute, r_bottoms_contribute)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Clean Resources Created" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "if del_cmpt == True:\n", - " try:\n", - " aml_compute.delete()\n", - " aml_compute.wait_for_completion()\n", - " except Exception as e:\n", - " if 'ComputeTargetNotFound' in e.message:\n", - " print(\"Compute target deleted.\")\n", - " del_cmpt = False" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Reference\n", - "\n", - "Detailed description of Dataset Diff attribute can be found at
    \n", - "https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.dataset(class)?view=azure-ml-py#diff-rhs-dataset--compute-target-none--columns-none-" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "davx" - } + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks//notebooks/work-with-data/datasets/datasets-tutorial/datasets-diff.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#
    Detect drift using Dataset Diff API
    \n", + "\n", + "
    \n", + "\n", + " This notebook provides step by step instructions on how to compare two different datasets. It includes two parts\u00ef\u00bc\u0161\n", + "
        ☑ compare two datasets using local compute;\n", + "
        ☑ compare two datasets remotely using Azure ML compute.\n", + "
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Prerequisites and Setup\n", + "\n", + "This section is shared by both local and remote execution, you may need duplicate this section if splitting this notebook into separate local/remote notebooks.\n", + "\n", + "\n", + "## Prerequisites\n", + "\n", + "### Install Supporting Packages" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "scrolled": true + }, + "source": [ + "    pip install scipy
    \n", + "    pip install tqdm
    \n", + "    pip install pandas
    \n", + "    pip install pyarrow
    \n", + "    pip install ipywidgets
    \n", + "    pip install lightgbm
    \n", + "    pip install matplotlib
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Install AzureML Packages" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "scrolled": true + }, + "source": [ + "    pip install --user azureml-core
    \n", + "\n", + "    pip install --user azureml-opendatasets
    " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import Dependencies" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import sys\n", + "import warnings\n", + "import requests\n", + "import pandas as pd\n", + "import numpy as np\n", + "import ipywidgets as widgets\n", + "\n", + "import azureml.core\n", + "\n", + "from io import StringIO\n", + "from tqdm import tqdm\n", + "from IPython import display\n", + "from datetime import datetime, timedelta\n", + "from azureml.core import Datastore, Dataset\n", + "from azureml.opendatasets import NoaaIsdWeather\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Declare Variables For Demo\n", + "\n", + "Feel free to customize them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "year = 2016\n", + "month = 1\n", + "date = 1\n", + "b_days = 2 # for baseline\n", + "t_days = 7 # for target\n", + "\n", + "local_folder = \"demo\"\n", + "baseline_file = 'baseline.csv'\n", + "\n", + "feature_columns = ['usaf', 'wban', 'latitude', 'longitude', 'elevation', 'temperature', 'p_k']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Datasets\n", + "\n", + "The diff calcualtion is always between two datasets, here for demo, we use \"baseline\" and \"target\" to present them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "os.makedirs(local_folder, exist_ok=True)\n", + "\n", + "local_baseline = os.path.join(local_folder, baseline_file)\n", + "\n", + "start_date = datetime(year, month, date)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prepare Baseline Dataset\n", + "Retrieve wether data from NOAA for declared days (b_days declared in above cell). It may takes 2 minutes for 2 days." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "start = start_date\n", + "isd = NoaaIsdWeather(start, start + timedelta(days=b_days))\n", + "\n", + "baseline_df = isd.to_pandas_dataframe()\n", + "baseline_df.head()\n", + "\n", + "baseline_df.to_csv(local_baseline)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Prepare Target Dataset(s)\n", + "\n", + "Retrieve wether data from NOAA for declared days (t_days declared in above cell). It may takes 5 minutes for 7 days." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for day in tqdm(range(0, t_days)):\n", + " start = start_date + timedelta(days=day)\n", + " isd = NoaaIsdWeather(start, start + timedelta(days=1))\n", + "\n", + " target_df = isd.to_pandas_dataframe()\n", + " target_df = target_df[feature_columns]\n", + " target_df.to_csv(os.path.join(local_folder, 'target_{}.csv'.format(day)))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Predefine Methods For Result Processing\n", + "\n", + "## Parse and Present Datasets' Diff Results\n", + "\n", + "Each diff result is a list of \"DiffMetric\" objects. Typically each objec present a detailed measurement output for a specific column.\n", + "

    Below is an example of \"DiffMetric\" object:
    \n", + "\n", + "
        {  \n", + "
           'name':'percentage_difference_median',                        --> measurement name\n", + "
           'value':0.01270670472603889,                                  --> a number to indicate how big the diff is for current measurement.\n", + "
           'extended_properties':{  \n", + "

              'action_id':'3d3da05d-0871-4cc9-93cb-f43859aae13b',        --> (remote calculation only) action id\n", + "
              'from_dataset_id':'12edc566-8803-4e0f-ba91-c2ee05eeddee',  --> (remote calculation only) baseline dataset\n", + "
              'from_dataset_version':'1',                                --> (remote calculation only) baseline version\n", + "
              'to_dataset_id':'9b85c9ba-50c2-4227-a9bc-91dee4a18228',    --> (remote calculation only) target dataset\n", + "
              'to_dataset_version':'1',                                  --> (remote calculation only) target version\n", + "

              'column_name':'elevation',                                 --> column name in dataset, 
                                                                             could be ['name':'datadrift_coefficient'] for dataset level diff\n", + "
              'metric_category':'profile_diff'                           --> category, could be :
                                                                                 dataset_drift (dataset level)
                                                                                 profile_diff (column level)
                                                                                 statistical_distance (column level)\n", + "
           }\n", + "
        }\n", + "
    " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "def parse_result(rst, columns, measurements):\n", + " columnlist = list(columns)\n", + " columnlist.insert(0, \"measurements \\ columns\")\n", + " measurementlist = list(measurements)\n", + " \n", + " daily_result = []\n", + " daily_result.append(columnlist)\n", + " \n", + " drift = None\n", + " daily_contribution = {}\n", + " \n", + " for m in measurements:\n", + " emptylist = ([''] * len(columns))\n", + " emptylist.insert(0, m)\n", + " daily_result.append(emptylist)\n", + "\n", + " for r in rst:\n", + " # get dataset level diff (drift)\n", + " if r.name == \"datadrift_coefficient\":\n", + " drift = r.value\n", + " # get diff (drift) contribution for each column:\n", + " elif r.name == \"datadrift_contribution\":\n", + " daily_contribution[r.extended_properties[\"column_name\"]] = r.value\n", + " # get column level diff measurements\n", + " else:\n", + " if \"column_name\" in r.extended_properties:\n", + " col = r.extended_properties[\"column_name\"]\n", + " msm = r.name\n", + " val = r.value\n", + " cid = columnlist.index(col)\n", + " kid = measurementlist.index(msm) + 1\n", + " daily_result[kid][cid] = val\n", + "\n", + " return daily_result, drift, daily_contribution" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Present Dataset Level Diff (aka drift)\n", + "\n", + "This method will generate two graphs, the left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%matplotlib inline\n", + "\n", + "import matplotlib.dates as mdates\n", + "import matplotlib.pyplot as plt \n", + "import matplotlib as mpl\n", + "\n", + "def show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute):\n", + " drifts = [drift_metrics[day] for day in drift_metrics]\n", + " daily_summary_contribution = list(summary_contribute.values())\n", + " xrange = pd.date_range(dates[0], dates[-1], freq='D')\n", + "\n", + " figure = plt.figure(figsize=(16, 4))\n", + " plt.tight_layout()\n", + "\n", + " # left graph\n", + " ax1 = plt.subplot(1, 2, 1)\n", + " ax1.grid()\n", + " plt.sca(ax1)\n", + " plt.title(\"Diff(Drift) Trend\\n\", fontsize=20)\n", + " plt.xticks(rotation=30)\n", + " plt.xlabel(\"Date\", fontsize=16)\n", + " plt.ylabel(\"Drift Coefficent\", fontsize=16)\n", + " plt.plot_date(dates, drifts, '-r', marker='.', linewidth=0.5, markersize=5)\n", + "\n", + " # right graph\n", + " ax2 = plt.subplot(1, 2, 2)\n", + " plt.sca(ax2)\n", + " plt.title(\"Drift Contribution of columns\\n\", fontsize=20)\n", + " plt.xticks(xrange, rotation=30)\n", + " plt.xlabel(\"Date\", fontsize=16)\n", + " plt.ylabel(\"Drift Contribution\", fontsize=16)\n", + "\n", + " yvals = ax2.get_yticks()\n", + " ax2.set_yticklabels(['{:,.2%}'.format(v) for v in yvals])\n", + " ax2.xaxis.set_major_formatter(mdates.DateFormatter('%Y%m-%d'))\n", + "\n", + " for c in columns:\n", + " contribution = []\n", + " for dt in drift_contributions:\n", + " contribution.append(drift_contributions[dt][c])\n", + " bar_ratio = [x / y for x, y in zip(contribution, daily_summary_contribution)]\n", + "\n", + " ax2.bar(dates, height=bar_ratio, bottom=bottoms_contribute)\n", + " bottoms_contribute = [x + y for x, y in zip(bottoms_contribute, bar_ratio)]\n", + "\n", + " plt.legend(columns)\n", + "\n", + " plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Execute Datasets' Diff Calculation Locally\n", + "\n", + "Local execution let you to run in a Jupyter Notebook or Code editor in a local computer.\n", + "\n", + "## Calculate Dataset Diff At Local\n", + "\n", + "### Create Baseline Dataset\n", + "\n", + "Create baseline dataset object from the retrieved baseline data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Dataset\n", + "\n", + "baseline = Dataset.auto_read_files(local_baseline, include_path=True)\n", + "\n", + "# The baseline data is not filtered by feature columns list, thus all retrieved data columns will be listed below.\n", + "# You'll see \"Column1\" in the output, which is a default name added when the original column is not available.\n", + "baseline.get_profile()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Target Datasets\n", + "\n", + "Create target dataset objects from retrieved target data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "targets = {}\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " target = Dataset.auto_read_files(os.path.join(local_folder, 'target_{}.csv'.format(day)))\n", + " targets[day] = target" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Diff Between Each Target Dataset And Baseline Dataset\n", + "\n", + "Compare each target dataset with baseline dataset to calculate diff between them." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "buf = {}\n", + "\n", + "columns = set()\n", + "measurements = set()\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " diff_action = baseline.diff(rhs_dataset=targets[day])\n", + " diff_action.wait_for_completion()\n", + " \n", + " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", + " buf[dt] = diff_action._result\n", + " \n", + " for r in diff_action._result:\n", + " if r.name not in measurements:\n", + " measurements.add(r.name)\n", + " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in columns:\n", + " columns.add(r.extended_properties[\"column_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parse And Present Local Execution Results\n", + "\n", + "\n", + "
    The diff outputs usually contains two different level information:\n", + "
        1. General diff, aka dataset level diff. The output is a number between 0 and 1 to indicate what level the diff is. This dataset level diff is also called drift between two datasets.\n", + "
        2. Detailed diff, aka column level diff. The output is a metrics organized like a 2-D array. One dimension is column names, that is why it's in column level. The other dimension are measurements. The diff calculation actually includes variuos measurements from different perspectives, each measurement will generate an index for each column to present how big impacts this column contributed.\n", + "
    \n", + "\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Parse and List Column Level Diff Results\n", + "\n", + "Here will iteratively list all details per each measurement per column calculated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas import DataFrame\n", + "\n", + "dates = []\n", + "drift_metrics = {}\n", + "drift_contributions = {}\n", + "summary_contribute = {}\n", + "bottoms_contribute = []\n", + "\n", + "for dt, rst in buf.items():\n", + " dates.append(dt)\n", + " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", + " \n", + " daily_result, drift, daily_contribution = parse_result(rst, columns, measurements)\n", + " drift_metrics[dt] = drift\n", + " drift_contributions[dt] = daily_contribution\n", + "\n", + " sum_contribution = 0\n", + " bottoms_contribute.append(0)\n", + " for col, val in daily_contribution.items():\n", + " sum_contribution += val\n", + " summary_contribute[dt] = sum_contribution\n", + "\n", + " \n", + " display.display(pd.DataFrame(daily_result))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Present Dataset Level Diff (aka drift) In Graphs\n", + "\n", + "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "show_diff(drift_metrics, dates, columns, drift_contributions, summary_contribute, bottoms_contribute)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Excute Datasets's Diff Calculation Remotely\n", + "\n", + "Remote execution let you to data compare on more powerful computes - Machine Learning Compute clusters." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prepare Remote Environment\n", + "### Get Workspace\n", + "\n", + "
    If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, check the configuration notebook first if you haven't already to establish your connection to the AzureML Workspace.\n", + "
    " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.workspace import Workspace\n", + "from azureml.core.authentication import InteractiveLoginAuthentication\n", + "\n", + "ws = Workspace.from_config()\n", + "\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep=\"\\n\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Compute Resource For Calculation\n", + "Check if compute resouce exists and create a new one if not." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import AmlCompute, ComputeTarget\n", + "\n", + "existing = False\n", + "del_cmpt = False\n", + "cts = ws.compute_targets\n", + "\n", + "if (ws.DEFAULT_CPU_CLUSTER_NAME in cts and cts[ws.DEFAULT_CPU_CLUSTER_NAME].type == 'AmlCompute'):\n", + " existing = True\n", + " aml_compute = cts[ws.DEFAULT_CPU_CLUSTER_NAME]\n", + " \n", + "if not existing:\n", + " aml_compute = AmlCompute.create(ws,ws.DEFAULT_CPU_CLUSTER_NAME,ws.DEFAULT_CPU_CLUSTER_CONFIGURATION)\n", + " aml_compute.wait_for_completion(show_output=True)\n", + " del_cmpt = True" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Upload Sample Data To Datastore\n", + "\n", + "Upload data files to the blob storage in Azure ML workspace." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Datastore, Dataset\n", + "import azureml.data\n", + "from azureml.data.azure_storage_datastore import AzureFileDatastore, AzureBlobDatastore\n", + "\n", + "remote_data_path ='demo'\n", + "\n", + "dstore = ws.get_default_datastore()\n", + "dstore.upload_files([local_baseline],\n", + " target_path=remote_data_path,\n", + " overwrite=True,\n", + " show_progress=True)\n", + "\n", + "for day in tqdm(range(0, t_days)):\n", + " target_file = os.path.join(local_folder, 'target_{}.csv'.format(day))\n", + " dstore.upload_files([target_file],\n", + " target_path=remote_data_path,\n", + " overwrite=True,\n", + " show_progress=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Register DataSets\n", + "\n", + "Create and Register Datasets." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Datastore, Dataset\n", + "dstore = ws.get_default_datastore()\n", + "\n", + "xpath = remote_data_path + '/' + baseline_file\n", + "toregister_baseline = Dataset.from_delimited_files(dstore.path(xpath))\n", + "registered_baseline = toregister_baseline.register(workspace = ws,\n", + " name = 'dataset baseline for diff demo',\n", + " description = 'dataset baseline for diff comparison',\n", + " exist_ok = True,\n", + " update_if_exist = True\n", + " )\n", + "\n", + "registered_targets = {}\n", + "for day in tqdm(range(0, t_days)):\n", + " target_file = 'target_{}.csv'.format(day)\n", + " toregister_target = Dataset.from_delimited_files(dstore.path(remote_data_path + '/' + target_file))\n", + " registered_target = toregister_target.register(workspace = ws,\n", + " name = 'dataset target-{} for diff demo'.format(day),\n", + " description = 'target target-{} for diff comparison'.format(day),\n", + " exist_ok = True,\n", + " update_if_exist = True\n", + " )\n", + " registered_targets[day] = registered_target" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Calculate Dataset Diff Remotely\n", + "\n", + "Perform the calculation remotely. This may take 20 minutes.\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_diffs = {}\n", + "\n", + "r_columns = set()\n", + "r_measurements = set()\n", + "\n", + "for day, registered_target in registered_targets.items():\n", + " dt = (start_date + timedelta(days=day)).strftime(\"%Y-%m-%d\")\n", + " remote_diff = registered_baseline.diff(registered_target, compute_target=ws.DEFAULT_CPU_CLUSTER_NAME)\n", + " remote_diff.wait_for_completion()\n", + " \n", + " remote_diffs[dt] = remote_diff.get_result()\n", + " \n", + " for r in remote_diff.get_result():\n", + " if r.name not in r_measurements:\n", + " r_measurements.add(r.name)\n", + " if \"column_name\" in r.extended_properties and r.extended_properties[\"column_name\"] not in r_columns:\n", + " r_columns.add(r.extended_properties[\"column_name\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Parse And Present Remote Execution Results\n", + "\n", + "### Parse And List Column Level Diff Results\n", + "\n", + "Here will iteratively list all details per each measurement per column calculated." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas import DataFrame\n", + "\n", + "r_dates = []\n", + "r_drift_metrics = {}\n", + "r_drift_contributions = {}\n", + "r_summary_contribute = {}\n", + "r_bottoms_contribute = []\n", + "\n", + "for dt, rst in remote_diffs.items():\n", + " r_dates.append(dt)\n", + " print(\"\\n---------------------------------------- Result of {} ----------------------------------------\".format(dt))\n", + " \n", + " daily_result, drift, daily_contribution = parse_result(rst, r_columns, r_measurements)\n", + " r_drift_metrics[dt] = drift\n", + " r_drift_contributions[dt] = daily_contribution\n", + "\n", + " sum_contribution = 0\n", + " r_bottoms_contribute.append(0)\n", + " for col, val in daily_contribution.items():\n", + " sum_contribution += val\n", + " r_summary_contribute[dt] = sum_contribution\n", + "\n", + " \n", + " display.display(pd.DataFrame(daily_result))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Present Dataset Level Diff (aka drift) In Graphs\n", + "\n", + "The left graph presents dataset level difference for all compared baseline-target pairs, the right graph presents dataset level difference contribution for each column so that we know which column impacts more." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "show_diff(r_drift_metrics, r_dates, r_columns, r_drift_contributions, r_summary_contribute, r_bottoms_contribute)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Clean Resources Created" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "if del_cmpt == True:\n", + " try:\n", + " aml_compute.delete()\n", + " aml_compute.wait_for_completion()\n", + " except Exception as e:\n", + " if 'ComputeTargetNotFound' in e.message:\n", + " print(\"Compute target deleted.\")\n", + " del_cmpt = False" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Reference\n", + "\n", + "Detailed description of Dataset Diff attribute can be found at
    \n", + "https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.dataset(class)?view=azure-ml-py#diff-rhs-dataset--compute-target-none--columns-none-" + ] + } ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" + "metadata": { + "authors": [ + { + "name": "davx" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + }, + "notice": "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License." }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - }, - "notice": "Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License." - }, - "nbformat": 4, - "nbformat_minor": 2 -} + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file From 41be10d1c124b326b80fc8cd326cc76706060cdd Mon Sep 17 00:00:00 2001 From: Roope Astala Date: Wed, 7 Aug 2019 10:12:48 -0400 Subject: [PATCH 091/248] Delete authentication-in-azure-ml.ipynb --- .../authentication-in-azure-ml.ipynb | 260 ------------------ 1 file changed, 260 deletions(-) delete mode 100644 how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azure-ml.ipynb diff --git a/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azure-ml.ipynb b/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azure-ml.ipynb deleted file mode 100644 index 4cb487ae..00000000 --- a/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azure-ml.ipynb +++ /dev/null @@ -1,260 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License.\n", - "\n", - "## Authentication in Azure Machine Learning\n", - "\n", - "This notebook shows you how to authenticate to your Azure ML Workspace using\n", - "\n", - " 1. Interactive Login Authentication\n", - " 2. Azure CLI Authentication\n", - " 3. Service Principal Authentication\n", - " \n", - "The interactive authentication is suitable for local experimentation on your own computer. Azure CLI authentication is suitable if you are already using Azure CLI for managing Azure resources, and want to sign in only once. The Service Principal authentication is suitable for automated workflows, for example as part of Azure Devops build." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.png)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Workspace" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Interactive Authentication\n", - "\n", - "Interactive authentication is the default mode when using Azure ML SDK.\n", - "\n", - "When you connect to your workspace using workspace.from_config, you will get an interactive login dialog." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ws = Workspace.from_config()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Also, if you explicitly specify the subscription ID, resource group and resource group, you will get the dialog." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ws = Workspace(subscription_id=\"my-subscription-id\",\n", - " resource_group=\"my-ml-rg\",\n", - " workspace_name=\"my-ml-workspace\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Note the user you're authenticated as must have access to the subscription and resource group. If you receive an error\n", - "\n", - "```\n", - "AuthenticationException: You don't have access to xxxxxx-xxxx-xxx-xxx-xxxxxxxxxx subscription. All the subscriptions that you have access to = ...\n", - "```\n", - "\n", - "check that the you used correct login and entered the correct subscription ID." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "In some cases, you may see a version of the error message containing text: ```All the subscriptions that you have access to = []```\n", - "\n", - "In such a case, you may have to specify the tenant ID of the Azure Active Directory you're using. An example would be accessing a subscription as a guest to a tenant that is not your default. You specify the tenant by explicitly instantiating _InteractiveLoginAuthentication_ with tenant ID as argument ([see instructions how to obtain tenant Id](#get-tenant-id))." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.authentication import InteractiveLoginAuthentication\n", - "\n", - "interactive_auth = InteractiveLoginAuthentication(tenant_id=\"my-tenant-id\")\n", - "\n", - "ws = Workspace(subscription_id=\"my-subscription-id\",\n", - " resource_group=\"my-ml-rg\",\n", - " workspace_name=\"my-ml-workspace\",\n", - " auth=interactive_auth)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Azure CLI Authentication\n", - "\n", - "If you have installed azure-cli package, and used ```az login``` command to log in to your Azure Subscription, you can use _AzureCliAuthentication_ class.\n", - "\n", - "Note that interactive authentication described above won't use existing Azure CLI auth tokens. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.authentication import AzureCliAuthentication\n", - "\n", - "cli_auth = AzureCliAuthentication()\n", - "\n", - "ws = Workspace(subscription_id=\"my-subscription-id\",\n", - " resource_group=\"my-ml-rg\",\n", - " workspace_name=\"my-ml-workspace\",\n", - " auth=cli_auth)\n", - "\n", - "print(\"Found workspace {} at location {}\".format(ws.name, ws.location))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Service Principal Authentication\n", - "\n", - "When setting up a machine learning workflow as an automated process, we recommend using Service Principal Authentication. This approach decouples the authentication from any specific user login, and allows managed access control.\n", - "\n", - "Note that you must have administrator privileges over the Azure subscription to complete these steps.\n", - "\n", - "The first step is to create a service principal. First, go to [Azure Portal](https://portal.azure.com), select **Azure Active Directory** and **App Registrations**. Then select **+New application registration**, give your service principal a name, for example _my-svc-principal_. You can leave application type as is, and specify a dummy value for Sign-on URL, such as _https://invalid_.\n", - "\n", - "Then click **Create**.\n", - "\n", - "![service principal creation]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The next step is to obtain the _Application ID_ (also called username) and create _password_ for the service principal.\n", - "\n", - "From the page for your newly created service principal, copy the _Application ID_. Then select **Settings** and **Keys**, write a description for your key, and select duration. Then click **Save**, and copy the _password_ to a secure location.\n", - "\n", - "![application id and password](images/svc-pr-2.PNG)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "\n", - "\n", - "Also, you need to obtain the tenant ID of your Azure subscription. Go back to **Azure Active Directory**, select **Properties** and copy _Directory ID_.\n", - "\n", - "![tenant id](images/svc-pr-3.PNG)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Finally, you need to give the service principal permissions to access your workspace. Navigate to **Resource Groups**, to the resource group for your Machine Learning Workspace. \n", - "\n", - "Then select **Access Control (IAM)** and **Add a role assignment**. For _Role_, specify which level of access you need to grant, for example _Contributor_. Start entering your service principal name and once it is found, select it, and click **Save**.\n", - "\n", - "![add role](images/svc-pr-4.PNG)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Now you are ready to use the service principal authentication. For example, to connect to your Workspace, see code below and enter your own values for tenant ID, application ID, subscription ID, resource group and workspace.\n", - "\n", - "**We strongly recommended that you do not insert the secret password to code**. Instead, you can use environment variables to pass it to your code, for example through Azure Key Vault, or through secret build variables in Azure DevOps. For local testing, you can for example use following PowerShell command to set the environment variable.\n", - "\n", - "```\n", - "$env:AZUREML_PASSWORD = \"my-password\"\n", - "```" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "from azureml.core.authentication import ServicePrincipalAuthentication\n", - "\n", - "svc_pr_password = os.environ.get(\"AZUREML_PASSWORD\")\n", - "\n", - "svc_pr = ServicePrincipalAuthentication(\n", - " tenant_id=\"my-tenant-id\",\n", - " service_principal_id=\"my-application-id\",\n", - " service_principal_password=svc_pr_password)\n", - "\n", - "\n", - "ws = Workspace(\n", - " subscription_id=\"my-subscription-id\",\n", - " resource_group=\"my-ml-rg\",\n", - " workspace_name=\"my-ml-workspace\",\n", - " auth=svc_pr\n", - " )\n", - "\n", - "print(\"Found workspace {} at location {}\".format(ws.name, ws.location))" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "roastala" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.5" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file From a84f6636f1f13ce930264cfe583623f4b3c9f4b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Wed, 7 Aug 2019 13:14:24 -0700 Subject: [PATCH 092/248] Delete README.md --- training/README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 training/README.md diff --git a/training/README.md b/training/README.md deleted file mode 100644 index e69de29b..00000000 From e7676d7cdce03d1fe566dc86c27c227ba81ddb41 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Shan=C3=A9=20Winner?= <43390034+swinner95@users.noreply.github.com> Date: Wed, 7 Aug 2019 13:14:39 -0700 Subject: [PATCH 093/248] Delete README.md --- model-deployment/README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 model-deployment/README.md diff --git a/model-deployment/README.md b/model-deployment/README.md deleted file mode 100644 index e69de29b..00000000 From 6d5226e47ce7c46a022453e756cd125940c35ef3 Mon Sep 17 00:00:00 2001 From: Walter Martin Date: Thu, 8 Aug 2019 09:31:18 -0400 Subject: [PATCH 094/248] Add dataprep dependency --- .../train-explain-model-on-amlcompute-and-deploy.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml index a78dd204..b4d008e1 100644 --- a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml @@ -4,4 +4,5 @@ dependencies: - azureml-sdk - azureml-explain-model - azureml-contrib-explain-model + - azureml-dataprep - sklearn-pandas From 142a1a510e3eb8b05810e557d492e1ccebc27bd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9e=20Martens?= Date: Sun, 11 Aug 2019 18:00:12 -0500 Subject: [PATCH 095/248] Update issue templates --- .github/ISSUE_TEMPLATE/bug_report.md | 30 ++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..ae0f1c25 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,30 @@ +--- +name: Bug report +about: Create a report to help us improve +title: "[Notebook issue]" +labels: '' +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +Provide the following if applicable: ++ Your Python & SDK version ++ Python Scripts or the full notebook name ++ Pipeline definition ++ Environment definition ++ Example data ++ Any log files. ++ Run and Workspace Id + +**To Reproduce** +Steps to reproduce the behavior: +1. + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Additional context** +Add any other context about the problem here. From 4dbb024529bce8cbca8288819c84b850f204ff3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9e=20Martens?= Date: Sun, 11 Aug 2019 18:02:17 -0500 Subject: [PATCH 096/248] Update issue templates --- .github/ISSUE_TEMPLATE/notebook-issue.md | 30 ++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/notebook-issue.md diff --git a/.github/ISSUE_TEMPLATE/notebook-issue.md b/.github/ISSUE_TEMPLATE/notebook-issue.md new file mode 100644 index 00000000..4c06ac5e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/notebook-issue.md @@ -0,0 +1,30 @@ +--- +name: Notebook issue +about: Create a report to help us improve +title: "[Notebook issue]" +labels: '' +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +Provide the following if applicable: ++ Your Python & SDK version ++ Python Scripts or the full notebook name ++ Pipeline definition ++ Environment definition ++ Example data ++ Any log files. ++ Run and Workspace Id + +**To Reproduce** +Steps to reproduce the behavior: +1. + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Additional context** +Add any other context about the problem here. From 2d549ecad30b23a2f038efa5e63ba86f5ea600ca Mon Sep 17 00:00:00 2001 From: Ilya Matiach Date: Tue, 13 Aug 2019 12:31:51 -0400 Subject: [PATCH 097/248] removing old directories --- .../regression-sklearn-on-amlcompute.ipynb | 606 ------------------ .../regression-sklearn-on-amlcompute.yml | 6 - .../explain-on-amlcompute/run_explainer.py | 52 -- ...-local-sklearn-binary-classification.ipynb | 279 -------- ...in-local-sklearn-binary-classification.yml | 6 - ...al-sklearn-multiclass-classification.ipynb | 280 -------- ...ocal-sklearn-multiclass-classification.yml | 6 - .../explain-local-sklearn-regression.ipynb | 272 -------- .../explain-local-sklearn-regression.yml | 6 - .../explain-sklearn-raw-features.ipynb | 337 ---------- .../explain-sklearn-raw-features.yml | 7 - ...n-run-history-sklearn-classification.ipynb | 262 -------- ...ain-run-history-sklearn-classification.yml | 6 - ...plain-run-history-sklearn-regression.ipynb | 276 -------- ...explain-run-history-sklearn-regression.yml | 6 - 15 files changed, 2407 deletions(-) delete mode 100644 how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.yml delete mode 100644 how-to-use-azureml/explain-model/explain-on-amlcompute/run_explainer.py delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.yml delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.yml delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.yml delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.yml delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.yml delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.ipynb delete mode 100644 how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.yml diff --git a/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.ipynb b/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.ipynb deleted file mode 100644 index c0273170..00000000 --- a/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.ipynb +++ /dev/null @@ -1,606 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Train using Azure Machine Learning Compute\n", - "\n", - "* Initialize a Workspace\n", - "* Create an Experiment\n", - "* Introduction to AmlCompute\n", - "* Submit an AmlCompute run in a few different ways\n", - " - Provision as a run based compute target \n", - " - Provision as a persistent compute target (Basic)\n", - " - Provision as a persistent compute target (Advanced)\n", - "* Additional operations to perform on AmlCompute\n", - "* Download model explanation data from the Run History Portal\n", - "* Print the explanation data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Prerequisites\n", - "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration notebook](../../../configuration.ipynb) first if you haven't." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Check core SDK version number\n", - "import azureml.core\n", - "\n", - "print(\"SDK version:\", azureml.core.VERSION)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Initialize a Workspace\n", - "\n", - "Initialize a workspace object from persisted configuration" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "tags": [ - "create workspace" - ] - }, - "outputs": [], - "source": [ - "from azureml.core import Workspace\n", - "\n", - "ws = Workspace.from_config()\n", - "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Create An Experiment\n", - "\n", - "**Experiment** is a logical container in an Azure ML Workspace. It hosts run records which can include run metrics and output artifacts from your experiments." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core import Experiment\n", - "experiment_name = 'explainer-remote-run-on-amlcompute'\n", - "experiment = Experiment(workspace=ws, name=experiment_name)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Introduction to AmlCompute\n", - "\n", - "Azure Machine Learning Compute is managed compute infrastructure that allows the user to easily create single to multi-node compute of the appropriate VM Family. It is created **within your workspace region** and is a resource that can be used by other users in your workspace. It autoscales by default to the max_nodes, when a job is submitted, and executes in a containerized environment packaging the dependencies as specified by the user. \n", - "\n", - "Since it is managed compute, job scheduling and cluster management are handled internally by Azure Machine Learning service. \n", - "\n", - "For more information on Azure Machine Learning Compute, please read [this article](https://docs.microsoft.com/azure/machine-learning/service/how-to-set-up-training-targets#amlcompute)\n", - "\n", - "If you are an existing BatchAI customer who is migrating to Azure Machine Learning, please read [this article](https://aka.ms/batchai-retirement)\n", - "\n", - "**Note**: As with other Azure services, there are limits on certain resources (for eg. AmlCompute quota) associated with the Azure Machine Learning service. Please read [this article](https://docs.microsoft.com/azure/machine-learning/service/how-to-manage-quotas) on the default limits and how to request more quota.\n", - "\n", - "\n", - "The training script `run_explainer.py` is already created for you. Let's have a look." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Submit an AmlCompute run in a few different ways\n", - "\n", - "First lets check which VM families are available in your region. Azure is a regional service and some specialized SKUs (especially GPUs) are only available in certain regions. Since AmlCompute is created in the region of your workspace, we will use the supported_vms () function to see if the VM family we want to use ('STANDARD_D2_V2') is supported.\n", - "\n", - "You can also pass a different region to check availability and then re-create your workspace in that region through the [configuration notebook](../../../configuration.ipynb)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.compute import ComputeTarget, AmlCompute\n", - "\n", - "AmlCompute.supported_vmsizes(workspace=ws)\n", - "# AmlCompute.supported_vmsizes(workspace=ws, location='southcentralus')" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Create project directory\n", - "\n", - "Create a directory that will contain all the necessary code from your local machine that you will need access to on the remote resource. This includes the training script, and any additional files your training script depends on" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import os\n", - "import shutil\n", - "\n", - "project_folder = './explainer-remote-run-on-amlcompute'\n", - "os.makedirs(project_folder, exist_ok=True)\n", - "shutil.copy('run_explainer.py', project_folder)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Provision as a run based compute target\n", - "\n", - "You can provision AmlCompute as a compute target at run-time. In this case, the compute is auto-created for your run, scales up to max_nodes that you specify, and then **deleted automatically** after the run completes." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.runconfig import RunConfiguration\n", - "from azureml.core.conda_dependencies import CondaDependencies\n", - "from azureml.core.runconfig import DEFAULT_CPU_IMAGE\n", - "\n", - "# create a new runconfig object\n", - "run_config = RunConfiguration()\n", - "\n", - "# signal that you want to use AmlCompute to execute script.\n", - "run_config.target = \"amlcompute\"\n", - "\n", - "# AmlCompute will be created in the same region as workspace\n", - "# Set vm size for AmlCompute\n", - "run_config.amlcompute.vm_size = 'STANDARD_D2_V2'\n", - "\n", - "# enable Docker \n", - "run_config.environment.docker.enabled = True\n", - "\n", - "# set Docker base image to the default CPU-based image\n", - "run_config.environment.docker.base_image = DEFAULT_CPU_IMAGE\n", - "\n", - "# use conda_dependencies.yml to create a conda environment in the Docker image for execution\n", - "run_config.environment.python.user_managed_dependencies = False\n", - "\n", - "azureml_pip_packages = [\n", - " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", - " 'azureml-explain-model'\n", - "]\n", - "\n", - "# specify CondaDependencies obj\n", - "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", - " pip_packages=azureml_pip_packages)\n", - "\n", - "# Now submit a run on AmlCompute\n", - "from azureml.core.script_run_config import ScriptRunConfig\n", - "\n", - "script_run_config = ScriptRunConfig(source_directory=project_folder,\n", - " script='run_explainer.py',\n", - " run_config=run_config)\n", - "\n", - "run = experiment.submit(script_run_config)\n", - "\n", - "# Show run details\n", - "run" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Note: if you need to cancel a run, you can follow [these instructions](https://aka.ms/aml-docs-cancel-run)." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%%time\n", - "# Shows output of the run on stdout.\n", - "run.wait_for_completion(show_output=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Provision as a persistent compute target (Basic)\n", - "\n", - "You can provision a persistent AmlCompute resource by simply defining two parameters thanks to smart defaults. By default it autoscales from 0 nodes and provisions dedicated VMs to run your job in a container. This is useful when you want to continously re-use the same target, debug it between jobs or simply share the resource with other users of your workspace.\n", - "\n", - "* `vm_size`: VM family of the nodes provisioned by AmlCompute. Simply choose from the supported_vmsizes() above\n", - "* `max_nodes`: Maximum nodes to autoscale to while running a job on AmlCompute" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.compute import ComputeTarget, AmlCompute\n", - "from azureml.core.compute_target import ComputeTargetException\n", - "\n", - "# Choose a name for your CPU cluster\n", - "cpu_cluster_name = \"cpu-cluster\"\n", - "\n", - "# Verify that cluster does not exist already\n", - "try:\n", - " cpu_cluster = ComputeTarget(workspace=ws, name=cpu_cluster_name)\n", - " print('Found existing cluster, use it.')\n", - "except ComputeTargetException:\n", - " compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2',\n", - " max_nodes=4)\n", - " cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)\n", - "\n", - "cpu_cluster.wait_for_completion(show_output=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Configure & Run" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.runconfig import RunConfiguration\n", - "from azureml.core.conda_dependencies import CondaDependencies\n", - "\n", - "# create a new RunConfig object\n", - "run_config = RunConfiguration(framework=\"python\")\n", - "\n", - "# Set compute target to AmlCompute target created in previous step\n", - "run_config.target = cpu_cluster.name\n", - "\n", - "# enable Docker \n", - "run_config.environment.docker.enabled = True\n", - "\n", - "azureml_pip_packages = [\n", - " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", - " 'azureml-explain-model'\n", - "]\n", - "\n", - "# specify CondaDependencies obj\n", - "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", - " pip_packages=azureml_pip_packages)\n", - "\n", - "from azureml.core import Run\n", - "from azureml.core import ScriptRunConfig\n", - "\n", - "src = ScriptRunConfig(source_directory=project_folder, \n", - " script='run_explainer.py', \n", - " run_config=run_config) \n", - "run = experiment.submit(config=src)\n", - "run" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%%time\n", - "# Shows output of the run on stdout.\n", - "run.wait_for_completion(show_output=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "run.get_metrics()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Provision as a persistent compute target (Advanced)\n", - "\n", - "You can also specify additional properties or change defaults while provisioning AmlCompute using a more advanced configuration. This is useful when you want a dedicated cluster of 4 nodes (for example you can set the min_nodes and max_nodes to 4), or want the compute to be within an existing VNet in your subscription.\n", - "\n", - "In addition to `vm_size` and `max_nodes`, you can specify:\n", - "* `min_nodes`: Minimum nodes (default 0 nodes) to downscale to while running a job on AmlCompute\n", - "* `vm_priority`: Choose between 'dedicated' (default) and 'lowpriority' VMs when provisioning AmlCompute. Low Priority VMs use Azure's excess capacity and are thus cheaper but risk your run being pre-empted\n", - "* `idle_seconds_before_scaledown`: Idle time (default 120 seconds) to wait after run completion before auto-scaling to min_nodes\n", - "* `vnet_resourcegroup_name`: Resource group of the **existing** VNet within which AmlCompute should be provisioned\n", - "* `vnet_name`: Name of VNet\n", - "* `subnet_name`: Name of SubNet within the VNet" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.compute import ComputeTarget, AmlCompute\n", - "from azureml.core.compute_target import ComputeTargetException\n", - "\n", - "# Choose a name for your CPU cluster\n", - "cpu_cluster_name = \"cpu-cluster\"\n", - "\n", - "# Verify that cluster does not exist already\n", - "try:\n", - " cpu_cluster = ComputeTarget(workspace=ws, name=cpu_cluster_name)\n", - " print('Found existing cluster, use it.')\n", - "except ComputeTargetException:\n", - " compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2',\n", - " vm_priority='lowpriority',\n", - " min_nodes=2,\n", - " max_nodes=4,\n", - " idle_seconds_before_scaledown='300',\n", - " vnet_resourcegroup_name='',\n", - " vnet_name='',\n", - " subnet_name='')\n", - " cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)\n", - "\n", - "cpu_cluster.wait_for_completion(show_output=True)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "### Configure & Run" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.runconfig import RunConfiguration\n", - "from azureml.core.conda_dependencies import CondaDependencies\n", - "\n", - "# create a new RunConfig object\n", - "run_config = RunConfiguration(framework=\"python\")\n", - "\n", - "# Set compute target to AmlCompute target created in previous step\n", - "run_config.target = cpu_cluster.name\n", - "\n", - "# enable Docker \n", - "run_config.environment.docker.enabled = True\n", - "\n", - "azureml_pip_packages = [\n", - " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", - " 'azureml-explain-model'\n", - "]\n", - "\n", - "# specify CondaDependencies obj\n", - "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", - " pip_packages=azureml_pip_packages)\n", - "\n", - "from azureml.core import Run\n", - "from azureml.core import ScriptRunConfig\n", - "\n", - "src = ScriptRunConfig(source_directory=project_folder, \n", - " script='run_explainer.py', \n", - " run_config=run_config) \n", - "run = experiment.submit(config=src)\n", - "run" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "%%time\n", - "# Shows output of the run on stdout.\n", - "run.wait_for_completion(show_output=True)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "run.get_metrics()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", - "\n", - "client = ExplanationClient.from_run(run)\n", - "# Get the top k (e.g., 4) most important features with their importance values\n", - "explanation = client.download_model_explanation(top_k=4)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Additional operations to perform on AmlCompute\n", - "\n", - "You can perform more operations on AmlCompute such as updating the node counts or deleting the compute. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Get_status () gets the latest status of the AmlCompute target\n", - "cpu_cluster.get_status().serialize()\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Update () takes in the min_nodes, max_nodes and idle_seconds_before_scaledown and updates the AmlCompute target\n", - "# cpu_cluster.update(min_nodes=1)\n", - "# cpu_cluster.update(max_nodes=10)\n", - "cpu_cluster.update(idle_seconds_before_scaledown=300)\n", - "# cpu_cluster.update(min_nodes=2, max_nodes=4, idle_seconds_before_scaledown=600)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Delete () is used to deprovision and delete the AmlCompute target. Useful if you want to re-use the compute name \n", - "# 'cpu-cluster' in this case but use a different VM family for instance.\n", - "\n", - "# cpu_cluster.delete()" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Download Model Explanation Data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", - "\n", - "# Get model explanation data\n", - "client = ExplanationClient.from_run(run)\n", - "explanation = client.download_model_explanation()\n", - "local_importance_values = explanation.local_importance_values\n", - "expected_values = explanation.expected_values\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Or you can use the saved run.id to retrive the feature importance values\n", - "client = ExplanationClient.from_run_id(ws, experiment_name, run.id)\n", - "explanation = client.download_model_explanation()\n", - "local_importance_values = explanation.local_importance_values\n", - "expected_values = explanation.expected_values" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Get the top k (e.g., 4) most important features with their importance values\n", - "explanation = client.download_model_explanation(top_k=4)\n", - "global_importance_values = explanation.get_ranked_global_values()\n", - "global_importance_names = explanation.get_ranked_global_names()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print('global importance values: {}'.format(global_importance_values))\n", - "print('global importance names: {}'.format(global_importance_names))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Success!\n", - "Great, you are ready to move on to the remaining notebooks." - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.yml b/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.yml deleted file mode 100644 index 49144ae8..00000000 --- a/how-to-use-azureml/explain-model/explain-on-amlcompute/regression-sklearn-on-amlcompute.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: regression-sklearn-on-amlcompute -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/explain-on-amlcompute/run_explainer.py b/how-to-use-azureml/explain-model/explain-on-amlcompute/run_explainer.py deleted file mode 100644 index 72072080..00000000 --- a/how-to-use-azureml/explain-model/explain-on-amlcompute/run_explainer.py +++ /dev/null @@ -1,52 +0,0 @@ -# Copyright (c) Microsoft. All rights reserved. -# Licensed under the MIT license. - -from sklearn import datasets -from sklearn.linear_model import Ridge -from azureml.explain.model.tabular_explainer import TabularExplainer -from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient -from sklearn.model_selection import train_test_split -from azureml.core.run import Run -from sklearn.externals import joblib -import os -import numpy as np - -os.makedirs('./outputs', exist_ok=True) - -boston_data = datasets.load_boston() - -run = Run.get_context() -client = ExplanationClient.from_run(run) - -X_train, X_test, y_train, y_test = train_test_split(boston_data.data, - boston_data.target, - test_size=0.2, - random_state=0) - -alpha = 0.5 -# Use Ridge algorithm to create a regression model -reg = Ridge(alpha) -model = reg.fit(X_train, y_train) - -preds = reg.predict(X_test) -run.log('alpha', alpha) - -model_file_name = 'ridge_{0:.2f}.pkl'.format(alpha) -# save model in the outputs folder so it automatically get uploaded -with open(model_file_name, 'wb') as file: - joblib.dump(value=reg, filename=os.path.join('./outputs/', - model_file_name)) - -# Explain predictions on your local machine -tabular_explainer = TabularExplainer(model, X_train, features=boston_data.feature_names) - -# Explain overall model predictions (global explanation) -# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data -# x_train can be passed as well, but with more examples explanations it will -# take longer although they may be more accurate -global_explanation = tabular_explainer.explain_global(X_test) - -# Uploading model explanation data for storage or visualization in webUX -# The explanation can then be downloaded on any compute -comment = 'Global explanation on regression model trained on boston dataset' -client.upload_model_explanation(global_explanation, comment=comment) diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.ipynb b/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.ipynb deleted file mode 100644 index 2c57d6a6..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.ipynb +++ /dev/null @@ -1,279 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Breast cancer diagnosis classification with scikit-learn (run model explainer locally)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Explain a model with the AML explain-model package\n", - "\n", - "1. Train a SVM classification model using Scikit-learn\n", - "2. Run 'explain_model' with full data in local mode, which doesn't contact any Azure services\n", - "3. Run 'explain_model' with summarized data in local mode, which doesn't contact any Azure services\n", - "4. Visualize the global and local explanations with the visualization dashboard." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.datasets import load_breast_cancer\n", - "from sklearn import svm\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 1. Run model explainer locally with full data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load the breast cancer diagnosis data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "breast_cancer_data = load_breast_cancer()\n", - "classes = breast_cancer_data.target_names.tolist()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Split data into train and test\n", - "from sklearn.model_selection import train_test_split\n", - "x_train, x_test, y_train, y_test = train_test_split(breast_cancer_data.data, breast_cancer_data.target, test_size=0.2, random_state=0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a SVM classification model, which you want to explain" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "clf = svm.SVC(gamma=0.001, C=100., probability=True)\n", - "model = clf.fit(x_train, y_train)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain predictions on your local machine" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tabular_explainer = TabularExplainer(model, x_train, features=breast_cancer_data.feature_names, classes=classes)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions (global explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", - "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", - "global_explanation = tabular_explainer.explain_global(x_test)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Sorted SHAP values\n", - "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", - "# Corresponding feature names\n", - "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", - "# feature ranks (based on original order of features)\n", - "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", - "# per class feature names\n", - "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", - "# per class feature importance values\n", - "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dict(zip(global_explanation.get_ranked_global_names(), global_explanation.get_ranked_global_values()))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions as a collection of local (instance-level) explanations" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# feature shap values for all features and all data points in the training data\n", - "print('local importance values: {}'.format(global_explanation.local_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain local data points (individual instances)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# explain the first member of the test set\n", - "instance_num = 0\n", - "local_explanation = tabular_explainer.explain_local(x_test[instance_num,:])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get the prediction for the first member of the test set and explain why model made that prediction\n", - "prediction_value = clf.predict(x_test)[instance_num]\n", - "\n", - "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", - "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", - "\n", - "\n", - "dict(zip(sorted_local_importance_names, sorted_local_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 2. Load visualization dashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Note you will need to have extensions enabled prior to jupyter kernel starting\n", - "!jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "!jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "# Or, in Jupyter Labs, uncomment below\n", - "# jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", - "# jupyter labextension install microsoft-mli-widget" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.contrib.explain.model.visualize import ExplanationDashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ExplanationDashboard(global_explanation, model, x_test)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.yml b/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.yml deleted file mode 100644 index 744335c8..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-binary-classification.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: explain-local-sklearn-binary-classification -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.ipynb b/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.ipynb deleted file mode 100644 index 0f8dd7ce..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.ipynb +++ /dev/null @@ -1,280 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Iris flower classification with scikit-learn (run model explainer locally)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Explain a model with the AML explain-model package\n", - "\n", - "1. Train a SVM classification model using Scikit-learn\n", - "2. Run 'explain_model' with full data in local mode, which doesn't contact any Azure services\n", - "3. Run 'explain_model' with summarized data in local mode, which doesn't contact any Azure services\n", - "4. Visualize the global and local explanations with the visualization dashboard." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.datasets import load_iris\n", - "from sklearn import svm\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 1. Run model explainer locally with full data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load the breast cancer diagnosis data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "iris = load_iris()\n", - "X = iris['data']\n", - "y = iris['target']\n", - "classes = iris['target_names']\n", - "feature_names = iris['feature_names']" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Split data into train and test\n", - "from sklearn.model_selection import train_test_split\n", - "x_train, x_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a SVM classification model, which you want to explain" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "clf = svm.SVC(gamma=0.001, C=100., probability=True)\n", - "model = clf.fit(x_train, y_train)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain predictions on your local machine" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tabular_explainer = TabularExplainer(model, x_train, features = feature_names, classes=classes)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions (global explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "global_explanation = tabular_explainer.explain_global(x_test)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Sorted SHAP values\n", - "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", - "# Corresponding feature names\n", - "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", - "# feature ranks (based on original order of features)\n", - "print('global importance rank: {}'.format(global_explanation.global_importance_rank))\n", - "# per class feature names\n", - "print('ranked per class feature names: {}'.format(global_explanation.get_ranked_per_class_names()))\n", - "# per class feature importance values\n", - "print('ranked per class feature values: {}'.format(global_explanation.get_ranked_per_class_values()))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dict(zip(global_explanation.get_ranked_global_names(), global_explanation.get_ranked_global_values()))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions as a collection of local (instance-level) explanations" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# feature shap values for all features and all data points in the training data\n", - "print('local importance values: {}'.format(global_explanation.local_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain local data points (individual instances)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# explain the first member of the test set\n", - "instance_num = 0\n", - "local_explanation = tabular_explainer.explain_local(x_test[instance_num,:])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get the prediction for the first member of the test set and explain why model made that prediction\n", - "prediction_value = clf.predict(x_test)[instance_num]\n", - "\n", - "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", - "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", - "\n", - "\n", - "dict(zip(sorted_local_importance_names, sorted_local_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load visualization dashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Note you will need to have extensions enabled prior to jupyter kernel starting\n", - "!jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "!jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "# Or, in Jupyter Labs, uncomment below\n", - "# jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", - "# jupyter labextension install microsoft-mli-widget" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.contrib.explain.model.visualize import ExplanationDashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ExplanationDashboard(global_explanation, model, x_test)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.yml b/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.yml deleted file mode 100644 index 51cc039c..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-multiclass-classification.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: explain-local-sklearn-multiclass-classification -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.ipynb b/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.ipynb deleted file mode 100644 index 926144fe..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.ipynb +++ /dev/null @@ -1,272 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Boston Housing Price Prediction with scikit-learn (run model explainer locally)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Explain a model with the AML explain-model package\n", - "\n", - "1. Train a GradientBoosting regression model using Scikit-learn\n", - "2. Run 'explain_model' with full dataset in local mode, which doesn't contact any Azure services.\n", - "3. Run 'explain_model' with summarized dataset in local mode, which doesn't contact any Azure services.\n", - "4. Visualize the global and local explanations with the visualization dashboard." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn import datasets\n", - "from sklearn.ensemble import GradientBoostingRegressor\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 1. Run model explainer locally with full data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load the Boston house price data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "boston_data = datasets.load_boston()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Split data into train and test\n", - "from sklearn.model_selection import train_test_split\n", - "x_train, x_test, y_train, y_test = train_test_split(boston_data.data, boston_data.target, test_size=0.2, random_state=0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a GradientBoosting Regression model, which you want to explain" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "reg = GradientBoostingRegressor(n_estimators=100, max_depth=4,\n", - " learning_rate=0.1, loss='huber',\n", - " random_state=1)\n", - "model = reg.fit(x_train, y_train)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain predictions on your local machine" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tabular_explainer = TabularExplainer(model, x_train, features = boston_data.feature_names)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions (global explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", - "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", - "global_explanation = tabular_explainer.explain_global(x_test)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Sorted SHAP values \n", - "print('ranked global importance values: {}'.format(global_explanation.get_ranked_global_values()))\n", - "# Corresponding feature names\n", - "print('ranked global importance names: {}'.format(global_explanation.get_ranked_global_names()))\n", - "# feature ranks (based on original order of features)\n", - "print('global importance rank: {}'.format(global_explanation.global_importance_rank))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dict(zip(global_explanation.get_ranked_global_names(), global_explanation.get_ranked_global_values()))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions as a collection of local (instance-level) explanations" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# feature shap values for all features and all data points in the training data\n", - "print('local importance values: {}'.format(global_explanation.local_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain local data points (individual instances)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "local_explanation = tabular_explainer.explain_local(x_test[0,:])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# sorted local feature importance information; reflects the original feature order\n", - "sorted_local_importance_names = local_explanation.get_ranked_local_names()\n", - "sorted_local_importance_values = local_explanation.get_ranked_local_values()\n", - "\n", - "print('sorted local importance names: {}'.format(sorted_local_importance_names))\n", - "print('sorted local importance values: {}'.format(sorted_local_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load visualization dashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Note you will need to have extensions enabled prior to jupyter kernel starting\n", - "!jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "!jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "# Or, in Jupyter Labs, uncomment below\n", - "# jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", - "# jupyter labextension install microsoft-mli-widget" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.contrib.explain.model.visualize import ExplanationDashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ExplanationDashboard(global_explanation, model, x_test)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.yml b/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.yml deleted file mode 100644 index 0d91a84a..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-local/explain-local-sklearn-regression.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: explain-local-sklearn-regression -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.ipynb b/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.ipynb deleted file mode 100644 index f55dbb9f..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.ipynb +++ /dev/null @@ -1,337 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Summary\n", - "From raw data that is a mixture of categoricals and numeric, featurize the categoricals using one hot encoding. Use tabular explainer to get explain object and then get raw feature importances" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Explain a model with the AML explain-model package on raw features\n", - "\n", - "1. Train a Logistic Regression model using Scikit-learn\n", - "2. Run 'explain_model' with full dataset in local mode, which doesn't contact any Azure services.\n", - "3. Run 'explain_model' with summarized dataset in local mode, which doesn't contact any Azure services.\n", - "4. Visualize the global and local explanations with the visualization dashboard." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.pipeline import Pipeline\n", - "from sklearn.impute import SimpleImputer\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder\n", - "from sklearn.linear_model import LogisticRegression\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer\n", - "import pandas as pd\n", - "import numpy as np" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "titanic_url = ('https://raw.githubusercontent.com/amueller/'\n", - " 'scipy-2017-sklearn/091d371/notebooks/datasets/titanic3.csv')\n", - "data = pd.read_csv(titanic_url)\n", - "# fill missing values\n", - "data = data.fillna(method=\"ffill\")\n", - "data = data.fillna(method=\"bfill\")" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 1. Run model explainer locally with full data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Similar to example [here](https://scikit-learn.org/stable/auto_examples/compose/plot_column_transformer_mixed_types.html#sphx-glr-auto-examples-compose-plot-column-transformer-mixed-types-py), use a subset of columns" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.model_selection import train_test_split\n", - "\n", - "numeric_features = ['age', 'fare']\n", - "categorical_features = ['embarked', 'sex', 'pclass']\n", - "\n", - "y = data['survived'].values\n", - "X = data[categorical_features + numeric_features]\n", - "\n", - "x_train, x_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "sklearn imports" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.pipeline import Pipeline\n", - "from sklearn.impute import SimpleImputer\n", - "from sklearn.preprocessing import StandardScaler, OneHotEncoder" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We can explain raw features by either using a `sklearn.compose.ColumnTransformer` or a list of fitted transformer tuples. The cell below uses `sklearn.compose.ColumnTransformer`. In case you want to run the example with the list of fitted transformer tuples, comment the cell below and uncomment the cell that follows after. " - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.compose import ColumnTransformer\n", - "\n", - "transformations = ColumnTransformer([\n", - " (\"age_fare\", Pipeline(steps=[\n", - " ('imputer', SimpleImputer(strategy='median')),\n", - " ('scaler', StandardScaler())\n", - " ]), [\"age\", \"fare\"]),\n", - " (\"embarked\", Pipeline(steps=[\n", - " (\"imputer\", SimpleImputer(strategy='constant', fill_value='missing')), \n", - " (\"encoder\", OneHotEncoder(sparse=False))]), [\"embarked\"]),\n", - " (\"sex_pclass\", OneHotEncoder(sparse=False), [\"sex\", \"pclass\"]) \n", - "])\n", - "\n", - "\n", - "# Append classifier to preprocessing pipeline.\n", - "# Now we have a full prediction pipeline.\n", - "clf = Pipeline(steps=[('preprocessor', transformations),\n", - " ('classifier', LogisticRegression(solver='lbfgs'))])\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "'''\n", - "# Uncomment below if sklearn-pandas is not installed\n", - "#!pip install sklearn-pandas\n", - "from sklearn_pandas import DataFrameMapper\n", - "\n", - "# Impute, standardize the numeric features and one-hot encode the categorical features. \n", - "\n", - "transformations = [\n", - " ([\"age\", \"fare\"], Pipeline(steps=[\n", - " ('imputer', SimpleImputer(strategy='median')),\n", - " ('scaler', StandardScaler())\n", - " ])),\n", - " ([\"embarked\"], Pipeline(steps=[\n", - " (\"imputer\", SimpleImputer(strategy='constant', fill_value='missing')), \n", - " (\"encoder\", OneHotEncoder(sparse=False))])),\n", - " ([\"sex\", \"pclass\"], OneHotEncoder(sparse=False)) \n", - "]\n", - "\n", - "\n", - "# Append classifier to preprocessing pipeline.\n", - "# Now we have a full prediction pipeline.\n", - "clf = Pipeline(steps=[('preprocessor', DataFrameMapper(transformations)),\n", - " ('classifier', LogisticRegression(solver='lbfgs'))])\n", - "'''" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a Logistic Regression model, which you want to explain" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "model = clf.fit(x_train, y_train)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain predictions on your local machine" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tabular_explainer = TabularExplainer(clf.steps[-1][1], initialization_examples=x_train, features=x_train.columns, transformations=transformations)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", - "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", - "global_explanation = tabular_explainer.explain_global(x_test)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "sorted_global_importance_values = global_explanation.get_ranked_global_values()\n", - "sorted_global_importance_names = global_explanation.get_ranked_global_names()\n", - "dict(zip(sorted_global_importance_names, sorted_global_importance_values))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions as a collection of local (instance-level) explanations" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# explain the first member of the test set\n", - "local_explanation = tabular_explainer.explain_local(x_test[:1])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# get the prediction for the first member of the test set and explain why model made that prediction\n", - "prediction_value = clf.predict(x_test)[0]\n", - "\n", - "sorted_local_importance_values = local_explanation.get_ranked_local_values()[prediction_value]\n", - "sorted_local_importance_names = local_explanation.get_ranked_local_names()[prediction_value]\n", - "\n", - "# Sorted local SHAP values\n", - "print('ranked local importance values: {}'.format(sorted_local_importance_values))\n", - "# Corresponding feature names\n", - "print('ranked local importance names: {}'.format(sorted_local_importance_names))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 2. Load visualization dashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Note you will need to have extensions enabled prior to jupyter kernel starting\n", - "!jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "!jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", - "# Or, in Jupyter Labs, uncomment below\n", - "# jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", - "# jupyter labextension install microsoft-mli-widget" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.contrib.explain.model.visualize import ExplanationDashboard" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ExplanationDashboard(global_explanation, model, x_test)" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.yml b/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.yml deleted file mode 100644 index 7d213fab..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-raw-features/explain-sklearn-raw-features.yml +++ /dev/null @@ -1,7 +0,0 @@ -name: explain-sklearn-raw-features -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model - - sklearn-pandas diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.ipynb b/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.ipynb deleted file mode 100644 index 0ac1032a..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.ipynb +++ /dev/null @@ -1,262 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Breast cancer diagnosis classification with scikit-learn (save model explanations via AML Run History)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Explain a model with the AML explain-model package\n", - "\n", - "1. Train a SVM classification model using Scikit-learn\n", - "2. Run 'explain_model' with AML Run History, which leverages run history service to store and manage the explanation data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from sklearn.datasets import load_breast_cancer\n", - "from sklearn import svm\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 1. Run model explainer locally with full data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load the breast cancer diagnosis data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "breast_cancer_data = load_breast_cancer()\n", - "classes = breast_cancer_data.target_names.tolist()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Split data into train and test\n", - "from sklearn.model_selection import train_test_split\n", - "x_train, x_test, y_train, y_test = train_test_split(breast_cancer_data.data, breast_cancer_data.target, test_size=0.2, random_state=0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a SVM classification model, which you want to explain" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "clf = svm.SVC(gamma=0.001, C=100., probability=True)\n", - "model = clf.fit(x_train, y_train)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain predictions on your local machine" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tabular_explainer = TabularExplainer(model, x_train, features=breast_cancer_data.feature_names, classes=classes)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions (global explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", - "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", - "global_explanation = tabular_explainer.explain_global(x_test)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# 2. Save Model Explanation With AML Run History" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "import azureml.core\n", - "from azureml.core import Workspace, Experiment, Run\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer\n", - "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", - "# Check core SDK version number\n", - "print(\"SDK version:\", azureml.core.VERSION)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ws = Workspace.from_config()\n", - "print('Workspace name: ' + ws.name, \n", - " 'Azure region: ' + ws.location, \n", - " 'Subscription id: ' + ws.subscription_id, \n", - " 'Resource group: ' + ws.resource_group, sep = '\\n')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "experiment_name = 'explain_model'\n", - "experiment = Experiment(ws, experiment_name)\n", - "run = experiment.start_logging()\n", - "client = ExplanationClient.from_run(run)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Uploading model explanation data for storage or visualization in webUX\n", - "# The explanation can then be downloaded on any compute\n", - "client.upload_model_explanation(global_explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Get model explanation data\n", - "explanation = client.download_model_explanation()\n", - "local_importance_values = explanation.local_importance_values\n", - "expected_values = explanation.expected_values" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Get the top k (e.g., 4) most important features with their importance values\n", - "explanation = client.download_model_explanation(top_k=4)\n", - "global_importance_values = explanation.get_ranked_global_values()\n", - "global_importance_names = explanation.get_ranked_global_names()\n", - "per_class_names = explanation.get_ranked_per_class_names()[0]\n", - "per_class_values = explanation.get_ranked_per_class_values()[0]" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print('per class feature importance values: {}'.format(per_class_values))\n", - "print('per class feature importance names: {}'.format(per_class_names))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "dict(zip(per_class_names, per_class_values))" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.yml b/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.yml deleted file mode 100644 index 067971f5..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-classification.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: explain-run-history-sklearn-classification -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.ipynb b/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.ipynb deleted file mode 100644 index 1fbdb4ea..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.ipynb +++ /dev/null @@ -1,276 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Boston Housing Price Prediction with scikit-learn (save model explanations via AML Run History)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Copyright (c) Microsoft Corporation. All rights reserved.\n", - "\n", - "Licensed under the MIT License." - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Explain a model with the AML explain-model package\n", - "\n", - "1. Train a GradientBoosting regression model using Scikit-learn\n", - "2. Run 'explain_model' with AML Run History, which leverages run history service to store and manage the explanation data" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Save Model Explanation With AML Run History" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "#Import Iris dataset\n", - "from sklearn import datasets\n", - "from sklearn.ensemble import GradientBoostingRegressor\n", - "\n", - "import azureml.core\n", - "from azureml.core import Workspace, Experiment, Run\n", - "from azureml.explain.model.tabular_explainer import TabularExplainer\n", - "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", - "# Check core SDK version number\n", - "print(\"SDK version:\", azureml.core.VERSION)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "ws = Workspace.from_config()\n", - "print('Workspace name: ' + ws.name, \n", - " 'Azure region: ' + ws.location, \n", - " 'Subscription id: ' + ws.subscription_id, \n", - " 'Resource group: ' + ws.resource_group, sep = '\\n')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "experiment_name = 'explain_model'\n", - "experiment = Experiment(ws, experiment_name)\n", - "run = experiment.start_logging()\n", - "client = ExplanationClient.from_run(run)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Load the Boston house price data" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "boston_data = datasets.load_boston()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Split data into train and test\n", - "from sklearn.model_selection import train_test_split\n", - "x_train, x_test, y_train, y_test = train_test_split(boston_data.data, boston_data.target, test_size=0.2, random_state=0)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train a GradientBoosting Regression model, which you want to explain" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "clf = GradientBoostingRegressor(n_estimators=100, max_depth=4,\n", - " learning_rate=0.1, loss='huber',\n", - " random_state=1)\n", - "model = clf.fit(x_train, y_train)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain predictions on your local machine" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "tabular_explainer = TabularExplainer(model, x_train, features=boston_data.feature_names)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain overall model predictions (global explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data\n", - "# x_train can be passed as well, but with more examples explanations will take longer although they may be more accurate\n", - "global_explanation = tabular_explainer.explain_global(x_test)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Uploading model explanation data for storage or visualization in webUX\n", - "# The explanation can then be downloaded on any compute\n", - "client.upload_model_explanation(global_explanation)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Get model explanation data\n", - "explanation = client.download_model_explanation()\n", - "local_importance_values = explanation.local_importance_values\n", - "expected_values = explanation.expected_values" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Print the values\n", - "print('expected values: {}'.format(expected_values))\n", - "print('local importance values: {}'.format(local_importance_values))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# Get the top k (e.g., 4) most important features with their importance values\n", - "explanation = client.download_model_explanation(top_k=4)\n", - "global_importance_values = explanation.get_ranked_global_values()\n", - "global_importance_names = explanation.get_ranked_global_names()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print('global importance values: {}'.format(global_importance_values))\n", - "print('global importance names: {}'.format(global_importance_names))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Explain individual instance predictions (local explanation) ##### needs to get updated with the new build" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "local_explanation = tabular_explainer.explain_local(x_test[0,:])" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "# local feature importance information\n", - "local_importance_values = local_explanation.local_importance_values\n", - "print('local importance values: {}'.format(local_importance_values))" - ] - } - ], - "metadata": { - "authors": [ - { - "name": "mesameki" - } - ], - "kernelspec": { - "display_name": "Python 3.6", - "language": "python", - "name": "python36" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.6.8" - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.yml b/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.yml deleted file mode 100644 index 69f81e2a..00000000 --- a/how-to-use-azureml/explain-model/explain-tabular-data-run-history/explain-run-history-sklearn-regression.yml +++ /dev/null @@ -1,6 +0,0 @@ -name: explain-run-history-sklearn-regression -dependencies: -- pip: - - azureml-sdk - - azureml-explain-model - - azureml-contrib-explain-model From 44a7481ed17b9365960f43392ca79847619f55b5 Mon Sep 17 00:00:00 2001 From: vizhur Date: Mon, 19 Aug 2019 23:33:44 +0000 Subject: [PATCH 098/248] update samples from Release-141 as a part of 1.0.57 SDK release --- configuration.ipynb | 2 +- how-to-use-azureml/README.md | 2 +- .../automated-machine-learning/README.md | 20 +- .../automated-machine-learning/automl_env.yml | 5 +- .../automl_env_mac.yml | 5 +- ...uto-ml-classification-bank-marketing.ipynb | 53 +- .../auto-ml-classification-bank-marketing.yml | 2 + ...-ml-classification-credit-card-fraud.ipynb | 37 +- ...to-ml-classification-credit-card-fraud.yml | 2 + ...to-ml-classification-with-deployment.ipynb | 6 +- .../auto-ml-dataset-remote-execution.ipynb | 509 ++ .../auto-ml-dataset-remote-execution.yml | 10 + .../dataset/auto-ml-dataset.ipynb | 402 ++ .../dataset/auto-ml-dataset.yml | 8 + .../auto-ml-forecasting-energy-demand.ipynb | 3 +- ...to-ml-forecasting-orange-juice-sales.ipynb | 12 +- ...auto-ml-regression-concrete-strength.ipynb | 36 +- .../auto-ml-regression-concrete-strength.yml | 2 + ...o-ml-regression-hardware-performance.ipynb | 36 +- ...uto-ml-regression-hardware-performance.yml | 2 + .../auto-ml-remote-amlcompute-with-onnx.ipynb | 34 +- .../auto-ml-remote-amlcompute-with-onnx.yml | 2 + .../auto-ml-remote-amlcompute.ipynb | 29 +- .../auto-ml-remote-amlcompute.yml | 2 + .../sql-server/setup/auto-ml-sql-setup.ipynb | 1 - .../automl/automl-databricks-local-01.ipynb | 29 +- ...oml-databricks-local-with-deployment.ipynb | 29 +- .../model-register-and-deploy.ipynb | 35 +- .../accelerated-models-object-detection.ipynb | 2 +- .../accelerated-models-quickstart.ipynb | 2 +- .../accelerated-models-training.ipynb | 2 +- ...e-app-insights-in-production-service.ipynb | 46 +- .../onnx-convert-aml-deploy-tinyyolo.ipynb | 56 +- ...facial-expression-recognition-deploy.ipynb | 72 +- .../onnx/onnx-inference-mnist-deploy.ipynb | 57 +- .../onnx-modelzoo-aml-deploy-resnet50.ipynb | 54 +- .../onnx-train-pytorch-aml-deploy-mnist.ipynb | 55 +- .../production-deploy-to-aks.ipynb | 222 +- .../explain-model-on-amlcompute.ipynb | 748 +++ .../explain-model-on-amlcompute.yml | 8 + .../remote-explanation/train_explain.py | 63 + ...explain-model-on-amlcompute-and-deploy.yml | 2 +- .../aml-pipelines-getting-started.ipynb | 2 +- ...nes-parameter-tuning-with-hyperdrive.ipynb | 6 +- ...nes-use-databricks-as-compute-target.ipynb | 2 +- ...with-automated-machine-learning-step.ipynb | 39 +- ...-taxi-data-regression-model-building.ipynb | 21 + .../pipeline-batch-scoring.ipynb | 8 +- .../pipeline-style-transfer.ipynb | 2 +- .../authentication-in-azureml.ipynb | 173 +- .../track-and-monitor-experiments/README.md | 19 + .../logging-api/img/run_details.PNG | Bin 0 -> 30114 bytes .../logging-api/img/run_history.PNG | Bin 0 -> 32412 bytes .../logging-api/logging-api.ipynb | 545 ++ .../logging-api/logging-api.yml | 8 + .../manage-runs/hello.py | 7 + .../manage-runs/hello_with_children.py | 11 + .../manage-runs/hello_with_delay.py | 8 + .../manage-runs/manage-runs.ipynb | 602 +++ .../manage-runs/manage-runs.yml | 4 + .../tensorboard/tensorboard.ipynb | 562 +++ .../tensorboard/tensorboard.yml | 6 + .../deploy-model/deploy-model.ipynb | 322 ++ .../deploy-model/deploy-model.yml | 8 + .../train-deploy-pytorch/scripts/train.py | 150 + .../train-and-deploy-pytorch.ipynb | 481 ++ .../train-and-deploy-pytorch.yml | 8 + .../train-local/train-local.ipynb | 248 + .../using-mlflow/train-local/train-local.yml | 7 + .../train-remote/train-remote.ipynb | 318 ++ .../train-remote/train-remote.yml | 4 + .../train-remote/train_diabetes.py | 46 + .../distributed-cntk-with-custom-docker.ipynb | 6 +- ...erparameter-tune-deploy-with-chainer.ipynb | 6 +- ...erparameter-tune-deploy-with-pytorch.ipynb | 6 +- ...arameter-tune-deploy-with-tensorflow.ipynb | 6 +- how-to-use-azureml/training/README.md | 4 +- ...erparameter-tune-deploy-with-sklearn.ipynb | 6 +- .../using-environments.ipynb | 6 +- how-to-use-azureml/work-with-data/README.md | 9 + .../work-with-data/dataprep/README.md | 300 ++ .../new-york-taxi/new-york-taxi.ipynb | 513 ++ .../new-york-taxi_scale-out.ipynb | 135 + .../dataprep/data/ADLSgen2-datapreptest.crt | 45 + .../dataprep/data/adls-dpreptestfiles.crt | 45 + .../dataprep/data/chicago-aldermen-2015.csv | 54 + .../dataprep/data/crime-dirty.csv | 15 + .../dataprep/data/crime-full.csv | 1001 ++++ .../dataprep/data/crime-spring.csv | 11 + .../dataprep/data/crime-winter.csv | 11 + .../work-with-data/dataprep/data/crime.dprep | 204 + .../dataprep/data/crime.parquet | Bin 0 -> 3607 bytes .../work-with-data/dataprep/data/crime.txt | 10 + .../work-with-data/dataprep/data/crime.xlsx | Bin 0 -> 16109 bytes .../work-with-data/dataprep/data/crime.zip | Bin 0 -> 3685 bytes .../dataprep/data/crime_duplicate_headers.csv | 12 + .../dataprep/data/crime_fixed_width_file.txt | 10 + .../data/crime_multiple_separators.csv | 11 + .../dataprep/data/crime_partfiles/_SUCCESS | 0 ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 914 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 921 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 930 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 953 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 923 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 887 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 971 ++++ ...8e77b-f17a-4c20-972c-aa382e830fca-c000.csv | 759 +++ .../work-with-data/dataprep/data/json.json | 1306 +++++ .../dataprep/data/large_dflow.json | 4415 +++++++++++++++++ .../work-with-data/dataprep/data/map_func.py | 4 + .../dataprep/data/median_income.csv | 251 + .../data/median_income_transformed.csv | 251 + .../dataprep/data/parquet.parquet | Bin 0 -> 3091 bytes ...7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet | Bin 0 -> 6078 bytes ...7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet | Bin 0 -> 5083 bytes .../dataprep/data/secrets.dprep | 63 + .../dataprep/data/stream-path.csv | 11 + .../add-column-using-expression.ipynb | 360 ++ .../append-columns-and-rows.ipynb | 251 + .../dataprep/how-to-guides/assertions.ipynb | 133 + .../how-to-guides/auto-read-file.ipynb | 189 + .../dataprep/how-to-guides/cache.ipynb | 194 + .../how-to-guides/column-manipulations.ipynb | 563 +++ .../column-type-transforms.ipynb | 473 ++ .../custom-python-transforms.ipynb | 231 + .../how-to-guides/data-ingestion.ipynb | 1111 +++++ .../dataprep/how-to-guides/data-profile.ipynb | 179 + .../dataprep/how-to-guides/datastore.ipynb | 246 + .../derive-column-by-example.ipynb | 187 + .../how-to-guides/external-references.ipynb | 118 + .../dataprep/how-to-guides/filtering.ipynb | 220 + .../dataprep/how-to-guides/fuzzy-group.ipynb | 211 + .../how-to-guides/impute-missing-values.ipynb | 147 + .../dataprep/how-to-guides/join.ipynb | 265 + .../how-to-guides/label-encoder.ipynb | 168 + .../how-to-guides/min-max-scaler.ipynb | 239 + .../how-to-guides/one-hot-encoder.ipynb | 179 + .../how-to-guides/open-save-dataflows.ipynb | 171 + .../quantile-transformation.ipynb | 91 + .../dataprep/how-to-guides/random-split.ipynb | 145 + ...replace-datasource-replace-reference.ipynb | 130 + .../how-to-guides/replace-fill-error.ipynb | 239 + .../dataprep/how-to-guides/secrets.ipynb | 140 + .../how-to-guides/semantic-types.ipynb | 164 + .../split-column-by-example.ipynb | 220 + .../how-to-guides/subsetting-sampling.ipynb | 217 + .../dataprep/how-to-guides/summarize.ipynb | 590 +++ .../working-with-file-streams.ipynb | 192 + .../dataprep/how-to-guides/writing-data.ipynb | 183 + .../getting-started/getting-started.ipynb | 433 ++ .../work-with-data/datasets/README.md | 20 + .../datasets/dataset-api-change-notice.md | 57 + .../datasets-diff/datasets-diff.ipynb | 796 +++ .../tabular-dataset-tutorial.ipynb | 312 ++ .../train-dataset/Titanic.csv | 892 ++++ .../datasets-tutorial/train-dataset/train.py | 43 + setup-environment/configuration.ipynb | 2 +- tutorials/regression-part1-data-prep.ipynb | 7 +- 158 files changed, 32395 insertions(+), 619 deletions(-) create mode 100644 how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.ipynb create mode 100644 how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.yml create mode 100644 how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.ipynb create mode 100644 how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.yml create mode 100644 how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb create mode 100644 how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.yml create mode 100644 how-to-use-azureml/explain-model/azure-integration/remote-explanation/train_explain.py create mode 100644 how-to-use-azureml/track-and-monitor-experiments/README.md create mode 100644 how-to-use-azureml/track-and-monitor-experiments/logging-api/img/run_details.PNG create mode 100644 how-to-use-azureml/track-and-monitor-experiments/logging-api/img/run_history.PNG create mode 100644 how-to-use-azureml/track-and-monitor-experiments/logging-api/logging-api.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/logging-api/logging-api.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/manage-runs/hello.py create mode 100644 how-to-use-azureml/track-and-monitor-experiments/manage-runs/hello_with_children.py create mode 100644 how-to-use-azureml/track-and-monitor-experiments/manage-runs/hello_with_delay.py create mode 100644 how-to-use-azureml/track-and-monitor-experiments/manage-runs/manage-runs.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/manage-runs/manage-runs.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/tensorboard/tensorboard.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/tensorboard/tensorboard.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/deploy-model/deploy-model.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/deploy-model/deploy-model.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-deploy-pytorch/scripts/train.py create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-deploy-pytorch/train-and-deploy-pytorch.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-deploy-pytorch/train-and-deploy-pytorch.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-local/train-local.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-local/train-local.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-remote/train-remote.ipynb create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-remote/train-remote.yml create mode 100644 how-to-use-azureml/track-and-monitor-experiments/using-mlflow/train-remote/train_diabetes.py create mode 100644 how-to-use-azureml/work-with-data/README.md create mode 100644 how-to-use-azureml/work-with-data/dataprep/README.md create mode 100644 how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/case-studies/new-york-taxi/new-york-taxi_scale-out.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/ADLSgen2-datapreptest.crt create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/adls-dpreptestfiles.crt create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/chicago-aldermen-2015.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-dirty.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-full.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-spring.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime-winter.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.dprep create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.parquet create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.txt create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.xlsx create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime.zip create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_duplicate_headers.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_fixed_width_file.txt create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_multiple_separators.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/_SUCCESS create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00000-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00001-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00002-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00003-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00004-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00005-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00006-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/crime_partfiles/part-00007-0b08e77b-f17a-4c20-972c-aa382e830fca-c000.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/json.json create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/large_dflow.json create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/map_func.py create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/median_income.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/median_income_transformed.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/parquet.parquet create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=false/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/parquet_dataset/Arrest=true/part-00000-34f8a7a7-c3cd-4926-92b2-ba2dcd3f95b7.gz.parquet create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/secrets.dprep create mode 100644 how-to-use-azureml/work-with-data/dataprep/data/stream-path.csv create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/add-column-using-expression.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/append-columns-and-rows.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/assertions.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/auto-read-file.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/cache.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-manipulations.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/column-type-transforms.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/custom-python-transforms.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-ingestion.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/data-profile.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/datastore.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/derive-column-by-example.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/external-references.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/filtering.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/fuzzy-group.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/impute-missing-values.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/join.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/label-encoder.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/min-max-scaler.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/one-hot-encoder.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/open-save-dataflows.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/quantile-transformation.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/random-split.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-datasource-replace-reference.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/replace-fill-error.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/secrets.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/semantic-types.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/split-column-by-example.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/subsetting-sampling.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/summarize.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/working-with-file-streams.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/how-to-guides/writing-data.ipynb create mode 100644 how-to-use-azureml/work-with-data/dataprep/tutorials/getting-started/getting-started.ipynb create mode 100644 how-to-use-azureml/work-with-data/datasets/README.md create mode 100644 how-to-use-azureml/work-with-data/datasets/dataset-api-change-notice.md create mode 100644 how-to-use-azureml/work-with-data/datasets/datasets-diff/datasets-diff.ipynb create mode 100644 how-to-use-azureml/work-with-data/datasets/datasets-tutorial/tabular-dataset-tutorial.ipynb create mode 100644 how-to-use-azureml/work-with-data/datasets/datasets-tutorial/train-dataset/Titanic.csv create mode 100644 how-to-use-azureml/work-with-data/datasets/datasets-tutorial/train-dataset/train.py diff --git a/configuration.ipynb b/configuration.ipynb index b89b6e00..d82c6131 100644 --- a/configuration.ipynb +++ b/configuration.ipynb @@ -103,7 +103,7 @@ "source": [ "import azureml.core\n", "\n", - "print(\"This notebook was created using version 1.0.55 of the Azure ML SDK\")\n", + "print(\"This notebook was created using version 1.0.57 of the Azure ML SDK\")\n", "print(\"You are currently using version\", azureml.core.VERSION, \"of the Azure ML SDK\")" ] }, diff --git a/how-to-use-azureml/README.md b/how-to-use-azureml/README.md index cedd4581..ee4829e0 100644 --- a/how-to-use-azureml/README.md +++ b/how-to-use-azureml/README.md @@ -8,7 +8,7 @@ As a pre-requisite, run the [configuration Notebook](../configuration.ipynb) not * [train-on-local](./training/train-on-local): Learn how to submit a run to local computer and use Azure ML managed run configuration. * [train-on-amlcompute](./training/train-on-amlcompute): Use a 1-n node Azure ML managed compute cluster for remote runs on Azure CPU or GPU infrastructure. * [train-on-remote-vm](./training/train-on-remote-vm): Use Data Science Virtual Machine as a target for remote runs. -* [logging-api](./training/logging-api): Learn about the details of logging metrics to run history. +* [logging-api](./track-and-monitor-experiments/logging-api): Learn about the details of logging metrics to run history. * [register-model-create-image-deploy-service](./deployment/register-model-create-image-deploy-service): Learn about the details of model management. * [production-deploy-to-aks](./deployment/production-deploy-to-aks) Deploy a model to production at scale on Azure Kubernetes Service. * [enable-data-collection-for-models-in-aks](./deployment/enable-data-collection-for-models-in-aks) Learn about data collection APIs for deployed model. diff --git a/how-to-use-azureml/automated-machine-learning/README.md b/how-to-use-azureml/automated-machine-learning/README.md index 4d95e16a..adc4a1d6 100644 --- a/how-to-use-azureml/automated-machine-learning/README.md +++ b/how-to-use-azureml/automated-machine-learning/README.md @@ -155,11 +155,11 @@ jupyter notebook - [auto-ml-subsampling-local.ipynb](subsampling/auto-ml-subsampling-local.ipynb) - How to enable subsampling -- [auto-ml-dataprep.ipynb](dataprep/auto-ml-dataprep.ipynb) - - Using DataPrep for reading data +- [auto-ml-dataset.ipynb](dataprep/auto-ml-dataset.ipynb) + - Using Dataset for reading data -- [auto-ml-dataprep-remote-execution.ipynb](dataprep-remote-execution/auto-ml-dataprep-remote-execution.ipynb) - - Using DataPrep for reading data with remote execution +- [auto-ml-dataset-remote-execution.ipynb](dataprep-remote-execution/auto-ml-dataset-remote-execution.ipynb) + - Using Dataset for reading data with remote execution - [auto-ml-classification-with-whitelisting.ipynb](classification-with-whitelisting/auto-ml-classification-with-whitelisting.ipynb) - Dataset: scikit learn's [digit dataset](http://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_digits.html#sklearn.datasets.load_digits) @@ -229,7 +229,7 @@ The main code of the file must be indented so that it is under this condition. 2. Check that you have conda 64-bit installed rather than 32-bit. You can check this with the command `conda info`. The `platform` should be `win-64` for Windows or `osx-64` for Mac. 3. Check that you have conda 4.4.10 or later. You can check the version with the command `conda -V`. If you have a previous version installed, you can update it using the command: `conda update conda`. 4. On Linux, if the error is `gcc: error trying to exec 'cc1plus': execvp: No such file or directory`, install build essentials using the command `sudo apt-get install build-essential`. -5. Pass a new name as the first parameter to automl_setup so that it creates a new conda environment. You can view existing conda environments using `conda env list` and remove them with `conda env remove -n `. +5. Pass a new name as the first parameter to automl_setup so that it creates a new conda environment. You can view existing conda environments using `conda env list` and remove them with `conda env remove -n `. ## automl_setup_linux.sh fails If automl_setup_linux.sh fails on Ubuntu Linux with the error: `unable to execute 'gcc': No such file or directory` @@ -264,13 +264,13 @@ Some Windows environments see an error loading numpy with the latest Python vers Check the tensorflow version in the automated ml conda environment. Supported versions are < 1.13. Uninstall tensorflow from the environment if version is >= 1.13 You may check the version of tensorflow and uninstall as follows 1) start a command shell, activate conda environment where automated ml packages are installed -2) enter `pip freeze` and look for `tensorflow` , if found, the version listed should be < 1.13 -3) If the listed version is a not a supported version, `pip uninstall tensorflow` in the command shell and enter y for confirmation. +2) enter `pip freeze` and look for `tensorflow` , if found, the version listed should be < 1.13 +3) If the listed version is a not a supported version, `pip uninstall tensorflow` in the command shell and enter y for confirmation. -## Remote run: DsvmCompute.create fails +## Remote run: DsvmCompute.create fails There are several reasons why the DsvmCompute.create can fail. The reason is usually in the error message but you have to look at the end of the error message for the detailed reason. Some common reasons are: 1) `Compute name is invalid, it should start with a letter, be between 2 and 16 character, and only include letters (a-zA-Z), numbers (0-9) and \'-\'.` Note that underscore is not allowed in the name. -2) `The requested VM size xxxxx is not available in the current region.` You can select a different region or vm_size. +2) `The requested VM size xxxxx is not available in the current region.` You can select a different region or vm_size. ## Remote run: Unable to establish SSH connection Automated ML uses the SSH protocol to communicate with remote DSVMs. This defaults to port 22. Possible causes for this error are: @@ -296,4 +296,4 @@ To resolve this issue, allocate a DSVM with more memory or reduce the value spec ## Remote run: Iterations show as "Not Responding" in the RunDetails widget. This can be caused by too many concurrent iterations for a remote DSVM. Each concurrent iteration usually takes 100% of a core when it is running. Some iterations can use multiple cores. So, the max_concurrent_iterations setting should always be less than the number of cores of the DSVM. -To resolve this issue, try reducing the value specified for the max_concurrent_iterations setting. \ No newline at end of file +To resolve this issue, try reducing the value specified for the max_concurrent_iterations setting. diff --git a/how-to-use-azureml/automated-machine-learning/automl_env.yml b/how-to-use-azureml/automated-machine-learning/automl_env.yml index 07b7c974..5e280f0c 100644 --- a/how-to-use-azureml/automated-machine-learning/automl_env.yml +++ b/how-to-use-azureml/automated-machine-learning/automl_env.yml @@ -13,10 +13,13 @@ dependencies: - scikit-learn>=0.19.0,<=0.20.3 - pandas>=0.22.0,<=0.23.4 - py-xgboost<=0.80 +- pyarrow>=0.11.0 - pip: # Required packages for AzureML execution, history, and data preparation. - - azureml-sdk[automl,explain] + - azureml-defaults + - azureml-train-automl - azureml-widgets + - azureml-explain-model - pandas_ml diff --git a/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml b/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml index 2ea6f3ea..3a2c2498 100644 --- a/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml +++ b/how-to-use-azureml/automated-machine-learning/automl_env_mac.yml @@ -14,10 +14,13 @@ dependencies: - scikit-learn>=0.19.0,<=0.20.3 - pandas>=0.22.0,<0.23.0 - py-xgboost<=0.80 +- pyarrow>=0.11.0 - pip: # Required packages for AzureML execution, history, and data preparation. - - azureml-sdk[automl,explain] + - azureml-defaults + - azureml-train-automl - azureml-widgets + - azureml-explain-model - pandas_ml diff --git a/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb b/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb index 8827a394..64750a56 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.ipynb @@ -69,22 +69,17 @@ "metadata": {}, "outputs": [], "source": [ - "import json\n", "import logging\n", "\n", "from matplotlib import pyplot as plt\n", - "import numpy as np\n", "import pandas as pd\n", "import os\n", - "from sklearn import datasets\n", - "import azureml.dataprep as dprep\n", - "from sklearn.model_selection import train_test_split\n", "\n", "import azureml.core\n", "from azureml.core.experiment import Experiment\n", "from azureml.core.workspace import Workspace\n", - "from azureml.train.automl import AutoMLConfig\n", - "from azureml.train.automl.run import AutoMLRun" + "from azureml.core.dataset import Dataset\n", + "from azureml.train.automl import AutoMLConfig" ] }, { @@ -155,11 +150,12 @@ " # Create the cluster.\n", " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", " \n", - " # Can poll for a minimum number of nodes and for a specific timeout.\n", - " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", - " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", " \n", - " # For a more detailed view of current AmlCompute status, use get_status()." + "# For a more detailed view of current AmlCompute status, use get_status()." ] }, { @@ -200,11 +196,8 @@ "# Set compute target to AmlCompute\n", "conda_run_config.target = compute_target\n", "conda_run_config.environment.docker.enabled = True\n", - "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", - "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", - "\n", - "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy','py-xgboost<=0.80'])\n", + "cd = CondaDependencies.create(conda_packages=['numpy','py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd" ] }, @@ -224,11 +217,10 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_train.csv\"\n", - "dflow = dprep.read_csv(data, infer_column_types=True)\n", - "dflow.get_profile()\n", - "X_train = dflow.drop_columns(columns=['y'])\n", - "y_train = dflow.keep_columns(columns=['y'], validate_column_exists=True)\n", - "dflow.head()" + "dataset = Dataset.Tabular.from_delimited_files(data)\n", + "X_train = dataset.drop_columns(columns=['y'])\n", + "y_train = dataset.keep_columns(columns=['y'], validate=True)\n", + "dataset.take(5).to_pandas_dataframe()" ] }, { @@ -406,7 +398,7 @@ "def run(rawdata):\n", " try:\n", " data = json.loads(rawdata)['data']\n", - " data = numpy.array(data)\n", + " data = np.array(data)\n", " result = model.predict(data)\n", " except Exception as e:\n", " result = str(e)\n", @@ -443,7 +435,7 @@ "metadata": {}, "outputs": [], "source": [ - "for p in ['azureml-train-automl', 'azureml-sdk', 'azureml-core']:\n", + "for p in ['azureml-train-automl', 'azureml-core']:\n", " print('{}\\t{}'.format(p, dependencies[p]))" ] }, @@ -453,10 +445,8 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.conda_dependencies import CondaDependencies\n", - "\n", "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn','py-xgboost<=0.80'],\n", - " pip_packages=['azureml-sdk[automl]'])\n", + " pip_packages=['azureml-train-automl'])\n", "\n", "conda_env_file_name = 'myenv.yml'\n", "myenv.save_to_file('.', conda_env_file_name)" @@ -476,7 +466,7 @@ " content = cefr.read()\n", "\n", "with open(conda_env_file_name, 'w') as cefw:\n", - " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-sdk']))\n", + " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-train-automl']))\n", "\n", "# Substitute the actual model id in the script file.\n", "\n", @@ -618,8 +608,6 @@ "outputs": [], "source": [ "# Load the bank marketing datasets.\n", - "from sklearn.datasets import load_diabetes\n", - "from sklearn.model_selection import train_test_split\n", "from numpy import array" ] }, @@ -630,11 +618,10 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/bankmarketing_validate.csv\"\n", - "dflow = dprep.read_csv(data, infer_column_types=True)\n", - "dflow.get_profile()\n", - "X_test = dflow.drop_columns(columns=['y'])\n", - "y_test = dflow.keep_columns(columns=['y'], validate_column_exists=True)\n", - "dflow.head()" + "dataset = Dataset.Tabular.from_delimited_files(data)\n", + "X_test = dataset.drop_columns(columns=['y'])\n", + "y_test = dataset.keep_columns(columns=['y'], validate=True)\n", + "dataset.take(5).to_pandas_dataframe()" ] }, { diff --git a/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.yml b/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.yml index a46c905b..4c8a39ca 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.yml +++ b/how-to-use-azureml/automated-machine-learning/classification-bank-marketing/auto-ml-classification-bank-marketing.yml @@ -2,6 +2,8 @@ name: auto-ml-classification-bank-marketing dependencies: - pip: - azureml-sdk + - azureml-defaults + - azureml-explain-model - azureml-train-automl - azureml-widgets - matplotlib diff --git a/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb b/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb index 73c96856..952e9de4 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.ipynb @@ -74,14 +74,12 @@ "from matplotlib import pyplot as plt\n", "import pandas as pd\n", "import os\n", - "from sklearn.model_selection import train_test_split\n", - "import azureml.dataprep as dprep\n", "\n", "import azureml.core\n", "from azureml.core.experiment import Experiment\n", "from azureml.core.workspace import Workspace\n", - "from azureml.train.automl import AutoMLConfig\n", - "from azureml.train.automl.run import AutoMLRun" + "from azureml.core.dataset import Dataset\n", + "from azureml.train.automl import AutoMLConfig" ] }, { @@ -152,11 +150,12 @@ " # Create the cluster.\n", " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", " \n", - " # Can poll for a minimum number of nodes and for a specific timeout.\n", - " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", - " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", - " \n", - " # For a more detailed view of current AmlCompute status, use get_status()." + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "\n", + "# For a more detailed view of current AmlCompute status, use get_status()." ] }, { @@ -197,11 +196,8 @@ "# Set compute target to AmlCompute\n", "conda_run_config.target = compute_target\n", "conda_run_config.environment.docker.enabled = True\n", - "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", - "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", - "\n", - "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy','py-xgboost<=0.80'])\n", + "cd = CondaDependencies.create(conda_packages=['numpy','py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd" ] }, @@ -211,7 +207,7 @@ "source": [ "### Load Data\n", "\n", - "Here create the script to be run in azure compute for loading the data, load the credit card dataset into cards and store the Class column (y) in the y variable and store the remaining data in the x variable. Next split the data using train_test_split and return X_train and y_train for training the model." + "Here create the script to be run in azure compute for loading the data, load the credit card dataset into cards and store the Class column (y) in the y variable and store the remaining data in the x variable. Next split the data using random_split and return X_train and y_train for training the model." ] }, { @@ -221,10 +217,9 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/creditcard.csv\"\n", - "dflow = dprep.read_csv(data, infer_column_types=True)\n", - "dflow.get_profile()\n", - "X = dflow.drop_columns(columns=['Class'])\n", - "y = dflow.keep_columns(columns=['Class'], validate_column_exists=True)\n", + "dataset = Dataset.Tabular.from_delimited_files(data)\n", + "X = dataset.drop_columns(columns=['Class'])\n", + "y = dataset.keep_columns(columns=['Class'], validate=True)\n", "X_train, X_test = X.random_split(percentage=0.8, seed=223)\n", "y_train, y_test = y.random_split(percentage=0.8, seed=223)" ] @@ -447,7 +442,7 @@ "metadata": {}, "outputs": [], "source": [ - "for p in ['azureml-train-automl', 'azureml-sdk', 'azureml-core']:\n", + "for p in ['azureml-train-automl', 'azureml-core']:\n", " print('{}\\t{}'.format(p, dependencies[p]))" ] }, @@ -458,7 +453,7 @@ "outputs": [], "source": [ "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn','py-xgboost<=0.80'],\n", - " pip_packages=['azureml-sdk[automl]'])\n", + " pip_packages=['azureml-train-automl'])\n", "\n", "conda_env_file_name = 'myenv.yml'\n", "myenv.save_to_file('.', conda_env_file_name)" @@ -478,7 +473,7 @@ " content = cefr.read()\n", "\n", "with open(conda_env_file_name, 'w') as cefw:\n", - " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-sdk']))\n", + " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-train-automl']))\n", "\n", "# Substitute the actual model id in the script file.\n", "\n", diff --git a/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.yml b/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.yml index 14c8fe46..f4a3601e 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.yml +++ b/how-to-use-azureml/automated-machine-learning/classification-credit-card-fraud/auto-ml-classification-credit-card-fraud.yml @@ -2,6 +2,8 @@ name: auto-ml-classification-credit-card-fraud dependencies: - pip: - azureml-sdk + - azureml-defaults + - azureml-explain-model - azureml-train-automl - azureml-widgets - matplotlib diff --git a/how-to-use-azureml/automated-machine-learning/classification-with-deployment/auto-ml-classification-with-deployment.ipynb b/how-to-use-azureml/automated-machine-learning/classification-with-deployment/auto-ml-classification-with-deployment.ipynb index 2e00e9c3..3dd3b13f 100644 --- a/how-to-use-azureml/automated-machine-learning/classification-with-deployment/auto-ml-classification-with-deployment.ipynb +++ b/how-to-use-azureml/automated-machine-learning/classification-with-deployment/auto-ml-classification-with-deployment.ipynb @@ -297,7 +297,7 @@ "metadata": {}, "outputs": [], "source": [ - "for p in ['azureml-train-automl', 'azureml-sdk', 'azureml-core']:\n", + "for p in ['azureml-train-automl', 'azureml-core']:\n", " print('{}\\t{}'.format(p, dependencies[p]))" ] }, @@ -310,7 +310,7 @@ "from azureml.core.conda_dependencies import CondaDependencies\n", "\n", "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn','py-xgboost<=0.80'],\n", - " pip_packages=['azureml-sdk[automl]'])\n", + " pip_packages=['azureml-train-automl'])\n", "\n", "conda_env_file_name = 'myenv.yml'\n", "myenv.save_to_file('.', conda_env_file_name)" @@ -330,7 +330,7 @@ " content = cefr.read()\n", "\n", "with open(conda_env_file_name, 'w') as cefw:\n", - " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-sdk']))\n", + " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-train-automl']))\n", "\n", "# Substitute the actual model id in the script file.\n", "\n", diff --git a/how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.ipynb b/how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.ipynb new file mode 100644 index 00000000..39742e9b --- /dev/null +++ b/how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.ipynb @@ -0,0 +1,509 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/automated-machine-learning/dataprep-remote-execution/auto-ml-dataprep-remote-execution.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Automated Machine Learning\n", + "_**Load Data using `TabularDataset` for Remote Execution (AmlCompute)**_\n", + "\n", + "## Contents\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Data](#Data)\n", + "1. [Train](#Train)\n", + "1. [Results](#Results)\n", + "1. [Test](#Test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "In this example we showcase how you can use AzureML Dataset to load data for AutoML.\n", + "\n", + "Make sure you have executed the [configuration](../../../configuration.ipynb) before running this notebook.\n", + "\n", + "In this notebook you will learn how to:\n", + "1. Create a `TabularDataset` pointing to the training data.\n", + "2. Pass the `TabularDataset` to AutoML for a remote run." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As part of the setup you have already created an Azure ML `Workspace` object. For AutoML you will need to create an `Experiment` object, which is a named object in a `Workspace` used to run experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import logging\n", + "\n", + "import pandas as pd\n", + "\n", + "import azureml.core\n", + "from azureml.core.experiment import Experiment\n", + "from azureml.core.workspace import Workspace\n", + "from azureml.core.dataset import Dataset\n", + "from azureml.train.automl import AutoMLConfig" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ws = Workspace.from_config()\n", + "\n", + "# choose a name for experiment\n", + "experiment_name = 'automl-dataset-remote-bai'\n", + "# project folder\n", + "project_folder = './sample_projects/automl-dataprep-remote-bai'\n", + " \n", + "experiment = Experiment(ws, experiment_name)\n", + " \n", + "output = {}\n", + "output['SDK version'] = azureml.core.VERSION\n", + "output['Subscription ID'] = ws.subscription_id\n", + "output['Workspace Name'] = ws.name\n", + "output['Resource Group'] = ws.resource_group\n", + "output['Location'] = ws.location\n", + "output['Project Directory'] = project_folder\n", + "output['Experiment Name'] = experiment.name\n", + "pd.set_option('display.max_colwidth', -1)\n", + "outputDf = pd.DataFrame(data = output, index = [''])\n", + "outputDf.T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# The data referenced here was a 1MB simple random sample of the Chicago Crime data into a local temporary directory.\n", + "example_data = 'https://dprepdata.blob.core.windows.net/demo/crime0-random.csv'\n", + "dataset = Dataset.Tabular.from_delimited_files(example_data)\n", + "dataset.take(5).to_pandas_dataframe()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Review the data\n", + "\n", + "You can peek the result of a `TabularDataset` at any range using `skip(i)` and `take(j).to_pandas_dataframe()`. Doing so evaluates only `j` records, which makes it fast even against large datasets.\n", + "\n", + "`TabularDataset` objects are immutable and are composed of a list of subsetting transformations (optional)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "X = dataset.drop_columns(columns=['Primary Type', 'FBI Code'])\n", + "y = dataset.keep_columns(columns=['Primary Type'], validate=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train\n", + "\n", + "This creates a general AutoML settings object applicable for both local and remote runs." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "automl_settings = {\n", + " \"iteration_timeout_minutes\" : 10,\n", + " \"iterations\" : 2,\n", + " \"primary_metric\" : 'AUC_weighted',\n", + " \"preprocess\" : True,\n", + " \"verbosity\" : logging.INFO\n", + "}" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create or Attach an AmlCompute cluster" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import AmlCompute\n", + "from azureml.core.compute import ComputeTarget\n", + "\n", + "# Choose a name for your cluster.\n", + "amlcompute_cluster_name = \"automlc2\"\n", + "\n", + "found = False\n", + "\n", + "# Check if this compute target already exists in the workspace.\n", + "\n", + "cts = ws.compute_targets\n", + "if amlcompute_cluster_name in cts and cts[amlcompute_cluster_name].type == 'AmlCompute':\n", + " found = True\n", + " print('Found existing compute target.')\n", + " compute_target = cts[amlcompute_cluster_name]\n", + "\n", + "if not found:\n", + " print('Creating a new compute target...')\n", + " provisioning_config = AmlCompute.provisioning_configuration(vm_size = \"STANDARD_D2_V2\", # for GPU, use \"STANDARD_NC6\"\n", + " #vm_priority = 'lowpriority', # optional\n", + " max_nodes = 6)\n", + "\n", + " # Create the cluster.\\n\",\n", + " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", + "\n", + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "\n", + "# For a more detailed view of current AmlCompute status, use get_status()." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import RunConfiguration\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "import pkg_resources\n", + "\n", + "# create a new RunConfig object\n", + "conda_run_config = RunConfiguration(framework=\"python\")\n", + "\n", + "# Set compute target to AmlCompute\n", + "conda_run_config.target = compute_target\n", + "conda_run_config.environment.docker.enabled = True\n", + "\n", + "cd = CondaDependencies.create(conda_packages=['numpy','py-xgboost<=0.80'])\n", + "conda_run_config.environment.python.conda_dependencies = cd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Pass Data with `TabularDataset` Objects\n", + "\n", + "The `TabularDataset` objects captured above can also be passed to the `submit` method for a remote run. AutoML will serialize the `TabularDataset` object and send it to the remote compute target. The `TabularDataset` will not be evaluated locally." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "automl_config = AutoMLConfig(task = 'classification',\n", + " debug_log = 'automl_errors.log',\n", + " path = project_folder,\n", + " run_configuration=conda_run_config,\n", + " X = X,\n", + " y = y,\n", + " **automl_settings)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_run = experiment.submit(automl_config, show_output = True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_run" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Pre-process cache cleanup\n", + "The preprocess data gets cache at user default file store. When the run is completed the cache can be cleaned by running below cell" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "remote_run.clean_preprocessor_cache()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Cancelling Runs\n", + "You can cancel ongoing remote runs using the `cancel` and `cancel_iteration` functions." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Cancel the ongoing experiment and stop scheduling new iterations.\n", + "# remote_run.cancel()\n", + "\n", + "# Cancel iteration 1 and move onto iteration 2.\n", + "# remote_run.cancel_iteration(1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Results" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Widget for Monitoring Runs\n", + "\n", + "The widget will first report a \"loading\" status while running the first iteration. After completing the first iteration, an auto-updating graph and table will be shown. The widget will refresh once per minute, so you should see the graph update as child runs complete.\n", + "\n", + "**Note:** The widget displays a link at the bottom. Use this link to open a web interface to explore the individual run details." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.widgets import RunDetails\n", + "RunDetails(remote_run).show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Retrieve All Child Runs\n", + "You can also use SDK methods to fetch all the child runs and see individual metrics that we log." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "children = list(remote_run.get_children())\n", + "metricslist = {}\n", + "for run in children:\n", + " properties = run.get_properties()\n", + " metrics = {k: v for k, v in run.get_metrics().items() if isinstance(v, float)}\n", + " metricslist[int(properties['iteration'])] = metrics\n", + " \n", + "rundata = pd.DataFrame(metricslist).sort_index(1)\n", + "rundata" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Retrieve the Best Model\n", + "\n", + "Below we select the best pipeline from our iterations. The `get_output` method returns the best run and the fitted model. Overloads on `get_output` allow you to retrieve the best run and fitted model for *any* logged metric or for a particular *iteration*." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "best_run, fitted_model = remote_run.get_output()\n", + "print(best_run)\n", + "print(fitted_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Best Model Based on Any Other Metric\n", + "Show the run and the model that has the smallest `log_loss` value:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "lookup_metric = \"log_loss\"\n", + "best_run, fitted_model = remote_run.get_output(metric = lookup_metric)\n", + "print(best_run)\n", + "print(fitted_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Model from a Specific Iteration\n", + "Show the run and the model from the first iteration:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "iteration = 0\n", + "best_run, fitted_model = remote_run.get_output(iteration = iteration)\n", + "print(best_run)\n", + "print(fitted_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Test\n", + "\n", + "#### Load Test Data\n", + "For the test data, it should have the same preparation step as the train data. Otherwise it might get failed at the preprocessing step." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "dataset_test = Dataset.Tabular.from_delimited_files(path='https://dprepdata.blob.core.windows.net/demo/crime0-test.csv')\n", + "\n", + "df_test = dataset_test.to_pandas_dataframe()\n", + "df_test = df_test[pd.notnull(df_test['Primary Type'])]\n", + "\n", + "y_test = df_test[['Primary Type']]\n", + "X_test = df_test.drop(['Primary Type', 'FBI Code'], axis=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Testing Our Best Fitted Model\n", + "We will use confusion matrix to see how our model works." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas_ml import ConfusionMatrix\n", + "\n", + "ypred = fitted_model.predict(X_test)\n", + "\n", + "cm = ConfusionMatrix(y_test['Primary Type'], ypred)\n", + "\n", + "print(cm)\n", + "\n", + "cm.plot()" + ] + } + ], + "metadata": { + "authors": [ + { + "name": "savitam" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.yml b/how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.yml new file mode 100644 index 00000000..aa6e4e65 --- /dev/null +++ b/how-to-use-azureml/automated-machine-learning/dataset-remote-execution/auto-ml-dataset-remote-execution.yml @@ -0,0 +1,10 @@ +name: auto-ml-dataset-remote-execution +dependencies: +- pip: + - azureml-sdk + - azureml-defaults + - azureml-explain-model + - azureml-train-automl + - azureml-widgets + - matplotlib + - pandas_ml diff --git a/how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.ipynb b/how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.ipynb new file mode 100644 index 00000000..03499dad --- /dev/null +++ b/how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.ipynb @@ -0,0 +1,402 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/automated-machine-learning/dataprep/auto-ml-dataprep.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Automated Machine Learning\n", + "_**Load Data using `TabularDataset` for Local Execution**_\n", + "\n", + "## Contents\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + "1. [Data](#Data)\n", + "1. [Train](#Train)\n", + "1. [Results](#Results)\n", + "1. [Test](#Test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "In this example we showcase how you can use AzureML Dataset to load data for AutoML.\n", + "\n", + "Make sure you have executed the [configuration](../../../configuration.ipynb) before running this notebook.\n", + "\n", + "In this notebook you will learn how to:\n", + "1. Create a `TabularDataset` pointing to the training data.\n", + "2. Pass the `TabularDataset` to AutoML for a local run." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As part of the setup you have already created an Azure ML `Workspace` object. For AutoML you will need to create an `Experiment` object, which is a named object in a `Workspace` used to run experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import logging\n", + "\n", + "import pandas as pd\n", + "\n", + "import azureml.core\n", + "from azureml.core.experiment import Experiment\n", + "from azureml.core.workspace import Workspace\n", + "from azureml.core.dataset import Dataset\n", + "from azureml.train.automl import AutoMLConfig" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ws = Workspace.from_config()\n", + " \n", + "# choose a name for experiment\n", + "experiment_name = 'automl-dataset-local'\n", + "# project folder\n", + "project_folder = './sample_projects/automl-dataset-local'\n", + " \n", + "experiment = Experiment(ws, experiment_name)\n", + " \n", + "output = {}\n", + "output['SDK version'] = azureml.core.VERSION\n", + "output['Subscription ID'] = ws.subscription_id\n", + "output['Workspace Name'] = ws.name\n", + "output['Resource Group'] = ws.resource_group\n", + "output['Location'] = ws.location\n", + "output['Project Directory'] = project_folder\n", + "output['Experiment Name'] = experiment.name\n", + "pd.set_option('display.max_colwidth', -1)\n", + "outputDf = pd.DataFrame(data = output, index = [''])\n", + "outputDf.T" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Data" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# The data referenced here was a 1MB simple random sample of the Chicago Crime data into a local temporary directory.\n", + "example_data = 'https://dprepdata.blob.core.windows.net/demo/crime0-random.csv'\n", + "dataset = Dataset.Tabular.from_delimited_files(example_data)\n", + "dataset.take(5).to_pandas_dataframe()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Review the data\n", + "\n", + "You can peek the result of a `TabularDataset` at any range using `skip(i)` and `take(j).to_pandas_dataframe()`. Doing so evaluates only `j` records, which makes it fast even against large datasets.\n", + "\n", + "`TabularDataset` objects are immutable and are composed of a list of subsetting transformations (optional)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "X = dataset.drop_columns(columns=['Primary Type', 'FBI Code'])\n", + "y = dataset.keep_columns(columns=['Primary Type'], validate=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train\n", + "\n", + "This creates a general AutoML settings object applicable for both local and remote runs." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "automl_settings = {\n", + " \"iteration_timeout_minutes\" : 10,\n", + " \"iterations\" : 2,\n", + " \"primary_metric\" : 'AUC_weighted',\n", + " \"preprocess\" : True,\n", + " \"verbosity\" : logging.INFO\n", + "}" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Pass Data with `TabularDataset` Objects\n", + "\n", + "The `TabularDataset` objects captured above can be passed to the `submit` method for a local run. AutoML will retrieve the results from the `TabularDataset` for model training." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "automl_config = AutoMLConfig(task = 'classification',\n", + " debug_log = 'automl_errors.log',\n", + " X = X,\n", + " y = y,\n", + " **automl_settings)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "local_run = experiment.submit(automl_config, show_output = True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "local_run" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Results" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Widget for Monitoring Runs\n", + "\n", + "The widget will first report a \"loading\" status while running the first iteration. After completing the first iteration, an auto-updating graph and table will be shown. The widget will refresh once per minute, so you should see the graph update as child runs complete.\n", + "\n", + "**Note:** The widget displays a link at the bottom. Use this link to open a web interface to explore the individual run details." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.widgets import RunDetails\n", + "RunDetails(local_run).show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Retrieve All Child Runs\n", + "You can also use SDK methods to fetch all the child runs and see individual metrics that we log." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "children = list(local_run.get_children())\n", + "metricslist = {}\n", + "for run in children:\n", + " properties = run.get_properties()\n", + " metrics = {k: v for k, v in run.get_metrics().items() if isinstance(v, float)}\n", + " metricslist[int(properties['iteration'])] = metrics\n", + " \n", + "rundata = pd.DataFrame(metricslist).sort_index(1)\n", + "rundata" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Retrieve the Best Model\n", + "\n", + "Below we select the best pipeline from our iterations. The `get_output` method returns the best run and the fitted model. Overloads on `get_output` allow you to retrieve the best run and fitted model for *any* logged metric or for a particular *iteration*." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "best_run, fitted_model = local_run.get_output()\n", + "print(best_run)\n", + "print(fitted_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Best Model Based on Any Other Metric\n", + "Show the run and the model that has the smallest `log_loss` value:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "lookup_metric = \"log_loss\"\n", + "best_run, fitted_model = local_run.get_output(metric = lookup_metric)\n", + "print(best_run)\n", + "print(fitted_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Model from a Specific Iteration\n", + "Show the run and the model from the first iteration:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "iteration = 0\n", + "best_run, fitted_model = local_run.get_output(iteration = iteration)\n", + "print(best_run)\n", + "print(fitted_model)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Test\n", + "\n", + "#### Load Test Data\n", + "For the test data, it should have the same preparation step as the train data. Otherwise it might get failed at the preprocessing step." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "dataset_test = Dataset.Tabular.from_delimited_files(path='https://dprepdata.blob.core.windows.net/demo/crime0-test.csv')\n", + "\n", + "df_test = dataset_test.to_pandas_dataframe()\n", + "df_test = df_test[pd.notnull(df_test['Primary Type'])]\n", + "\n", + "y_test = df_test[['Primary Type']]\n", + "X_test = df_test.drop(['Primary Type', 'FBI Code'], axis=1)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Testing Our Best Fitted Model\n", + "We will use confusion matrix to see how our model works." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pandas_ml import ConfusionMatrix\n", + "\n", + "ypred = fitted_model.predict(X_test)\n", + "\n", + "cm = ConfusionMatrix(y_test['Primary Type'], ypred)\n", + "\n", + "print(cm)\n", + "\n", + "cm.plot()" + ] + } + ], + "metadata": { + "authors": [ + { + "name": "savitam" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.yml b/how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.yml new file mode 100644 index 00000000..87242fe5 --- /dev/null +++ b/how-to-use-azureml/automated-machine-learning/dataset/auto-ml-dataset.yml @@ -0,0 +1,8 @@ +name: auto-ml-dataset +dependencies: +- pip: + - azureml-sdk + - azureml-train-automl + - azureml-widgets + - matplotlib + - pandas_ml diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb index 12d6ae16..042ee804 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-energy-demand/auto-ml-forecasting-energy-demand.ipynb @@ -231,6 +231,7 @@ "automl_config = AutoMLConfig(task='forecasting',\n", " debug_log='automl_nyc_energy_errors.log',\n", " primary_metric='normalized_root_mean_squared_error',\n", + " blacklist_models = ['ExtremeRandomTrees'],\n", " iterations=10,\n", " iteration_timeout_minutes=5,\n", " X=X_train,\n", @@ -481,7 +482,7 @@ "automl_config_lags = AutoMLConfig(task='forecasting',\n", " debug_log='automl_nyc_energy_errors.log',\n", " primary_metric='normalized_root_mean_squared_error',\n", - " blacklist_models=['ElasticNet'],\n", + " blacklist_models=['ElasticNet','ExtremeRandomTrees','GradientBoosting'],\n", " iterations=10,\n", " iteration_timeout_minutes=10,\n", " X=X_train,\n", diff --git a/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb b/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb index 629edb02..23c13fc9 100644 --- a/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb +++ b/how-to-use-azureml/automated-machine-learning/forecasting-orange-juice-sales/auto-ml-forecasting-orange-juice-sales.ipynb @@ -244,7 +244,8 @@ "|**X**|Training matrix of features as a pandas DataFrame, shape = [n_training_samples, n_features]|\n", "|**y**|Target values as a numpy.ndarray, shape = [n_training_samples, ]|\n", "|**n_cross_validations**|Number of cross-validation folds to use for model/pipeline selection|\n", - "|**enable_ensembling**|Allow AutoML to create ensembles of the best performing models\n", + "|**enable_voting_ensemble**|Allow AutoML to create a Voting ensemble of the best performing models\n", + "|**enable_stack_ensemble**|Allow AutoML to create a Stack ensemble of the best performing models\n", "|**debug_log**|Log file path for writing debugging information\n", "|**path**|Relative path to the project folder. AutoML stores configuration files for the experiment under this folder. You can specify a new empty folder.|\n", "|**time_column_name**|Name of the datetime column in the input data|\n", @@ -273,7 +274,8 @@ " X=X_train,\n", " y=y_train,\n", " n_cross_validations=3,\n", - " enable_ensembling=False,\n", + " enable_voting_ensemble=False,\n", + " enable_stack_ensemble=False,\n", " path=project_folder,\n", " verbosity=logging.INFO,\n", " **time_series_settings)" @@ -663,10 +665,10 @@ "conda_env_file_name = 'fcast_env.yml'\n", "\n", "dependencies = ml_run.get_run_sdk_dependencies(iteration = best_iteration)\n", - "for p in ['azureml-train-automl', 'azureml-sdk', 'azureml-core']:\n", + "for p in ['azureml-train-automl', 'azureml-core']:\n", " print('{}\\t{}'.format(p, dependencies[p]))\n", "\n", - "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn'], pip_packages=['azureml-sdk[automl]'])\n", + "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn'], pip_packages=['azureml-train-automl'])\n", "\n", "myenv.save_to_file('.', conda_env_file_name)" ] @@ -688,7 +690,7 @@ " content = cefr.read()\n", "\n", "with open(conda_env_file_name, 'w') as cefw:\n", - " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-sdk']))\n", + " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-train-automl']))\n", "\n", "# Substitute the actual model id in the script file.\n", "\n", diff --git a/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb b/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb index 4868b9ea..bdf37d20 100644 --- a/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb +++ b/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.ipynb @@ -70,13 +70,12 @@ "import numpy as np\n", "import pandas as pd\n", "import os\n", - "from sklearn.model_selection import train_test_split\n", - "import azureml.dataprep as dprep\n", " \n", "\n", "import azureml.core\n", "from azureml.core.experiment import Experiment\n", "from azureml.core.workspace import Workspace\n", + "from azureml.core.dataset import Dataset\n", "from azureml.train.automl import AutoMLConfig" ] }, @@ -147,11 +146,12 @@ " # Create the cluster.\n", " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", " \n", - " # Can poll for a minimum number of nodes and for a specific timeout.\n", - " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", - " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", " \n", - " # For a more detailed view of current AmlCompute status, use get_status()." + "# For a more detailed view of current AmlCompute status, use get_status()." ] }, { @@ -192,11 +192,8 @@ "# Set compute target to AmlCompute\n", "conda_run_config.target = compute_target\n", "conda_run_config.environment.docker.enabled = True\n", - "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", - "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", - "\n", - "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy'])\n", + "cd = CondaDependencies.create(conda_packages=['numpy', 'py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd" ] }, @@ -206,7 +203,7 @@ "source": [ "### Load Data\n", "\n", - "Here create the script to be run in azure compute for loading the data, load the concrete strength dataset into the X and y variables. Next, split the data using train_test_split and return X_train and y_train for training the model. Finally, return X_train and y_train for training the model." + "Here create the script to be run in azure compute for loading the data, load the concrete strength dataset into the X and y variables. Next, split the data using random_split and return X_train and y_train for training the model. Finally, return X_train and y_train for training the model." ] }, { @@ -216,13 +213,12 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/compresive_strength_concrete.csv\"\n", - "dflow = dprep.read_csv(data, infer_column_types=True)\n", - "dflow.get_profile()\n", - "X = dflow.drop_columns(columns=['CONCRETE'])\n", - "y = dflow.keep_columns(columns=['CONCRETE'], validate_column_exists=True)\n", + "dataset = Dataset.Tabular.from_delimited_files(data)\n", + "X = dataset.drop_columns(columns=['CONCRETE'])\n", + "y = dataset.keep_columns(columns=['CONCRETE'], validate=True)\n", "X_train, X_test = X.random_split(percentage=0.8, seed=223)\n", "y_train, y_test = y.random_split(percentage=0.8, seed=223) \n", - "dflow.head()" + "dataset.take(5).to_pandas_dataframe()" ] }, { @@ -484,7 +480,7 @@ "metadata": {}, "outputs": [], "source": [ - "for p in ['azureml-train-automl', 'azureml-sdk', 'azureml-core']:\n", + "for p in ['azureml-train-automl', 'azureml-core']:\n", " print('{}\\t{}'.format(p, dependencies[p]))" ] }, @@ -494,9 +490,7 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.conda_dependencies import CondaDependencies\n", - "\n", - "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn'], pip_packages=['azureml-sdk[automl]'])\n", + "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn','py-xgboost==0.80'], pip_packages=['azureml-train-automl'])\n", "\n", "conda_env_file_name = 'myenv.yml'\n", "myenv.save_to_file('.', conda_env_file_name)" @@ -516,7 +510,7 @@ " content = cefr.read()\n", "\n", "with open(conda_env_file_name, 'w') as cefw:\n", - " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-sdk']))\n", + " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-train-automl']))\n", "\n", "# Substitute the actual model id in the script file.\n", "\n", diff --git a/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.yml b/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.yml index eb39aa20..e29c5b3e 100644 --- a/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.yml +++ b/how-to-use-azureml/automated-machine-learning/regression-concrete-strength/auto-ml-regression-concrete-strength.yml @@ -2,6 +2,8 @@ name: auto-ml-regression-concrete-strength dependencies: - pip: - azureml-sdk + - azureml-defaults + - azureml-explain-model - azureml-train-automl - azureml-widgets - matplotlib diff --git a/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb b/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb index cb0dd394..84d88ed4 100644 --- a/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb +++ b/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.ipynb @@ -70,13 +70,12 @@ "import numpy as np\n", "import pandas as pd\n", "import os\n", - "from sklearn.model_selection import train_test_split\n", - "import azureml.dataprep as dprep\n", " \n", "\n", "import azureml.core\n", "from azureml.core.experiment import Experiment\n", "from azureml.core.workspace import Workspace\n", + "from azureml.core.dataset import Dataset\n", "from azureml.train.automl import AutoMLConfig" ] }, @@ -147,11 +146,12 @@ " # Create the cluster.\n", " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", " \n", - " # Can poll for a minimum number of nodes and for a specific timeout.\n", - " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", - " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", " \n", - " # For a more detailed view of current AmlCompute status, use get_status()." + "# For a more detailed view of current AmlCompute status, use get_status()." ] }, { @@ -192,11 +192,8 @@ "# Set compute target to AmlCompute\n", "conda_run_config.target = compute_target\n", "conda_run_config.environment.docker.enabled = True\n", - "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", - "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", - "\n", - "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy'])\n", + "cd = CondaDependencies.create(conda_packages=['numpy', 'py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd" ] }, @@ -206,7 +203,7 @@ "source": [ "### Load Data\n", "\n", - "Here create the script to be run in azure compute for loading the data, load the hardware dataset into the X and y variables. Next split the data using train_test_split and return X_train and y_train for training the model." + "Here create the script to be run in azure compute for loading the data, load the hardware dataset into the X and y variables. Next split the data using random_split and return X_train and y_train for training the model." ] }, { @@ -216,13 +213,12 @@ "outputs": [], "source": [ "data = \"https://automlsamplenotebookdata.blob.core.windows.net/automl-sample-notebook-data/machineData.csv\"\n", - "dflow = dprep.read_csv(data, infer_column_types=True)\n", - "dflow.get_profile()\n", - "X = dflow.drop_columns(columns=['ERP'])\n", - "y = dflow.keep_columns(columns=['ERP'], validate_column_exists=True)\n", + "dataset = Dataset.Tabular.from_delimited_files(data)\n", + "X = dataset.drop_columns(columns=['ERP'])\n", + "y = dataset.keep_columns(columns=['ERP'], validate=True)\n", "X_train, X_test = X.random_split(percentage=0.8, seed=223)\n", - "y_train, y_test = y.random_split(percentage=0.8, seed=223) \n", - "dflow.head()" + "y_train, y_test = y.random_split(percentage=0.8, seed=223)\n", + "dataset.take(5).to_pandas_dataframe()" ] }, { @@ -502,7 +498,7 @@ "metadata": {}, "outputs": [], "source": [ - "for p in ['azureml-train-automl', 'azureml-sdk', 'azureml-core']:\n", + "for p in ['azureml-train-automl', 'azureml-core']:\n", " print('{}\\t{}'.format(p, dependencies[p]))" ] }, @@ -512,7 +508,7 @@ "metadata": {}, "outputs": [], "source": [ - "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn'], pip_packages=['azureml-sdk[automl]'])\n", + "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn','py-xgboost==0.80'], pip_packages=['azureml-train-automl'])\n", "\n", "conda_env_file_name = 'myenv.yml'\n", "myenv.save_to_file('.', conda_env_file_name)" @@ -532,7 +528,7 @@ " content = cefr.read()\n", "\n", "with open(conda_env_file_name, 'w') as cefw:\n", - " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-sdk']))\n", + " cefw.write(content.replace(azureml.core.VERSION, dependencies['azureml-train-automl']))\n", "\n", "# Substitute the actual model id in the script file.\n", "\n", diff --git a/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.yml b/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.yml index ddc29fa8..94323586 100644 --- a/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.yml +++ b/how-to-use-azureml/automated-machine-learning/regression-hardware-performance/auto-ml-regression-hardware-performance.yml @@ -2,6 +2,8 @@ name: auto-ml-regression-hardware-performance dependencies: - pip: - azureml-sdk + - azureml-defaults + - azureml-explain-model - azureml-train-automl - azureml-widgets - matplotlib diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb index 5ca334e9..32c06d56 100644 --- a/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.ipynb @@ -73,10 +73,7 @@ "source": [ "import logging\n", "import os\n", - "import csv\n", "\n", - "from matplotlib import pyplot as plt\n", - "import numpy as np\n", "import pandas as pd\n", "from sklearn import datasets\n", "from sklearn.model_selection import train_test_split\n", @@ -84,8 +81,8 @@ "import azureml.core\n", "from azureml.core.experiment import Experiment\n", "from azureml.core.workspace import Workspace\n", - "from azureml.train.automl import AutoMLConfig\n", - "import azureml.dataprep as dprep" + "from azureml.core.dataset import Dataset\n", + "from azureml.train.automl import AutoMLConfig" ] }, { @@ -137,7 +134,7 @@ "from azureml.core.compute import ComputeTarget\n", "\n", "# Choose a name for your cluster.\n", - "amlcompute_cluster_name = \"cpu-cluster\"\n", + "amlcompute_cluster_name = \"automlc2\"\n", "\n", "found = False\n", "# Check if this compute target already exists in the workspace.\n", @@ -156,11 +153,12 @@ " # Create the cluster.\\n\",\n", " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", "\n", - " # Can poll for a minimum number of nodes and for a specific timeout.\n", - " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", - " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", "\n", - " # For a more detailed view of current AmlCompute status, use get_status()." + "# For a more detailed view of current AmlCompute status, use get_status()." ] }, { @@ -236,11 +234,8 @@ "# Set compute target to AmlCompute\n", "conda_run_config.target = compute_target\n", "conda_run_config.environment.docker.enabled = True\n", - "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", - "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", - "\n", - "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy','py-xgboost<=0.80'])\n", + "cd = CondaDependencies.create(conda_packages=['numpy','py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd" ] }, @@ -248,9 +243,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Dprep reference\n", + "### Creating a TabularDataset\n", "\n", - "Defined X and y as dprep references, which are passed to automated machine learning in the AutoMLConfig." + "Defined X and y as `TabularDataset`s, which are passed to automated machine learning in the AutoMLConfig." ] }, { @@ -259,8 +254,8 @@ "metadata": {}, "outputs": [], "source": [ - "X = dprep.read_csv(path=ds.path('irisdata/X_train.csv'), infer_column_types=True)\n", - "y = dprep.read_csv(path=ds.path('irisdata/y_train.csv'), infer_column_types=True)" + "X = Dataset.Tabular.from_delimited_files(path=ds.path('irisdata/X_train.csv'))\n", + "y = Dataset.Tabular.from_delimited_files(path=ds.path('irisdata/y_train.csv'))" ] }, { @@ -498,8 +493,7 @@ " res_path = 'onnx_resource.json'\n", " run.download_file(name=constants.MODEL_RESOURCE_PATH_ONNX, output_file_path=res_path)\n", " with open(res_path) as f:\n", - " onnx_res = json.load(f)\n", - " return onnx_res\n", + " return json.load(f)\n", "\n", "if onnxrt_present and python_version_compatible: \n", " mdl_bytes = onnx_mdl.SerializeToString()\n", diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml index 6beced4e..22bad59a 100644 --- a/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute-with-onnx/auto-ml-remote-amlcompute-with-onnx.yml @@ -2,6 +2,8 @@ name: auto-ml-remote-amlcompute-with-onnx dependencies: - pip: - azureml-sdk + - azureml-defaults + - azureml-explain-model - azureml-train-automl - azureml-widgets - matplotlib diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb b/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb index 82d2b610..c3591826 100644 --- a/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.ipynb @@ -74,7 +74,6 @@ "source": [ "import logging\n", "import os\n", - "import csv\n", "\n", "from matplotlib import pyplot as plt\n", "import numpy as np\n", @@ -84,8 +83,8 @@ "import azureml.core\n", "from azureml.core.experiment import Experiment\n", "from azureml.core.workspace import Workspace\n", - "from azureml.train.automl import AutoMLConfig\n", - "import azureml.dataprep as dprep" + "from azureml.core.dataset import Dataset\n", + "from azureml.train.automl import AutoMLConfig" ] }, { @@ -137,7 +136,7 @@ "from azureml.core.compute import ComputeTarget\n", "\n", "# Choose a name for your cluster.\n", - "amlcompute_cluster_name = \"cpu-cluster\"\n", + "amlcompute_cluster_name = \"automlc2\"\n", "\n", "found = False\n", "# Check if this compute target already exists in the workspace.\n", @@ -156,11 +155,12 @@ " # Create the cluster.\\n\",\n", " compute_target = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", "\n", - " # Can poll for a minimum number of nodes and for a specific timeout.\n", - " # If no min_node_count is provided, it will use the scale settings for the cluster.\n", - " compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "print('Checking cluster status...')\n", + "# Can poll for a minimum number of nodes and for a specific timeout.\n", + "# If no min_node_count is provided, it will use the scale settings for the cluster.\n", + "compute_target.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", "\n", - " # For a more detailed view of current AmlCompute status, use get_status()." + "# For a more detailed view of current AmlCompute status, use get_status()." ] }, { @@ -210,11 +210,8 @@ "# Set compute target to AmlCompute\n", "conda_run_config.target = compute_target\n", "conda_run_config.environment.docker.enabled = True\n", - "conda_run_config.environment.docker.base_image = azureml.core.runconfig.DEFAULT_CPU_IMAGE\n", "\n", - "dprep_dependency = 'azureml-dataprep==' + pkg_resources.get_distribution(\"azureml-dataprep\").version\n", - "\n", - "cd = CondaDependencies.create(pip_packages=['azureml-sdk[automl]', dprep_dependency], conda_packages=['numpy','py-xgboost<=0.80'])\n", + "cd = CondaDependencies.create(conda_packages=['numpy','py-xgboost<=0.80'])\n", "conda_run_config.environment.python.conda_dependencies = cd" ] }, @@ -222,9 +219,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Dprep reference\n", + "### Creating TabularDataset\n", "\n", - "Defined X and y as dprep references, which are passed to automated machine learning in the AutoMLConfig." + "Defined X and y as `TabularDataset`s, which are passed to Automated ML in the AutoMLConfig. `from_delimited_files` by default sets the `infer_column_types` to true, which will infer the columns type automatically. If you do wish to manually set the column types, you can set the `set_column_types` argument to manually set the type of each columns." ] }, { @@ -233,8 +230,8 @@ "metadata": {}, "outputs": [], "source": [ - "X = dprep.read_csv(path=ds.path('digitsdata/X_train.csv'), infer_column_types=True)\n", - "y = dprep.read_csv(path=ds.path('digitsdata/y_train.csv'), infer_column_types=True)" + "X = Dataset.Tabular.from_delimited_files(path=ds.path('digitsdata/X_train.csv'))\n", + "y = Dataset.Tabular.from_delimited_files(path=ds.path('digitsdata/y_train.csv'))" ] }, { diff --git a/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.yml b/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.yml index 41b4f214..6ec4511a 100644 --- a/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.yml +++ b/how-to-use-azureml/automated-machine-learning/remote-amlcompute/auto-ml-remote-amlcompute.yml @@ -2,6 +2,8 @@ name: auto-ml-remote-amlcompute dependencies: - pip: - azureml-sdk + - azureml-defaults + - azureml-explain-model - azureml-train-automl - azureml-widgets - matplotlib diff --git a/how-to-use-azureml/automated-machine-learning/sql-server/setup/auto-ml-sql-setup.ipynb b/how-to-use-azureml/automated-machine-learning/sql-server/setup/auto-ml-sql-setup.ipynb index 8bf4e0d3..cb227bcd 100644 --- a/how-to-use-azureml/automated-machine-learning/sql-server/setup/auto-ml-sql-setup.ipynb +++ b/how-to-use-azureml/automated-machine-learning/sql-server/setup/auto-ml-sql-setup.ipynb @@ -342,7 +342,6 @@ " n_cross_validations = n_cross_validations, \r\n", " preprocess = preprocess,\r\n", " verbosity = logging.INFO, \r\n", - " enable_ensembling = False,\r\n", " X = X_train, \r\n", " y = y_train, \r\n", " path = project_folder,\r\n", diff --git a/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb b/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb index 04223832..23a79fda 100644 --- a/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb +++ b/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-01.ipynb @@ -314,25 +314,18 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Load Training Data Using DataPrep" + "## Load Training Data Using Dataset" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Automated ML takes a Dataflow as input.\n", + "Automated ML takes a `TabularDataset` as input.\n", "\n", - "If you are familiar with Pandas and have done your data preparation work in Pandas already, you can use the `read_pandas_dataframe` method in dprep to convert the DataFrame to a Dataflow.\n", - "```python\n", - "df = pd.read_csv(...)\n", - "# apply some transforms\n", - "dprep.read_pandas_dataframe(df, temp_folder='/path/accessible/by/both/driver/and/worker')\n", - "```\n", + "You are free to use the data preparation libraries/tools of your choice to do the require preparation and once you are done, you can write it to a datastore and create a TabularDataset from it.\n", "\n", - "If you just need to ingest data without doing any preparation, you can directly use AzureML Data Prep (Data Prep) to do so. The code below demonstrates this scenario. Data Prep also has data preparation capabilities, we have many [sample notebooks](https://github.com/Microsoft/AMLDataPrepDocs) demonstrating the capabilities.\n", - "\n", - "You will get the datastore you registered previously and pass it to Data Prep for reading. The data comes from the digits dataset: `sklearn.datasets.load_digits()`. `DataPath` points to a specific location within a datastore. " + "You will get the datastore you registered previously and pass it to Dataset for reading. The data comes from the digits dataset: `sklearn.datasets.load_digits()`. `DataPath` points to a specific location within a datastore. " ] }, { @@ -341,21 +334,21 @@ "metadata": {}, "outputs": [], "source": [ - "import azureml.dataprep as dprep\n", + "from azureml.core.dataset import Dataset\n", "from azureml.data.datapath import DataPath\n", "\n", "datastore = Datastore.get(workspace = ws, datastore_name = datastore_name)\n", "\n", - "X_train = dprep.read_csv(datastore.path('X.csv'))\n", - "y_train = dprep.read_csv(datastore.path('y.csv')).to_long(dprep.ColumnSelector(term='.*', use_regex = True))" + "X_train = Dataset.Tabular.from_delimited_files(datastore.path('X.csv'))\n", + "y_train = Dataset.Tabular.from_delimited_files(datastore.path('y.csv'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Review the Data Preparation Result\n", - "You can peek the result of a Dataflow at any range using `skip(i)` and `head(j)`. Doing so evaluates only j records for all the steps in the Dataflow, which makes it fast even against large datasets." + "## Review the TabularDataset\n", + "You can peek the result of a TabularDataset at any range using `skip(i)` and `take(j).to_pandas_dataframe()`. Doing so evaluates only j records for all the steps in the TabularDataset, which makes it fast even against large datasets." ] }, { @@ -364,7 +357,7 @@ "metadata": {}, "outputs": [], "source": [ - "X_train.get_profile()" + "X_train.take(5).to_pandas_dataframe()" ] }, { @@ -373,7 +366,7 @@ "metadata": {}, "outputs": [], "source": [ - "y_train.get_profile()" + "y_train.take(5).to_pandas_dataframe()" ] }, { diff --git a/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-with-deployment.ipynb b/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-with-deployment.ipynb index 56b23696..f765cccf 100644 --- a/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-with-deployment.ipynb +++ b/how-to-use-azureml/azure-databricks/automl/automl-databricks-local-with-deployment.ipynb @@ -331,25 +331,18 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## Load Training Data Using DataPrep" + "## Load Training Data Using Dataset" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Automated ML takes a Dataflow as input.\n", + "Automated ML takes a `TabularDataset` as input.\n", "\n", - "If you are familiar with Pandas and have done your data preparation work in Pandas already, you can use the `read_pandas_dataframe` method in dprep to convert the DataFrame to a Dataflow.\n", - "```python\n", - "df = pd.read_csv(...)\n", - "# apply some transforms\n", - "dprep.read_pandas_dataframe(df, temp_folder='/path/accessible/by/both/driver/and/worker')\n", - "```\n", + "You are free to use the data preparation libraries/tools of your choice to do the require preparation and once you are done, you can write it to a datastore and create a TabularDataset from it.\n", "\n", - "If you just need to ingest data without doing any preparation, you can directly use AzureML Data Prep (Data Prep) to do so. The code below demonstrates this scenario. Data Prep also has data preparation capabilities, we have many [sample notebooks](https://github.com/Microsoft/AMLDataPrepDocs) demonstrating the capabilities.\n", - "\n", - "You will get the datastore you registered previously and pass it to Data Prep for reading. The data comes from the digits dataset: `sklearn.datasets.load_digits()`. `DataPath` points to a specific location within a datastore. " + "You will get the datastore you registered previously and pass it to Dataset for reading. The data comes from the digits dataset: `sklearn.datasets.load_digits()`. `DataPath` points to a specific location within a datastore. " ] }, { @@ -358,21 +351,21 @@ "metadata": {}, "outputs": [], "source": [ - "import azureml.dataprep as dprep\n", + "from azureml.core.dataset import Dataset\n", "from azureml.data.datapath import DataPath\n", "\n", "datastore = Datastore.get(workspace = ws, datastore_name = datastore_name)\n", "\n", - "X_train = dprep.read_csv(datastore.path('X.csv'))\n", - "y_train = dprep.read_csv(datastore.path('y.csv')).to_long(dprep.ColumnSelector(term='.*', use_regex = True))" + "X_train = Dataset.Tabular.from_delimited_files(datastore.path('X.csv'))\n", + "y_train = Dataset.Tabular.from_delimited_files(datastore.path('y.csv'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "## Review the Data Preparation Result\n", - "You can peek the result of a Dataflow at any range using skip(i) and head(j). Doing so evaluates only j records for all the steps in the Dataflow, which makes it fast even against large datasets." + "## Review the TabularDataset\n", + "You can peek the result of a TabularDataset at any range using `skip(i)` and `take(j).to_pandas_dataframe()`. Doing so evaluates only j records for all the steps in the TabularDataset, which makes it fast even against large datasets." ] }, { @@ -381,7 +374,7 @@ "metadata": {}, "outputs": [], "source": [ - "X_train.get_profile()" + "X_train.take(5).to_pandas_dataframe()" ] }, { @@ -390,7 +383,7 @@ "metadata": {}, "outputs": [], "source": [ - "y_train.get_profile()" + "y_train.take(5).to_pandas_dataframe()" ] }, { diff --git a/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb b/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb index 1175ddfd..2836a25e 100644 --- a/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb +++ b/how-to-use-azureml/deploy-to-cloud/model-register-and-deploy.ipynb @@ -115,6 +115,36 @@ " workspace=ws)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create Environment" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can now create and/or use an Environment object when deploying a Webservice. The Environment can have been previously registered with your Workspace, or it will be registered with it as a part of the Webservice deployment. Only Environments that were created using azureml-defaults version 1.0.48 or later will work with this new handling however.\n", + "\n", + "More information can be found in our [using environments notebook](../training/using-environments/using-environments.ipynb)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Environment\n", + "\n", + "env = Environment.from_conda_specification(name='deploytocloudenv', file_path='myenv.yml')\n", + "\n", + "# This is optional at this point\n", + "# env.register(workspace=ws)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -153,10 +183,7 @@ "source": [ "from azureml.core.model import InferenceConfig\n", "\n", - "inference_config = InferenceConfig(runtime= \"python\", \n", - " entry_script=\"score.py\",\n", - " conda_file=\"myenv.yml\", \n", - " extra_docker_file_steps=\"helloworld.txt\")" + "inference_config = InferenceConfig(entry_script=\"score.py\", environment=env)" ] }, { diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb index d1af93d4..ab65977d 100644 --- a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-object-detection.ipynb @@ -336,7 +336,7 @@ " num_replicas=1,\n", " auth_enabled = False)\n", "\n", - "aks_service_name ='my-aks-service'\n", + "aks_service_name ='my-aks-service-3'\n", "\n", "aks_service = Webservice.deploy_from_image(workspace = ws,\n", " name = aks_service_name,\n", diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb index a840d28a..0f7f20b4 100644 --- a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-quickstart.ipynb @@ -404,7 +404,7 @@ " num_replicas=1,\n", " auth_enabled = False)\n", "\n", - "aks_service_name ='my-aks-service'\n", + "aks_service_name ='my-aks-service-1'\n", "\n", "aks_service = Webservice.deploy_from_image(workspace = ws,\n", " name = aks_service_name,\n", diff --git a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb index aa637f1b..88918c22 100644 --- a/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb +++ b/how-to-use-azureml/deployment/accelerated-models/accelerated-models-training.ipynb @@ -694,7 +694,7 @@ " num_replicas=1,\n", " auth_enabled = False)\n", "\n", - "aks_service_name ='my-aks-service'\n", + "aks_service_name ='my-aks-service-2'\n", "\n", "aks_service = Webservice.deploy_from_image(workspace = ws,\n", " name = aks_service_name,\n", diff --git a/how-to-use-azureml/deployment/enable-app-insights-in-production-service/enable-app-insights-in-production-service.ipynb b/how-to-use-azureml/deployment/enable-app-insights-in-production-service/enable-app-insights-in-production-service.ipynb index 79d98eac..7a1831c5 100644 --- a/how-to-use-azureml/deployment/enable-app-insights-in-production-service/enable-app-insights-in-production-service.ipynb +++ b/how-to-use-azureml/deployment/enable-app-insights-in-production-service/enable-app-insights-in-production-service.ipynb @@ -22,7 +22,7 @@ "If you want to log custom traces, you will follow the standard deplyment process for AKS and you will:\n", "1. Update scoring file.\n", "2. Update aks configuration.\n", - "3. Build new image and deploy it. " + "3. Deploy the model with this new configuration. " ] }, { @@ -178,7 +178,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## 6. Create your new Image" + "## 6. Create Inference Configuration" ] }, { @@ -187,22 +187,11 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import InferenceConfig\n", "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " description = \"Image with ridge regression model\",\n", - " tags = {'area': \"diabetes\", 'type': \"regression\"}\n", - " )\n", - "\n", - "image = ContainerImage.create(name = \"myimage1\",\n", - " # this is the model object\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" + "inference_config = InferenceConfig(runtime= \"python\", \n", + " entry_script=\"score.py\",\n", + " conda_file=\"myenv.yml\")" ] }, { @@ -220,7 +209,7 @@ "source": [ "from azureml.core.webservice import AciWebservice\n", "\n", - "aciconfig = AciWebservice.deploy_configuration(cpu_cores = 1, \n", + "aci_deployment_config = AciWebservice.deploy_configuration(cpu_cores = 1, \n", " memory_gb = 1, \n", " tags = {'area': \"diabetes\", 'type': \"regression\"}, \n", " description = 'Predict diabetes using regression model',\n", @@ -236,11 +225,7 @@ "from azureml.core.webservice import Webservice\n", "\n", "aci_service_name = 'my-aci-service-4'\n", - "print(aci_service_name)\n", - "aci_service = Webservice.deploy_from_image(deployment_config = aciconfig,\n", - " image = image,\n", - " name = aci_service_name,\n", - " workspace = ws)\n", + "aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aci_deployment_config)\n", "aci_service.wait_for_deployment(True)\n", "print(aci_service.state)" ] @@ -361,7 +346,7 @@ "outputs": [], "source": [ "#Set the web service configuration\n", - "aks_config = AksWebservice.deploy_configuration(enable_app_insights=True)" + "aks_deployment_config = AksWebservice.deploy_configuration(enable_app_insights=True)" ] }, { @@ -379,12 +364,12 @@ "source": [ "if aks_target.provisioning_state== \"Succeeded\": \n", " aks_service_name ='aks-w-dc5'\n", - " aks_service = Webservice.deploy_from_image(workspace = ws, \n", - " name = aks_service_name,\n", - " image = image,\n", - " deployment_config = aks_config,\n", - " deployment_target = aks_target\n", - " )\n", + " aks_service = Model.deploy(ws,\n", + " aks_service_name, \n", + " [model], \n", + " inference_config, \n", + " aks_deployment_config, \n", + " deployment_target = aks_target) \n", " aks_service.wait_for_deployment(show_output = True)\n", " print(aks_service.state)\n", "else:\n", @@ -464,7 +449,6 @@ "%%time\n", "aks_service.delete()\n", "aci_service.delete()\n", - "image.delete()\n", "model.delete()" ] } diff --git a/how-to-use-azureml/deployment/onnx/onnx-convert-aml-deploy-tinyyolo.ipynb b/how-to-use-azureml/deployment/onnx/onnx-convert-aml-deploy-tinyyolo.ipynb index 9c147c3c..b7f35149 100644 --- a/how-to-use-azureml/deployment/onnx/onnx-convert-aml-deploy-tinyyolo.ipynb +++ b/how-to-use-azureml/deployment/onnx/onnx-convert-aml-deploy-tinyyolo.ipynb @@ -243,7 +243,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Create container image\n", + "### Setting up inference configuration\n", "First we create a YAML file that specifies which dependencies we would like to see in our container." ] }, @@ -265,7 +265,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Then we have Azure ML create the container. This step will likely take a few minutes." + "Then we create the inference configuration." ] }, { @@ -274,48 +274,19 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import InferenceConfig\n", "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " docker_file = \"Dockerfile\",\n", - " description = \"TinyYOLO ONNX Demo\",\n", - " tags = {\"demo\": \"onnx\"}\n", - " )\n", - "\n", - "\n", - "image = ContainerImage.create(name = \"onnxyolo\",\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" + "inference_config = InferenceConfig(runtime= \"python\", \n", + " entry_script=\"score.py\",\n", + " conda_file=\"myenv.yml\",\n", + " extra_docker_file_steps = \"Dockerfile\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "In case you need to debug your code, the next line of code accesses the log file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(image.image_build_log_uri)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We're all set! Let's get our model chugging.\n", - "\n", - "### Deploy the container image" + "### Deploy the model" ] }, { @@ -336,7 +307,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The following cell will likely take a few minutes to run as well." + "The following cell will take a few minutes to run as the model gets packaged up and deployed to ACI." ] }, { @@ -348,14 +319,9 @@ "from azureml.core.webservice import Webservice\n", "from random import randint\n", "\n", - "aci_service_name = 'onnx-tinyyolo'+str(randint(0,100))\n", + "aci_service_name = 'my-aci-service-15ad'\n", "print(\"Service\", aci_service_name)\n", - "\n", - "aci_service = Webservice.deploy_from_image(deployment_config = aciconfig,\n", - " image = image,\n", - " name = aci_service_name,\n", - " workspace = ws)\n", - "\n", + "aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aciconfig)\n", "aci_service.wait_for_deployment(True)\n", "print(aci_service.state)" ] diff --git a/how-to-use-azureml/deployment/onnx/onnx-inference-facial-expression-recognition-deploy.ipynb b/how-to-use-azureml/deployment/onnx/onnx-inference-facial-expression-recognition-deploy.ipynb index 3f3a0fd9..f57f927c 100644 --- a/how-to-use-azureml/deployment/onnx/onnx-inference-facial-expression-recognition-deploy.ipynb +++ b/how-to-use-azureml/deployment/onnx/onnx-inference-facial-expression-recognition-deploy.ipynb @@ -54,7 +54,7 @@ "\n", "### 3. Download sample data and pre-trained ONNX model from ONNX Model Zoo.\n", "\n", - "In the following lines of code, we download [the trained ONNX Emotion FER+ model and corresponding test data](https://github.com/onnx/models/tree/master/emotion_ferplus) and place them in the same folder as this tutorial notebook. For more information about the FER+ dataset, please visit Microsoft Researcher Emad Barsoum's [FER+ source data repository](https://github.com/ebarsoum/FERPlus)." + "In the following lines of code, we download [the trained ONNX Emotion FER+ model and corresponding test data](https://github.com/onnx/models/tree/master/vision/body_analysis/emotion_ferplus) and place them in the same folder as this tutorial notebook. For more information about the FER+ dataset, please visit Microsoft Researcher Emad Barsoum's [FER+ source data repository](https://github.com/ebarsoum/FERPlus)." ] }, { @@ -176,7 +176,7 @@ "source": [ "### ONNX FER+ Model Methodology\n", "\n", - "The image classification model we are using is pre-trained using Microsoft's deep learning cognitive toolkit, [CNTK](https://github.com/Microsoft/CNTK), from the [ONNX model zoo](http://github.com/onnx/models). The model zoo has many other models that can be deployed on cloud providers like AzureML without any additional training. To ensure that our cloud deployed model works, we use testing data from the well-known FER+ data set, provided as part of the [trained Emotion Recognition model](https://github.com/onnx/models/tree/master/emotion_ferplus) in the ONNX model zoo.\n", + "The image classification model we are using is pre-trained using Microsoft's deep learning cognitive toolkit, [CNTK](https://github.com/Microsoft/CNTK), from the [ONNX model zoo](http://github.com/onnx/models). The model zoo has many other models that can be deployed on cloud providers like AzureML without any additional training. To ensure that our cloud deployed model works, we use testing data from the well-known FER+ data set, provided as part of the [trained Emotion Recognition model](https://github.com/onnx/models/tree/master/vision/body_analysis/emotion_ferplus) in the ONNX model zoo.\n", "\n", "The original Facial Emotion Recognition (FER) Dataset was released in 2013 by Pierre-Luc Carrier and Aaron Courville as part of a [Kaggle Competition](https://www.kaggle.com/c/challenges-in-representation-learning-facial-expression-recognition-challenge/data), but some of the labels are not entirely appropriate for the expression. In the FER+ Dataset, each photo was evaluated by at least 10 croud sourced reviewers, creating a more accurate basis for ground truth. \n", "\n", @@ -341,9 +341,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Create the Container Image\n", - "\n", - "This step will likely take a few minutes." + "### Setup inference configuration" ] }, { @@ -352,48 +350,19 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import InferenceConfig\n", "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " docker_file = \"Dockerfile\",\n", - " description = \"Emotion ONNX Runtime container\",\n", - " tags = {\"demo\": \"onnx\"})\n", - "\n", - "\n", - "image = ContainerImage.create(name = \"onnximage\",\n", - " # this is the model object\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" + "inference_config = InferenceConfig(runtime= \"python\", \n", + " entry_script=\"score.py\",\n", + " conda_file=\"myenv.yml\",\n", + " extra_docker_file_steps = \"Dockerfile\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "In case you need to debug your code, the next line of code accesses the log file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(image.image_build_log_uri)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We're all done specifying what we want our virtual machine to do. Let's configure and deploy our container image.\n", - "\n", - "### Deploy the container image" + "### Deploy the model" ] }, { @@ -410,6 +379,13 @@ " description = 'ONNX for emotion recognition model')" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following cell will likely take a few minutes to run as well." + ] + }, { "cell_type": "code", "execution_count": null, @@ -420,23 +396,11 @@ "\n", "aci_service_name = 'onnx-demo-emotion'\n", "print(\"Service\", aci_service_name)\n", - "\n", - "aci_service = Webservice.deploy_from_image(deployment_config = aciconfig,\n", - " image = image,\n", - " name = aci_service_name,\n", - " workspace = ws)\n", - "\n", + "aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aciconfig)\n", "aci_service.wait_for_deployment(True)\n", "print(aci_service.state)" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "The following cell will likely take a few minutes to run as well." - ] - }, { "cell_type": "code", "execution_count": null, @@ -470,7 +434,7 @@ "\n", "### Useful Helper Functions\n", "\n", - "We preprocess and postprocess our data (see score.py file) using the helper functions specified in the [ONNX FER+ Model page in the Model Zoo repository](https://github.com/onnx/models/tree/master/emotion_ferplus)." + "We preprocess and postprocess our data (see score.py file) using the helper functions specified in the [ONNX FER+ Model page in the Model Zoo repository](https://github.com/onnx/models/tree/master/vision/body_analysis/emotion_ferplus)." ] }, { diff --git a/how-to-use-azureml/deployment/onnx/onnx-inference-mnist-deploy.ipynb b/how-to-use-azureml/deployment/onnx/onnx-inference-mnist-deploy.ipynb index 43c22a09..4e3e83cc 100644 --- a/how-to-use-azureml/deployment/onnx/onnx-inference-mnist-deploy.ipynb +++ b/how-to-use-azureml/deployment/onnx/onnx-inference-mnist-deploy.ipynb @@ -54,7 +54,7 @@ "\n", "### 3. Download sample data and pre-trained ONNX model from ONNX Model Zoo.\n", "\n", - "In the following lines of code, we download [the trained ONNX MNIST model and corresponding test data](https://github.com/onnx/models/tree/master/mnist) and place them in the same folder as this tutorial notebook. For more information about the MNIST dataset, please visit [Yan LeCun's website](http://yann.lecun.com/exdb/mnist/)." + "In the following lines of code, we download [the trained ONNX MNIST model and corresponding test data](https://github.com/onnx/models/tree/master/vision/classification/mnist) and place them in the same folder as this tutorial notebook. For more information about the MNIST dataset, please visit [Yan LeCun's website](http://yann.lecun.com/exdb/mnist/)." ] }, { @@ -187,7 +187,7 @@ "source": [ "### ONNX MNIST Model Methodology\n", "\n", - "The image classification model we are using is pre-trained using Microsoft's deep learning cognitive toolkit, [CNTK](https://github.com/Microsoft/CNTK), from the [ONNX model zoo](http://github.com/onnx/models). The model zoo has many other models that can be deployed on cloud providers like AzureML without any additional training. To ensure that our cloud deployed model works, we use testing data from the famous MNIST data set, provided as part of the [trained MNIST model](https://github.com/onnx/models/tree/master/mnist) in the ONNX model zoo.\n", + "The image classification model we are using is pre-trained using Microsoft's deep learning cognitive toolkit, [CNTK](https://github.com/Microsoft/CNTK), from the [ONNX model zoo](http://github.com/onnx/models). The model zoo has many other models that can be deployed on cloud providers like AzureML without any additional training. To ensure that our cloud deployed model works, we use testing data from the famous MNIST data set, provided as part of the [trained MNIST model](https://github.com/onnx/models/tree/master/vision/classification/mnist) in the ONNX model zoo.\n", "\n", "***Input: Handwritten Images from MNIST Dataset***\n", "\n", @@ -325,8 +325,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Create the Container Image\n", - "This step will likely take a few minutes." + "### Create Inference Configuration" ] }, { @@ -335,48 +334,19 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import InferenceConfig\n", "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " docker_file = \"Dockerfile\",\n", - " description = \"MNIST ONNX Runtime container\",\n", - " tags = {\"demo\": \"onnx\"}) \n", - "\n", - "\n", - "image = ContainerImage.create(name = \"onnximage\",\n", - " # this is the model object\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" + "inference_config = InferenceConfig(runtime= \"python\", \n", + " entry_script=\"score.py\",\n", + " extra_docker_file_steps = \"Dockerfile\",\n", + " conda_file=\"myenv.yml\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "In case you need to debug your code, the next line of code accesses the log file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(image.image_build_log_uri)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We're all done specifying what we want our virtual machine to do. Let's configure and deploy our container image.\n", - "\n", - "### Deploy the container image" + "### Deploy the model" ] }, { @@ -397,7 +367,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "The following cell will likely take a few minutes to run as well." + "The following cell will likely take a few minutes to run." ] }, { @@ -410,12 +380,7 @@ "\n", "aci_service_name = 'onnx-demo-mnist'\n", "print(\"Service\", aci_service_name)\n", - "\n", - "aci_service = Webservice.deploy_from_image(deployment_config = aciconfig,\n", - " image = image,\n", - " name = aci_service_name,\n", - " workspace = ws)\n", - "\n", + "aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aciconfig)\n", "aci_service.wait_for_deployment(True)\n", "print(aci_service.state)" ] diff --git a/how-to-use-azureml/deployment/onnx/onnx-modelzoo-aml-deploy-resnet50.ipynb b/how-to-use-azureml/deployment/onnx/onnx-modelzoo-aml-deploy-resnet50.ipynb index 1213c12f..af3f5f1c 100644 --- a/how-to-use-azureml/deployment/onnx/onnx-modelzoo-aml-deploy-resnet50.ipynb +++ b/how-to-use-azureml/deployment/onnx/onnx-modelzoo-aml-deploy-resnet50.ipynb @@ -28,7 +28,7 @@ "ONNX is an open format for representing machine learning and deep learning models. ONNX enables open and interoperable AI by enabling data scientists and developers to use the tools of their choice without worrying about lock-in and flexibility to deploy to a variety of platforms. ONNX is developed and supported by a community of partners including Microsoft, Facebook, and Amazon. For more information, explore the [ONNX website](http://onnx.ai).\n", "\n", "## ResNet50 Details\n", - "ResNet classifies the major object in an input image into a set of 1000 pre-defined classes. For more information about the ResNet50 model and how it was created can be found on the [ONNX Model Zoo github](https://github.com/onnx/models/tree/master/models/image_classification/resnet). " + "ResNet classifies the major object in an input image into a set of 1000 pre-defined classes. For more information about the ResNet50 model and how it was created can be found on the [ONNX Model Zoo github](https://github.com/onnx/models/tree/master/vision/classification/resnet). " ] }, { @@ -221,7 +221,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Create container image" + "### Create inference configuration" ] }, { @@ -249,7 +249,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Then we have Azure ML create the container. This step will likely take a few minutes." + "Create the inference configuration object" ] }, { @@ -258,48 +258,19 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import InferenceConfig\n", "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " docker_file = \"Dockerfile\",\n", - " description = \"ONNX ResNet50 Demo\",\n", - " tags = {\"demo\": \"onnx\"}\n", - " )\n", - "\n", - "\n", - "image = ContainerImage.create(name = \"onnxresnet50v2\",\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" + "inference_config = InferenceConfig(runtime= \"python\", \n", + " entry_script=\"score.py\",\n", + " conda_file=\"myenv.yml\",\n", + " extra_docker_file_steps = \"Dockerfile\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "In case you need to debug your code, the next line of code accesses the log file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(image.image_build_log_uri)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We're all set! Let's get our model chugging.\n", - "\n", - "### Deploy the container image" + "### Deploy the model" ] }, { @@ -334,12 +305,7 @@ "\n", "aci_service_name = 'onnx-demo-resnet50'+str(randint(0,100))\n", "print(\"Service\", aci_service_name)\n", - "\n", - "aci_service = Webservice.deploy_from_image(deployment_config = aciconfig,\n", - " image = image,\n", - " name = aci_service_name,\n", - " workspace = ws)\n", - "\n", + "aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aciconfig)\n", "aci_service.wait_for_deployment(True)\n", "print(aci_service.state)" ] diff --git a/how-to-use-azureml/deployment/onnx/onnx-train-pytorch-aml-deploy-mnist.ipynb b/how-to-use-azureml/deployment/onnx/onnx-train-pytorch-aml-deploy-mnist.ipynb index 9a7f2035..a8a18aa2 100644 --- a/how-to-use-azureml/deployment/onnx/onnx-train-pytorch-aml-deploy-mnist.ipynb +++ b/how-to-use-azureml/deployment/onnx/onnx-train-pytorch-aml-deploy-mnist.ipynb @@ -28,7 +28,7 @@ "ONNX is an open format for representing machine learning and deep learning models. ONNX enables open and interoperable AI by enabling data scientists and developers to use the tools of their choice without worrying about lock-in and flexibility to deploy to a variety of platforms. ONNX is developed and supported by a community of partners including Microsoft, Facebook, and Amazon. For more information, explore the [ONNX website](http://onnx.ai).\n", "\n", "## MNIST Details\n", - "The Modified National Institute of Standards and Technology (MNIST) dataset consists of 70,000 grayscale images. Each image is a handwritten digit of 28x28 pixels, representing numbers from 0 to 9. For more information about the MNIST dataset, please visit [Yan LeCun's website](http://yann.lecun.com/exdb/mnist/). For more information about the MNIST model and how it was created can be found on the [ONNX Model Zoo github](https://github.com/onnx/models/tree/master/mnist). " + "The Modified National Institute of Standards and Technology (MNIST) dataset consists of 70,000 grayscale images. Each image is a handwritten digit of 28x28 pixels, representing numbers from 0 to 9. For more information about the MNIST dataset, please visit [Yan LeCun's website](http://yann.lecun.com/exdb/mnist/). For more information about the MNIST model and how it was created can be found on the [ONNX Model Zoo github](https://github.com/onnx/models/tree/master/vision/classification/mnist). " ] }, { @@ -401,7 +401,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "### Create container image\n", + "### Create inference configuration\n", "First we create a YAML file that specifies which dependencies we would like to see in our container." ] }, @@ -423,7 +423,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Then we have Azure ML create the container. This step will likely take a few minutes." + "Then we setup the inference configuration " ] }, { @@ -432,48 +432,19 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.core.image import ContainerImage\n", + "from azureml.core.model import InferenceConfig\n", "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " docker_file = \"Dockerfile\",\n", - " description = \"MNIST ONNX Demo\",\n", - " tags = {\"demo\": \"onnx\"}\n", - " )\n", - "\n", - "\n", - "image = ContainerImage.create(name = \"onnxmnistdemo\",\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" + "inference_config = InferenceConfig(runtime= \"python\", \n", + " entry_script=\"score.py\",\n", + " conda_file=\"myenv.yml\",\n", + " extra_docker_file_steps = \"Dockerfile\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "In case you need to debug your code, the next line of code accesses the log file." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "print(image.image_build_log_uri)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "We're all set! Let's get our model chugging.\n", - "\n", - "### Deploy the container image" + "### Deploy the model" ] }, { @@ -504,16 +475,12 @@ "outputs": [], "source": [ "from azureml.core.webservice import Webservice\n", + "from azureml.core.model import Model\n", "from random import randint\n", "\n", "aci_service_name = 'onnx-demo-mnist'+str(randint(0,100))\n", "print(\"Service\", aci_service_name)\n", - "\n", - "aci_service = Webservice.deploy_from_image(deployment_config = aciconfig,\n", - " image = image,\n", - " name = aci_service_name,\n", - " workspace = ws)\n", - "\n", + "aci_service = Model.deploy(ws, aci_service_name, [model], inference_config, aciconfig)\n", "aci_service.wait_for_deployment(True)\n", "print(aci_service.state)" ] diff --git a/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb b/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb index 292eb621..0d934276 100644 --- a/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb +++ b/how-to-use-azureml/deployment/production-deploy-to-aks/production-deploy-to-aks.ipynb @@ -34,7 +34,6 @@ "from azureml.core import Workspace\n", "from azureml.core.compute import AksCompute, ComputeTarget\n", "from azureml.core.webservice import Webservice, AksWebservice\n", - "from azureml.core.image import Image\n", "from azureml.core.model import Model" ] }, @@ -97,8 +96,51 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Create an image\n", - "Create an image using the registered model the script that will load and run the model." + "# Create the Environment\n", + "Create an environment that the model will be deployed with" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Environment\n", + "from azureml.core.conda_dependencies import CondaDependencies \n", + "\n", + "conda_deps = CondaDependencies.create(conda_packages=['numpy','scikit-learn'], pip_packages=['azureml-defaults'])\n", + "myenv = Environment(name='myenv')\n", + "myenv.python.conda_dependencies = conda_deps" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "#### Use a custom Docker image\n", + "\n", + "You can also specify a custom Docker image to be used as base image if you don't want to use the default base image provided by Azure ML. Please make sure the custom Docker image has Ubuntu >= 16.04, Conda >= 4.5.\\* and Python(3.5.\\* or 3.6.\\*).\n", + "\n", + "Only supported with `python` runtime.\n", + "```python\n", + "# use an image available in public Container Registry without authentication\n", + "myenv.docker.base_image = \"mcr.microsoft.com/azureml/o16n-sample-user-base/ubuntu-miniconda\"\n", + "\n", + "# or, use an image available in a private Container Registry\n", + "myenv.docker.base_image = \"myregistry.azurecr.io/mycustomimage:1.0\"\n", + "myenv.docker.base_image_registry.address = \"myregistry.azurecr.io\"\n", + "myenv.docker.base_image_registry.username = \"username\"\n", + "myenv.docker.base_image_registry.password = \"password\"\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Write the Entry Script\n", + "Write the script that will be used to predict on your model" ] }, { @@ -136,67 +178,23 @@ " return error" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.conda_dependencies import CondaDependencies \n", - "\n", - "myenv = CondaDependencies.create(conda_packages=['numpy','scikit-learn'])\n", - "\n", - "with open(\"myenv.yml\",\"w\") as f:\n", - " f.write(myenv.serialize_to_string())" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [ - "from azureml.core.image import ContainerImage\n", - "\n", - "image_config = ContainerImage.image_configuration(execution_script = \"score.py\",\n", - " runtime = \"python\",\n", - " conda_file = \"myenv.yml\",\n", - " description = \"Image with ridge regression model\",\n", - " tags = {'area': \"diabetes\", 'type': \"regression\"}\n", - " )\n", - "\n", - "image = ContainerImage.create(name = \"myimage1\",\n", - " # this is the model object\n", - " models = [model],\n", - " image_config = image_config,\n", - " workspace = ws)\n", - "\n", - "image.wait_for_creation(show_output = True)" - ] - }, { "cell_type": "markdown", "metadata": {}, "source": [ - "#### Use a custom Docker image\n", + "# Create the InferenceConfig\n", + "Create the inference config that will be used when deploying the model" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.model import InferenceConfig\n", "\n", - "You can also specify a custom Docker image to be used as base image if you don't want to use the default base image provided by Azure ML. Please make sure the custom Docker image has Ubuntu >= 16.04, Conda >= 4.5.\\* and Python(3.5.\\* or 3.6.\\*).\n", - "\n", - "Only Supported for `ContainerImage`(from azureml.core.image) with `python` runtime.\n", - "```python\n", - "# use an image available in public Container Registry without authentication\n", - "image_config.base_image = \"mcr.microsoft.com/azureml/o16n-sample-user-base/ubuntu-miniconda\"\n", - "\n", - "# or, use an image available in a private Container Registry\n", - "image_config.base_image = \"myregistry.azurecr.io/mycustomimage:1.0\"\n", - "image_config.base_image_registry.address = \"myregistry.azurecr.io\"\n", - "image_config.base_image_registry.username = \"username\"\n", - "image_config.base_image_registry.password = \"password\"\n", - "\n", - "# or, use an image built during training.\n", - "image_config.base_image = run.properties[\"AzureML.DerivedImageName\"]\n", - "```\n", - "You can get the address of training image from the properties of a Run object. Only new runs submitted with azureml-sdk>=1.0.22 to AMLCompute targets will have the 'AzureML.DerivedImageName' property. Instructions on how to get a Run can be found in [manage-runs](../../training/manage-runs/manage-runs.ipynb). \n" + "inf_config = InferenceConfig(entry_script='score.py', environment=myenv)" ] }, { @@ -237,23 +235,21 @@ "metadata": {}, "outputs": [], "source": [ - "'''\n", - "from azureml.core.compute import ComputeTarget, AksCompute\n", + "# from azureml.core.compute import ComputeTarget, AksCompute\n", "\n", - "# Create the compute configuration and set virtual network information\n", - "config = AksCompute.provisioning_configuration(location=\"eastus2\")\n", - "config.vnet_resourcegroup_name = \"mygroup\"\n", - "config.vnet_name = \"mynetwork\"\n", - "config.subnet_name = \"default\"\n", - "config.service_cidr = \"10.0.0.0/16\"\n", - "config.dns_service_ip = \"10.0.0.10\"\n", - "config.docker_bridge_cidr = \"172.17.0.1/16\"\n", + "# # Create the compute configuration and set virtual network information\n", + "# config = AksCompute.provisioning_configuration(location=\"eastus2\")\n", + "# config.vnet_resourcegroup_name = \"mygroup\"\n", + "# config.vnet_name = \"mynetwork\"\n", + "# config.subnet_name = \"default\"\n", + "# config.service_cidr = \"10.0.0.0/16\"\n", + "# config.dns_service_ip = \"10.0.0.10\"\n", + "# config.docker_bridge_cidr = \"172.17.0.1/16\"\n", "\n", - "# Create the compute target\n", - "aks_target = ComputeTarget.create(workspace = ws,\n", - " name = \"myaks\",\n", - " provisioning_configuration = config)\n", - "'''" + "# # Create the compute target\n", + "# aks_target = ComputeTarget.create(workspace = ws,\n", + "# name = \"myaks\",\n", + "# provisioning_configuration = config)" ] }, { @@ -300,17 +296,15 @@ "metadata": {}, "outputs": [], "source": [ - "'''\n", - "# Use the default configuration (can also provide parameters to customize)\n", - "resource_id = '/subscriptions/92c76a2f-0e1c-4216-b65e-abf7a3f34c1e/resourcegroups/raymondsdk0604/providers/Microsoft.ContainerService/managedClusters/my-aks-0605d37425356b7d01'\n", + "# # Use the default configuration (can also provide parameters to customize)\n", + "# resource_id = '/subscriptions/92c76a2f-0e1c-4216-b65e-abf7a3f34c1e/resourcegroups/raymondsdk0604/providers/Microsoft.ContainerService/managedClusters/my-aks-0605d37425356b7d01'\n", "\n", - "create_name='my-existing-aks' \n", - "# Create the cluster\n", - "attach_config = AksCompute.attach_configuration(resource_id=resource_id)\n", - "aks_target = ComputeTarget.attach(workspace=ws, name=create_name, attach_configuration=attach_config)\n", - "# Wait for the operation to complete\n", - "aks_target.wait_for_completion(True)\n", - "'''" + "# create_name='my-existing-aks' \n", + "# # Create the cluster\n", + "# attach_config = AksCompute.attach_configuration(resource_id=resource_id)\n", + "# aks_target = ComputeTarget.attach(workspace=ws, name=create_name, attach_configuration=attach_config)\n", + "# # Wait for the operation to complete\n", + "# aks_target.wait_for_completion(True)" ] }, { @@ -326,8 +320,11 @@ "metadata": {}, "outputs": [], "source": [ - "#Set the web service configuration (using default here)\n", - "aks_config = AksWebservice.deploy_configuration()" + "# Set the web service configuration (using default here)\n", + "aks_config = AksWebservice.deploy_configuration()\n", + "\n", + "# # Enable token auth and disable (key) auth on the webservice\n", + "# aks_config = AksWebservice.deploy_configuration(token_auth_enabled=True, auth_enabled=False)\n" ] }, { @@ -339,11 +336,13 @@ "%%time\n", "aks_service_name ='aks-service-1'\n", "\n", - "aks_service = Webservice.deploy_from_image(workspace = ws, \n", - " name = aks_service_name,\n", - " image = image,\n", - " deployment_config = aks_config,\n", - " deployment_target = aks_target)\n", + "aks_service = Model.deploy(workspace=ws,\n", + " name=aks_service_name,\n", + " models=[model],\n", + " inference_config=inf_config,\n", + " deployment_config=aks_config,\n", + " deployment_target=aks_target)\n", + "\n", "aks_service.wait_for_deployment(show_output = True)\n", "print(aks_service.state)" ] @@ -390,11 +389,12 @@ "metadata": {}, "outputs": [], "source": [ - "# retreive the API keys. AML generates two keys.\n", - "'''\n", - "key1, Key2 = aks_service.get_keys()\n", - "print(key1)\n", - "'''" + "# # if (key) auth is enabled, retrieve the API keys. AML generates two keys.\n", + "# key1, Key2 = aks_service.get_keys()\n", + "# print(key1)\n", + "\n", + "# # if token auth is enabled, retrieve the token.\n", + "# access_token, refresh_after = aks_service.get_token()" ] }, { @@ -404,27 +404,28 @@ "outputs": [], "source": [ "# construct raw HTTP request and send to the service\n", - "'''\n", - "%%time\n", + "# %%time\n", "\n", - "import requests\n", + "# import requests\n", "\n", - "import json\n", + "# import json\n", "\n", - "test_sample = json.dumps({'data': [\n", - " [1,2,3,4,5,6,7,8,9,10], \n", - " [10,9,8,7,6,5,4,3,2,1]\n", - "]})\n", - "test_sample = bytes(test_sample,encoding = 'utf8')\n", + "# test_sample = json.dumps({'data': [\n", + "# [1,2,3,4,5,6,7,8,9,10], \n", + "# [10,9,8,7,6,5,4,3,2,1]\n", + "# ]})\n", + "# test_sample = bytes(test_sample,encoding = 'utf8')\n", "\n", - "# Don't forget to add key to the HTTP header.\n", - "headers = {'Content-Type':'application/json', 'Authorization': 'Bearer ' + key1}\n", + "# # If (key) auth is enabled, don't forget to add key to the HTTP header.\n", + "# headers = {'Content-Type':'application/json', 'Authorization': 'Bearer ' + key1}\n", "\n", - "resp = requests.post(aks_service.scoring_uri, test_sample, headers=headers)\n", + "# # If token auth is enabled, don't forget to add token to the HTTP header.\n", + "# headers = {'Content-Type':'application/json', 'Authorization': 'Bearer ' + access_token}\n", + "\n", + "# resp = requests.post(aks_service.scoring_uri, test_sample, headers=headers)\n", "\n", "\n", - "print(\"prediction:\", resp.text)\n", - "'''" + "# print(\"prediction:\", resp.text)" ] }, { @@ -443,7 +444,6 @@ "source": [ "%%time\n", "aks_service.delete()\n", - "image.delete()\n", "model.delete()" ] } diff --git a/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb b/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb new file mode 100644 index 00000000..2760c29f --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.ipynb @@ -0,0 +1,748 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved.\n", + "\n", + "Licensed under the MIT License." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Train and explain models remotely via Azure Machine Learning Compute\n", + "\n", + "\n", + "_**This notebook showcases how to use the Azure Machine Learning Interpretability SDK to train and explain a regression model remotely on an Azure Machine Leanrning Compute Target (AMLCompute).**_\n", + "\n", + "\n", + "\n", + "\n", + "## Table of Contents\n", + "\n", + "1. [Introduction](#Introduction)\n", + "1. [Setup](#Setup)\n", + " 1. Initialize a Workspace\n", + " 1. Create an Experiment\n", + " 1. Introduction to AmlCompute\n", + " 1. Submit an AmlCompute run in a few different ways\n", + " 1. Option 1: Provision as a run based compute target \n", + " 1. Option 2: Provision as a persistent compute target (Basic)\n", + " 1. Option 3: Provision as a persistent compute target (Advanced)\n", + "1. Additional operations to perform on AmlCompute\n", + "1. [Download model explanations from Azure Machine Learning Run History](#Download)\n", + "1. [Visualize explanations](#Visualize)\n", + "1. [Next steps](#Next)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction\n", + "\n", + "This notebook showcases how to train and explain a regression model remotely via Azure Machine Learning Compute (AMLCompute), and download the calculated explanations locally for visualization.\n", + "It demonstrates the API calls that you need to make to submit a run for training and explaining a model to AMLCompute, download the compute explanations remotely, and visualizing the global and local explanations via a visualization dashboard that provides an interactive way of discovering patterns in model predictions and downloaded explanations.\n", + "\n", + "We will showcase one of the tabular data explainers: TabularExplainer (SHAP).\n", + "\n", + "Problem: Boston Housing Price Prediction with scikit-learn (train a model and run an explainer remotely via AMLCompute, and download and visualize the remotely-calculated explanations.)\n", + "\n", + "| ![explanations-run-history](./img/explanations-run-history.PNG) |\n", + "|:--:|\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Setup\n", + "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you go through the [configuration notebook](../../../configuration.ipynb) first if you haven't.\n", + "\n", + "\n", + "You will need to have extensions enabled prior to jupyter kernel starting to see the visualization dashboard.\n", + "```\n", + "(myenv) $ jupyter nbextension install --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "(myenv) $ jupyter nbextension enable --py --sys-prefix azureml.contrib.explain.model.visualize\n", + "```\n", + "Or\n", + "\n", + "```\n", + "(myenv) $ jupyter nbextension install azureml.contrib.explain.model.visualize --user --py\n", + "(myenv) $ jupyter nbextension enable azureml.contrib.explain.model.visualize --user --py\n", + "```\n", + "\n", + "If you are using Jupyter Labs run the following commands instead:\n", + "```\n", + "(myenv) $ jupyter labextension install @jupyter-widgets/jupyterlab-manager\n", + "(myenv) $ jupyter labextension install microsoft-mli-widget\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Check core SDK version number\n", + "import azureml.core\n", + "\n", + "print(\"SDK version:\", azureml.core.VERSION)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Initialize a Workspace\n", + "\n", + "Initialize a workspace object from persisted configuration" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "tags": [ + "create workspace" + ] + }, + "outputs": [], + "source": [ + "from azureml.core import Workspace\n", + "\n", + "ws = Workspace.from_config()\n", + "print(ws.name, ws.resource_group, ws.location, ws.subscription_id, sep='\\n')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Create An Experiment\n", + "\n", + "**Experiment** is a logical container in an Azure ML Workspace. It hosts run records which can include run metrics and output artifacts from your experiments." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Experiment\n", + "experiment_name = 'explainer-remote-run-on-amlcompute'\n", + "experiment = Experiment(workspace=ws, name=experiment_name)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Introduction to AmlCompute\n", + "\n", + "Azure Machine Learning Compute is managed compute infrastructure that allows the user to easily create single to multi-node compute of the appropriate VM Family. It is created **within your workspace region** and is a resource that can be used by other users in your workspace. It autoscales by default to the max_nodes, when a job is submitted, and executes in a containerized environment packaging the dependencies as specified by the user. \n", + "\n", + "Since it is managed compute, job scheduling and cluster management are handled internally by Azure Machine Learning service. \n", + "\n", + "For more information on Azure Machine Learning Compute, please read [this article](https://docs.microsoft.com/azure/machine-learning/service/how-to-set-up-training-targets#amlcompute)\n", + "\n", + "If you are an existing BatchAI customer who is migrating to Azure Machine Learning, please read [this article](https://aka.ms/batchai-retirement)\n", + "\n", + "**Note**: As with other Azure services, there are limits on certain resources (for eg. AmlCompute quota) associated with the Azure Machine Learning service. Please read [this article](https://docs.microsoft.com/azure/machine-learning/service/how-to-manage-quotas) on the default limits and how to request more quota.\n", + "\n", + "\n", + "The training script `train_explain.py` is already created for you. Let's have a look." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Submit an AmlCompute run in a few different ways\n", + "\n", + "First lets check which VM families are available in your region. Azure is a regional service and some specialized SKUs (especially GPUs) are only available in certain regions. Since AmlCompute is created in the region of your workspace, we will use the supported_vms () function to see if the VM family we want to use ('STANDARD_D2_V2') is supported.\n", + "\n", + "You can also pass a different region to check availability and then re-create your workspace in that region through the [configuration notebook](../../../configuration.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import ComputeTarget, AmlCompute\n", + "\n", + "AmlCompute.supported_vmsizes(workspace=ws)\n", + "# AmlCompute.supported_vmsizes(workspace=ws, location='southcentralus')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Create project directory\n", + "\n", + "Create a directory that will contain all the necessary code from your local machine that you will need access to on the remote resource. This includes the training script, and any additional files your training script depends on" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "import shutil\n", + "\n", + "project_folder = './explainer-remote-run-on-amlcompute'\n", + "os.makedirs(project_folder, exist_ok=True)\n", + "shutil.copy('train_explain.py', project_folder)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Option 1: Provision as a run based compute target\n", + "\n", + "You can provision AmlCompute as a compute target at run-time. In this case, the compute is auto-created for your run, scales up to max_nodes that you specify, and then **deleted automatically** after the run completes." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import RunConfiguration\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "from azureml.core.runconfig import DEFAULT_CPU_IMAGE\n", + "\n", + "# create a new runconfig object\n", + "run_config = RunConfiguration()\n", + "\n", + "# signal that you want to use AmlCompute to execute script.\n", + "run_config.target = \"amlcompute\"\n", + "\n", + "# AmlCompute will be created in the same region as workspace\n", + "# Set vm size for AmlCompute\n", + "run_config.amlcompute.vm_size = 'STANDARD_D2_V2'\n", + "\n", + "# enable Docker \n", + "run_config.environment.docker.enabled = True\n", + "\n", + "# set Docker base image to the default CPU-based image\n", + "run_config.environment.docker.base_image = DEFAULT_CPU_IMAGE\n", + "\n", + "# use conda_dependencies.yml to create a conda environment in the Docker image for execution\n", + "run_config.environment.python.user_managed_dependencies = False\n", + "\n", + "azureml_pip_packages = [\n", + " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", + " 'azureml-explain-model', 'sklearn-pandas', 'azureml-dataprep'\n", + "]\n", + "\n", + "# specify CondaDependencies obj\n", + "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", + " pip_packages=azureml_pip_packages)\n", + "\n", + "# Now submit a run on AmlCompute\n", + "from azureml.core.script_run_config import ScriptRunConfig\n", + "\n", + "script_run_config = ScriptRunConfig(source_directory=project_folder,\n", + " script='train_explain.py',\n", + " run_config=run_config)\n", + "\n", + "run = experiment.submit(script_run_config)\n", + "\n", + "# Show run details\n", + "run" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Note: if you need to cancel a run, you can follow [these instructions](https://aka.ms/aml-docs-cancel-run)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%time\n", + "# Shows output of the run on stdout.\n", + "run.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Option 2: Provision as a persistent compute target (Basic)\n", + "\n", + "You can provision a persistent AmlCompute resource by simply defining two parameters thanks to smart defaults. By default it autoscales from 0 nodes and provisions dedicated VMs to run your job in a container. This is useful when you want to continously re-use the same target, debug it between jobs or simply share the resource with other users of your workspace.\n", + "\n", + "* `vm_size`: VM family of the nodes provisioned by AmlCompute. Simply choose from the supported_vmsizes() above\n", + "* `max_nodes`: Maximum nodes to autoscale to while running a job on AmlCompute" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import ComputeTarget, AmlCompute\n", + "from azureml.core.compute_target import ComputeTargetException\n", + "\n", + "# Choose a name for your CPU cluster\n", + "cpu_cluster_name = \"cpu-cluster\"\n", + "\n", + "# Verify that cluster does not exist already\n", + "try:\n", + " cpu_cluster = ComputeTarget(workspace=ws, name=cpu_cluster_name)\n", + " print('Found existing cluster, use it.')\n", + "except ComputeTargetException:\n", + " compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2',\n", + " max_nodes=4)\n", + " cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)\n", + "\n", + "cpu_cluster.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Configure & Run" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import RunConfiguration\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "\n", + "# create a new RunConfig object\n", + "run_config = RunConfiguration(framework=\"python\")\n", + "\n", + "# Set compute target to AmlCompute target created in previous step\n", + "run_config.target = cpu_cluster.name\n", + "\n", + "# enable Docker \n", + "run_config.environment.docker.enabled = True\n", + "\n", + "azureml_pip_packages = [\n", + " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", + " 'azureml-explain-model', 'azureml-dataprep'\n", + "]\n", + "\n", + "# specify CondaDependencies obj\n", + "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", + " pip_packages=azureml_pip_packages)\n", + "\n", + "from azureml.core import Run\n", + "from azureml.core import ScriptRunConfig\n", + "\n", + "src = ScriptRunConfig(source_directory=project_folder, \n", + " script='train_explain.py', \n", + " run_config=run_config) \n", + "run = experiment.submit(config=src)\n", + "run" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%time\n", + "# Shows output of the run on stdout.\n", + "run.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "run.get_metrics()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Option 3: Provision as a persistent compute target (Advanced)\n", + "\n", + "You can also specify additional properties or change defaults while provisioning AmlCompute using a more advanced configuration. This is useful when you want a dedicated cluster of 4 nodes (for example you can set the min_nodes and max_nodes to 4), or want the compute to be within an existing VNet in your subscription.\n", + "\n", + "In addition to `vm_size` and `max_nodes`, you can specify:\n", + "* `min_nodes`: Minimum nodes (default 0 nodes) to downscale to while running a job on AmlCompute\n", + "* `vm_priority`: Choose between 'dedicated' (default) and 'lowpriority' VMs when provisioning AmlCompute. Low Priority VMs use Azure's excess capacity and are thus cheaper but risk your run being pre-empted\n", + "* `idle_seconds_before_scaledown`: Idle time (default 120 seconds) to wait after run completion before auto-scaling to min_nodes\n", + "* `vnet_resourcegroup_name`: Resource group of the **existing** VNet within which AmlCompute should be provisioned\n", + "* `vnet_name`: Name of VNet\n", + "* `subnet_name`: Name of SubNet within the VNet" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.compute import ComputeTarget, AmlCompute\n", + "from azureml.core.compute_target import ComputeTargetException\n", + "\n", + "# Choose a name for your CPU cluster\n", + "cpu_cluster_name = \"cpu-cluster\"\n", + "\n", + "# Verify that cluster does not exist already\n", + "try:\n", + " cpu_cluster = ComputeTarget(workspace=ws, name=cpu_cluster_name)\n", + " print('Found existing cluster, use it.')\n", + "except ComputeTargetException:\n", + " compute_config = AmlCompute.provisioning_configuration(vm_size='STANDARD_D2_V2',\n", + " vm_priority='lowpriority',\n", + " min_nodes=2,\n", + " max_nodes=4,\n", + " idle_seconds_before_scaledown='300',\n", + " vnet_resourcegroup_name='',\n", + " vnet_name='',\n", + " subnet_name='')\n", + " cpu_cluster = ComputeTarget.create(ws, cpu_cluster_name, compute_config)\n", + "\n", + "cpu_cluster.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Configure & Run" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.runconfig import RunConfiguration\n", + "from azureml.core.conda_dependencies import CondaDependencies\n", + "\n", + "# create a new RunConfig object\n", + "run_config = RunConfiguration(framework=\"python\")\n", + "\n", + "# Set compute target to AmlCompute target created in previous step\n", + "run_config.target = cpu_cluster.name\n", + "\n", + "# enable Docker \n", + "run_config.environment.docker.enabled = True\n", + "\n", + "azureml_pip_packages = [\n", + " 'azureml-defaults', 'azureml-contrib-explain-model', 'azureml-core', 'azureml-telemetry',\n", + " 'azureml-explain-model', 'azureml-dataprep'\n", + "]\n", + "\n", + "\n", + "\n", + "# specify CondaDependencies obj\n", + "run_config.environment.python.conda_dependencies = CondaDependencies.create(conda_packages=['scikit-learn'],\n", + " pip_packages=azureml_pip_packages)\n", + "\n", + "from azureml.core import Run\n", + "from azureml.core import ScriptRunConfig\n", + "\n", + "src = ScriptRunConfig(source_directory=project_folder, \n", + " script='train_explain.py', \n", + " run_config=run_config) \n", + "run = experiment.submit(config=src)\n", + "run" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%time\n", + "# Shows output of the run on stdout.\n", + "run.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "run.get_metrics()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", + "\n", + "client = ExplanationClient.from_run(run)\n", + "# Get the top k (e.g., 4) most important features with their importance values\n", + "explanation = client.download_model_explanation(top_k=4)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Additional operations to perform on AmlCompute\n", + "\n", + "You can perform more operations on AmlCompute such as updating the node counts or deleting the compute. " + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get_status () gets the latest status of the AmlCompute target\n", + "cpu_cluster.get_status().serialize()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Update () takes in the min_nodes, max_nodes and idle_seconds_before_scaledown and updates the AmlCompute target\n", + "# cpu_cluster.update(min_nodes=1)\n", + "# cpu_cluster.update(max_nodes=10)\n", + "cpu_cluster.update(idle_seconds_before_scaledown=300)\n", + "# cpu_cluster.update(min_nodes=2, max_nodes=4, idle_seconds_before_scaledown=600)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Delete () is used to deprovision and delete the AmlCompute target. Useful if you want to re-use the compute name \n", + "# 'cpu-cluster' in this case but use a different VM family for instance.\n", + "\n", + "# cpu_cluster.delete()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Download \n", + "1. Download model explanation data." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient\n", + "\n", + "# Get model explanation data\n", + "client = ExplanationClient.from_run(run)\n", + "global_explanation = client.download_model_explanation()\n", + "local_importance_values = global_explanation.local_importance_values\n", + "expected_values = global_explanation.expected_values\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Or you can use the saved run.id to retrive the feature importance values\n", + "client = ExplanationClient.from_run_id(ws, experiment_name, run.id)\n", + "global_explanation = client.download_model_explanation()\n", + "local_importance_values = global_explanation.local_importance_values\n", + "expected_values = global_explanation.expected_values" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# Get the top k (e.g., 4) most important features with their importance values\n", + "global_explanation_topk = client.download_model_explanation(top_k=4)\n", + "global_importance_values = global_explanation_topk.get_ranked_global_values()\n", + "global_importance_names = global_explanation_topk.get_ranked_global_names()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print('global importance values: {}'.format(global_importance_values))\n", + "print('global importance names: {}'.format(global_importance_names))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "2. Download model file." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retrieve model for visualization and deployment\n", + "from azureml.core.model import Model\n", + "from sklearn.externals import joblib\n", + "original_model = Model(ws, 'original_model')\n", + "model_path = original_model.download(exist_ok=True)\n", + "original_model = joblib.load(model_path)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "3. Download test dataset." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# retrieve x_test for visualization\n", + "from sklearn.externals import joblib\n", + "x_test_path = './x_test_boston_housing.pkl'\n", + "run.download_file('x_test_boston_housing.pkl', output_file_path=x_test_path)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "x_test = joblib.load('x_test_boston_housing.pkl')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Visualize\n", + "Load the visualization dashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.contrib.explain.model.visualize import ExplanationDashboard" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "ExplanationDashboard(global_explanation, original_model, x_test)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next\n", + "Learn about other use cases of the explain package on a:\n", + "1. [Training time: regression problem](../../tabular-data/explain-binary-classification-local.ipynb) \n", + "1. [Training time: binary classification problem](../../tabular-data/explain-binary-classification-local.ipynb)\n", + "1. [Training time: multiclass classification problem](../../tabular-data/explain-multiclass-classification-local.ipynb)\n", + "1. Explain models with engineered features:\n", + " 1. [Simple feature transformations](../../tabular-data/simple-feature-transformations-explain-local.ipynb)\n", + " 1. [Advanced feature transformations](../../tabular-data/advanced-feature-transformations-explain-local.ipynb)\n", + "1. [Save model explanations via Azure Machine Learning Run History](../run-history/save-retrieve-explanations-run-history.ipynb)\n", + "1. Inferencing time: deploy a classification model and explainer:\n", + " 1. [Deploy a locally-trained model and explainer](../scoring-time/train-explain-model-locally-and-deploy.ipynb)\n", + " 1. [Deploy a remotely-trained model and explainer](../scoring-time/train-explain-model-on-amlcompute-and-deploy.ipynb)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "authors": [ + { + "name": "mesameki" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.8" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} \ No newline at end of file diff --git a/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.yml b/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.yml new file mode 100644 index 00000000..53d58768 --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/remote-explanation/explain-model-on-amlcompute.yml @@ -0,0 +1,8 @@ +name: explain-model-on-amlcompute +dependencies: +- pip: + - azureml-sdk + - azureml-explain-model + - azureml-contrib-explain-model + - sklearn-pandas + - azureml-dataprep diff --git a/how-to-use-azureml/explain-model/azure-integration/remote-explanation/train_explain.py b/how-to-use-azureml/explain-model/azure-integration/remote-explanation/train_explain.py new file mode 100644 index 00000000..beefff8e --- /dev/null +++ b/how-to-use-azureml/explain-model/azure-integration/remote-explanation/train_explain.py @@ -0,0 +1,63 @@ +# Copyright (c) Microsoft. All rights reserved. +# Licensed under the MIT license. + +from sklearn import datasets +from sklearn.linear_model import Ridge +from azureml.explain.model.tabular_explainer import TabularExplainer +from azureml.contrib.explain.model.explanation.explanation_client import ExplanationClient +from sklearn.model_selection import train_test_split +from azureml.core.run import Run +from sklearn.externals import joblib +import os +import numpy as np + +OUTPUT_DIR = './outputs/' +os.makedirs(OUTPUT_DIR, exist_ok=True) + +boston_data = datasets.load_boston() + +run = Run.get_context() +client = ExplanationClient.from_run(run) + +X_train, X_test, y_train, y_test = train_test_split(boston_data.data, + boston_data.target, + test_size=0.2, + random_state=0) +# write x_test out as a pickle file for later visualization +x_test_pkl = 'x_test.pkl' +with open(x_test_pkl, 'wb') as file: + joblib.dump(value=X_test, filename=os.path.join(OUTPUT_DIR, x_test_pkl)) +run.upload_file('x_test_boston_housing.pkl', os.path.join(OUTPUT_DIR, x_test_pkl)) + + +alpha = 0.5 +# Use Ridge algorithm to create a regression model +reg = Ridge(alpha) +model = reg.fit(X_train, y_train) + +preds = reg.predict(X_test) +run.log('alpha', alpha) + +model_file_name = 'ridge_{0:.2f}.pkl'.format(alpha) +# save model in the outputs folder so it automatically get uploaded +with open(model_file_name, 'wb') as file: + joblib.dump(value=reg, filename=os.path.join(OUTPUT_DIR, + model_file_name)) + +# register the model +run.upload_file('original_model.pkl', os.path.join('./outputs/', model_file_name)) +original_model = run.register_model(model_name='original_model', model_path='original_model.pkl') + +# Explain predictions on your local machine +tabular_explainer = TabularExplainer(model, X_train, features=boston_data.feature_names) + +# Explain overall model predictions (global explanation) +# Passing in test dataset for evaluation examples - note it must be a representative sample of the original data +# x_train can be passed as well, but with more examples explanations it will +# take longer although they may be more accurate +global_explanation = tabular_explainer.explain_global(X_test) + +# Uploading model explanation data for storage or visualization in webUX +# The explanation can then be downloaded on any compute +comment = 'Global explanation on regression model trained on boston dataset' +client.upload_model_explanation(global_explanation, comment=comment) diff --git a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml index b4d008e1..5657cbe3 100644 --- a/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml +++ b/how-to-use-azureml/explain-model/azure-integration/scoring-time/train-explain-model-on-amlcompute-and-deploy.yml @@ -4,5 +4,5 @@ dependencies: - azureml-sdk - azureml-explain-model - azureml-contrib-explain-model - - azureml-dataprep - sklearn-pandas + - azureml-dataprep diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb index 474d9496..490113df 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-getting-started.ipynb @@ -460,7 +460,7 @@ "source": [ "# Submit syntax\n", "# submit(experiment_name, \n", - "# pipeline_params=None, \n", + "# pipeline_parameters=None, \n", "# continue_on_step_failure=False, \n", "# regenerate_outputs=False)\n", "\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb index a7e1dabe..a0f413dc 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-parameter-tuning-with-hyperdrive.ipynb @@ -321,7 +321,11 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "tags": [ + "hyperdriveconfig-remarks-sample" + ] + }, "outputs": [], "source": [ "hd_config = HyperDriveConfig(estimator=est, \n", diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb index 8b6d280f..afbd1082 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-use-databricks-as-compute-target.ipynb @@ -299,7 +299,7 @@ "metadata": {}, "outputs": [], "source": [ - "from azureml.pipelince.core import PipelineParameter\n", + "from azureml.pipeline.core import PipelineParameter\n", "\n", "# Use the default blob storage\n", "def_blob_store = Datastore(ws, \"workspaceblobstore\")\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb index cd42882b..aa943c48 100644 --- a/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/intro-to-pipelines/aml-pipelines-with-automated-machine-learning-step.ipynb @@ -28,14 +28,14 @@ "metadata": {}, "source": [ "## Introduction\n", - "In this example we showcase how you can use the `azureml.dataprep` SDK to load and prepare data for AutoML via AML Pipeline. `azureml.dataprep` can also be used standalone; full documentation can be found [here](https://github.com/Microsoft/PendletonDocs).\n", + "In this example we showcase how you can use AzureML Dataset to load data for AutoML via AML Pipeline. \n", "\n", "If you are using an Azure Machine Learning Notebook VM, you are all set. Otherwise, make sure you have executed the [configuration](https://aka.ms/pl-config) before running this notebook.\n", "\n", "In this notebook you will learn how to:\n", "1. Create an `Experiment` in an existing `Workspace`.\n", "2. Create or Attach existing AmlCompute to a workspace.\n", - "3. Define data loading and preparation steps in a `Dataflow` using `azureml.dataprep`.\n", + "3. Define data loading in a `TabularDataset`.\n", "4. Configure AutoML using `AutoMLConfig`.\n", "5. Use AutoMLStep\n", "6. Train the model using AmlCompute\n", @@ -65,7 +65,6 @@ "import pandas as pd\n", "from sklearn import datasets\n", "import pkg_resources\n", - "import azureml.dataprep as dprep\n", "\n", "import azureml.core\n", "from azureml.core.experiment import Experiment\n", @@ -73,6 +72,7 @@ "from azureml.train.automl import AutoMLConfig\n", "from azureml.core.compute import AmlCompute\n", "from azureml.core.compute import ComputeTarget\n", + "from azureml.core.dataset import Dataset\n", "from azureml.core.runconfig import RunConfiguration\n", "from azureml.core.conda_dependencies import CondaDependencies\n", "\n", @@ -197,13 +197,10 @@ "metadata": {}, "outputs": [], "source": [ - "# You can use `auto_read_file` which intelligently figures out delimiters and datatypes of a file.\n", "# The data referenced here was a 1MB simple random sample of the Chicago Crime data into a local temporary directory.\n", - "# You can also use `read_csv` and `to_*` transformations to read (with overridable delimiter)\n", - "# and convert column types manually.\n", "example_data = 'https://dprepdata.blob.core.windows.net/demo/crime0-random.csv'\n", - "dflow = dprep.auto_read_file(example_data).skip(1) # Remove the header row.\n", - "dflow.get_profile()" + "dataset = Dataset.Tabular.from_delimited_files(example_data)\n", + "dataset.to_pandas_dataframe().describe()" ] }, { @@ -212,20 +209,18 @@ "metadata": {}, "outputs": [], "source": [ - "# As `Primary Type` is our y data, we need to drop the values those are null in this column.\n", - "dflow = dflow.drop_nulls('Primary Type')\n", - "dflow.head(5)" + "dataset.take(5).to_pandas_dataframe()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "### Review the Data Preparation Result\n", + "### Review the Dataset Result\n", "\n", - "You can peek the result of a Dataflow at any range using `skip(i)` and `head(j)`. Doing so evaluates only `j` records for all the steps in the Dataflow, which makes it fast even against large datasets.\n", + "You can peek the result of a TabularDataset at any range using `skip(i)` and `take(j).to_pandas_dataframe()`. Doing so evaluates only `j` records for all the steps in the TabularDataset, which makes it fast even against large datasets.\n", "\n", - "`Dataflow` objects are immutable and are composed of a list of data preparation steps. A `Dataflow` object can be branched at any point for further usage." + "`TabularDataset` objects are composed of a list of transformation steps (optional)." ] }, { @@ -234,8 +229,8 @@ "metadata": {}, "outputs": [], "source": [ - "X = dflow.drop_columns(columns=['Primary Type', 'FBI Code'])\n", - "y = dflow.keep_columns(columns=['Primary Type'], validate_column_exists=True)\n", + "X = dataset.drop_columns(columns=['Primary Type', 'FBI Code'])\n", + "y = dataset.keep_columns(columns=['Primary Type'], validate=True)\n", "print('X and y are ready!')" ] }, @@ -441,8 +436,12 @@ "metadata": {}, "outputs": [], "source": [ - "dflow_test = dprep.auto_read_file(path='https://dprepdata.blob.core.windows.net/demo/crime0-test.csv').skip(1)\n", - "dflow_test = dflow_test.drop_nulls('Primary Type')" + "dataset = Dataset.Tabular.from_delimited_files(path='https://dprepdata.blob.core.windows.net/demo/crime0-test.csv')\n", + "df_test = dataset_test.to_pandas_dataframe()\n", + "df_test = df_test[pd.notnull(df['Primary Type'])]\n", + "\n", + "y_test = df_test[['Primary Type']]\n", + "X_test = df_test.drop(['Primary Type', 'FBI Code'], axis=1)" ] }, { @@ -462,10 +461,6 @@ "source": [ "from pandas_ml import ConfusionMatrix\n", "\n", - "y_test = dflow_test.keep_columns(columns=['Primary Type']).to_pandas_dataframe()\n", - "X_test = dflow_test.drop_columns(columns=['Primary Type', 'FBI Code']).to_pandas_dataframe()\n", - "\n", - "\n", "ypred = best_model.predict(X_test)\n", "\n", "cm = ConfusionMatrix(y_test['Primary Type'], ypred)\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/nyc-taxi-data-regression-model-building/nyc-taxi-data-regression-model-building.ipynb b/how-to-use-azureml/machine-learning-pipelines/nyc-taxi-data-regression-model-building/nyc-taxi-data-regression-model-building.ipynb index 7b4fedf5..fa5d1121 100644 --- a/how-to-use-azureml/machine-learning-pipelines/nyc-taxi-data-regression-model-building/nyc-taxi-data-regression-model-building.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/nyc-taxi-data-regression-model-building/nyc-taxi-data-regression-model-building.ipynb @@ -1,5 +1,12 @@ { "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/machine-learning-pipelines/nyc-taxi-data-regression-model-building/nyc-taxi-data-regression-model-building.png)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -187,7 +194,19 @@ "metadata": {}, "outputs": [], "source": [ + "from azureml.core.compute import AmlCompute\n", + "from azureml.core.compute import ComputeTarget\n", + "\n", "aml_compute = ws.get_default_compute_target(\"CPU\")\n", + "\n", + "if aml_compute is None:\n", + " amlcompute_cluster_name = \"cpu-cluster\"\n", + " provisioning_config = AmlCompute.provisioning_configuration(vm_size = \"STANDARD_D2_V2\",\n", + " max_nodes = 4)\n", + "\n", + " aml_compute = ComputeTarget.create(ws, amlcompute_cluster_name, provisioning_config)\n", + " aml_compute.wait_for_completion(show_output = True, min_node_count = None, timeout_in_minutes = 20)\n", + "\n", "aml_compute" ] }, @@ -735,6 +754,8 @@ "outputs": [], "source": [ "%%writefile $train_model_folder/get_data.py\n", + "import os\n", + "import pandas as pd\n", "\n", "def get_data():\n", " print(\"In get_data\")\n", diff --git a/how-to-use-azureml/machine-learning-pipelines/pipeline-batch-scoring/pipeline-batch-scoring.ipynb b/how-to-use-azureml/machine-learning-pipelines/pipeline-batch-scoring/pipeline-batch-scoring.ipynb index bf2a4dae..a10f9297 100644 --- a/how-to-use-azureml/machine-learning-pipelines/pipeline-batch-scoring/pipeline-batch-scoring.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/pipeline-batch-scoring/pipeline-batch-scoring.ipynb @@ -387,11 +387,15 @@ { "cell_type": "code", "execution_count": null, - "metadata": {}, + "metadata": { + "tags": [ + "pipelineparameterssample" + ] + }, "outputs": [], "source": [ "pipeline = Pipeline(workspace=ws, steps=[batch_score_step])\n", - "pipeline_run = Experiment(ws, 'batch_scoring').submit(pipeline, pipeline_params={\"param_batch_size\": 20})" + "pipeline_run = Experiment(ws, 'batch_scoring').submit(pipeline, pipeline_parameters={\"param_batch_size\": 20})" ] }, { diff --git a/how-to-use-azureml/machine-learning-pipelines/pipeline-style-transfer/pipeline-style-transfer.ipynb b/how-to-use-azureml/machine-learning-pipelines/pipeline-style-transfer/pipeline-style-transfer.ipynb index b0deef24..6ddaba93 100644 --- a/how-to-use-azureml/machine-learning-pipelines/pipeline-style-transfer/pipeline-style-transfer.ipynb +++ b/how-to-use-azureml/machine-learning-pipelines/pipeline-style-transfer/pipeline-style-transfer.ipynb @@ -384,7 +384,7 @@ "source": [ "pipeline = Pipeline(workspace=ws, steps=[stitch_video_step])\n", "# submit the pipeline and provide values for the PipelineParameters used in the pipeline\n", - "pipeline_run = Experiment(ws, 'style_transfer').submit(pipeline, pipeline_params={\"style\": \"mosaic\", \"nodecount\": 3})" + "pipeline_run = Experiment(ws, 'style_transfer').submit(pipeline, pipeline_parameters={\"style\": \"mosaic\", \"nodecount\": 3})" ] }, { diff --git a/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb b/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb index 047068f3..5b4618b9 100644 --- a/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb +++ b/how-to-use-azureml/manage-azureml-service/authentication-in-azureml/authentication-in-azureml.ipynb @@ -26,9 +26,10 @@ "\n", " 1. Interactive Login Authentication\n", " 2. Azure CLI Authentication\n", - " 3. Service Principal Authentication\n", + " 3. Managed Service Identity (MSI) Authentication\n", + " 4. Service Principal Authentication\n", " \n", - "The interactive authentication is suitable for local experimentation on your own computer. Azure CLI authentication is suitable if you are already using Azure CLI for managing Azure resources, and want to sign in only once. The Service Principal authentication is suitable for automated workflows, for example as part of Azure Devops build." + "The interactive authentication is suitable for local experimentation on your own computer. Azure CLI authentication is suitable if you are already using Azure CLI for managing Azure resources, and want to sign in only once. The MSI and Service Principal authentication are suitable for automated workflows, for example as part of Azure Devops build." ] }, { @@ -145,6 +146,43 @@ "print(\"Found workspace {} at location {}\".format(ws.name, ws.location))" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### MSI Authentication\n", + "\n", + "__Note__: _MSI authentication is supported only when using SDK from Azure Virtual Machine. The code below will fail on local computer._\n", + "\n", + "When using Azure ML SDK on Azure Virtual Machine (VM), you can use Managed Service Identity (MSI) based authentication. This mode allows the VM connect to the Workspace without storing credentials in the Python code.\n", + "\n", + "As a pre-requisite, enable System-assigned Managed Identity for your VM as described in [this document](https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/qs-configure-portal-windows-vm).\n", + "\n", + "Then, assign the VM access to your Workspace. For example from Azure Portal, navigate to your workspace, select __Access Control (IAM)__, __Add Role Assignment__, specify __Virtual Machine__ for __Assign Access To__ dropdown, and select your VM's identity.\n", + "\n", + "![msi assignment](images/msiaccess.PNG)\n", + "\n", + "After completing these steps, you can use authenticate using MsiAuthentication instance." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core.authentication import MsiAuthentication\n", + "\n", + "msi_auth = MsiAuthentication()\n", + "\n", + "ws = Workspace(subscription_id=\"my-subscription-id\",\n", + " resource_group=\"my-ml-rg\",\n", + " workspace_name=\"my-ml-workspace\",\n", + " auth=msi_auth)\n", + "\n", + "print(\"Found workspace {} at location {}\".format(ws.name, ws.location))" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -238,6 +276,135 @@ "See [Register an application with the Microsoft identity platform](https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-register-app) quickstart for more details about application registrations. " ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Using Secrets in Remote Runs\n", + "\n", + "Sometimes, you may have to pass a secret to a remote run, for example username and password to authenticate against external data source.\n", + "\n", + "Azure ML SDK enables this use case through Key Vault associated with your workspace. The workflow for adding a secret is following.\n", + "\n", + "On local computer:\n", + "\n", + " 1. Read in a local secret, for example from environment variable or user input. To keep them secret, do not insert secret values into code as hard-coded strings.\n", + " 2. Obtain a reference to the keyvault\n", + " 3. Add the secret name-value pair in the key vault.\n", + " \n", + "The secret is then available for remote runs as shown further below.\n", + "\n", + "__Note__: The _azureml.core.keyvault.Keyvault_ is different from _azure.keyvault_ library. It is intended as simplified wrapper for setting, getting and listing user secrets in Workspace Key Vault." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os, uuid\n", + "\n", + "local_secret = os.environ.get(\"LOCAL_SECRET\", default = str(uuid.uuid4())) # Use random UUID as a substitute for real secret.\n", + "keyvault = ws.get_default_keyvault()\n", + "keyvault.set_secret(name=\"secret-name\", value = local_secret)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The _set_secret_ method adds a new secret if one doesn't exist, or updates an existing one with new value.\n", + "\n", + "You can list secret names you've added. This method doesn't return the values of the secrets." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "keyvault.list_secrets()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You can retrieve the value of the secret, and validate that it matches the original value. \n", + "\n", + "__Note__: This method returns the secret value. Take care not to write the the secret value to output." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "retrieved_secret = keyvault.get_secret(name=\"secret-name\")\n", + "local_secret==retrieved_secret" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In submitted runs on local and remote compute, you can use the get_secret method of Run instance to get the secret value from Key Vault. \n", + "\n", + "The method gives you a simple shortcut: the Run instance is aware of its Workspace and Keyvault, so it can directly obtain the secret without you having to instantiate the Workspace and Keyvault within remote run.\n", + "\n", + "__Note__: This method returns the secret value. Take care not to write the secret to output.\n", + "\n", + "For example, let's create a simple script _get_secret.py_ that gets the secret we set earlier. In an actual appication, you would use the secret, for example to access a database or other password-protected resource." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "%%writefile get_secret.py\n", + "\n", + "from azureml.core import Run\n", + "\n", + "run = Run.get_context()\n", + "secret_value = run.get_secret(name=\"secret-name\")\n", + "print(\"Got secret value {} , but don't write it out!\".format(len(secret_value) * \"*\"))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Then, submit the script as a regular script run, and find the obfuscated secret value in run output. You can use the same approach to other kinds of runs, such as Estimator ones." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Experiment, Run\n", + "from azureml.core.script_run_config import ScriptRunConfig\n", + "\n", + "exp = Experiment(workspace = ws, name=\"try-secret\")\n", + "src = ScriptRunConfig(source_directory=\".\", script=\"get_secret.py\")\n", + "\n", + "run = exp.submit(src)\n", + "run.wait_for_completion(show_output=True)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Furthermore, you can set and get multiple secrets using set_secrets and get_secrets methods." + ] + }, { "cell_type": "code", "execution_count": null, @@ -267,7 +434,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.6.4" + "version": "3.6.9" } }, "nbformat": 4, diff --git a/how-to-use-azureml/track-and-monitor-experiments/README.md b/how-to-use-azureml/track-and-monitor-experiments/README.md new file mode 100644 index 00000000..6f46406a --- /dev/null +++ b/how-to-use-azureml/track-and-monitor-experiments/README.md @@ -0,0 +1,19 @@ + +## Follow these sample notebooks to learn: + +1. [Logging API](./logging-api/logging-api.ipynb): experiment with various logging functions to create runs and automatically generate graphs. +2. [Manage runs](./manage-runs/manage-runs.ipynb): learn different ways how to start runs and child runs, monitor them, and cancel them. +1. [Tensorboard to monitor runs](./tensorboard/tensorboard.ipynb) + +## Use MLflow with Azure Machine Learning service (Preview) + +[MLflow](https://mlflow.org/) is an open-source platform for tracking machine learning experiments and managing models. You can use MLflow logging APIs with Azure Machine Learning service: the metrics and artifacts are logged to your Azure ML Workspace. + +Try out the sample notebooks: +1. [Use MLflow with Azure Machine Learning for Local Training Run](./train-local/train-local.ipynb) +1. [Use MLflow with Azure Machine Learning for Remote Training Run](./train-remote/train-remote.ipynb) +1. [Deploy Model as Azure Machine Learning Web Service using MLflow](./deploy-model/deploy-model.ipynb) +1. [Train and Deploy PyTorch Image Classifier](./train-deploy-pytorch/train-deploy-pytorch.ipynb) + + ![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/how-to-use-azureml/track-and-monitor-experiments/README.png) + diff --git a/how-to-use-azureml/track-and-monitor-experiments/logging-api/img/run_details.PNG b/how-to-use-azureml/track-and-monitor-experiments/logging-api/img/run_details.PNG new file mode 100644 index 0000000000000000000000000000000000000000..9bfe60fd12296121925588ee3e8a2fc42f6e06e8 GIT binary patch literal 30114 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

    GzF+*T{KC2Ce=YL=0HkUX3FVaivqDIwQI3l| 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¬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%0At_j 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

  • 97aqSm#mI!zcVsbp!K%&&mG)8n>#zw` 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�n`1jZW)6d#l* z`cqcPiR6kXrXk|Vv)Y&J2h?JUDS*>vM?15MnkxeQmcbS36$~8JV-hY4HQxV$_KqOlE;cDrT|p- z%{QlBD58KG?T(6Ro?uay82Zsg06TbP%AT}@jlX(|C=h@T?+R&A&Q55efDl9t6j4YI F|Jh)%f@=T( diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml deleted file mode 100644 index 8e6fcb6a..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml +++ /dev/null @@ -1,98 +0,0 @@ - - runfourftbackdropvalidation - 1556331930.159372.jpg - F:\runfourftbackdropvalidation\1556331930.159372.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 359 - 70 - 430 - 160 - - - - stockout - Unspecified - 0 - 0 - - 246 - 77 - 308 - 161 - - - - stockout - Unspecified - 0 - 0 - - 154 - 84 - 205 - 163 - - - - stockout - Unspecified - 0 - 0 - - 24 - 101 - 65 - 179 - - - - stockout - Unspecified - 0 - 0 - - 58 - 188 - 116 - 254 - - - - stockout - Unspecified - 0 - 0 - - 179 - 177 - 247 - 247 - - - - stockout - Unspecified - 0 - 0 - - 308 - 178 - 375 - 247 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.jpg deleted file mode 100644 index 15be4311c013dea73198096b8091557fbd606753..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33623 zcmbT6bx<6z+vgW|DAwY(i%VIoxVyW%yKQlYqQ!P`cPmodX`#sCUfha1#f$d(d*7S8 znfvSRo=h^CNhXueJd_0-&R!qM@RoqoJW; zV4!1S6X9TEVPTUJ5aJP0l2KDpl2K65fH)Xw=-7Z16igqO**L*GJUrBl0wVle!W`T@ zT>n`F0RsaA8w;BR2Zw}b^z7PBYf>P2lvU2hYidxz_x_bHs zhE~=#ws!Uoj*yRD-afv5{t=%dqoQMC<6tSNY3Ui6S=q%UrDf$6l~rFFo0?l%+uA!i zfAkLw4#9^`}%VgvlyLis_LJ z>%BN5Str;hYP6U&O9~vFttB{SHhT<_!L?~}Rv22c#I?=db7?H#&er@DW_6t6EXL$d zO=pkuGsc4~p*1+Xnkq|E%L7qH=wxij)M;9RCS9}-GLGfe!}9Ar-bK80`fH8P^;}81 z+h4P#J2h;{9MGY;R-$R2MRS-sY;-_Wx9c2PqMlO(2W#1$hxX))4w8IP>-@(@}9G;t7AI>6?A4Z+tL`c~^nQE$uP83i$if^oDmx{45H<%j!Kz?M=wo z>{`>7tilbZS zV}#a6>prb^;h!yJu=$fgnsPq>@R5kl3L^Lm=)|a={^K=QS9pqML0apbCQjdDzH1f%$Cak#nyPA>3c36hY64=`IH zGObyK2P#?Fj*{icya%uc&28Zl>}qEf5YiPjX%8Lkh?9m(MGW zwOJb0w{r^mb!tzBoZ5{=R}whV&cV3^SE~haHP;V4nUK^e+f@qxwvWx%$KQ+T2VysZ zM<(dI#z5fiOY~Ap2-WF555{MrB#`|%8JBOL@T~Y%Cn1|GH6&Xn*oa1K}^_9=7JTsId&2|i?f`sPW5xl23g!y!10{mr>=M%qz4Hf-`&eC{g` zG`4%BdqItDq?0n?+8G{rKWUGs;UT)8G{TQ>{zi^sKjn?BnaKQ?2VW`!Etp#1ED~+I zMT>A@37QzETSXa3#u=B*+%O9wgQ)r1?!i?lmCuSn_rTMKjL^)72tBxzA76LukrgMcEp{w8*vuMiZbbTz>e8ysp*9Px4WlqbxHndzrc6c#e>oa{FZy zUD^V$;%>?i_-OOGwAVS`!&jP)s|=oLycG#|R2c7NZquKdxb}+|$9m;yjLj+nbJf^C zq#0nnRTB@;RAd~tWCkjWO?}V(+QOsx){1T@@RM$G{g2_nVAB_74(w_q-fl~UD9(6~ z0z-xF9TFqEc(A$W&KJ9aq0dP?11b$k!CP`Uy{q{lWXfo&vvSy9v4frCI<(Qqa}ve! z$aAHQEI0^7P5r5rXTau3dse;_t~aGYPh#F*tdT-}%Rj+^P0}@^zv6ZagemT ziMNZ35(*OCeVa(`fa;xBQZzhVjXzAa&VV`A;R6^87cI_l19`5p)#D_$b0M@jAk9Bb zv!+W6+A=E;<&*ud9wLPwVH}&HJTVSMxR{{h2-Fx+UM8 zuOgM11C?!TRWxQ<6xdt&#}12xDmY!jZ$$b)fpNWFw-awAL0qHs@&m3~4h-VrfESbx zTsbwb7pHr;3SxZcn+xeW?tpkiAB1bF@Ek!U#&pZv0Zs97@%47x!h?m(XyoLn9+Nnp zfWU7BAB_J31SQ@)DXG#!I{2K~ukv5;{9WcTnBxpeebYD0xLN)nCvvKJOmJPF#*(dV zoa(fhj{$EagU}06pf%>-;|vU$&g;<9b8=9652&MWE5-!-L70a=imMWepyqrPT=+MYRK zAUgVl682bw91=5&6V)95sw>2I*!+-5<~C-bUftzcW?9^QlYYt}CXzL)8 z7GQ%XA>vqUR1jHR1v>DzEschxJEI1o)#2K`=yzsp9_`72d+riDjF)AdQRF##;YT`! z<{!d+MXqm(CER#(Nzwv7`8Mg_&4-)TFN?bYFj1y6)P0+mH)a^ z0;nt_`P!U7PZrDAxcb_p*Gal zl(`mOy#64sXzudkFTm$7;Hx;Yq&kJN6kwpzRMb#D-F)@|#u{a*Uc7@u$rQ(|QQ=_c z0NrH^EmV)7WPZ!2P?1({r)SZE-m8qeX*`YiWw>#2iV56=SVFQ2SCmme8K3nlEAc|0 zTTO`0&Ap$ZPGcDw1Ge7vAz}Jr-IQMan7qoOW-D|S^YS}pLg=C}79O$%b0OpJ?CGMx z@C?m3%vwm}C#}Gz_-79iQyZue)Q?(g?}8?%Cd$4UBP|l4hjkKW1ik7`%8fc}=#VFA)25AWF_fp2L z_U*m-?Sv%O#JZF?eE`5y0py4^e+`hOY{Gr}%2TM;eNqt-OxDbnG7PUB;n~d4zLYSQ zii^%mc31!??62Y8#KT43RSF?MY>uGua75a^l~AyyK9 z@21TXgT+(NU%*F-`{x90Zt$JdXmspEdJhy~NBW3*1xKY_xVg zrt9zj0#4>3q|%@t4e7)1O!tz7Pz-D9us!_^$#+8Us>-t6INs(BWTKOluhrjer@QfL zBy?hch94AqkGUfhgt`@#!CB<)jb zBJcoKa*5kShSd~uw%2fEA?GB1F{H@~x8g|EB5OybI|Q97Jd+6TuH(|PovSX1IBUJ2 z^C~6xaTgo2qL#?vjIWS@$j%eZ7@G7|O7kck(pPn&cePeFphv(W4orrUAR*&VRi)vPxjOB&KZh#=+Jzl>M@?iF@h zN9?+DTl%DJP&f&%{G+Acy1*Oj0z&hFnbPo&P|EE+S3ADcHBTtXWGFWz)Y5nOUZnGD zw<8CBEtnEByfPs)GI?*(&_jVR_!F~5mv~d zo+7@b*R~(nNn>IH3%5;nP?B^8G4>xC&+W&>uBPm1lWGC@?EQwwdDF(uEK_erqi#u0 z=GCYD7NRx`NbebjpuxJrUON?vbP5Cpl;wU%t$TXvd;xfl^3q^oXvtpch0S`dZ79X1 zgh)eM27#nHD+aC)6Xn#uJGF#J-5)TBUh(T#KAN-7k@S1?Y$e|qJbaW?+^oZpJT_}r z>o=J{1tcD)U(?f7@CCL(adbY-stx10FodUYG zCMRLo^C2MCTKQp;Jhu)_;z&Mhy1@q*WAt)1GQRYBWWNamS4U0eQ5{<2qs0%CoQh(Z zNRC+Yz7WSrWJpx_ta?r#bWGu%`w=x}`zqfLd-Bx^75zEp&*8WA!$f}FW7~w0v>zEJ zyIa^hNNrjw2`(i)xj+Ojx@yIa-LPK%XB8eqIOZS(LIYhcT}`tcHpb-?^5W@|%bn;t z=%t6uZDfm1zNcW8fY62SFoLi{L-H_b-?=pq8K;g>?Lm|gtYSdFE|0~6ulB8RAW5g8L&fT>7sNhH(@b)jj&Gtcb z*6JZ@r_0uVJ6q=aU3deNn{Y{@YGC(YK<-?8GS)BLshgztLU$j{&i7NhEzi{7Uj+8_ zT|Ntt8qeC$k>;cHB(Z&WvQM1$Po4S;Fs*K$4(dcr8GAA;@e?n|<>2&Kovl&6%qff1 z=$^w5dg1~g2bTWSV!;{+Eg>c2>igl2>Tf-Zlr>Mk=oU=-EyJo>!DfFI!=)EcK9kT- zax$09@{$*w5WI5Yxd2nK-;*){_z?a~4#fp0{!G|u-)ZZdy=6{Y2HGUtxof*lp*8Hc z?ss>>P9~kQXnRa@40Zv6*a*1cL;ml=Wdripv6=jnq!=c<}|n4g7dHj?5*o-8pQ_{&!VD&Nz=$Hds2}B0=LLL z%`R#n8sODL29+CwhC0ZVgE!&Zt6L=`PW_OziRSo|UOnh7!2b{HWtzjZZ4NtNjazU9ss5 zv2(fW`oN|5dfJux{<<=Kr(xp{%59$N(D~zEfO>oO zrn~;YCj$6tlHzG8?s=2|-&tVWD6ZaYlMCC~$0rrR8O|i1`dUZ=fnVhI)pLE$cfa=QrqxYeQtVmag-0{x*mBRY zGT3)b01$%9oqO}zJRSD=TvrE8U`=96%V60yPK-H=;(1b#aUtVATw7>ybV*89j=o2t z5RC(EREsifgol&l3dsXomLaJ3+vUA>lG$Vwl=iv~WFAXov;13LVr{m1*v@^pmsSeRlh;;Ma@f`7yIiSOZq6w43<=$GhwD(4>Cd^mH;J2PaRv#C_ZLYvlkR z>-{h3Tq>ZvjTOJ!fkO%1#>w*`M~Xl?@05u^ zu1{BqoOqSRDqlWyIcpyX>>Md~@LfJYCi|pat{NCAUYHPm>Dbw_`E(vwxbokX<2Av( zy+0Z3nPvV3_~QKqn1C*DIuaGM*l-7FJtf3u%b=fZJWF$T!gAG-#6EJE=n5;)o!i1U zkmes}_R~Ap!vj#^=^`E*(D-us%laWm7h{1XSRBAb z%ID{{m$ts|U8?1AmxV?0ZKB@KMs1?&n+!HAYv$*?Gy-<1ry9v?Gmq;cD`Re-WSaeD zKh@f-Ig>*AmE>f;>@-3K(zmmeZYLRz7|E z9HZ1(DN6oo7ZH~mF6mo}7~|nR7YiCIL}Ys|q3kWypK;wVpS1A;RJn3;4^wu|a<;v5 z?}{W$*11L7@0&jSxF?wVcQ-Ln~ zB10-ABvb2*mppR}@82R3WnO(Ib>~YAK6f~seV8ehCZof!V^64P!M43F!Hk5Om$e@|zin%UXKW0mTKb@Fy8kN4qhE50Z}CzW}Xj}Kx7H3QOblY$l46y9- zMm@Pz5ax?F05Lk zw+#XXD6TgQJXNMWb9&YyqB|h{R>?$g30Ew(T|~5_ZpCT1)|IY#zJzXLZ-tsWyy938 z^D?TYIi z(0;}ykU^xZ$FL3>j73nii-g~nq6dyp=4FaW2U-#J8NO(pi3f6yW3 zC;N|~aVd%@NWKDmPka6S>Y(m;ot{$o&+fziq^v1G!DJ}?&r-9-#sfNq@L(i?7ZqES zUW%VRDt-AYZ-ry-^F6uXe*v{RVI;y4+NIH>OXm5^YQQ+boo5H`MYP|=hu(tm3k%*Q1F}*uXUTjyHS+BtHa7$)uAfNsaa{bXebJu~#h(I)2D_5;AI>Pu}Wh zVqBxbyRIcUoyS=}7RnQG1zNlA#O?1n914iwP8qy&DcPW;|LOYtoo_iV3i%Q)>@%oB z*wydCbLj`^R%B3qS?r|`;c_ewbDyB0!b-UkH=e;OvvNea{|!Y}D&rs}(IH%7|-U|xMTa+C{Eb>p6l zp(~Lbhz4y{7NR69mqJbH!pI$A!M|@S;QMcsLy=&pc)Jcow%k>k!nNJ;kUyGo3<&l&e@z@Z9C?tv7 ziqH2J@E5@1%z%DQ-x|v&-=5Z3YTXuibLznP?uBfBF1bm3Y#1m2zvhwS(R*uYKiwSQ z!*X_zQJ@=uIFA6(5}8NIGJQCcqDE|$)N z<2I6A+GA5;fxbA(*lXy)C<+p1{a5Yh|qcjga|$MYLWE0n0m+u5jW5 zs?1U(4wUaB?Bf=3{7fFht^@uWo-;q7V{9rM6eufMENUT+xnM9Fx@W(TQRU;DEjO08 zJrIwH6jK%9*&cxbLbbV;#r5Qgwmuc?U<;EUx1e?Kd@^!)Dp`POa18`cR!)W8CyiaG zrdivV(I)d-XF2`6dR!dk)<>~gi2tUrRM$6pWnjbU;z}{* zKCsm8!fLTa_X@t!y?$;i(>At#wIdcl)zhSFtv@mB88NvedvWK#!;4Gz0ee+0ryg+& z(pEn~3nh_S8@cZA35D;u?x1}Wfjn1_-Ntj|zZKaxFi4woTLF|_WQB|zksi-hKAP^BHpAbC9xf-N6j;n}Phdg55EX?4ajVkz# zgOG*lM`*6lT3HQU`Q}GU4Xt7HUmD0u**u0HqVUQcNr491v{`XTX`=uM%D(CvbG~gO zuNcYLv=#2F*@47_Ff#A~aPvs35GZQIbU~B2atv{=e7ftv)V~{kKCWGiZ0;If<)gKp zRBrI>UpokA)hJ#Y%k-`m7%@fv3lP>Oz{mQ6vufgxx*96tn1U2HPrDFEO5x;MuVle& zJ|NZHQ4B-Q(OiC8#XT6bH8ruUV_*TxQ*_s%(<9tuxN4m&Kd+%73 zLfu1eMIxoAg}wJzKJ?3wBp3ta;iPcY?R-d!?3O%$@Z>@~Q#d}omStdYz^1!sQEa_J zel*618R@AM5;2>_n6-!ScKQLO&EKa&KtPRMLUS$L9}}5IWr~0$KI9`dcF5xiqg>*` zj_!h&Qb2P@K&Z! z>{@Wgeed??)buhH>8uu~4APYvplL`a`1u$oUVuWgpB74H(mg!*J7_|sr}YN0qtr)o zf#%^QL=hSG6{49jD0_~1xzXe!8wUfzjf?*l$JUH1BS^2uht=g+BLzAXr1BP4Z$FPUnK(d|IngZU>k6EqnV^bktS zf3)1n*SUVoNva=$Z8#GcRhMs>RZ^`ppR%rXL}Rfj_R5!jNm<%Xg|nr9GaPBPEPSW& zZ1S5qxob4NX}F9&9exM3pj>Iwl0)VCA zZ@q`6`#8mmvTa~Yvz(VOsn%1Mqok7u&28H@dLqzxj~`H=jB|_y1sgw%)LiKPL?Lu; zpETo~gzs0hXMo0DTjoHkc09@rPaAq%<+UoU{wgRIfb37@nERL?50hbg%&Q0UX~%}a z8vrj%;zru5Y>}mGvk0F=h&1JhJf@g62g_W>YX(AtdRVfZ1f3Uuuk^7_`OxLENN@Ud zjF7fyt0q?wAMwS<}{Z+_|jGm`G4e;!|#LuAk&y$>}url@-|9wG3rg+W%?A z&6x^M;xQ)(>48traUhPEpU|(xMRLtmpILVq|d{4W)gi9^L3 zDnGkUXYQa?!pi{q9h^$e8`haITNk>oR6R1bzQuo5e7(wJDxnpz>bYCi2W|B)jwh0< z!i|KsoO%?N9h;=*E-bT~?(`KKeE}#W$gdwUifi}FwlSQo+P??rwAvcH8*lAhUy6TW zN!?&vu(L7nLNCRl@e-BfTR4@Kqc)5(F{psr4XjSvM~QjeNA;7?v91Z6_+we(bR;AK1>*1Es@0NeO6-Tk({`nkqDhE~kji+ICc z9`t*oAlb9wjmKt+l*@VK*nH1HdmgdXxQ&9{)H+WR^9B)ik*1G7nT&Y95UE;6$(SA~ z{6tfeb$FlyIWP>;C31{&cECl1$XQsOGJjvq@TRvxb`lpL;)qW|Lr97fe>QbnIwVca zmDlTxB-9h+lruj!VX*#NzxCI-Am-Y9T}e~JB<2JSfJR`2dqgY};vfHG)6_}GPk1j< zGKv!2qTpDJWmI_sc5G=lKE2HI6+O@Sz!<)`$5{2%u*27GuD0B0I{8ZxGJ{gCJK9e6 zl?x~`NhcOyvTXZ^$ZhfsT4SVER-Wa@+2-ZGFjqf%AkbI#_H!-jt?cS*=n53NR8 zDh*(W2)0?rJVh|!-6V(QS3$suOO%vaFc<$ce_`!rk+$EH=*GoOlEzu$0Q5NsQ@q1& z7$x|Ho>JmMo-t1#u!|kcGw$4(O8=&(k9T|HQfLTU zl}qV|ihoLPxf52b3k(EX-_n%rr`kiJOwx!;IJF}fW6dH0DUm4we<|T#gYN;j{@2=B z?8fj*&;sm_FB{vjO@<|Gd2*wBk-ErW;Bh2`%tYztGdI&HoE>rnp6kyV!sMkT_a)ao`FFoE|_=?h5UO=K-|Z=1VQPm zH0TIZS12RNq{tVZ^^SkCc2&i%Xux$mo?{7v{FZP-hc}9mFH-1wy__TyD1(jq99J%+ zR<4P?Yj5=VyP|_+-7E{UH-eHCjC(e$_*?noCx70PBdA|?^eB{BUE(3iSC|T;>OH+v z5S@X%PL@lWJF2Kve3EM(OZnG|Z$*@GeiP_zo$qkk{#+)%t@@Lq@n+BoH)Lm9H#x}$ zV0BvsYiCHAk78UZl9SmfxW3TDm=xG=wCaRu3GjXiqirYIbY#c(A_bC67D((c%R zp0}rg$c^}WNsi)mWez)Fhxk4obS@7Hxvv8IC3sXrwDT;#6)163+{ldu;RHh5?sz26 z4gow=69f($+KNZqvb4dZe6H*l1=kBTQxFPhW^r2-(|EB|vw8jNnbaL?@t#Z<)fdkY z;o#H+>@zF&Q5kFpqI`{qrk+V~l4BrLVia0tQ#WQ)rQ$!0v7(PmWqOK&^tfHy7FWUX zl`7AX6alLzs~*QJ>Bn!l72fKGT1(7*dnik&$30{thcB$$sNXGzJWF}qVBfszw(l>1 zzh<+EwlcH2c2jn15GB=)K1~|=D!4_aj`4aw?c8iKtxZwNJpI1*MNhFYqW>P{w4}Kc zCLK5PJVd`La^-LN#l-MX-B3|d29zVOv!NfwKZpf;LfjL0>RNJXwDyLMkix}keN3q{ zaR??EpwKo7b8D*SSFa&-E0!ucTGvljVJ5bbp3oH~0x*g`g+JBKgI10SqIYZ57(W3^ z;Dfp9ulo>cMJw#_cqEUt57aOIpVn@th&G$41{SPS%(L|F#X~!ARhY1?Un$#n&k#!)m3?rr9JY=D=-^vek^ljDyfjsle zIZL-)g=&kA+wDh|ehqi^z>Zvi7-olCt(gQuq61BaFzP#&Xtc^lcQF=X2duQWt~YCb zPL^$&ipwsI(sCnnG(IC2+98cCj4q!Ym_p9a`bdx9js;Ja*G?q)liY2#hJOgqoOJ`+ z{8M%ns%3rtT`W~hLkP8xhXX68e}4Q^)9l^B8sOwx)9^VUW(YLtLkyflx~|)ir^CS= zL6yKyL_f+8sr7TNefqv>HpmE!aJPPKIWi2eQw?QC32Ye>44TpW@}XV-ryLUhu3heJ zc@g?2M0rp_=I&2-1)|e~Y%7pSkvo@MN2S@GCaU*SzQc04Jf5L=+?1V*5Fv=gpjQ%J zMOtU1K8JUgmHw8cii7_s%;cl^Ly5pK-idw&JD)3Q>Q)zkds9TlMk7yKXHrVVJUhRL z>J&y1?{ioCM7ote!4MEsxE0RjL$>dnm13L<;}Z~za;lyo2}(IFm#n1-)7u*+5jeW3 zVL1ILbHh`|&c@4()4cfhH;@=VcBxdE`^Ss_f^IDNq2Y7W>QbXHgo}sq)sREh`|&Yu z9Xc?5CO=S4V|~@TL-F_;5(#N-`($EDvPolnfwbh2bRca@uX_6L>G2oPydR)IF*G@e zx6Yz4qIHfNBG^QP;}w*-z*@l1x==SJv}wMnIk3m@s6e#&~6QWpJN$oR34? z`r`INj<5VUm)(gZ<4yx>c&Eh<=&pm!=_dj{i#s;)9%(VNH${h=qF74Cvd_EGW=wI} zxR)T`y|#4s-zS_8WFM8@2tO-p!sNwqe@l5ECAQEE2OjM8KF-nz2xq$+Q?W{A5&2rwLzp| zjaCtfFBN&pQtCNDi`+(fTT2|;N!b3eCNHJ$<498SVhU>hK@}r?LpL2NV0k}%HC#Kf zqD8CCPrRQZY>wCR&FOBf6P5N2{d!T`UFCD($wEW^tiG3!g3FZ+K|I21aLbG$Aeuh) z4YzDG=9)3@a-Y5|0{l|XM8Hfc+kIhwef+nBJMX}xRXA`AY4a=9vt_&f#;l5xW@nrL zPHrO-k>+J{!|n@ruI@p+P0Hy4Uz~UBF2_bR690=+mVP=XmV9+G|GEj!4#dzyd9JIz zQ9gW7kSB4q%@t^WGl;l9i-T=Ilc;bIvME$J`u>Tb3Cpk?BVAOLi_6giJB5!X%AxOQ zZz#l&9;-1b=x;YV@n^bOnPN?BT$4c5jW0#AcqOsa#YA0@^@%Q@KfX#lZy^p){ z>?hI}g)g1uDV6r4_v{sh8>{cJU#+<60xsjcV`|CcGjyS8n#g>kS%8Pg7_{GCw)OOd z^ENw%U7|sRC)%~=UgC1gXEQNd!Mh>~IO#oJ?$VrVY`q8e>ZQR%55Rd>FrVu88pYrs z#b8;^2uCcLf)UGLoB zfQPM8{zMn;YPRsyDXA--&iXB0j4(TUJdI#!n>n@u+Vb8Ex)>e`nj1wbxgQgKc$9*v znSQdYJkHil%~qcMY}2ZrWjtCl5SD9Bcw1vimwjk=X3@xLvp^S6`Ade2b+{e>o*yz6$kI+EHb7rUGlWeg2jqGL%unrZLW?{CCtVkIn)NPG&yS}SOB@- zQMP&zGvYa2ngklLBuHY4;%9pw|8})ZXmE=wa1fD7Vhi)~FMxWr(RcrTZz_+-vy$o< z?S}W%krMi^4f)kK7+!cyv*Hjs}cf z4)dGoVJtE;u<})B?vJOD!p%}?YctHl0Xe;m3q{?G(Vbry+r_PNyC8tL`l#{y@;J^* zegm^75!<9hwEej}UUnKQk}P%1%?rb(ii3H(T!$SFX0a7kFKxpuD{(-{jd=P zHN>vZ>>TnppIHUe2iaJ??7Wi6ofDGS;cZ_RT7Jf@_R%(4&<(MZhSw=26f)m|Qu4cJ zn2jA+sSGdAut`0Zp1bX)7r!1ln@P;A{RI$rQUntpJl@BcFWdw;F`bcNWrEm!XaN|M z5?b*gxK2I4??Qf2%t8JFL{I)`yy4Z&7u0r|EhRRmv_Ix9_>qAa2dD@_nUCFDbzbVd z0R8G|{R=2i9F^%xq$OM#9rPq_XS}S7l+`09XHxJ~C4yv6dMF>3X~3nDlN94qxZu|j z*LLyRd~+lmb-hU+tJ6vO#Wak#*uq>XajigS&q3As`4AVc?&n!~L{E3Lc|9RLL4V`p zn`^{1;=okcT1wa^C2MLE69N3FgaV#`eZ;bYHa*+$FR2N4iRuHq!N%4~t`Lw)h96eCD`_aV54-zY?O61;6eT zytXJGE*e&aGp#6KFiAV=*Qo_B9jSsjv=oeIXZ`{L+-JA&T_e!y^#1}<40q}&Bkc~u z@k^^EXran=HGkma70AJUwe)Beu0MaGFH?Cr=FUJ>p>npTA;Q|b>Zl}CA}q;S+ii>YsuwuJtZddLNs@SC2OEw08G(yd zmq_n)UDrOAadEKl27bc>^6<$HFvw1= z7q`A;)htZikNX@gC_-yzKTNX2v)nfNl!0`j;2q62_NdL*$W8Gr+O#p3*#5j; z*5FW4w;tPbl99+hVC>qpcp1YKj{Wz$4lA5;f0~wy#oWZSvx-b-mU~Ce1gD#C&Nn)9`qD*l%#n1V$N<} zsMSy`=Vs;99*&-ds9sagWRcvzq;>HuKa^9i04!|BMrk3bI@zgxcF`_gPbU^3Uc#g1XomdKaxSevxCp$ojEG#9oM*lSq0&0zxTiT zmT4+E1q^)DF^X!QJ>25Rkm7cMMp zTj66br{cTmlVWAelB50pdCZrsN%TW+1vE&~u2CAc>{cIsibxG=91H5)cI&! z|MJL3*!e2F-63SgrSt*X<|ol`?`hD(ZD^Pl?{8C<_tG=)fnanQwpoyzD0?x~u}+je zWE^w&5h`e}+aPMFtJd8Q6Hzf#!0EY5VznV%ktccFL3{iuA~py%UFG7f5BJT8oElaY z#B*(NMKv0G*PeO~TkwK{rx7{TzB^9l8qV7vr&=Qlpd~vzf#q=tV_l}JD8|D;=EQDQmG93lECd5JjX=tB7ti5^ z*na_U(bk_G_j6bkDhAH28I!RS(uaIU%1Di?wDx4Snom8MQN(6jXu$GvMCZ-skG7%s zXf$@DmG716m3&D9AO6Xt{MFUe5Ggoe(uNdKGzrQ)g*LC})~tVS_Xig!)|aM;=9Dvo z3`4>7VcVd=;bT0-V-A`~_T>eVPoICBX=IOg`5}7@X-DLLvieOtzQ}wiG2|qbU(oM~ zEcRW9B(QG?GAL5Z!BLXgw5_|;L6aMaRwl5b4T9dz_y8#})8 znySCuuQ3^P5gM8qV{=BGfyo2ce7-=I<(yZam+$R5Ksqd+6hAiv^t+ekHMat=89?#4 zp%Ca}+=jaEb2YUrX_q&PlsqOvTPybqtA`xg_0%t;Aw4-tdCvy%L86j4cjIeaag_bk zI4`s^L=su1Ar&DCP5jwRiobvao`SO^Oyi+AmBETfWqy&x%4fN&uOu;kG34`l(}(WQ zyNRD{yOjpWG-d+jg3J-Fem)O3JgiGB5bW`X9mah9U6{4D!+Ds)qM{tlZ9d@5ro z3$@bGb`D~eA5tCog>W<*2jfXD3Cx!4Nu7har@T3pq2Kk)pnL9M_dR-Y3^qwRV+1?U~?} zK>D&=`|C4m(+n~!@q6>N>daG$K zmjkkkOtuqE3qTHX#A<$u7mNrGs>Ih7ihA3)>uPBr|2x{F4<&l+2nE?((GIJ z?;We;BY}wx7T8!ii0c6@{Fa5OFbwZGV@JS(nDw#PSwZjlwVp~jmf-Y3te-QCXYIPX zB*c;Y%3_QKVJ@9O#8wnBc1#njrXR8$hZ z$1g6R3IAkKbvHv=5vJP5R@;Ir4(||617&*md2~@+fwL2Kt}PLKTq*vAu0xp7ngERU zXKejENAn1SzHqCq2HpjoE!<@OME||(kJmH1_?NRryu}_lpNi3G=EMyL8_*eMk7#qJ zcT)Ar*nyl4U56%dED{>=1PfG6!^DS&b`~W^!Gn%DvDy*a)wxej^p=OS^u|)0XoVgt56TqT5QYzUh}OEjisHki z^?y0MIe{Uc{w%1)H9zpGVLIx**_xm$@0CZQ4ddr!!#~JYzGP^C+*wOlffV`N zP(CA!Y~|wSdd#+#!LXFxbJ^&hWj^;NYyXQ$x}t=O%_AH7F0^cidZ-$`yt+F-OliA> z%KN|Mzw;Rt!`#nx1Dd9Dw!CW&NJ~)*g_8)ds7g`XQ2jjiaBRIOUon>Bu6c(d#ZvAa zZ(eyr;dNifL5<=Vxj3F=e`ug8Ul%@dn@6bjBy!5)QvBeu7mL88cE31VT}W>$_-nUG zu15i%ogUdWH1|v^p73_R)y1GZ%%mbQFjP8rCQ?Jb)QH4-$!$wHDl!V$?-=i^@xeyz zk?v)m^XE76#pK~XA^;kMhKYxr)nRH_N8&MAv{vuaQQga;Cq3r!TZC%V>9XkYuTb|z zR9q7+KI04LvslODGS32Z8dv2idE$|zwg2T>yPAI25XVULkdx%@r99H`pqd_xF(!cT zKVEKRxz4n7@<1LAyZs^~T;Y~-l!xY4>t^D1%vhy43S8zvn`$TOVXYs4UMc~G|l%dZ!z|BN_J&VMU>RD!9Ba~-9Kr26B&Hk|i zG7yv8M=@fBJ1F3axedci(j#nPoRnZOk6*&Awu%rDf(Hd~af;arc8{fFrKSCeSp}=Kk({nTY;b)mR?KWn2U5L9U8Q%FN`f(|1JbxEb}QV9_Eui1}_2um~(NF-ppL90TprwK<04nlNcj zN}OP}I2|)d^91d`86z~nF-eYTM(w?eW1v0hpgByG`SJHhtpEqS+x}lw+ij{0+sp={#i&fMtWwu~8%!NirM(lq-FUAG6$t&SwS-Dvm2Bu@i9gRu^nq#SrrF1FFPAS<(Bigp5{qX67bz|Ujay%WLdCBzpRq@w}9a|r!d*ORV=D&542GFh-I-E6I5()62KGT3dUG*x~(6kg}i4Hj|F;q6+tULS^Aww*2n z1>C#t85_N*dm9LbXVud^at=RJP~|RyO`Hq(enyvcw=KE9)+kSvkGG(w#o^m%-JL|I zcNiy%?fkzFL-+5@$F5YC&*Uiu&xf)+yLo0l(78XE6qh^dX4Kxy}DlIPjjEz5V!613682)u?9TM%8T-(7D_eYcxKDfn1*V|ie^a;we|1%8~h1>rC+e$&B2RM1|o7DO3O+v#|;{{%WXLhEa6RY> z-)LtuD2o``#&h+mYoNx>&z&Iu0BP9NgTs)Y`E>{Cxu!*OOyZ(Q*h?1$#-YI zH*HD?ytes}$S}bA=B641OVZ5;)d&9oUX*DT>Hh#MVPE^^nrNg}mr&CrMMJ2vQs0NY_n*b_60X}Aiyi{uX0 zu79OQ#?Q6=$v)PMKb>f`&X$7@so0GA%qkY=O?p&vrdKhWh&N?!?}+F? zv+MfMLJ_qd_;G`qL4)=As`=J51s^uCW-;jX6KmccU-^t%ei=W=Q{+L+W=p2o&lpFK zP#-qqF+d81TQjjCjhpW2!;I2-;JP!}H<+2)a-^<(4O1R8@W>!Em!O`;+?>*n z8F*llzi7H#_BN-A0_CQ-$@#4(Jmhev`qDMfVTQH1ApZcezvETE;W6;J&Mzh&q}#m* z#l9F}yY1&4iGok?rWY(5wJKGu?n?CgtNt__n4Jney}^x!(hC0ofv7*>De%$%0GOJL z^vo~*6#oGDNc=e216G6+*_DU$6cfx$C%0JqtU9P&p>{V)MVi$k3bGJ`u~#SgQwF!7 zI2(0)L+O?^Ak_3nU%RAS0Eb)M57DdY-B#k|rILg&=g#dvLTC?Dw}u zA+(s4LY#EQPo^tqPAO_BMYBuoIdx){0+bzQOcQqmfA!7*{Yn0n%*F9O z-dUPEe-7LXbZPDa{{SF=rA;r7HEBQ8>DpvK{{VP1k@*o;>cr2IM?!3Gr2hb0soitb zCeMEJ=ht=1kM+9k;LrT>V1x9j z_OW5?)}2lVjAR@xO(k`9HMUL;nCw?by|C_*gz24YnwC8BhBb;D0hJ&J17> zHvTk&E4+{g%5g_Ef#`Y@{7KSFpC?JYcK-mTk|G28nvQRX7pj2Ucv&AKw-VKE6wz(3;os4tNB6RH8CQ8Zf|mu4R2e-~;<2vng5J)t#-cEB!;nQ| zCnRpAhw4+GRq+D1J}K2P{ne0vL0R%&YSUaOlU>xGo^v_p^2KV}*~0g*q_D4+PD>Xj zfmN2rH`2M;_1*8!_c5KA7oF`#uzWfS;vl zN}gEGYPXy1KoB*)SbU=czoj=|4qGdM!6U6Y>V3A7;B$^Dx>-dfvPkzKbJQ^D(yB1# zGL=OaVq}adA+~|nk4ikeMsv6P4O(Czw<0%+XNnH5kDs2N^x1-+wZ;roi!87Uz2&0{9hwT}99VK}LC z5Euz?L#{iD1Q=uU0uN!-RN?KIfwUm*%yXJqUfaxHvw#aQ8$tJ{7TBjk5m!>V0JmjA zq>SgVpxd38&1#rNagHf|&OJXmqnyb$27WgPt(LmGpU^B-`B__YGP$vqe6WZxr`YtoEd!Sqb^qs5Nrd=Gr(JB)vr><#0*G zB+%s+ow-Z_q0Bbo&hY;Lz|A@k5#9o_#_9Yl$0E8TsaT^N-Uc}7w3^4&XSJJ9it5qJ zZa^i-BcJn{w9vUOwiqUyV{OFik4a5C?YFD+&Om& z6DJ)7H@yl4I~0IQDQKV!D=jqIj7q`%>hZRd-6HMcFp(ZHfTz~1i>Sn7Bo5fDCe>~(MiK^J!kuqpaVXy;xCgdtNYY|;Vv7?P zt?o>|X9u1tQ>+4`%LLSx`g9I4A>Zwq(u+^GKmd#ZTBh2 zn1qUJz*$HgX)!f&O)AnOZiy*mkpTw-ioB@^p4DS2?dF0NdW?TclG@2HrnmCubXkxI zFge^kDVme$ULKL&O-wDya3c(|x%@kRH7Ykb)FpFT?(AD$NYc!rF~Egmc%a7HjLt^wLDwLWt$#E=_PYT4uv5|6k_pdXt@iwQYx`wzn5U>2Qo96tpU7e?jw43V~ ztybaUnr7PZOg`t(`~Lt+8ouUok1;&4i)FZY<_rR`Mhk)4nxwZ;z+x`IZi{;R)#+xo z#rB@9nbz5vK;=Q>io?2!DP*-)To~h6nCFpF?6gMIsacJ@fLzS-#@Q`{j8>+VDW1$m z@|K=5Lxc6>AC*l8nvviupQs$v(dib+aI@w{bvfklXpPamMNgN^lVR!4<4zI!)cXe~ z10>P2+O@gMVj!GSgf%!$Ii(5CJ5g{b+(VVkP%(N6*O(BTbgG3ieQ3CvGvxYvc0iHRhT(&%o_=ibBtE>({Xk=s!B1Exn2z%+^UHDw{om; zgWK@;r!IudSqY4`0mjn2obl7!tzDN=)8u7XJk*GWQc)OTi1|+*hM|X0RhAZ+r(|n? zCS$R)ySop1e2=LTuTIvnPS(KOCS$-{<8C?;_;XT?5aju;`?}$9F;;Zzh@n*o7_#w# zxWMgNpV|yqv4kH?sN%V5PH~-)>QSXewKUm;bU4UjuRZ|DI2=+P6{2*KJ^0)R4O?dQ z+!b^?4^;>TX=crJ7OEfbsUX#* zT$;9X5rrd@(v7^-`zR3^RsBCUN!KvC^ zPM1!IHYLZ4?*}WP#H&tJ{ z;n$#GF`8yGQppInp5hPgNWdPs89nMO)yG4gta)TPc&7?(X>(LS>M1itAUQSA;EM)p zl5yA?u@hQbkCr{&g}Kc_$+T{gU8BD>UQJTM1M-t25AM{cq;fiwk)+p*{48Ndu%?zf zd2l|av8C4Me28NRr`N4gBJS{?-Z4Iz#TP>MbCJ<~y57^~X}R{N#o~k{sfnA=n&<46 zF(`)eGlAUJ)TwXwaTF*R{{RW^T@i)SV4I7x8-1)_%ksqz5vqu_mSdUnLG7NEqiY)| z0#Sii9tcVk8yw@kYh;BjN}e6k(Y2UHHzFP65yutZ5y?F8YcImqJB`fjy#~;6T_@Rl zW4&|LcQ>UQ8QV$cu4*Tbze?B^yx@*KX!|fZ`FeF7D;AB6ZJ8i<_8it$x2)Uf>*X+6 zFIWTQgZF-?x6-$D-A3EPx?kHa0W!&zwuktne_`l4=Ddldl3Ct)r1K|{x4WLL{(62C zk|s{Z5n8<#t)hGIZL}+ zD_cv5+S^cDsKDDJsMrbq_qAe{AO&O4SE+cD#QHqi1ol@m-Cs;u?H)A|uba0!B_wrB z^z|99CtQfvc?G+X(9}vwMaC{WjxrI_fi^m4KHOAf^`n)1Bl5PBXD(z`DWYhr04vbtw^K-&+^!w*7xR7o?U zp03TEzMV49YBIn`pDTiKf$Lfc0}@6$b6IMH6qFaZC1mcB|MPl!Od)pb8S(Wi!(qu~mhye08mN zUJXIBlG}Fr_M@nooh6_#HgSw}^{nkC$m$lnNEDneE0fMS&u(h{=D(&|86x{i8Fr8q zH#x2v4-(wPBdW`?-+mY)V2?`H5^?Ht)rT~ehkIvZC8QCSlz#en!T=7?dBHx}0Gec% z?-R!_mLeZ$k|!&>9f4v!OJs_}w!hs9tQU-`{WhEfS|4T9Fn@b10)|}qqvlcGj&*%m zr`2j(+=(kj>#JOuLVWHR5;?&Yp^Iz`9COYq9W=|5Lx#zaWHUI=JT6DCN`h$SMhoX` zVs?_)!1b)B7|rO;$`YxErupJ;pR%iN!DJsnlR`yr8RMj&CUD6_fvtU3UI0r{LxLKfIRA0w;$h1T%S``ENmd0?GLp5 zD@a<#BN9m%4m(tT+6fuhBSjs~E1k%-1hhqI;cYtL7f|sLjN+K+uuQYWen$N&-w{kbNqhw#KuOBwz?U1Ky_Qi56$sb7W>8>k#(uP}*Fbz=PJG6~t>~VMzXC)YS!z z;eNSaYVE>SOWl#jilX1W6Q_^&i`R@%1c4+Wx>kLi-|p~91KzDci>v#4c!6el0L5=A zk-d?GAt$-%dJU+DM28~{H}4PAwP}?CoFYgPI1n9>ppAXNsIG3UtSwsZ_H=>-`_AW& z{<*9q?sZ3EK)LOaSsLewbk7f=7cvR&Nck+{Id=N?0=cV?6>455ypvAw{%oM~$umFt z*ItDC57x1KU!p;xL#3Evn9Fy(%XKT{O3TL89lod5pc#>>>Q}ndL~THf$e+r7r2Y;B>JQD_U;8HVKZaran#D_h60YfYra z_fSlhw~UfaY5*x}$Tp~4bk8K?*P1RX9(YeDZZds4R{nvn+37INZ+D?Vsrk*pkl>*D z`gZ(l0G@vev!}@vdWE}OA$WKE;C0*W??Yi@*S^J~-2H-kUk+LgE_+|JO@Ac5Tz24a z%GvG@81IVmuN7Qq*Ipr(Uk^g@>8ha=$^QT?7>M^=$`UiXM2sR4RF`~E7i4P%{}CbjrMOGL7| zgPf8_a(Sv!-4uV9I6Z1fq}&MyoK|a0Ng#?Iz>ed>TI4LFOSzoHA0;JYz~J#-j<5|k*O*)Ba&u>O4cALV5cu?-f z128#WeMU`Z%LTa=6>+R^g4BEwUVB|WDA|dRmgg*Te>&M>+IBqYV0o6Tt>M^=dS}cCV&t6G+76Xg(`!T{QUd{!0OGGk zps@q4c|EIFJL)LIlieMPmN89)d8Z0T2LukZ_?|gXv`iUQh$ME$YDJFhD5MOmp@I29 z??&}82{ZEJlRyhbGDkEPP@%aX@(w5@4!q~30F13(5s0MdQLs4bG0kM(-AQRIQbKbp zULAR@l~9+yt52fcM8*B3<}Crn8oZT^Olo$xgF$^D<8rqwVSD zM~3=wPEQa{6;Nr>HVNSg09I)xSrkY^D-zrer_!eTfS_hOv4!ll&gxm3RHFsZygWeX z1N%NO_y>k_oKapjt&m#t?#i>LSka!wZF2(=wcM&0H!rPqBiH z>{_^y=D2y}$C&)K0pr@E9VpJ?N$O5b0=f~xEjUwY*~J4NMJ8yV4k|-==3%08ewpajTwcMDR&CY{2=6JYlur?a=VwgO4Mcl4_g z>XH$*-Y|omA0@zcL354^=99iuAn`P}H>z2G;Y-n^$|AkFw7Qltl%k zIOpX|70ymG#}u>^x#qSv2G3EqxlO+$fxczjFituiy>s|itHm9~)wZcNkoKz{p&F>a zzLd0=F5GWe$IBXn^71~NE6X)&IP~pq`pyqD+N7neno)*mzl8Dr=^6H}x5IuTj96Qn z+nbNHSt+$htnGKrJWO}(XD4XE86S-TI3PBLLI^0uNIsz8{AuAda5(U%?ucq!V9h8l$Xw zW}^#5JjPQWlsfJQ9eumjrJaw1bp7`B;`79FkX0js-^h<0GR^7Jk?TO2=S(@yb4|rr zyRf{|ZltrnLmkvd5+NAD>-k`cu1`3iXknm^GeM_*nTsAvG35KxUQR$2 zR$_N~gBb^!kTSA{=QUTkBc0DfpRHAS_O=_5>r=FVjC$65tP7MiNJC_lf_`o)xjUrq z?^YvKR>NS@%2in43I;*92ZK_hl~K=HfuC{3Id~M98k%L#+4TqC@-^Wd8t*wIA8@canc^ou~_n<-}yFhF~}cy%}#T5TkYn1oWmIKHz`LOON~Qs5TP< ze|d5L0DYhEqd|{gSwaZ+2|i42>7M-8877$W%W~2s!b*}9U9l1f9`)D#f`9qxa6jN@ z{3+jMyCeQSZg4sc$NVZ>Q#7Yl!RTDOrJu|XuLImebqG>dJh1v_n>PI@preJi{c z_lN#oZolud{uG7_us`GGDp^QEKm#}(c>2>+(js_=C1R?cxu<5L2AmqK=OrB| z%}2VIbpT76Dm~Ot2Q5Cf%67+=dVwwO@1K0l<)QVf&ozaL;wXbS_N@7@Ww<#%D*6s9 z1q6jEh2)mgPmjw~Szr6aW~nBokEMP?k@YJ^`&PWp^fOJ;YG* z@6A`2Prq-zks9QQO>r4HoIFmlqDZuzEyDW;q_szuofd7yQq z&opNSm=Z5vYU?}&ac-Kt&|FI#a>)xVv(L;+C-AebaKL&HYmx?~wz-zl?i-j`EYUXT z%K%1w!Rts&>pW4SO!`vm%Xe|8y19<-?4c0_7ziWC8-V$;!;YBmS$-D3n#*2=;ApP*xe&Ev&^~VlagE&9Y`H(&2@VR z()C&F*&Id==o(CJc#qv|x`l3_6R~L{jk+u6xWWAC6k$feWr>IlvBAL^&$cVkG@lfByI!1Icz)8u zO+{W!t-6+A2U5+@*PM(7^#_{kd>yG;E|;w6HnvJNsQ6auLX{$6pl}n$7A~g-n!jY{LKzbe9WHRtAczK$9z{yreA%hOOoD0 z^D-6uYc^C)d4@{@Ph8NYy90`Rig%I#6p@$RjEq&HM!Cr2ty6R&T-DhZJoGhMLd6IJ z<{jyQ1j({dgOEiroSKygYzcV9EYTvSw3PO50hc5UfIIOCOBVcC)E1ZI*fIzvBpVWI3!YRXsRgQM8x8nt8)7`YFdnhjJ7Tc;QDo^z1u~)NaBt?qd6UiU+GjO)Ro=8 ze%N80=KzyZ>n?>VEX&pIbsGzphx=DhG9GxjI0N&nbEs;{>y2wsIXK7K5BSx+T2-3w zD06{=eQPir+(M_Pn4|MF)Y}PDNgK&~sDBovd`RP&%~!g-)QERYPWf;!F>reRb)$7{ z<=r~tfO}OpOx;;TKaGnvdw>mSq+wyYeW!|bD?@c>soofOlmy+7ays{`qek(t{{Wbs z@BRf=pMv#$H%`*E8%<97J1IruJZj_bDFgieHPH_d_-{Lgvlrw|UHpLJ8%y!B4aZr$ z1K#TtE|uf9P|K{}l|2Z#;=0@Yd&3tt%8RW+j;*+ELP6r8)AipC+rsh5twakp;Tptn zIOiGl{*+yI3%i`y(tLG-PO+$e;7|VmTCLhg;=ML0WYl##=ZgalXU^Vhv9{E7YpA^F zF8uh3;gTXp)1@Y%ai&eA-bV8OE+>8Ox1NQtheUdgsi@$GED~&hyOD z%KPMgS-9q+QbD4U_2UJ=9mpQaX=CSid^t{>%}k{ zcWMCad?kBrd8J->YW&V3xp5>-Zi9Of(LFYwderg9_J{T~up0<0;J1ndoH6rmUL_<( z#rk7AfyW@%38!DrrC&vTZzCj-uwcugg^m8Nak za_!Lu;u~*HX#vUjEiMr+Z*4D9*u}HYUnwMYh`3Vd7!mU1ocmVii}YCM()G)`jWKLw zv?|tmocAT({{WnFSp55kJa9T!6LEEWqigq4*okzhgoMQsADT2d$6iPyocsG$wwIt@ z_|Xobb>awRybZNuzPSbS+hVcf@b#zA4oe*L$JFzRd~6a}+<;XW92)6-L*U!33rBrU zOY1v}b(lejB@RO#-+>0XeBr$hr64_9`#McqUGVRT^lMK(2Uy^`jui*Xkz4OD9f;>X z)th~+tG|q`HB&vtk2S=C)%G-sw+cqmtU6<*WPCr4eMepX%#TyNvWj3#g5FY_lmbse zGtdvlx;-<-ULVsM`%kgbW>gV45?%o#Nih4MCOGFmr2u(1%p(E*_#Zdcqct?F?<9{W z`p0t22S7>59@r+K^`Hjl6t9v44z!rarBXiaF^QeaobyxZ)3jG3Y5LVrN;w$d(!^OL z&N($KWvM1#v@&F1o+&aEoE)03EMi0Qle(IXB6SB8CMy;jBzx2nGa=|{`^$4k@*Tg{ zs0uPj#GKO?dwioj)sU*rHvv<}9C5bn4{AV5YZAu0ayMg|R*Y;rvAZw@o^k9eXj%xADb9Lyu7|_=eU+SsIHNB#$W@&4v;5|+ zT<9@Cs1jCu@scVf8>F-v82<2+^Pi(HuoLs^_7J1 z!{sV*oaa3&j;4oYCZ6Tyn7CoPj9`yi%$m{}5Bjh@FmYD)d2$%tj!&guw6lg-8|4Mm z_4cgOvo~%BDSHA#fTy1Iodyo4W~5{^=rQZfbv`4o5s@rwh0YEu8%?nj>e@ptf8*s@ z{)3YWnytDWZmS2BW|WRsBad3ffdlH+d%0MUs{(tU{{U5W`kkZTv9iMBt|5>Ssj0TxD~d(Eb#1* zn4s2e(e`ap;DQZfi@OKizfjY*e-w<}YPp)x5hregTf!G*M$}SxWIkZVdm4`O!#*L@ zZ=UYrdp|VccOrnHM+1Rd(d)V`wY+f+R@s#X0StLG&-h976)YQ8gCFdx5ud0+4};B*{P4z)JVLDHJRSFX|Z zHKoW9Qqyw^4i8Vmg-fGJmVx2{HS}&bsy{FAC7C4 z@jK6`UZij?ZQ@=DJTX4sg)7_+p?p`O06@IxarYXE^Zx+s+r!Sm`O!sy^|sWkV{e-7 z4hC_*sPA5LsN7r2s7)oJY=F1QKb=qzs%I(z?lDSFH7N*rIi_@^-OV(&HDElNO#9Ob zq|GoS>qRgccsZa4QBBP}5kLwl!=*DcpyGfY2ppR2{1dNRS=wD#UQU*!$Yi*9yzU1k zFt|K0r0y>WxmxvvjAG5C(kNiI#Q?-;mV3}-n9J@9>NyR_5oyg)Tga$Bi1+f8OO6t>ES zc_k{lpJ?bh2EqI*&h?EtZ5vv<(`9sNZOZMH4pr5ZGLiTn<~vXar1-PLn%{^u3-c|5 zTMK29dkbiQXr}JOvi|_fRve7ilLtu@Iv0X(nYKK$N-(8(=p5n!0wKke` z+Zu2W4F3S^@yWq8!)y9o?w5RIytR(eZ&{{_1bxCaCxPlab;Tek+gunfW075x2a<;e zukx>GnkLlV($h<@MYn4~K9{IKo0%?C=5&zu4ewqb#_gx3KPvP;3F>#3nk~=vhOI58 ziKoWWPaU}0@&SR2j-=#%RKVxFeH1Zx*6mbiAnTA{pan`wlE4SBl-49am z#Qq`h>=zczX&@Jt(~x(o9B%}7^&a)aoE#8%#~(@nXG&*7nw0ZVveOuigUveKv2caD zd(>u|*NRO6w)%8)KIofndybWRPSBO^<2Q2;v;P1V1vA4)(_6|}cLjV8%DRXxfrzfm zdgh_Tr7H~@4uLS(B#jTQYbR9jwwn}8_SeEj?5kE|vLfzumNG$I$PWgY1;|-`$vwIz z+^+0@T9+9uO;t*ATB9Nl4Z$Yd&gF^0+BjOiz8A2Kh>~d}$4n0X^{jk|kxXIuJOR-A z)P_P72HXa67<{=uN{2Q+NWF@7dJU8}8@#NQ8S9>EX0~}H0!+yoWbNrsX*b*evf!`G zc>O9!-M(##a!)+=s*OjnE(vObN{R-$Hwh4p$IG-iI0xFbuh*Dcwn#sPXK9c}Ca~CV zxO!*vtNtOCq0<3HWtpV;bN$}tx01|3AQR3pTH@h4IVi+*BCys!CgEG} zfyo2CYCffFg$yNJbAq7pToPQ&?2d?JNFmIiQy z@Dy{7)b+L0?m0eYKiYFiQy((in^~Ef-e})xD!JmZH2GQx7U4k*jfEg|&2%Z@`O~}B4T2@P)EiBjDB_Io;r$uwZ~$LWpd_HBN@QsAI`d>taJ4_+cb^s)qJz& z79dIAkN*H&N*8s<*@*wLpz_`qbr?l#<%SENrASTU1;CzD=*Vz?I*uzlyO|`3 z5J3xaTHtg(qMgvxk~8jEZY7G`CejY#-oDkOv&(>@Sq26M81$%4ku|J_X&cOqiA0rp z6YWwea(#N%a%N-q$a>2m`mv@ms~&1VgwupsHJ!r5K?XRf0)Phso#l~0Qbj9{!N0Xu zx=f6(TC`&rraVB#eQ{L@Yhq;{qa((_gPJNBqzIc&V?}MsM=_YrSe7Rw`qX67F{JHT zqJ=b+l!W4#hf&^}o+uQ+cY1blO%zZBfQoiSMk(E>0pqO(lc1!{04RJ>xC71)x2-j) zyST*zI=>5R=Ez5Y8jk__^g@6JCO*zql;mbKyOwc8slLJON|6{MQ& zM*G!cwD3OZ9AJ7^pDPt*an(p5`eTt^rQwZUT}s}{=?T>Jc-#{V^7&9(DDRJd^VX1# z8^fCHx(=$BNj=OkHxqrI9${Z?+;^_t^Gut?9u~RsbjWQ4jwH6dySmKMK6)JW&rA;W z$#~;UzOnHw)y?w41?-IRh#WE~A1=&*IbNRqX}115)-3eJ)pW-CspUl*@GDersG|o~HAoExPaJ~2xZYJz{ji-a4&^$Lg>e_|W)-1qW z!KcON?<21KZ~)`KTJ!yS`%Tn!UpGn9+Q!B>#7P^rUPc+qzBtL_fn5dPj;~k55l!Kx zmMuQcF$J^?zbmhHaq4;N+OzcS3g+_eYyCzQwzrhC?qUE|B%TMSHBqN0u@0nB%(oQ7 zQcTI`%BXiLxf{J|B57;X(QGrlHHSaSo@ozEdeAex@IId@(Pg=Ep(m7-9mY7Wo9r@! z^AWe!xX%UZwpRAHR=4*{0*2oacEIO30=kd*NHh_Eb$AKKKutAbS)nbcxO8^fBt_ew zQSVKCGB-GFg-<7r^;LD<7x;AqBiovK>$)#%!pFW4oK;*DZ?YVk96;pE3g@96Dnp>e z&E|RFpMGjT_(*g`<)@b)?8ImuCDDQ5=5M4XqESzwqUJ-J!{|#9cDX%|tsv2iM-fh$ zKY5ROaPc;ajs?jl{+WOE>Bq!+KOjMPSN^$=@u*QzAHOBAmKtK&T?vaR>$@HJtFl{J z+{ngqT#=4XL5|g(H;S~Ibn^|R=>yU={{R||JYl9fWo$2q>-SVvj!B{vWe2HtO&3p* zRZ>PkIt-Ifk44hr#?&p2?agKX0K#*phCW`Ec*p9Zf#a)EO0JD5Be9qR{Hs1l^edi6 zM;sPWNxC%v;}`>qnHm_`%9Hc+z$UrKylJ_3(IhzO{*VSg@!CmzY|$p+qYtOrMo0cS zDcCuVouq~1^4osa>$ONZro54}##??+@GyT`<=4j-ECw`qfd2q)Z2tg3Re#}O-wAw? zq*?;RDuV5TN%p6E3g=|9AY%JpI2q%N`qVy6n7C_^Z2og_TpmyBT)oGPJVykZX415H z+x__u^{JD@+Vp@EZKRBhj4ZAFXiP^yR@5#&#(i~@KV^J;?o#JbL%VKvO_WEmGBRx{W0HCI7%sQ&;&BmP0l`491@6K#?I01~D8;8&g6 z{6yC79IGXwk~740YyJ~0ZMw^D2mNsru7d2@@tJ^VmaxTaAduW|Tnr3jpXpp!>zci& z>v#IBF-3aOvPS#VssL($CxPD_)JSM}IPXdcCxe<*0~7(z2Nea6!98dg6cB&CND~?4 z(i#_oN7BJeIY*Unb!u1fWy=SOj#eT+m3Q2X(G^gTva+lP$H)&D8pgQ0CI+ID$g5 z`eUic7$o`%;e#9lpK%nNg;Zmj0=$!$DEos?uM$m_^n7 z$4X7yUeiqpb*xXNyha#fIRuo>c&>idITGd;URQ7h2c>k8MfRpJxdas_ipQSPYh6+Y zSjkiyN%Z%qXy&UfW^CJ9Dj~Up4JLU;6>i?xODVa&u(W2!%CWCs%Av8EGkEO_0*5Nf zf1O^CK2#%>3+OUwMlSa;Z=sv#>9gG!n?jl+&+ie)0;yk3VJQ*W+FXLI%#1qL^1|gw zXMCRL`iiw2YO#&of4$PRWZ2`(@+69lA1rWz*BSPx^=k=iB@B`Im}P8s|8Vx65s0;IZ^o3!&Qv7*x(8mjlA@y z+Bmk+*%%VC9F|VJQ!O=JE(Ld@ge7wYpOL4a*s$NBNsc84H%#s_4 zKrtX6C<3*u^$R&hVvX=UVmPAjS@Po%#~569BWMDc&pnRXeKz@HxnC|v8QY$frU~Y= zuVcNu)ZYGe8D;>S@St=8wG;v~NsS5kQ`VPeam^^;@+wLkDMcs)tuD}dew2Vr(&W=w zFglt5IrgM9Ef~!yUqem^IOc$4W-OeVDr_wj?nRC}G*TJ~t%(;RjEYJ#KnvEEo0=#A z;PXm(rqYT4P;t#WA-SgJntiAOOw&oG?kBA@ngCL1Gfgc>O#nEMDY>R@qjdl~b~@5- zrT|#r0#C535Lnz#DyPbT{{Rzk1xppt7W!TO^`bOax10--S~caozT?={t07@5(j~r% zZVY^%GT`t%aZLrxBHr{7xN+9H8@pqvs>f%gT3a+jaWTG24|=7dZJSV7nOA8TJajpx zE^SIy);Cv91aX{to`SaE@a?A1XT2M{h2U39HJezz+zp4J6^(JFNg-#qxgKFT^52Ti zZJI?UI@?ULw)xgQ><8%BLh;XP!I`9jZScm<%G@^6MQrJpHy8J2-r^tz z!r+07*0FaKm_|O+a%J+uaf}L-#I80l{Of96Iyf!Fu$+wYeMNKHnUWj!MRT+OzyVei z*E6u?Vhy*O)O;jYEI+#KqUTjs~nOndAp1=F7KEQDa$p{bwPU?j+q2;O6Nx{ ziTsO+V^%4(hdiE@Dq6aY?D=-;SPH0(BT5zZKjOi~4ya?ux{^oq$-$c1nv8;Fak#G9Dh1@v7Y19 z+yE74fk$nilZq#jRf0un8Mm><7Z?YMhTdgj>ZO>cV7)~pyG^LHzhn*q{G~SY`O(dB zTE*=;)uMqSk%N^O$Q`RoVcJzm0E`}KV}YSl7*H4i-}B8#p^GjE0DbJ9ze-~{iJnV4 z;>O<*50ysTXVi+N6gD$mZ!<&&a$Jls_O0!BvIv)8WFv7?*n8I`@(AT*O{hV^CyLFK zqM6d0sL@J8E>w=bwAHw>MgIUuXwUb9b6mIDi`;BO9FNE!H}$96TTiJ^98MY3J{gZp zQ%t7>k)Pu&ZX4e!!qOocM#ZK1K<1lZzHPKkoPwgO_~yiE{x6*)K(WmlN|@=$!Tm)) zL6AL=Uh34@DADo`e)cJT%v<=X(vB(B1=z3lbGI4Ky#m|;)YXI1j8X!zfk&-8L>OYG z#%Xbi0Ej}PfGI?3J5+|6XaT-j{{VK1Hwr1(4jZ*0=|wMU(U}QFA)r%0Effk|QvpRS zH#F)1D58QvpaeYkrV>Ev4FppO1FmQQ+_j3ZyV||5aIm5HZS);??5vrPqem=ONqL?pEHrvA4-*CwhkDx zFb$k>P_Bb~hlBuu&gTP~o(&TIFn2wglhCxiDp{VT$Go?a38I=rRCObk&2w69$M$X8 zN&#iTLOT_$li}%`cKuSpGt>s89vid+_uA#C{{VLs2BRarirlQx#Tv2TVDrsTiDk08 zj_smkjiu+Y!9A;OG))`@66?^CzuhDM0Iyd*!{PQR=j-NGLK|y885Gd$bd$jp(Z>_3 zkbdbMM;+^z)O5SpZ=K_ay5MB?HPD@VM;Jfak!RQw{V4wcgp)-JxBE#*^bs-slr))f zx;a60c>(_bS3XBkjEY$`Ik_HGXW5dvR`Cvi+1+)x`#^ufs>!T)WzJdWWB$xWvT!t0 zT~Uc1vot^|+kia-5Gzwd)Wz1b9DijABclMpzLdwm@XLMGzR&$}{{ZXLEwwEg*77@q ziuWm;Vig(vX{BPDi&`Dl!}euQBnBL8Jt~dXhaKGJQWP9?Cy`la#+q{+n=L?->$HDb zY4N41pO;L$VgCSK6jkWRQgPV7{{RTJspYn3(=_qnt1M#)(;aIp_|7B9(XKz>Q?K|_ z4~yBlXv6WJKhldLomm?R;hQ2hml^HTij{mjV5ENY82xJl{u0}geoZFV{sk)^H$x{jidDHscE%oOBg@(p>XnSCMWQoTR+-M_|~ z*4Gj@&3SU)?@Zt0M>-2L)0y43hqXeo4X?R@-R)QtcwPw_Mrp$3vyIEgwQ+|^2Rr1D z=hexiT^16PgnjiTH+sFR%sQ$IFrY@hQTKQ|JY3xr~8s$HgaH*t0 zkM(Q#)1uRD&R5G(>&F#0L8$K@7uEH6-rb^{+eRW;A|nnDCz0q*Du#(^C9S^Mmu!s3 ziquO1sR360VH#{u0*=5`iyqUOO^qQ`K0T@2%wG;#++KnTuC{Hx6%X4~_Dnp2!~H5qSJGyoS|^fXj?e$-G0 z9YqvYrb9(9N+_TMG*LwWI}}kx00NNlMHB%MYK*bZ8KQ~+Zo_{MppSZu3O&l<1_lxrT3MimscE`VHPs~%oV00eTQAh+Ohw#%wWYI-51H&Bj zr;dFnqL>SkGg3yS$9gEF1j0Obpe&5oU)G8#T%=e?*nRG5Tv0_J3{$|x6i@?RHF1MY z+5p0UKD1FlhIu4pg1I!{qyv-IiYOW!hz&@gK<0`nSO(!uE(a!xC>VxyYz{>|Wl%5% zD58KQPza`VW5EDXMF1N~JanU>4$GUFdwD5e900tVL240!8B6bL{E U_o)~US}34ne4u%viYWpA*&{CJ3IG5A diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml deleted file mode 100644 index 72db507e..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml +++ /dev/null @@ -1,98 +0,0 @@ - - runfourftbackdropvalidation - 1556331932.4657435.jpg - F:\runfourftbackdropvalidation\1556331932.4657435.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 358 - 70 - 436 - 168 - - - - stockout - Unspecified - 0 - 0 - - 248 - 76 - 307 - 161 - - - - stockout - Unspecified - 0 - 0 - - 156 - 77 - 206 - 163 - - - - stockout - Unspecified - 0 - 0 - - 22 - 97 - 64 - 175 - - - - stockout - Unspecified - 0 - 0 - - 309 - 178 - 374 - 244 - - - - stockout - Unspecified - 0 - 0 - - 176 - 178 - 247 - 238 - - - - stockout - Unspecified - 0 - 0 - - 58 - 187 - 107 - 250 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.jpg deleted file mode 100644 index ca996e26122f6ce0b1c42ec8253ab4f425cf34b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 34096 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 QG*LhZBN*#N6jB5K*<{F+cmMzZ diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml deleted file mode 100644 index 89da46e5..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml +++ /dev/null @@ -1,110 +0,0 @@ - - runfourftbackdropvalidation - 1556331939.207552.jpg - F:\runfourftbackdropvalidation\1556331939.207552.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 362 - 66 - 432 - 164 - - - - stockout - Unspecified - 0 - 0 - - 250 - 77 - 304 - 160 - - - - stockout - Unspecified - 0 - 0 - - 156 - 81 - 203 - 162 - - - - stockout - Unspecified - 0 - 0 - - 23 - 99 - 65 - 177 - - - - stockout - Unspecified - 0 - 0 - - 60 - 188 - 115 - 255 - - - - stockout - Unspecified - 0 - 0 - - 182 - 178 - 244 - 245 - - - - stockout - Unspecified - 0 - 0 - - 309 - 177 - 373 - 245 - - - - stockout - Unspecified - 0 - 0 - - 136 - 264 - 195 - 312 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.jpg deleted file mode 100644 index c70acb0e72626b2e81e853132c1f7b57fde484ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33883 zcmbT6Wl&tf*X9QX4FreaI=FaVNli@;;$fv{aio|1=a-AR0ObCKmP!oPPsa2mq)kKp-j_5FH&2?ceC&f8POUgy=*JU|9@e zZ7WPhPZGXxco7zpTw@=p&h#%3zqMBc_6xFC*~KNLW#tu>Ri8dL zHMg|3wRe2!ANV#ngd83jotd5cF~6|5wES~xduMlV|KRZG;_~YH=JxLQ{lkB_PyoRH z#`@R)H`xEdMfi^k6%7rDhWQ^Z6jc9z4M>QF&H%3q<)hc|bydG~l=>&ajY_!RO;S zFW^FdJ5N7Rlayu!bQmRhoM(3YnQQnfJ6uubuEx1)Vt}B6DsZc1n~l5mY@g;>j7o-Q zX^JD@!606pVwA1T`e+)R39hhP!_Q=E2tQP&mKQ>W3OW$3+O_D@z--a1mRAOG2mLnf zTU;cYy%bTj3#{HmVC4jP#-~%of^;g6G+P99ObJi6WSJxJX;G6#KeeX1X+@M|&uQ6W zT8l%cIgC!+s4sv3C4+6!3V~RJh*UIgpd1G^^jD3s&r-rb7~blFU$%a)s3RlJ0iL>u z1N;m_HFcp-TQ4Ul`H;DB@5)#cx0moTJ6%;2fU5^x?xuFgc65<&(5d`R*u(yxn5d_f%nl+v{)8M^${nDv^W@661nwQk^J#$qXbD?InT_;(9 z!sJ@@4&rgQVWlT6;WnwI1XI?%4KMQjN+&@u+int6!_Qm$oyJb^<3Z}vcXf-H0k?!J zCqBZH_FBJ0gKSYUuSOpELM{0~Z?)`IRZn+tiryu8a{Qvw6uG-eAfsuAwt#Zll{deA zVt+ZA&~%vUXkjAk$w@VnyY$lHX9Im|AUL={SQDA5>c{=3fbW;0Ho4H-LU(Ohp+@RP z<393$UfH~opnS*y8-nW;$_F7)E9O2G*-%sz07m*6MrY`UiHx+%-IO`P7d zb<{TWG+OYqg8dS|ErjyW;;06&IzaVcHi%f_q%zS`95=h=7oXe!ug4W7B^|CHZNe`; zr%VUL=lFGyQxgPD<76>Fj6rf^?IppR!7qViqVI$We2}$#>=q70<}lb; z=NR+~-^pkhVx^SMPt`C2%ia77$knwBu#KbKVjzJ9$a%*D-g^naqir1~170p?;f#R- z()o$qM9i0lPd1*Ml;01~9!Fx+OMJ?`IL>Cg!uDh=bltbZCr5_PrvehnS>6hg%5`Ar z?R(t{0Kw^6N5z7cOqNTl;7Lc~34Aajb&NYxNLU=au^vUtJwCq2kG;(B0*fipE0jYH zV8cHwRF4SXMM$J>2o!WZ%D=DLIo1Bk~Qr^?-V@F}_b>cB-4 zGSx(dweP<$6GoNQ^ZgSUKW4grN=Wb@C~&qGZ{}mHKAIh$>BPFSrRNalzN~T2Od<_> zdjg_l$T%|}FBtQtD8*X>Ls+3rk;T>q^p%_(snMd0mORlz$E;Q50b2Kv+pa8j7vae9 zNr($EP^5SL3!tP{v!G+2);8s<=25K^!^gn_n)2sgKtMNS__h!g%2@Fr#+7IU z0J(Pg|EbI!PwteZ9AO)pgSJUEr``|BwAmPN;h&RS=Kb@=^QIhl3nfqWknTQglXw=$ zM5@^++c<1rG3$>aJE@YW?IOk*cu2BP_br*|AGAH*LNh&VfMIL*#X9}`jX+)?&{seJ zWe1GO(RX{s7Pvo?LlSM2B3D%_rssJYZGAJ z@aJjN_JmpgUthxB2`qwC+tc-ANaFy?nFpRTxfC#tJr*LA&M_MKK&=$AI9p#2IX8A# z!yr9V(#e7+R~#BojfS)z%I4-AcxBO?{hehS+@F+LQItkOlceYrnpwh_wyp&uJzklQ zrDSb0wz`MX_sF>-J7}AGtDo{JMzNJiV5iJ-$WU5Tm9`>zy4Hqm~us>-gUFHSlyg{LeT4c6eCP5^)?~90I`Qn(A)9g z2yK5j2$rmBPr-qFRK8UHG~Stp>Lo&6<{UMt#FyJJtfPVNBzJ{xQcq%%(6Tsgh)Vhw zU=;2}6Wo1YOMPk$6KXgrFY6UU;9j8&@}Cl;92+VdNV4OqIE&+!+*V0>YTeshk&U0<)0@0=EdqV-}t>OA7A67_c?X(9%n&Z6s5Zd7Zzhp zi2k~h3z)uXmgTEzM|au{u20QjHt95)EiaOTOmkF=j?^|M1i->dWn+|;%`)Xo|$ds?Zah84bT4@Ba_^#rh2#9#< zs<>BTgg%eSNTVN{M+7J7;yEqkdKDPS>mmyJv(g!A0{IYuMo--NyS=yACS8*aDf-bS zyZ|VkF?&(YAP3pMkKZX$3kW^c!Rnu!!KUNtvB3GIX|_F|<^4i^X9Se=3eJ{H@SEDt zU0c2Tk&(WmYlTv#FJ0-N`^)2Z6walAAmY(!q_5{=GuI*yrpO=ZS}Ei0=yz=lJo}cG zT}f5fds)5`2J_`xZydF;Y!`DzCIL)z7C)H3r7B@N(5Ki_$9}ggcu(iPD-)GsXb?wA zu?>x8`W<}und$=wm2Df`WUX^1t9>FqTXuyCr>t_rAiq6V?=a5aaP9g?(t#O-o8&1o zm^#HLXZ`L6X`3>QH{zOPsW4rs&7lqy1x@v?v;fh@2pnz)Xd{>%R_M=Uu)&e5^KpG3AZKvqWZ#GyQb z#6& zz2$=9<3KjX5I!UD6Z~DNFIQ#5BKmMmr(BmM#J#UbjX#K|2&<49a}W? zAA{|SJX~Z0aNXR<+(o-uY#6rc>SX$^+>7A>@Q}^&tgOET~;x5^%9GkTV5yGHx7(__JahlfOe2 z%e#5jF%H-n`QgKi0LpH(d>486@~3x}N}@Cm+5%EG$(;h>@G&;sFeDAuxiYF=y5{TA z+t%9Q%{TrH1g0h>ut z9#z?F$DeLA6KzWu_>^OroRm8L*dg^bOhC=nh(H=+PWX*+iw`Q~W$T-@)d%9F|b^acoBdSIWs`(%ouZ}<}Q3Zyp-qpdjB>@aSn zd;MZR*~l|KadVV`1%)t~K>D4s_OT2OXXZ~weVQdhal>;;=FCB$I-@dgcsxov?T2{C zvNjbtBat!|6{PpBEGrAefq}2xLnsCVhMq_j^p+b;jg?6*0tgPJ zRD{VBy(vXdqb^xPhF-oxC4QAEVgSK{m3U!4H}6r^F{*bzAJD%q^m}4Mjr?HXPF8Ja zGsDot@L5VJE%!ry2kIy1BHUX`#+oP`QD6%8wluuTXAH7A*V4JfGvnI(@ z+iX|kuD`#pgQGI2j0|zxJh!V#g|&6<$Rt(!v%6dCtJUp!{4+lero!NJA^J^~Et5G_ z4zrHw;O^2ke40xnQ3fChasS8rrXDmcm^O2>LbVGD&`H=h%g1`KTxdFO)!jI_n@=}< zi8fPyU~9NEi)Qmcdp+&wV5VRbU}eW0p{S{YFFl`5jMmr;DB(yYE_uKBuvcv|KC@(O zCfYsnUmWC1s7-3KY-%+9X-VYdn> zYr~h2w$E#`rTP3S1!efAw@{V+i^HE{>&t;SVPCi7cs(NQ(h*p{BB>sAf!V`%RK?UB z1xS`baFo&DFy>r{Pc43y>rOKaq8_av;$GjT!kDO>Z{WBz(DSRVWaqYAmRjf(URB(i3RYRA{m0aWJfY&V}W*8zz>?7=6KTB+u z-?6sel=j+oeRYf(zbuW7u_YWWq{V-0b*KrU)L&yHwOj<;Jj^Iw3Zw*lKap8fT+2H? zj#o~Y%8_1{NF{e)3kYg+y_@+!JCm$-K#Z$oQJjJ=s@?M)I(cbme-~uG9%&qz zl0{=|^n5DQrycKATFrHKnXW`%45fVwyq`sBYAZ)_DM?o_~$^mNOdF&o4?(_b|YW357-t+JZw4=!TXBq(`1JzlHPN+8vxQOY!<1J0F$ux<_Fvp@LtVzF6;Kk_>+B6f3I9?4OWW2|Dx9{)@9YuPbGoKA$ zwDl^bT{J7%#+?;*5w5<1zhd^`V?-G5l(@IX2L6f(!w1oi-Zr6l!Hzh6w^MB8te1Cg zD?hy6OD9zAynTV%x{#s%d_Wh|@q2Yc{vS0n{ zz|-pVp5kjV?uv=aJ4~c395KP7L!Y~Xv$%Tl=n#3reHR%(F(@}HdwW1DOZY`Ul#>;g zxJO#0k^hZb3PH@I!%|!9B>=NX@>7-1qnhWb>q%ra+Axrbi6xnOs6whE-~vNk2x*Wq zHQq{W$~M%GAq@R68C)&5qIpr+4R@oRUZ0e!;$9?oft{HF0--I|zb{2LJ7)zUKoUix z(xtw)neY$C6K?9k9(RnJQv$+O&71=9K(^lfh4{*$hg5c>ZkCv8h=4G$6ANeTidXDN z3K%JZhJS2gw^nMy^K1i8R{YtN8>FY}B+a$DR~&y@2i3*hvw6Nj2WfiZ z<`mnbzvz*{^#~3rPGa8~7#?pI50el7J!^1##^2=Ofw^Y0rv7Nt)V4HOimDx9!=;tv zqQxR#B_PzJzxvQS+f~lT=Ji6F=EaTRu2==Ec7-sOD8n{p3?o;gB2PK5S37ay|` z@@@ubC?75pp9|(Qqf=RSU*voco|Nq+aeucLEtrr+$B-8q7Bqu^a_ z#s7?Z5a7K7?JuXIB+wHNU?(iLgGA^!wijmWugaUNu=96UY_x`qb74`ylu#A_bG4J2 zLWO2h*Co(n;*XrV^%ch+>N%det#k*fyVunAczv;EulMCpdMG}(HheEioZp^`4_Mxx zTuHbW-3cL8pUM)LAx^m@Hsz!=a{P#9^T~7tUEjsVzG8d+GwC}EaK2NR3@=#LBt&fH zbi0h6VMRf`?J1iLILv)AorA0XO2}H6e3-PAs|0e%5Bsr_L(WrTUT70!kgCnBklWaZ zk1bW)jqDf8xGjiw;W0Z)XV_6)jo=mi12!Wqhr7+k&=YaG_wwgR>iqk|tW_o>9FW1I z0mvTwL!&CzMzdDoX4N1XK37edmX37D&y3S(c0*d79=sotNVI3cW}D=pa>0#BtSOh9 zngoNR71ep4>boW)$ou{w=SBt$=Bd#ai5*X1lW;7ee(I8lJ~M#Kwa6JqSc;~|2w}AT z3pzejsb6L9uDnUsePSDT$nO9(_|*H|ymC`E4P%@F`9=nCycvzaiy6dr#L*hOe~f_s zGAQvczy#p)SspF+vMqgbT_pt{bo(SW(-AKoHpI)~+1$D=L(_B!0X2@eEWF6K)ZU{9 zg5Zbw*AUQGJ3d+L6gd>5#ZCCR41NGsmM)ZFfEg*9WP+V*&hbgnk^>U_O{~pLEO6Eh z_gPo4F~Js%S~ahIczF1Hg6m?0UXuq(HUcDib&jv$0Kf)+dA(O{ni+=OhVTdwJy&M3 z@|wLrZ%k&3-F7=kO%8krk;`Lydy^tHO%=T5A%&osZq;Pj+D#+R+40iUy*`#9Lf01c z*nj`w%pMk`i@Ef(+qF|?OJR)Gt2flbk=3ElVJDAo>9P+y1^XGn`8B;5UF@%K)+tXtE5#a6m3V|>*Z|)t~3_~ji>NkQ2st(X?nNg;hK(qn40XVkIThTE= zYvERsHu^J-l(4GTE7*~S;g!Kb2j4^? zf$X9jcO6QP?!RMcpDgZM>gmQ)1dq6XR2kBcW%^3OFVhB&(cW)hFiP|Q!wW{ks3qW@ z2?LY1ll*h|?nBv9ldm;M6~>S$K?uyhfO?e~MhgYH^gRfQR-bp6ScIdAOa@qCx06iw zv9|*!@!PX>8GyIt%Mm{9^lf=8ztpe4>AF=WDvI zf8HPZo%df8IPc4MNw`AomsOkSazb73ClQh5HcVret$9n2OSdF|De&`mCc?(pA{MPh zl%_imhu5t6OqWS1(2)#}pI+9<~1wNa#q#S8~ zQsdHOGcId-OEyTxyT_%+_G-SE4R}H(Qqqa2zKeHg-12JD5uAGtbG7&jkaf0=bu~05 zvs_~M6=D`@a&_uQ@#@x^7}mtl6f>KL}`%6W_V?f zO9HhfxJv%e$Ij%grozVx8WAl8o|4w+uMq;lY{q404Gk@GlM2#= zUbDIp7t(E;nei<M*e9zo66X?3g`ePUQaeMsu>_EJb9hLZzZ)X~ikKB|MfZ{fle6 z&MWFRi|4<9(awOn?dJBxS-m6zv&KlN4S39>eB)jhR44Cx;$I-^s7rEbg47GwPWnycPGk7Ht8t3uHVFe%85;8BAjF2rz`V%#+h$%wLVflw=?EG z-MY_8#;`k0UH{TPV(-f~Ebp=!`f=l?P+5UjaJ#`{fuPcG=$&qgG~KVNNC!8H0Xy{~ zayJoVoure94N)_U$>zQ_oe4em{9H%wq9f&vR%s74JVLn;(=s4M#832I<@T+ULqfW- zQHQMyATO0RWg+@s^{%O=b)nn$?~Bz$OWM&lB?}Hv$ra^usrpA56f;c;vG@%{%Q0Kfa)( zPPsen!dyn(Qm5J5FqC1bud+{$Mbe>M5eBx& zxQd=pqB}|T*M+ETyN|qyj{Yhr7<#=-tA4{p)`rczUHMLtY%^ql0xzWy2cVNzonP;ge%>a6V^TZ4pfAHPM$Sda&DL_q)>Gx7R^AnqQh$PS5z0rMiEYLAJBU z)nYC9I`mhj8V1GqufEiT7|9P|ps>!Q3ne$jF%8Wxms0P(`=@geybNF_n*eF0C)d6I z?BT7-nzLg|_@)rpa4UJpaMe|E8&2*z(L4m9@*Z+LNNjYqWA31e#*}LAbsbgtj%f2q z)Ka8~RzyLYEi-s;txGn)x=+*j7XVg|W>K|`+6%~1q}Tuy^y=D}231o)J(%0*tE(hE zWpMZ^(rX2x=?lQ1?F0Pzk5OTa5`P#)EaeHXPiG>y>s*x1=AF$uTR*#@;eEjD<`}NE zW>NkakrQbfAhjrv`LZ*}0nYrz>?9e@wX2#o651l=&aEN=uSU330mU^duPdVey;s|Y ziQ~T=%3;r9u#4us3{Q^Sq#H`c7UQ%XnS%)dUgP+sSSXQ2ew7#1g)xIBCH z4y{2QG4RjHPwyzIn3XtVv-Eas8a5Mu7oz!RczwddU*9hSMaxXzTdCOZj|@qrsZ!T{ zVoFx@M}^QRRkSdFd;L0Nck&m93Qc^a_?)l&>A4Ix>$1deiS$@Gv-{4gPV#LxX-WgU z@tO*!8%u>(1X&WTL|u%cK!O_Hfn<{XdJ{+lhM^;+gcOO}&{iPuo>GPhDVzsHvMHw( z2>RKKz>&Ku)8n>r^E#Cs8?>wEBIG;I0-DsCT=<|Ab_ibYX96mwB4FiK4wnbjM`IQ{ zqUuyU>I5Y9FR^EVUR>9`YECN|`ii@lTHKB->d`&`lbwhF1oySSJJ-joZCpn2*v)MT zpA&ZDpQ@Qqcvx27GQRHd6B|43<&{@zKwUd5iSxH9d}`s3BPGKvTsX5gcJ$t=M~D9| z_GbI0LbUDCB`ECCpr0h!yRAn&P)C{JQQ2BLxCtf6yeF&h#pRpwQ#+o=Zwl`VH`pm2 zSAz1FKAjRg8fMyfY)ST5oPqPH-0NNDF1hRuQacQS%Uu~v^kFAKivn~xg; z>Lu*I2JZ4~wYKCR^0?|ae2X%&$3xlwpv&T@Zg$maE?Fn|j$24LOG=_*pA%VM7MLII zT>9IO-1UYkfcEfn`Qc~%VB{WWj`HVH9!a zZ6C1_5g9q*H<2A$&eHp+maWiA6nuz7m|H*28)#iU4j&;f$oe5~3(*pSZyXz{%FK^} zq_o0`ISfCCIa(Vkft0AE&4M1R)5CK3_Zp)w*SPEKuBJ^x$is{tw?3`CGgRqPn#`|U z8iTyz{(ZI?KbwM|C;vvSi9jWnKzxpmjyWPi?(;P!X1rtgwu*fQHj$>UUL>zBWH~Kr+Lte zPLZ<6B?is8(=!1KT$}WYAMmbn=0f!JOcO|jZG%K^`O|mqGbb?|ugnQN#0)+_`y+`Npo>!5m9iDA#O9s!>&N=Plw`3A z$Cvge{71&dfwPiU`k2}USzai2SC8xON8n@(Rtbf9ukSUTN(F(k4MgwdL0`19sh(=q zbxx`!e8i7pfe#tcG z$~6p4H@}cZj?*6r;u0>H4(qYrG;`t`innqmg0AR*m;>4-%2Wj@5#l(MXcAp z;x!iwUqN185&+bE1k5-%m{digpe`vOAibZ&^(XJ6Kmo5ot_MT|7|i6dd9zK9xvGP@ zsl{ydmFtP*wj4?Asm><%SjG@*$9j4D$+70pYh%C_tzL39EDDwNXHf1hPGz1$If9}^ zS3tfZ8>+|-Y(juASHhC47y0%tK%a{l_(h2@meY3`AbMR{K3BUXYKOt=VUD2@%u)If zbsac30n=Lk(i{7@lyrd_sO=$8%r&Yi_v_ReBUJv4qMg}zde$@O>HmjgOv zm!<=rwBIM0K!hjKQ%(zwov#RR+Lx8$?bhSR67pIfr#qBe$kTfL(})rDgu|Gvj-+Bk&j0rFNY_kDdVO2*p_4wmxDc4vyxH5e6IA0$i?qyyX3u0j}X3qp!d6*sZZzo z+N)R_nsDZJ+t?vhwfbh5cXE)=voEUbuAF5&!>(mQSyOW0g-S9>xTW&c z0h&I)Mx6GH<-YN%#jaX<=O($Uj9o|--M+=Uzuom0xIlBcfbCQJA)UGy#f5B9QQGVj z!H4ntU5=?`%d*`N=dc}y5fml5$s`$0^CKySU`ZbL{55X>>hfb3t4@NKTJ0B#ZD1Up z66(r23YGqLTronp)>t*fn`1;0(R|4U5U3gV0EeG`fA-}vLFC`^J5IaWuVS1el}obe zoJHBMHt|$!C2>vg6tSjdTK1!Diw=Q*&%5-{|C5Tun(K7;bfbo!M5Gbsu8MOfI4&_Z z`PStF&51c0fr(1AKX8s_+@UnE7yP~8oe+Jqsp3~`0?!~S1kM`3=UsIn2Jt_cuTzM)H-u0^PK0Qagpb@GZFwH1sYa_z)(&M>H$EfnwYBrx`( z?|9->>KZ2Z$02)S4z2)L)!06Hsbj}7<_PTUu1H@cMJqATE?KeE1MA6KN87}hTD{4V zkYp;;v}#ICPs;f|u?!GPzr6A#Hy0Ms6H3bC*L50nHzz}|u`!ud%W4!(z8-DqGwJvde{hbukl$rM zH4(=-5{;L&USq2%Rk-v^=6n-`G)LuooWZECxY(c4OZC9P>4gyE9GkWf6pFeH3Dc9{N%=YOiA;rhC-P#?@bxSs; znY)oce=Gp^lB___?PV#<9bb&0(enJ2@E%K{6#fU4haahS3-IAf3nfwCWo9`-ztl;o z_9r$WbZ92%s5iIT6+LW{3gkUplzBK;!niWxPB~;_nq{L+)xg;F}bs<(feL0{J0n zV!h04J_(3ma}TXvY{L~RR%hJ4yRMmk%t=YA@f8mfk-U3epI(FLV;6p{>+d9^wl7(h zt+tQMpOQ;`SW5^`ME)Gj7uaGHU@jH;@f?Btn4+f`v;DCZ6op@}HcOd#t_rG&Wk_!zuTvFz zT=^vLcF^K9uvjH-j{5|;S8`k#4PTIHyEFp6vf(Xa0(=hjZi1!M6{$$CV5+V@JQR9= z0X0K1bQ(?>alQ<=e&4t09MZ;M*DrXb3l4Qb*rhj&iRzyK2V%N^wwn#~{B5 zUW$6nUw#dO?s%rFp9_S@ct>L};m;D!`u$3!NLNu^0?b3xb&_mxZjB%Ta@ELT+8XJH zrMegz9=Yzx4{{M3>d({DjB}JnTgy-%!s+k?>Kz_U?IexOAE$;Ujnm(}G-}S-#C3Ra z5OlKwt@G2GRl#3@Q$7UEB@tu!1+|`(v)yMM{ydi#ihJam#Z`X+)H9K8H-hn9G0AC7M;A; zaXi84DA+QK!2FFoGg^-JbsB+3ec#Eo6I0-?TC6|ZXntBxJrK2@!o&1hyqYd|r)oI^ z%dRyZ)pnAr(Z4y7`OedOX}d#Xmn|w{in$ zhhMSBcn6bqlEIgaHFa~JTULJuYCpx<5?Uu3Hvo>ruI?9z8kKe{ebhE_p<&MT-_OXz zjf)K?=jjRpy$!HAxnH)X5*6EC%8CM$hKhaH7;}X-`IDW9eLFmdB-wjHt7_s{IkUnp zhqXk!LdAGje$%lXI1vh|tJQCavV;*^UBz+Iu8)f?2yWRpcZVu97{US$PP->bmFV8x zoSMt-_|^f37IZ@U^=i$I5z=f9oPr zfgdK#8M>Dcl7-unBeD2Iw%c7JwhNy zWP(IysKNIWg5-=pA)=t&FI&}atQ{3L`PaQ^XjpnSiCx)Ize;Elq*)VhND7mK55dWj zc{TNq!=za~I>;(IlbstH?!?l|ej~IDa%$L%69U`b<0DR@gK?8>&OU1r`-=7&yAz-9 z>bY*2$FyaYirCDEUy{c~joIwnZ|VWMeP}j23xW=Q$0=?0AWw4*IFIY|g4V3(Ljx}{QmSUO|T3BK7lzp}(@5PKaz+o){NPP|!Yw~qOuTgs}*C`P< z7ny3SrC!c?6fv3St#@U5G?90rju`#$ZV081i7v`FDQ{Qa@->ZQ^$YZb{e+#XuG{w! zB=3<8&%R%i)`dHsIE&$ZaZ#l;0D|5fJV~+HXX~YH%=%h-%r=ru{%66eQO2;+FcN$# z6|rnH6xmHJpm+EaXT*hS;{|5=x2D=D*MuMcJ+qYx3QI8lhx15b5Lp_ym>pj;-5}IVX)&jVH8HTLyWXC zQ5clO_IGf7Du!HfoJzI8ZoTEJmQ~&OMbcc!kB`l%d$Cl(+8e3!2^c7zUJI^QO8CI1 zqmv5p18)tnoDAZD3e)B*X#|M~D6#aW_fC>CD$!I_P*U!U+-!M*o_Bzi3dc($q@#9< zd~|4XXiS87*u3dGf*OCm!#9$COc_H_bHbctE2~z7(%(;r9gA?4vs22ueFxX4_f&<4 zo8fy;e}pJ&y9bNk$25&c&3ctFZigaORa$H$g-F$Qv}(*?4ZrH77o3Rwi(|LCsMc{7 zcWLvb6&0oMM*pwh+u1d-9~qmnXk;IYZuc*0A7A6HPm$f%W~0pd%%G9#>dd%b+otR+ znrxW9Mvtr+?Ksd_rR1iGa#*$b(v?7obcW?s6rQbXJM6HtDgs5O z7|ZA8OWXS>UBzr9QqJk2uNmB02s>LaS>7$sJjO47{_fM=#O3#M7EmBMW`Cdvo^8>Z zYo6e8m>G3VS$xx%t6$^GqPNtIp{XRerg-mH4XT+aTszR7q?RJ5i^?iaO@%&x^ONc=jm_2rW)E?gbl4DkQ6g<%~=r25lMR zx}4P_&zHG`CYAgXzOu%&zQ$L|UhyI9GG$0XJElP2!i4^`cn>ozpr21=T`l?zVz7ib z&Jd6|E{ajJm0EOns*at{9vtj-*(FSst~{cI*+{ozpqp~(E4cVaer7Pb*`3ksU;Szy zFr1ZwZnS;QcIRkoSOmpS8tjIXK&BQNg7I?dACyGS%!k6{~x0TIMAQ z(|B^e5)J14bzObcL?8)q%hH7Y5%hPG(nsT2ZDx3h16`oV=@BQ{Kpz3pDS-<6yU)7YTl5nE9f2(#*f_5RF4ar9PEmMLgR5z8A!~(D<+3 z)``z-{V-bfrTodSZ+#U6V~XZuxil`hSubJ0Kc2Ze7r#DxV?lkdx$srY@co zn8!VJ=-bH#eVbi7P5zz=@lquEpEf%8fbwinVFrJ$9#eZX{HvLIP0<&74oubW@~;jv}yRZb$pR4wnQTTH+6`h zrsrz6RJE-GDB#R0fdSA1n8aryub1e)@XXM0EPT}Rn@Z*MfSeXMeccL6SuwRx9R1YP zQZpC>!4TU2H6_*G@tK}&Ou}?T^zGY$Lz7SMhk5L{ckZ$~zWmtBKfMdN?urq)y&mKf zU%dWzBh?p*8+E$fZfL1Ft}8v#+atChRD7m)ucDDzPFq$6?7ccp@)2!fDaqkga(x+f=c z>JUUd(x!M!Q+3R~BSo6u<^$d)bXKHKBAC<7d9QPY_&xU z7y2kS`g6xVLOGTbzL0ohKC3ltr%Ufhk5*!r!4-o5M&igr!@Yz zUk3)-6I4nZ-+-KcJ9A=DgC~mp>|8TMinc<3ctX3Ae$qIdWlymbP_@6$P0IbVh_)@D zXvm|ttgy+iftt;~oR3nAg{!R^4-nl7LqkiJeD~?@l<8j`6yi}W41o!I?QKXV{kE2K zfTZAj^U~din82gav2l)DDH=oGPw26Ol@rfJi`@Zb*J3B@T znzQmKk&d#nkoZXA`8m1o3t?hcxY_6L*Yw+hMN{fOM*vKdBG6&azRjD8ma>UezH<*2 z*N^QxJAiL0$5x@++fMiO z-5rSjjJVOWUEhra%7l8Avly)Nl*{TPq|x8%^K2aJo&WKD;FST-R>aTk6w$JTArddo zq>8{IZkR#M=YXd3yAfb^nO2;(%h#Wk29xXNqB1xHMD*0*sZ-Jj_u^libV^!01-k=~ zw8NG9>)IdGbhYjj=G3V%oDJ<;ANoq@Ox{^||2Z0uKCPH-jF(r#$W{xSZOoQq0~TDA zBc2+6il-&0nwf-_%6}L^YX45!wcw4X2pA>gH;j@hVo&2%gdCt)d8muS<1Ldwr7q*@oF@t+0W#&6Xnq$ z-=~|UD?CkwgOdA#p;piPxpw_~!zcjCZ_g*TmCj?+GFRM{_FjB)igUfasQ34b5?s}N zcQ@5L(8?Ws=a$iuL|)GV83$`ld2t*FAK$2yEo;@eI+3|$bBKw3GDSP^Kz!b|r)mFp z-JQCrH+h?kJn`M6=vK3B`Z^kfIn`QukzyzHIcTPV_`ZzZv42M~YGs3TaIE%FcWwO} zPgHw{RZc+Cc*2lIFgDcl|ky#b=7(d?D9ppvcg zunf{x~1maOk*;HT-o@?)Z{?%3xkax zuO$8;CD~A^2@6bipBWXt_BV90*~Vx^E19o&b$yts5d5*q)uS4m2X$1UA70cwHm2p6 z-TfiKUS%{8o%iE~eb_f%sjnvL2Uu4V99wKRA5&c^Yhm!p%du$JUhnVuoYwYjEe-e_ zHGbbxHaDwSmz%gG*y|lrAt0fKlwsW`uVj9GHwoq~&epfhYz%=c7vW|zN&MXt`X^Rz zb3}Qd!D39f!OE;mqR-~ebE$f58LCa~;p-wiDmz$LEuImDemfy8g9Dp+>WkP~jC5VS z*LBf-H{Gu^$?o77EeWv^@4kcO0?%mrw(1Kx%f&XkOWl2Fn3_7Krhr6#_2lmF3-(RP zV75^Fl-hf`Kz0TzYNp|$2Sr!!POgr8)|F$p*}*>8)* zv*-L3e$cT0maIZk*onL^2B$`GVO%BV{)ka7l9^(I*#O1^vzMp`h{z<`NZDkU^H?OB z(tBx?1!#&y-{abQT;CL;F-f8e7mbLZ=Fw6zb3D$~<6`|eY<-l7blAJv#&pj{iax;m zio%nEDoyYEMM{nR8hJ>9H#Cp6R2sM6#cDuSRdKJD>;D354zIcrs3V8}2LSv)1HV|7 zWpIBCRAWc84)LV&2?r!(WPNKHQ*!EdQmY6n8BK9=?7^A989P8ARF53 z`c?Cy0Nz^ak}ELXw`j=~0r2oQi6{1_BoHH)__*{Hm#}9409b*W7+J1kn{h&?rZ5Qh ztC3u^jPc308@}rfG1%3%(HOE1KHCLwH>q5=Tyxij<4T0M(F z?V`x7oUXMRmidW2IUNo$TVQ;=Rx;XO*fKKOJG5kA704frYud>7aItH7ZDm7;60QOF z2DYY}(B!PscSPv89QUVUi51#1BVepXK_iS%;E+O*yVtR;j$sWU6r>WQj<}@5Y#-jm zFbq?1%{%7D-OFI`IHUo}WX5;n?&g3Rd-0qM;<;}eX(@KL8m7=%-Hp7s9aQqC^9S>; zuM86<2qk#~sQOeBTCSyGEwjc)of#Nm%C~9+(c%}-ht?J)1b}(2oI?WJs4sqqT(#)!>#b+Q%7bCTZAo(b%17HuO6`58=xi9RZkLR5f_Zg}Z z_@_^{2M@a*mFD@nmA-b6{c~D6b)wuql`8Uj8rjT+26ThQ1MNh|9#yy*>}%0{9~_r3 z&8kWW2lp@!)s1;N=rW7QV^Q~<0q^Nv>t}5ak)&H%w2Fxeg(aJ*JfGCli@v2=#h^Jk z=szk^h3n9al1(wTM-YxiW)1QWQ=g|#tvW?iMTwzlQNBVKoDX`jFm_alo<;#wWS-cj zTx|O+j?4sQNm2%L=m4o%84PiyznK|38=etQZJkwp%=ezL@ zuCu2*Lw2a1Xk&m`dmpGZ(A>*=own&DGruJzK+znIex0jY>%;KPc-IMWc_{ z%_G=YM~^#LOy`_BjQ;>S&AD_Y?BH8Lb1`XdTXEt<3Bf+p`20I=jMx%<-9sKLw&AAJ9^)`TzhWtn(ju9lxC(`&*Lv+tHkLrh{o{vUxGGi2+v(#D)j26=-SD zExb1Fs_{SwL}e#vJ%_gy)~2Om7xy|X!x7UlB9GOnMyYx}SaduoCqyS9kCfd!4`8@Q%bx0%VjwO=HW4#=tiflI6G`@V_bB3nZJ^XLq4?lK4qk2 z{{VIuIR600sO5cFdowC6D*pgE{?6VQXJL_4{4QK#Ix{P)+6GyecRKf;gfUBl*@<+J|)O`4jDLsZh#yrOS1P3#$1 z@r|5kJKZo z#5oO^$Is+HIx6 z5iDAX$=t#?_GJ5j_^WolO|p;lJL`weM3SoK>G!izw~2f?3phg+_c?;hf;= zZTMTc{*=^Ea}%}TEQk9xV#t16s(hsP9GX|UG7XQXnG+!4%AQB(Rga83Ez|o(LVZQE z{{V$F_|L-w1YS%>wX^>Kg;Ei9?&NS)>`7D9GmKKL+kt^(*v2rjfybp#J~i;q{Pnv( zOH)Acr-t)@_uT&g)43U>z`nOGm|1}>iELwVagj)7C6&#av!-^OsVkni%~L)#@W5;tF9H7muVQI` z;WY5UIP-m9{qZ$WyhwM?4xhQHIva1IOo34;6T1 z^ZllyJu?gc0EIYskHd_AJg9WBWNV*=cLDFMUymrYAu zeda_972xxDAI1Dtny{$t&2%0pDrU8Z2YT<2=Rb6i2l6$GkJE~m8-SZV=%-Op$_5;g zSO&w!0UdazC6sbVC$z^0BnpZnZ#0FD-g}z9lEY{LiN;R^3dx%-4vWLF!Evg=G{Y-y ztuscydGI&`pIjR4-%_}coN0{vzGLP%QJng7USXtaKVjD`reanw+g-87*5Lk?-c93e z3fcgxYkhQM8*>s29C~Edu#!kpO`1)0t2y~C?4!?J%*=nKC_2kyb>tC_-drEllU%%i z6m6xP$8F)+$GrC{r}7!8X7T2&ClG1cbSiom+~@jLx{)*FlR8haU&=pusay|a3O|)7 z(3!yVCc2P!-76pETx9+)@iVw7sM|t4Beh@Vb5$qTwabJ)Zo7C7e<`+qDxYeH?Bsd~ z@a4Jt*5UsE-x>aOFwt!7$1z&QF`TvrE5|hp`D8*aH9PlinQNEN>57gdhW6DaAio$P z-H#*dPoJ=yY9zsS=0$nCD9FOn5w#yUA1TK) zt`9@d{{Z1-X$0+uOT2df0B%H2>S`(eAYQ8G-@>Tb`@8iHzxeHNc0Ozy7E5KG2IM9& z_}0#kD+zwe0~2ll2T#-aI4yg zxjn*8l$W?tlkIHor%}Cfr;ulF@uU{4!!JDVpYO;`D}@@MnZ8ynwngYOTPtgyr*EZe z6Pj^o$y*4x{oZQA*vFBG!2ByrTlA>~y62@?CQ!7ESmGrfyi?ZQ2tT_Ym1&D{j+DMf z;YEaI3su{XEq^L^k;mO1m0yuI4Ap-(ngD^JCz81XzojrD2F^!MT9WSIt)#n0J9||~ z?O}U#k?un0gSc`k;~SAFsOVS-qmn@Gew1JZ#y~jd9Wz!4SRvYyM=_2bO8__Wc=zf* zDoIcgaTs`)DjiPjrXHrRj9Q2ArXT&-Np*{K9zGeeDNUT zj8+npPS!gq(v0Gz%s?PJv%F)|)`1QflfxPh>8a(Z;7`!h1&U>{RjZ4lf*>N)&r;uYFC>&Y0cEOMC*0pNzlI`K!@ zj{J_Ep0%!E85tB97dBzKfldOTd72oxpxQ?C;OxS0M==kpi`&;F-0vDfah#<{{XV_ zDG&HofVZ|JHL^Fp#+Pz^B^ST}k`NCc^p}(NkdR#TKTLD`||rU<=x&{@M9Ib~0(!x@--FkcmCL zD^4vw1ON!s4_sD?jm+I;(8x_{LzQ^C)p>r>&Amy-rfXjQ*&gKEp`W13-zrd zMHx#GVPn&c({7edd-GeC76RVbqW3wjdOOf2RY%J+008c5xQ-HtiH?9|){dQsjZSka zOHvI*&&rnSCQk5O7)N3}Jf;D9lnhaKrXNqUddEh76etfiJ% z!RR=xBuJyWvJsS&iPHgo_5tpFIik|eJE`GOJ4CXe^9Fuknc|KZPXC zCA4NqZTCiaE)H>5bG0ojY}#L2Tp|h3!y!2;bAeQ3(d3fqStOnyjCT?nwLZ!leMB&~ zn1)Zi7aPF!$4pUwBvw!*oRgf+BoZulxWQ5PW=q0iEYwpQs6$+V5|lzkhzB0 zq4OO9l0CzBdeEMGVsA9%U~UDoI8Z)SJYascg?SuLC8%Zp09K0|l5_rg(rs*uqfX3< z@)2`0O%rE#AY(Z-siewhv?(N+o<0~KPT$t2x6@W7*pi+&&N-=5N480X+oUoMdiA0= zH>jb@rsRbVaqsC*2thchigTT~&stSanETeJAqY$!DMAu@)WJQurP+!ArE?K0@{g@h z^00bVwBdpr3aPMXkZ8D>pFCNOusd^AVzMSO++(gt&MQ_`D-#|%cc)ri*hL5ut23!! z-zGuG5~O8Z5EPB9e(Qb*`P5eWme+-*dD#uWl{d;sE&bv3{VBLI9eQg^6m6^;;WsWo z_8tEKDwT9X0TM{zy5Ukn)1Bz(To+%@hJnxl(!*{LLym!A>lEsQe{WWyR|sh zo6(`m2SO_MAxuc2$MJK|YLjLczcm$-k!-5}0DVaWRkaxvXDJX)Xe-T57bcG{o@hlP z0KYf2DO~N z5}|cda}0`38xoE|{A$uhPQ0a~M+YJ(;T$@S0}eA$ijr7Ot;NN;Ir8Kx8#%}w^HJv? zja*%fD#w+N98!vCG`XrEeH59ZkQ{R8ki*Q^MEe6)Vm5Gak?!|yYQDu&nPdt*%|Rxo zV*`A-k-fT7bK{l@KDCQ3w>*HXF$nX};;5gs-Z36?7W4*- zp?f-#I$@|=+2xvGPqjWD6(`*Cn1j&bx$QhglNc`$^U#{xnIQWpiX;t=gmtas3+f5D z>2bH(&Y>n&IDS^DLeg1|X2}PyHKA=3iGeu4_BC~_;47Gz=g`*Cib9s9PY-E9^_Z8c zr_M4u5nb_4a!Jp%X82CTxw@T)3O0jXFWCo7bgp`@vArnS8KpTR2BUaL$r-JIX@i=7 z*_WsEtXefj2#tv8`cnB#)C$~dA(MfMPqK`1qw=D|DCtbF&-Pit^5r9I_Cr#-Tt$I$ z%O=?w5<)U?J?hI_pi*1q3O8rd6zfZbytffkp_1S+|(v%dl*;VA9y75^tJ+ZQZNqE z0qO^_{*{0&?*y-JvEq@&3Wegm3(MT6zIn*$ipi^59e?`uyQ|6mls?TL5OO*=WW_5?o<3{{SqOeHY}MVP&{FN7Ms&8|sTln#y4rAm z!nNIgT7)1V=8m9dy^{G&z~E-HblX zZWJ~F$4b^N%X6M|-AN^5decvu$`lVUK4r{X7iroK4hi6atxS&H(+o?LfDcYg?cW~`e%MTs7JuxQMj%lDKHzgiU4^<}&*RK3WKF}!-M$D6bU zV8c9^J;8*mI6oM+o3)YW-nnPgOHf-^QUK>TYd!ZUg^ zvV^KorupJ;H`xR72~qSE=;OCA5hKI6m>6(~Fp82C3jw-^h6()opRx?14sKr>@M%o5IV((Sww(}PR3>v?-f~On|(ql;F zP$RV9k~qN6at&Cui#9MSj0Be~52rj*UcxQzs|!)YOnw`sGhjAIcFX^ChH?zy&TP!0@Ls%j=uG}SSd$KsOR9p9= zbn*W2bCFJlK$2mx?OE2hXUoAqTDNKi-Q+MtrJ39gJ?nW?iqROt66$(?hi!$vhXKYK zY{-4V=~|c>$z0QnD*`3DeaKWszd$G$J*x>FF;)|AL5xw3aZaF)Mk-1g21PWAkODs% zM;RP-p^U9`zvveuv5%jnW<;hRG6?cn&;|Atsd&L`Ct`nxpz3~=%eJ?3G^r)Np8o(a z8%s6``qoax#Wr@PmX% zxhK}PVp*m|P1}3!ekwF&^0Y`VC3{r0gza3CUmUl$;Y_%IC6t2-Wh3umoNg`ce(LPftu$1=KEYB>O$IC*?cXo-#Xg>(-nqTT?o*YCN|r29j4Y zh~|@cDnLAAx8qSuAxO#cOSU%S)9NbZF_wgR*-Vm3p}`dR;fg%4j2CXD&PlEQxos?Y zZvl0CmHa&$N2cVDn7eUXaj7FFt6FVn<3+$Y&IMmhq_T`VZU+h|4yHdaAD0=;04)@ZzyNc>9dSWmq-6ErP&8!g5QF5n z1LbT3>_uf?T}f*^Q$de3;4Vf^G0ku4%B^F9z&JTk+~bp6o%5M55mA8hmwpdUd93B3 z(?&e*%$)0YFFPdBTDV?@ROC~W#1n)OjXow^EZbieaHD^!D2yM(Z@dO8q zn#yY+M)hnk>zaMeqObA*UBTmuu0`zpm1R$Hfm%i`#LA*T%NhZf`Mm{A3e7BmBZ+`L zNfkYvy{)>5Cjv+Gt1@bGH_Hr2i`uqI$2_W!I%>kXmO;qm3hBHTr`t)b!!#tYgco9a zVz|eWM?0mEkEyRl_;qF@(=P89{#qT1eY^hvO3@OfbFur)>Pesh&rA;Vh(i)^M$?b3 z1vWGLkm4ex`6_*CiXFWcHj$VFL6T2FOOOyYLj%zE=7&~T_M`$$+!Z}B+|!v!BaE+h z{!|QUV6KVISnPJUu|#y?sVNF-qUHgz7Lcc2WdY%AMEY-I9P zZx>Ll~wnkJZ=4I2yL|ZW5cbpHc4mW zCnwXK)^d%_V>>GxQr>E|iI`S4VsoCjr29^%J7Q~wShoGtW>OGyyRZ-39vd3bt4AHY&%BObH4j-`|hpkwPQ<5|Z_E{t< zHm>H!<6Q|FTPRPnuGPW9#B-5PX)IeAvIKP*gS|gyKWiJ_$1G;KxL~qzlfvT}sV$~k z4OB^H(p&-ek(V3s*A>z<_Riamp3K9cF#(UJY2xV>mDb8&$}p|9MhCIYHB6^o7PW%f zN4iMvq=oI7l;YgB?hkWP?oTn7aL7@`L~hxRMWeCl%YjMusd>eck6+&Z0QIXxa<_M( zFjZM3V9a-QT;va>HYJQnCc@i`bGxAWQw7A#PAy~4yodZLrdzIY6eIow$NVXXdqq*2-@j}>?UNtM^+I7QHcAo!Uv4Y8+j-aR7$g3fj%lXeS90zYyLDq4=( zxQ&^;TNtV`-(1^H(GaZ4agoTcMHUU&5D#dR{3!mC+YqboT<`oHZXlOeB;0!=GRO097?k zlITm7SGzOxn5JthT%hvW9mR`s4QV80SPi6%XLo8o!8+kY^QavFVgUUpI(*xY?`{tt z-#_6`PKB%W9J|Xt&$u}rWx)RcfwdsGMr8TC z#8}R70=9A~M(w962RNpGXHF0L%Zz`%)PHA9l6=Yk0PnV-E;>#AQx!n(kCjR5?LiWG zN_4RgB$Fg;2pON`BX>;qt|m<}=91;5 zNz!GIqJ@l*KJe0BrvNg*aMW0fBLJ2XCDJ0EJ76W|ZosQ?# zcKUt(+%gFb8M&Me{XfFEU20c-a_fFKDF|_na60kz zrm3Vv@eWGGQO->+aZ!e)-BxpwgH8sb2AmBS0$hqJJ=9TfIVrWK2W&vIeKSy{z18y< zm9{T(PAcQeVPFcy5M~~{)^)}F*9VdU_5+H|LMWM3W$5R$v5cTmEQ7u(y!Z0lWCOK* z1!l{099i5!_NtO!Nhb&h2Az!VzBK@GTNdy9?Ce}tYhUaR1%uQS7GZ(^~k!t5k2rLs>s>MO?tZXD!v8Rolh4tS3H zOw#6uPmb8k%ozE@Jv}KYTXSw+$ERZTfgW^g?y#TnGzc#V`R|;!UzRl=(zsg>8F-T7 z;3duFwYoNOvfXe(7T!TxfIV9@(mpyh)NBC0;-7v#yH_kuWosadU?ND;FvpPsTm|Xj_ll;vg z(%@0Kk}wB9Gk^8#i#B10&Sii1q%@;Xx8(UCpL3dC-F6=-*m*i~ed+BN)Oo2s-LG1oE`uVh2G_P&y;y-56&UI*WY~f2pWn;uV7b0ISk(kJO;7QDVQ{r+tKaVvrgy z@f|ux;oF%Hy}%#RpZ@?01-9U5ARk7#&Ob`Z`w;XWl~TC0F-eMGbaD9Z>St6<9tAyq zX-WP-RIlR=Od)9W%M!<;vp4wHH>So{QHPEg;MYQ6AxIe<5T_hxwrB#l@t26?ZHG$J zQwN-@{{Zn-Vf;<3w@B>A9iu1tnxriCEycIUm;)|H$?sYpXYa879Exa0IPsr|8b)9A zMZw1qkN&+myj9{>#x9{>rLup84`!zBVSor~m+XTc^uVwG00}pVkNm_CeJ#`cDTl;9 zCU5zPpZoBFu6>Ph(wr?96ak)f-x44Bi%E}Y)~U^^_`#jFYqP2zn?N7Zw*{hqcOs9n zu6PwK4CbF)@jOEhuiqB>%q%lcv+-7^ zY;J7zJJyIfT#J*`el>7u9ySAwR{Ve4&;I~kwEP*W>6&htsM~6nvD!#3%S0czAZHcP z4-$B6b=IQwI0V()M-bXyjiVWDX7xv_U1E`RpBrAee+!z9NK5md?$H~#<+QR_*xGnE>y zrVkpO*um%bnFs6bRpy>ciJDnke2vRD9MmXIz)uGqsc8W4c%{uCrJx69lp1KDb)*CL zQBp?+^vR--91Y}6WpgA~0EbhLsP(M*Cz4!<#szmCE76VhxV(T5v_d{*1Me+xsfY(Hdy4<$ROSU9Ga?PVVr}SwP`Cx*&V63p|oO)FJ{^4%}H+W45|nnaaX*b zv=ot_Xd|(xZy;1)(VY9%O`2G?_GG`B((PPwDfV{@1=bYhTaGC$=Zf+*M>`x09P~9P z(_Sav<|$sI2C|fkiZ%9?A=f*Uh85I71+?oO+Ndt;$@i`<+fj_4E}#O+>ok= zAmn4xlylHv`Vmn(ZeN$N@7z-*nS8upmG_~+Bng%Y1dywbt!L^mX5nNU23~l_BD5e} zCgAwbKT3w_H$-xCgPe+(THzxqH5uv6T#Y@dBv0OF)~?2%DC3h|H!~s$$e<@RW6Soz zr3eTA0IHD4Jh4X3D!`1M+59O)Oiv3y6}D#;PU;}?=M}BxVDvRwSV)kJew2W(rCNEq znjlm6NzY+hvRF>hu!;6aMiGhN8lk4bf3+>iKvyIk!;Y1|X9U8D~T&x7}{PCqK>Z6*g#h~%G_l4(Yg zt9`N6NL0xnW350er9jCVe3|)9dJ5*6vpVTC_Z;&X0}b3_vZu4Rl!N8t=~l_|<}oqm zu3K5hG$-ZDspmDCk*jezOY3;;@DQGJS(g6*Hm7F0avF79eNAoP;5s79apd<0m{{UXHU>mhdJ;R8QsrsCMg>|}} zpqAR;k^a^Ps5QyU`=x8JP6UC$!RS7pjddf9lHd3~?@-j5{@vga$VMY4nrnDcNZ6Ak zIp}|Urxm;Z0101*<$>deSb-R>)!d{Ie-T)s>cR3KP}7Wm#UNrq{{ZXNb2LPo8r~1P zWjhfwjH7v@1ooz0cxPYKFCOmZdm$?*OsG&WI$#RjO>;zo-Z%!QY{?qnHsjWl{t}G^ z8z)wPxSX2ES2s=mgYk20p;=c zeHh%XE71o6`+?}Dir_|@cHHbAofLre zCe-X>`}cO^gTZ>@wTP`#QvU#nZNyT<<8j!2>8!QW?hige{HnxSW!PZiJXCcuatWTs#EuyYd%?G_E%85$K;e4SKs&INXI##0Cp#j8! zqa4$$H18%olPa@&R)SkZtHNTjmD#E&tLeny!h$`i(obrrL`0fL(jYRIEKYlRQ^uJQ z7$x!br5JT!+eUm){ia`#WzTxhv=eDJ&|W-)F}6yB)OQA^hT1D{^=pq)NY=5+KX@4D zu1#s8L|vWE<&guY-6JY<>rgzY3o$E_S82~eYMzHMmcYZFVc-MYR=<*iVI*_SPqnkK zxo%J?BS;(<5(UQC*aSbFSunexEc+Pn$^}jk;cEFD?;8J<26=5JeFMXoaVLdljP1m znXZ_-tC_W7qTFQWm&gLF5sEw2h=a)k98!o^nwWIXX*lbe0FTN5cBtjI1-A~hIXU8; z_m3FJ>OCj|qr$BlWMHc2AmXxfCz?RvbL-l-#?>UT%HZVotT!cO#?nfTPpu#$Ld73= zA-7|m;-*AKZ<$x=icP{youpuQr$^ZB?deSbCpR)CFoPJY(2tybDxVR&k~VgLI0CPr zRWY=g{o`Q(ALkSSJ_qSaRAT^QjspecHaVr;l1Rzh)DFLe04C9zLZH(O-{`(~mm%YX z1Ln?sDni(mR3jBX#5xW;{{WuU00qI~p_w-n9kOaW zu^2u5>Sdu(S7s#lO&#;PjtMAN)}CgBjjZK3#t5wW7>ksUlEF?}{iEwnms7XE4rLf8 zf}rtSQc6thkGhB!Bx%`-84i02(Sa$0obW5u z;2u`x!UQKED&T?WYt1};6~kP^W)R5cQ!x>ai;h2?bwOKmo2km#M--5%c|^!ti8}o% zK&);Jvk=9bs*Y)v!tM~NETv}LK47OHdsdaxTS^seG~26b0r}>U2`p<%m7q&ydubV( zX;4L;fDDg(RYmgTh1_H+obDqV&-AHDya8}0n+GE(f2~CwmDR+L5+H&WIW2I#3GOLe zYDptL>O{DjI28an+|AtkR*0TZ020Um-~h*gP#q>~Nj%vPnHwF6D)cAXr&Z+sb)1<4 zyvYw)q(AT@Odu2M^{E0=gjJow#6mIXDe9qn3VBRY<20^23A(G?C@Y@+wQFLLQM^Hr zf!3-L)KWuZ3Q%)JMHGP(YYdQRt$9f2HGwC!IgZpP9jT$frcWj!IO|x$StCgjS(1KZ zR&$=U1-SjlIH`JcqI-l#W|w|C(?tw8tcx5CJ9iZj%?jU2XbCV481)o^hIurnIqGpt z3%YH`*{>15g}zf=Hsx>WTzV2@jX}m-S9bRH8;9>^8~{Q_F`sJ9(Q|h}&0>-3_lf*z z3k2kz2Wrq3+HmBp;q~LKJz>*9;@a`Pq<>mIuE*^Wl+q#%#4%rPwB?*&VF|@+h^%wQ zpE>%t{*u$tM6*IaDCW zrLIRz&C~R!G`B5<7IEVs?J{sN_*YCJ%B*E6C$V9Qw2Si*>5lY@7tE2jHtsS%gnb1< zB)ej93_y;VCBLAhU$&A?$VdDH{{W3>K&n&h&n91IIVY&+wLj%hxfutcrft4raAM>A zpZ>ik+4UC5^T$4siU5@V0IUhMvyAS?6xjCplHwACkQkBosf}%Yg1>1a*W?)fRMQNj zJMT#Pl@tMBqU{J%BRq_8S@UVP5=>es%K~}FVN*Aj2@R>J{{XhYQw-LM0DWOW>Oay2 zCIKFkIunH?`{JH-+l-6=3E=W7te4tKb0)P8JO2QrR3lXI_HcFBJ->cws{y1eWr(w3 zOBldVc^S`oos5}58zPO^U`J7oaBC5DZw;yc0FceQA8B$$C-%>WKj-=4jJ|*zj81r0@Xc+$hK~B%0 z`C2x@$@ViDxkEP6Ji&pFdVG^6<=Z+hInGDSD*$+_!(iYv#P#9^r+>m%;nV*BEUu6J zu^-l_V6%H8ZLVMhx0<;3VO6J#Pq~wH_YC~uR2*&kRz&_X&@Iz>w7etzn3w!&HSxxW zBJNE;Q6stX)BI^@_aD6-%hwuCog{l>y(j_TFx~ppQRsS9WlPVzj=3FcJox_rM_jCW zRq^_TT>k(%XZ$Q1E<)(H2ic`j{V6CzpgN4`BDK=vkV*3&_CO?6h?>S0Vv5*rR6pmv zb4%l>zI(?j&{&j#nNv_M%-%Snw09@REHmdjj zDb{Rs`R;Bau-=0z6;3nxnl6W_)MC(*zu9LWMgIUAKhasTbfp;f73Y?}5jD$}A)>Qh zGBBUxRvX5;%UFgHZ@%a(^0rGsY>!Kwdh~F`ioIp$4SwicP%JwweHG1gQX!PqlQ>c)kcN z;fg&yWs{3@NtkFTPM-8B0_fuESM z{Qjskk7LoA>Rn?`HMxS9AjX}!qBERx?x+=9c!yJ(MvXOF!r)|p_~N!F@YR*P{wZ+d{yQ9x}Nv+QlStJ@on=QJlyrl>SJY)2( zZq5ys;!I$P3ghym$y0Z+tiEeUxuu+ryvW@CwO&XGWoyeLChxnKVOw@~-gIg{Rmkey z1z7&gxN?PdOe1gk>6(_=+e(_2t(bAcrmJoK!7SYg^H~1?I-S!`jAUqI9=id@=UpQw zm`OTr#vM#!gZWl{!Z^6h8=_otuD|0=Nm#crvj!8Y~r(>nmi|8^vGYlIek8ZVK+e902wt!$`uUdugC4Rwu zG3iw0)MQz_q04)U9Ij8aOJqM=ju+A;Q5;ChK?M&d+PRxpq+7U(kW+9QM{(<2Igjm2 z0M&8x6Zyr~{rUMmpTdzJ@5DO`hz+bUTQ#oXW016;Ao=CHX9@ z?tVkety9f{h_S^9Wm!@;kMEEda^p1?t79dE!O}3~ zFnkVzy4NwyBe{iKFUp*8pIW7>+duYyoT|=84UT%$g^VdBTkrIyhE^;yAW`zKwrW+? z5ts?=)F6$dn!(3v>vP88sP(Tp5opku`@X+{9%l&Bz5 z7@T%Ael(kL?LY*Y28SQ5CtkF>dEnE63PNK%pnWK*wu&j-RxiPS=b#cO4OSwL4buSn zR(ZBgHb{4R)!1RY^22$6uhOE&K-|ilsEG%?T)4U^ly$89jPXqw$e1@7$))oR zFmfrtbJCe4izx=2WG0vgwJr(mKo9c{DMZbVMKmd=Y(A6;hnoGU-t@Z-Cc-I!46etm zWNS>zr;(q$z*f_yO=5VD32Oi+s}uPOq)Rva1#Exe9g=1r>n<3B>@im(lE6W5j}H5$ zmBDQC22L?r{t2-VctcDL#^BNu>}!z{f5k_0Zm+g>xpWHLbDot}xyxQnY<115Ta4T# zvz!gPHvFdxjkQkN;9R}6qFb)Wr;VAy;Hb|TKTOppu+(9T_xDPWhTash;i`QhptG7y z_bA3qJjfe%;e}DhP2`?}kN2wG)c;4opjNRjT3#FLkNNj*0_D zLG8#jY@L0j&f3!0v+}f=Yl#y>i;-g(%dnjiu05 zFXk*#a4>o6_||g0v^wKsO|PASY~g){LngC+fO&3(M_iMduL9gGK+gd}IL>kp(xu#_ zV;y?txgAL+bVk-CgI-&S7T$P}G@L0a4?m4M@)c$dk)mw`ouG`KG5u?rxRz^ax7)N48uLpAuON+xM@5l;m-MX#PCU{W>GK5~W1Jp_sM`)!kxEp0Hn@_iTtaVj5$KGFC#zansVC82KIc&+>%s&LaQT4 zW!omH{6riYYpRq4UA(X9lg%^=FS)N{7AIgjg(kFQgDPEf$ioj>%kcb0Ic{B)pOkUm zy>!vST0~zhik?Zw0PxZz5a66pR_sc_OqD7iig6E09G^Z)VV;S5PDX zU<1(m)rCgF{oD_~&j;y6hI4lT?C%RK1It1H?e!wFqqeb@?|70m8}iMJF!ipFTylvV zEESQPEI+zBb6j-t2<{55*xNWH@GCZ~Qi^9l*D*$nu}hK83GOM2C6XvNEg1xJy19nC zFLC9j$9{w6$LmBeTxxS9QU++lfW-9tDW+3`MsJMum~O;YHj!*t*tDkrWcC#mg88=5 zK6qsuR9-u<8h4AQSkNp}!jngjafABNp-3LgFZWoA8zj>EInM_a@3NNuDz_L0rV1)9 zQAg~@ZZn^JQTA{bmL{%|j+D|U8Y&n7>6&uF7+{LAwwD;B1R@m!08)sT(={Q_YG*y^ z+$=AYzulsnzut-kV=_yYLzOr+axF&WMifcKWjW^+I<^1;w3JsVF_XD%=PpTOlS&&R zs+K)!RcwmLyOx!(Dnxp$y*kv&IO|Lc0f%~B;-UjI{{WYPfj|rXbC)LN_{A(=zAIK+$8{YW+2>Gxv$NwS(7NlY&aganQN z7(d9=8t$1kt)@!?TH@n}jf(;rQ6JY?1~F2;~U(bw>X8Nxws|~)Wa&^%jY%)8dC(Bp;G{kbE^xCcEOm8MOsPqcvyZT`z9GhJ-H zAn@B{$*bC*UAFRb{{W8GeA>^1o35%@{{XXY=lOwI@*1h5o{L|WA+TD22k?eCtsNs* zTfJ3d`!AOxqkQ1!JvgS%srXc9W!=N)u(tmI6ICMCbbEWGo+vMVPJ}`M{&duAQ*moU zzm6wsL`8%t926%Yd($s;CBL{?Hl|fJ@=xiC=hw#iARNQ26YUa@>q>lerQ_wY)YyBF zKdoMdYECahRlFk?@d$q$(vJz+oQDvF$6`%lw~nm8hey71{?y=9E#pgO`_Lpv9b=)T%dLs$vl2lV|-)F{{Tvjg7xRG6~VWRbtA&*+G>6*X}|E7 zYi+{CV59!H=lRiev_v-EtnTEww#16_g002?Cmat!SqD$C2vFT!GLxJT#D6O0B=JtZ zMm+0O9)jFdC&aq*0tTVCKir5>%!#qp{{Us%@*%spjN<^TXZ!_P(`_NJi()OzvXhf0 z&b7jwe_wO|03m6y{>rHSl^bfh*E_Xq!|lHx$O<`-?0RPNz1&*dZefP`deZ{Qu~BSg zU=CMt0=&T8YI5YZseSYlF#blEVZD=11od+vDSjj611K6u9oIY55!_v9y zuL~u_k~6-*?YII*0=Qr7*&ilJraxH;%^=caZ2XLUa>kRA8ciKko({KCTkY^5^)93N zn%2`Gv(jz$3)=!uSCVBI_v>5=Xz>-#lnEZR`1GiqnLL4$*SM*=9hoo029p6&0d7Xvyp8Nw7#G zR^q4HK+jrYA=$$)`rlKZc4a6p59NeJWK0ss34_ia<&|Lw=O-`0qs& z01Ok8N-_`1aYYmW!i1ayoby!g^s9Y9t4bdzFbdH{GFcp^?%v%kpuf6`G+&e~rE4kf zH3CANLh;6W8JPb7S}3Q?$!NNkPa=$&3CF3VT`;qdRgOJqqL(u%AzMk>G9%~E)RE~q zT$q3-trSwY>_{|aKk~?aROs|*w-Y2kFR&C*MaG5=F?`LU41GmE`z^r#09Le7LSkbZ zPn3TGf%K*eE_(CyqKcspTL#JDMLX;VJwW^@qJSD~iu5`9RMA)$tMSMJluQQ$G*L(i z6?b-~VDCRE0C%E_USJlt|dKD1Fl4%`@I5lF;s#^IlOD4;`B Yf3!b3YbfWMD4+xpDH$e;D5MAf+2?(?W&i*H diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml deleted file mode 100644 index 45614e2e..00000000 --- a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml +++ /dev/null @@ -1,122 +0,0 @@ - - runfourftbackdropvalidation - 1556331946.024382.jpg - F:\runfourftbackdropvalidation\1556331946.024382.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 362 - 68 - 433 - 166 - - - - stockout - Unspecified - 0 - 0 - - 248 - 79 - 303 - 160 - - - - stockout - Unspecified - 0 - 0 - - 158 - 82 - 204 - 163 - - - - stockout - Unspecified - 0 - 0 - - 27 - 102 - 63 - 175 - - - - stockout - Unspecified - 0 - 0 - - 185 - 176 - 244 - 246 - - - - stockout - Unspecified - 0 - 0 - - 309 - 176 - 373 - 244 - - - - stockout - Unspecified - 0 - 0 - - 58 - 189 - 113 - 257 - - - - stockout - Unspecified - 0 - 0 - - 129 - 265 - 196 - 311 - - - - stockout - Unspecified - 0 - 0 - - 227 - 260 - 287 - 309 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.jpg deleted file mode 100644 index 4a972690fa687abb7357fc3459f76e9a23ba7946..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28950 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 z 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 - runfourftbackdropvalidation - 1556331947.1424165.jpg - F:\runfourftbackdropvalidation\1556331947.1424165.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 362 - 77 - 439 - 166 - - - - stockout - Unspecified - 0 - 0 - - 157 - 81 - 204 - 165 - - - - stockout - Unspecified - 0 - 0 - - 250 - 78 - 284 - 138 - - - - stockout - Unspecified - 0 - 0 - - 25 - 101 - 62 - 177 - - - - stockout - Unspecified - 0 - 0 - - 60 - 188 - 114 - 253 - - - - stockout - Unspecified - 0 - 0 - - 132 - 262 - 195 - 311 - - - - stockout - Unspecified - 0 - 0 - - 305 - 175 - 378 - 247 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.jpg deleted file mode 100644 index e594946af168e25ef24eca1f828035456c4f2fd8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33152 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 vPQ0b7DyrIb3fik+ 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 - runfourftbackdropvalidation - 1556331958.545843.jpg - F:\runfourftbackdropvalidation\1556331958.545843.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 366 - 68 - 433 - 165 - - - - stockout - Unspecified - 0 - 0 - - 250 - 79 - 305 - 161 - - - - stockout - Unspecified - 0 - 0 - - 159 - 85 - 204 - 164 - - - - stockout - Unspecified - 0 - 0 - - 21 - 99 - 60 - 172 - - - - stockout - Unspecified - 0 - 0 - - 62 - 187 - 114 - 254 - - - - stockout - Unspecified - 0 - 0 - - 177 - 178 - 245 - 248 - - - - stockout - Unspecified - 0 - 0 - - 308 - 177 - 374 - 246 - - - - stockout - Unspecified - 0 - 0 - - 127 - 263 - 197 - 311 - - - - stockout - Unspecified - 0 - 0 - - 229 - 259 - 281 - 307 - - - - stockout - Unspecified - 0 - 0 - - 338 - 260 - 390 - 310 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.jpg deleted file mode 100644 index 3e665bdb909afa3d8ff3a7e5af15f0a87aaea540..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31099 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 - runfourftbackdropvalidation - 1556331964.128358.jpg - F:\runfourftbackdropvalidation\1556331964.128358.jpg - - Unknown - - - 452 - 376 - 3 - - 0 - - stockout - Unspecified - 0 - 0 - - 365 - 70 - 428 - 162 - - - - stockout - Unspecified - 0 - 0 - - 247 - 75 - 305 - 160 - - - - stockout - Unspecified - 0 - 0 - - 154 - 79 - 203 - 163 - - - - stockout - Unspecified - 0 - 0 - - 23 - 101 - 62 - 174 - - - - stockout - Unspecified - 0 - 0 - - 173 - 178 - 246 - 248 - - - - stockout - Unspecified - 0 - 0 - - 303 - 178 - 378 - 246 - - - - stockout - Unspecified - 0 - 0 - - 335 - 257 - 389 - 309 - - - - stockout - Unspecified - 0 - 0 - - 227 - 262 - 289 - 311 - - - - stockout - Unspecified - 0 - 0 - - 155 - 262 - 198 - 311 - - - - stockout - Unspecified - 0 - 0 - - 327 - 317 - 368 - 352 - - - diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.jpg deleted file mode 100644 index bbef6d25ae99d2fb177eef54efb1c8fb045d066e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32884 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%0D70m5WeF8;)e8Jofhri+n_2D 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

    97aqSm#mI!zcVsbp!K%&&mG)8n>#zw` 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�n`1jZW)6d#l* z`cqcPiR6kXrXk|Vv)Y&J2h?JUDS*>vM?15MnkxeQmcbS36$~8JV-hY4HQxV$_KqOlE;cDrT|p- z%{QlBD58KG?T(6Ro?uay82Zsg06TbP%AT}@jlX(|C=h@T?+R&A&Q55efDl9t6j4YI F|Jh)%f@=T( literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml new file mode 100644 index 00000000..8e6fcb6a --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml @@ -0,0 +1,98 @@ + + runfourftbackdropvalidation + 1556331930.159372.jpg + F:\runfourftbackdropvalidation\1556331930.159372.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 359 + 70 + 430 + 160 + + + + stockout + Unspecified + 0 + 0 + + 246 + 77 + 308 + 161 + + + + stockout + Unspecified + 0 + 0 + + 154 + 84 + 205 + 163 + + + + stockout + Unspecified + 0 + 0 + + 24 + 101 + 65 + 179 + + + + stockout + Unspecified + 0 + 0 + + 58 + 188 + 116 + 254 + + + + stockout + Unspecified + 0 + 0 + + 179 + 177 + 247 + 247 + + + + stockout + Unspecified + 0 + 0 + + 308 + 178 + 375 + 247 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.jpg new file mode 100644 index 0000000000000000000000000000000000000000..15be4311c013dea73198096b8091557fbd606753 GIT binary patch literal 33623 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 U_o)~US}34ne4u%viYWpA*&{CJ3IG5A literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml new file mode 100644 index 00000000..72db507e --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml @@ -0,0 +1,98 @@ + + runfourftbackdropvalidation + 1556331932.4657435.jpg + F:\runfourftbackdropvalidation\1556331932.4657435.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 358 + 70 + 436 + 168 + + + + stockout + Unspecified + 0 + 0 + + 248 + 76 + 307 + 161 + + + + stockout + Unspecified + 0 + 0 + + 156 + 77 + 206 + 163 + + + + stockout + Unspecified + 0 + 0 + + 22 + 97 + 64 + 175 + + + + stockout + Unspecified + 0 + 0 + + 309 + 178 + 374 + 244 + + + + stockout + Unspecified + 0 + 0 + + 176 + 178 + 247 + 238 + + + + stockout + Unspecified + 0 + 0 + + 58 + 187 + 107 + 250 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ca996e26122f6ce0b1c42ec8253ab4f425cf34b5 GIT binary patch literal 34096 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 QG*LhZBN*#N6jB5K*<{F+cmMzZ literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml new file mode 100644 index 00000000..89da46e5 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml @@ -0,0 +1,110 @@ + + runfourftbackdropvalidation + 1556331939.207552.jpg + F:\runfourftbackdropvalidation\1556331939.207552.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 362 + 66 + 432 + 164 + + + + stockout + Unspecified + 0 + 0 + + 250 + 77 + 304 + 160 + + + + stockout + Unspecified + 0 + 0 + + 156 + 81 + 203 + 162 + + + + stockout + Unspecified + 0 + 0 + + 23 + 99 + 65 + 177 + + + + stockout + Unspecified + 0 + 0 + + 60 + 188 + 115 + 255 + + + + stockout + Unspecified + 0 + 0 + + 182 + 178 + 244 + 245 + + + + stockout + Unspecified + 0 + 0 + + 309 + 177 + 373 + 245 + + + + stockout + Unspecified + 0 + 0 + + 136 + 264 + 195 + 312 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c70acb0e72626b2e81e853132c1f7b57fde484ae GIT binary patch literal 33883 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 Yf3!b3YbfWMD4+xpDH$e;D5MAf+2?(?W&i*H literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml new file mode 100644 index 00000000..45614e2e --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml @@ -0,0 +1,122 @@ + + runfourftbackdropvalidation + 1556331946.024382.jpg + F:\runfourftbackdropvalidation\1556331946.024382.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 362 + 68 + 433 + 166 + + + + stockout + Unspecified + 0 + 0 + + 248 + 79 + 303 + 160 + + + + stockout + Unspecified + 0 + 0 + + 158 + 82 + 204 + 163 + + + + stockout + Unspecified + 0 + 0 + + 27 + 102 + 63 + 175 + + + + stockout + Unspecified + 0 + 0 + + 185 + 176 + 244 + 246 + + + + stockout + Unspecified + 0 + 0 + + 309 + 176 + 373 + 244 + + + + stockout + Unspecified + 0 + 0 + + 58 + 189 + 113 + 257 + + + + stockout + Unspecified + 0 + 0 + + 129 + 265 + 196 + 311 + + + + stockout + Unspecified + 0 + 0 + + 227 + 260 + 287 + 309 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4a972690fa687abb7357fc3459f76e9a23ba7946 GIT binary patch literal 28950 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 z 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 + runfourftbackdropvalidation + 1556331947.1424165.jpg + F:\runfourftbackdropvalidation\1556331947.1424165.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 362 + 77 + 439 + 166 + + + + stockout + Unspecified + 0 + 0 + + 157 + 81 + 204 + 165 + + + + stockout + Unspecified + 0 + 0 + + 250 + 78 + 284 + 138 + + + + stockout + Unspecified + 0 + 0 + + 25 + 101 + 62 + 177 + + + + stockout + Unspecified + 0 + 0 + + 60 + 188 + 114 + 253 + + + + stockout + Unspecified + 0 + 0 + + 132 + 262 + 195 + 311 + + + + stockout + Unspecified + 0 + 0 + + 305 + 175 + 378 + 247 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.jpg new file mode 100644 index 0000000000000000000000000000000000000000..e594946af168e25ef24eca1f828035456c4f2fd8 GIT binary patch literal 33152 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 vPQ0b7DyrIb3fik+ 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 + runfourftbackdropvalidation + 1556331958.545843.jpg + F:\runfourftbackdropvalidation\1556331958.545843.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 366 + 68 + 433 + 165 + + + + stockout + Unspecified + 0 + 0 + + 250 + 79 + 305 + 161 + + + + stockout + Unspecified + 0 + 0 + + 159 + 85 + 204 + 164 + + + + stockout + Unspecified + 0 + 0 + + 21 + 99 + 60 + 172 + + + + stockout + Unspecified + 0 + 0 + + 62 + 187 + 114 + 254 + + + + stockout + Unspecified + 0 + 0 + + 177 + 178 + 245 + 248 + + + + stockout + Unspecified + 0 + 0 + + 308 + 177 + 374 + 246 + + + + stockout + Unspecified + 0 + 0 + + 127 + 263 + 197 + 311 + + + + stockout + Unspecified + 0 + 0 + + 229 + 259 + 281 + 307 + + + + stockout + Unspecified + 0 + 0 + + 338 + 260 + 390 + 310 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3e665bdb909afa3d8ff3a7e5af15f0a87aaea540 GIT binary patch literal 31099 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 + runfourftbackdropvalidation + 1556331964.128358.jpg + F:\runfourftbackdropvalidation\1556331964.128358.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 365 + 70 + 428 + 162 + + + + stockout + Unspecified + 0 + 0 + + 247 + 75 + 305 + 160 + + + + stockout + Unspecified + 0 + 0 + + 154 + 79 + 203 + 163 + + + + stockout + Unspecified + 0 + 0 + + 23 + 101 + 62 + 174 + + + + stockout + Unspecified + 0 + 0 + + 173 + 178 + 246 + 248 + + + + stockout + Unspecified + 0 + 0 + + 303 + 178 + 378 + 246 + + + + stockout + Unspecified + 0 + 0 + + 335 + 257 + 389 + 309 + + + + stockout + Unspecified + 0 + 0 + + 227 + 262 + 289 + 311 + + + + stockout + Unspecified + 0 + 0 + + 155 + 262 + 198 + 311 + + + + stockout + Unspecified + 0 + 0 + + 327 + 317 + 368 + 352 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.jpg new file mode 100644 index 0000000000000000000000000000000000000000..bbef6d25ae99d2fb177eef54efb1c8fb045d066e GIT binary patch literal 32884 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%0D70m5WeF8;)e8Jofhri+n_2D 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

    0o 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 literal 0 HcmV?d00001 diff --git a/tutorials/imgs/model_download.png b/tutorials/imgs/model_download.png new file mode 100644 index 0000000000000000000000000000000000000000..e07fc1db632205d33ad76bad121175b470a3e952 GIT binary patch literal 19356 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 literal 0 HcmV?d00001 diff --git a/tutorials/tutorial-1st-experiment-sdk-train.ipynb b/tutorials/tutorial-1st-experiment-sdk-train.ipynb new file mode 100644 index 00000000..8ef7f45e --- /dev/null +++ b/tutorials/tutorial-1st-experiment-sdk-train.ipynb @@ -0,0 +1,385 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Copyright (c) Microsoft Corporation. All rights reserved." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Impressions](https://PixelServer20190423114238.azurewebsites.net/api/impressions/MachineLearningNotebooks/tutorials/tutorial-1st-experiment-sdk-train.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Tutorial: Train your first model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This tutorial is **part two of a two-part tutorial series**. In the previous tutorial, you created a workspace and chose a development environment. In this tutorial, you learn the foundational design patterns in Azure Machine Learning service, and train a simple scikit-learn model based on the diabetes data set. After completing this tutorial, you will have the practical knowledge of the SDK to scale up to developing more-complex experiments and workflows. \n", + "\n", + "In this tutorial, you learn the following tasks:\n", + "\n", + "> * Connect your workspace and create an experiment \n", + "> * Load data and train a scikit-learn model\n", + "> * View training results in the portal\n", + "> * Retrieve the best model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Prerequisites\n", + "\n", + "The only prerequisite is to run the previous tutorial, Setup environment and workspace." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Connect workspace and create experiment" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Import the `Workspace` class, and load your subscription information from the file `config.json` using the function `from_config().` This looks for the JSON file in the current directory by default, but you can also specify a path parameter to point to the file using `from_config(path=\"your/file/path\")`. If you are running this notebook in a cloud notebook server in your workspace, the file is automatically in the root directory.\n", + "\n", + "If the following code asks for additional authentication, simply paste the link in a browser and enter the authentication token." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Workspace\n", + "ws = Workspace.from_config()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now create an experiment in your workspace. An experiment is another foundational cloud resource that represents a collection of trials (individual model runs). In this tutorial you use the experiment to create runs and track your model training in the Azure Portal. Parameters include your workspace reference, and a string name for the experiment." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Experiment\n", + "experiment = Experiment(workspace=ws, name=\"diabetes-experiment\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load data and prepare for training" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For this tutorial, you use the diabetes data set, which is a pre-normalized data set included in scikit-learn. This data set uses features like age, gender, and BMI to predict diabetes disease progression. Load the data from the `load_diabetes()` static function, and split it into training and test sets using `train_test_split()`. This function segregates the data so the model has unseen data to use for testing following training." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.datasets import load_diabetes\n", + "from sklearn.model_selection import train_test_split\n", + "\n", + "X, y = load_diabetes(return_X_y = True)\n", + "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=66)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Train a model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Training a simple scikit-learn model can easily be done locally for small-scale training, but when training many iterations with dozens of different feature permutations and hyperparameter settings, it is easy to lose track of what models you've trained and how you trained them. The following design pattern shows how to leverage the SDK to easily keep track of your training in the cloud.\n", + "\n", + "Build a script that trains ridge models in a loop through different hyperparameter alpha values." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from sklearn.linear_model import Ridge\n", + "from sklearn.metrics import mean_squared_error\n", + "from sklearn.externals import joblib\n", + "import math\n", + "\n", + "alphas = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]\n", + "\n", + "for alpha in alphas:\n", + " run = experiment.start_logging()\n", + " run.log(\"alpha_value\", alpha)\n", + " \n", + " model = Ridge(alpha=alpha)\n", + " model.fit(X=X_train, y=y_train)\n", + " y_pred = model.predict(X=X_test)\n", + " rmse = math.sqrt(mean_squared_error(y_true=y_test, y_pred=y_pred))\n", + " run.log(\"rmse\", rmse)\n", + " \n", + " model_name = \"model_alpha_\" + str(alpha) + \".pkl\"\n", + " filename = \"outputs/\" + model_name\n", + " \n", + " joblib.dump(value=model, filename=filename)\n", + " run.upload_file(name=model_name, path_or_stream=filename)\n", + " run.complete()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The above code accomplishes the following:\n", + "\n", + "1. For each alpha hyperparameter value in the `alphas` array, a new run is created within the experiment. The alpha value is logged to differentiate between each run.\n", + "1. In each run, a Ridge model is instantiated, trained, and used to run predictions. The root-mean-squared-error is calculated for the actual versus predicted values, and then logged to the run. At this point the run has metadata attached for both the alpha value and the rmse accuracy.\n", + "1. Next, the model for each run is serialized and uploaded to the run. This allows you to download the model file from the run in the portal.\n", + "1. At the end of each iteration the run is completed by calling `run.complete()`.\n", + "\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "After the training has completed, call the `experiment` variable to fetch a link to the experiment in the portal." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "experiment" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## View training results in portal" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Following the **Link to Azure Portal** takes you to the main experiment page. Here you see all the individual runs in the experiment. Any custom-logged values (`alpha_value` and `rmse`, in this case) become fields for each run, and also become available for the charts and tiles at the top of the experiment page. To add a logged metric to a chart or tile, hover over it, click the edit button, and find your custom-logged metric.\n", + "\n", + "When training models at scale over hundreds and thousands of runs, this page makes it easy to see every model you trained, specifically how they were trained, and how your unique metrics have changed over time." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Main Experiment page in Portal](imgs/experiment_main.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Clicking on a run number link in the `RUN NUMBER` column takes you to the page for each individual run. The default tab **Details** shows you more-detailed information on each run. Navigate to the **Outputs** tab, and you see the `.pkl` file for the model that was uploaded to the run during each training iteration. Here you can download the model file, rather than having to retrain it manually." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "![Run details page in Portal](imgs/model_download.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Get the best model" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "In addition to being able to download model files from the experiment in the portal, you can also download them programmatically. The following code iterates through each run in the experiment, and accesses both the logged run metrics and the run details (which contains the run_id). This keeps track of the best run, in this case the run with the lowest root-mean-squared-error." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "minimum_rmse_runid = None\n", + "minimum_rmse = None\n", + "\n", + "for run in experiment.get_runs():\n", + " run_metrics = run.get_metrics()\n", + " run_details = run.get_details()\n", + " # each logged metric becomes a key in this returned dict\n", + " run_rmse = run_metrics[\"rmse\"]\n", + " run_id = run_details[\"runId\"]\n", + " \n", + " if minimum_rmse is None:\n", + " minimum_rmse = run_rmse\n", + " minimum_rmse_runid = run_id\n", + " else:\n", + " if run_rmse < minimum_rmse:\n", + " minimum_rmse = run_rmse\n", + " minimum_rmse_runid = run_id\n", + "\n", + "print(\"Best run_id: \" + minimum_rmse_runid)\n", + "print(\"Best run_id rmse: \" + str(minimum_rmse)) " + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Use the best run id to fetch the individual run using the `Run` constructor along with the experiment object. Then call `get_file_names()` to see all the files available for download from this run. In this case, you only uploaded one file for each run during training." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from azureml.core import Run\n", + "best_run = Run(experiment=experiment, run_id=minimum_rmse_runid)\n", + "print(best_run.get_file_names())" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Call `download()` on the run object, specifying the model file name to download. By default this function downloads to the current directory." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "best_run.download_file(name=\"model_alpha_0.1.pkl\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Clean up resources\n", + "\n", + "Do not complete this section if you plan on running other Azure Machine Learning service tutorials.\n", + "\n", + "### Stop the notebook VM\n", + "\n", + "If you used a cloud notebook server, stop the VM when you are not using it to reduce cost.\n", + "\n", + "1. In your workspace, select **Notebook VMs**.\n", + "\n", + "1. From the list, select the VM.\n", + "\n", + "1. Select **Stop**.\n", + "\n", + "1. When you're ready to use the server again, select **Start**.\n", + "\n", + "### Delete everything\n", + "\n", + "If you don't plan to use the resources you created, delete them, so you don't incur any charges:\n", + "\n", + "1. In the Azure portal, select **Resource groups** on the far left.\n", + "\n", + "1. From the list, select the resource group you created.\n", + "\n", + "1. Select **Delete resource group**.\n", + "\n", + "1. Enter the resource group name. Then select **Delete**.\n", + "\n", + "You can also keep the resource group but delete a single workspace. Display the workspace properties and select **Delete**." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Next steps\n", + "\n", + "In this tutorial, you did the following tasks:\n", + "\n", + "> * Connected your workspace and created an experiment\n", + "> * Loaded data and trained scikit-learn models\n", + "> * Viewed training results in the portal and retrieved models\n", + "\n", + "[Deploy your model](https://docs.microsoft.com/azure/machine-learning/service/tutorial-deploy-models-with-aml) with Azure Machine Learning.\n", + "Learn how to develop [automated machine learning](https://docs.microsoft.com/azure/machine-learning/service/tutorial-auto-train-models) experiments." + ] + } + ], + "metadata": { + "authors": [ + { + "name": "trbye" + } + ], + "kernelspec": { + "display_name": "Python 3.6", + "language": "python", + "name": "python36" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.6.5" + }, + "msauthor": "trbye" + }, + "nbformat": 4, + "nbformat_minor": 2 +} From d9fbe4cd87542672f50e2cd5e433747fe79df50a Mon Sep 17 00:00:00 2001 From: fierval Date: Mon, 22 Jul 2019 10:31:22 -0700 Subject: [PATCH 004/248] new folder structure --- .../examples/1556331885.7651057.jpg | Bin 0 -> 37618 bytes .../examples/1556331885.7651057.xml | 26 ++ .../examples/1556331892.593489.jpg | Bin 0 -> 37128 bytes .../examples/1556331892.593489.xml | 38 +++ .../examples/1556331893.711867.jpg | Bin 0 -> 35657 bytes .../examples/1556331893.711867.xml | 38 +++ .../examples/1556331899.4232247.jpg | Bin 0 -> 36901 bytes .../examples/1556331899.4232247.xml | 50 ++++ .../examples/1556331908.5590174.jpg | Bin 0 -> 36101 bytes .../examples/1556331908.5590174.xml | 62 ++++ .../examples/1556331915.4019358.jpg | Bin 0 -> 35340 bytes .../examples/1556331915.4019358.xml | 74 +++++ .../examples/1556331924.4523242.jpg | Bin 0 -> 34798 bytes .../examples/1556331924.4523242.xml | 86 ++++++ .../examples/1556331925.6244981.jpg | Bin 0 -> 29760 bytes .../examples/1556331925.6244981.xml | 62 ++++ .../examples/1556331930.159372.jpg | Bin 0 -> 34495 bytes .../examples/1556331930.159372.xml | 98 +++++++ .../examples/1556331932.4657435.jpg | Bin 0 -> 33623 bytes .../examples/1556331932.4657435.xml | 98 +++++++ .../examples/1556331939.207552.jpg | Bin 0 -> 34096 bytes .../examples/1556331939.207552.xml | 110 +++++++ .../examples/1556331946.024382.jpg | Bin 0 -> 33883 bytes .../examples/1556331946.024382.xml | 122 ++++++++ .../examples/1556331947.1424165.jpg | Bin 0 -> 28950 bytes .../examples/1556331947.1424165.xml | 98 +++++++ .../examples/1556331958.545843.jpg | Bin 0 -> 33152 bytes .../examples/1556331958.545843.xml | 134 +++++++++ .../examples/1556331964.128358.jpg | Bin 0 -> 31099 bytes .../examples/1556331964.128358.xml | 134 +++++++++ .../examples/1556331967.5599852.jpg | Bin 0 -> 32884 bytes .../examples/1556331967.5599852.xml | 146 ++++++++++ .../examples/1556331976.6628668.jpg | Bin 0 -> 32772 bytes .../examples/1556331976.6628668.xml | 158 ++++++++++ .../examples/1556331980.031822.jpg | Bin 0 -> 32023 bytes .../examples/1556331980.031822.xml | 146 ++++++++++ .../examples/1556331991.2960002.jpg | Bin 0 -> 32280 bytes .../examples/1556331991.2960002.xml | 170 +++++++++++ .../examples/1556332002.5715525.jpg | Bin 0 -> 32917 bytes .../examples/1556332002.5715525.xml | 158 ++++++++++ .../examples/1556332004.8638506.jpg | Bin 0 -> 33654 bytes .../examples/1556332004.8638506.xml | 146 ++++++++++ .../examples/1556332011.6702049.jpg | Bin 0 -> 33354 bytes .../examples/1556332011.6702049.xml | 146 ++++++++++ .../examples/1556332026.4848802.jpg | Bin 0 -> 33260 bytes .../examples/1556332026.4848802.xml | 134 +++++++++ .../examples/1556332027.6408842.jpg | Bin 0 -> 32806 bytes .../examples/1556332027.6408842.xml | 98 +++++++ .../examples/1556332033.268194.jpg | Bin 0 -> 33510 bytes .../examples/1556332033.268194.xml | 122 ++++++++ .../examples/1556332040.04427.jpg | Bin 0 -> 33839 bytes .../examples/1556332040.04427.xml | 110 +++++++ .../examples/1556332044.550062.jpg | Bin 0 -> 29172 bytes .../examples/1556332044.550062.xml | 86 ++++++ .../examples/1556332045.6620882.jpg | Bin 0 -> 32948 bytes .../examples/1556332045.6620882.xml | 86 ++++++ .../examples/1556332051.3751378.jpg | Bin 0 -> 34314 bytes .../examples/1556332051.3751378.xml | 98 +++++++ .../notebooks/Deploy Accelerated.ipynb | 165 +++++++---- .../notebooks/Finetune VGG SSD.ipynb | 274 ++++++------------ .../tfssd/dataprep/dataset_utils.py | 9 +- 61 files changed, 3248 insertions(+), 234 deletions(-) create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331899.4232247.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331908.5590174.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331915.4019358.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331924.4523242.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331925.6244981.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331930.159372.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331932.4657435.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331939.207552.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331946.024382.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331947.1424165.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331958.545843.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331964.128358.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331967.5599852.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331976.6628668.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331980.031822.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331991.2960002.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332002.5715525.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332004.8638506.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332011.6702049.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332026.4848802.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332027.6408842.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332033.268194.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332040.04427.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332044.550062.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332045.6620882.xml create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.jpg create mode 100644 how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556332051.3751378.xml diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.jpg new file mode 100644 index 0000000000000000000000000000000000000000..db68228adf6b2e3174140c84c2d8cece970c6161 GIT binary patch literal 37618 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 GfB)GQddiak literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml new file mode 100644 index 00000000..f9042633 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331885.7651057.xml @@ -0,0 +1,26 @@ + + runfourftbackdropvalidation + 1556331885.7651057.jpg + F:\runfourftbackdropvalidation\1556331885.7651057.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 19 + 108 + 62 + 177 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f9648fa22379189de8414aa05c60dab3022b77c1 GIT binary patch literal 37128 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 literal 0 HcmV?d00001 diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml new file mode 100644 index 00000000..3355d325 --- /dev/null +++ b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331892.593489.xml @@ -0,0 +1,38 @@ + + runfourftbackdropvalidation + 1556331892.593489.jpg + F:\runfourftbackdropvalidation\1556331892.593489.jpg + + Unknown + + + 452 + 376 + 3 + + 0 + + stockout + Unspecified + 0 + 0 + + 155 + 85 + 204 + 165 + + + + stockout + Unspecified + 0 + 0 + + 24 + 101 + 59 + 175 + + + diff --git a/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.jpg b/how-to-use-azureml/deployment/accelerated-models/finetune-ssd-vgg/examples/1556331893.711867.jpg new file mode 100644 index 0000000000000000000000000000000000000000..46a1ac003a36f7c9a94926a96598f8ca34f34d35 GIT binary patch literal 35657 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