{ "info": { "author": "", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Intended Audience :: Developers", "Intended Audience :: Education", "Intended Audience :: Science/Research", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", "Topic :: Database :: Front-Ends", "Topic :: Multimedia :: Sound/Audio :: Speech", "Topic :: Scientific/Engineering :: Artificial Intelligence", "Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator", "Topic :: Text Processing :: Linguistic", "Topic :: Utilities" ], "description": "Tutorial\n========\n\n.. image:: https://travis-ci.org/hltcoe/concrete-python.svg\n :target: https://travis-ci.org/hltcoe/concrete-python\n.. image:: https://ci.appveyor.com/api/projects/status/0346c3lu11vj8xqj?svg=true\n :target: https://ci.appveyor.com/project/cjmay/concrete-python-f3iqf\n\n\nConcrete-python is the Python interface to Concrete_, a\nnatural language processing data format and set of service protocols\nthat work across different operating systems and programming languages\nvia `Apache Thrift`_. Concrete-python contains generated Python\nclasses, utility classes and functions, and scripts. It does not contain the\nThrift schema for Concrete, which can be found in the\n`Concrete GitHub repository`_.\n\nThis document provides a quick tutorial of concrete-python installation and\nusage. For more information, including an API reference and development\ninformation, please see the `online documentation`_.\n\n\n.. contents:: **Table of Contents**\n :local:\n :backlinks: none\n\n\nLicense\n-------\n\nCopyright 2012-2019 Johns Hopkins University HLTCOE. All rights\nreserved. This software is released under the 2-clause BSD license.\nPlease see LICENSE_ for more information.\n\n\nRequirements\n------------\n\nconcrete-python is tested on Python 3.5 and requires the\nThrift Python library, among other Python libraries. These are\ninstalled automatically by ``setup.py`` or ``pip``. The Thrift\ncompiler is *not* required.\n\n**Note**: The accelerated protocol offers a (de)serialization speedup\nof 10x or more; if you would like to use it, ensure a C++ compiler is\navailable on your system before installing concrete-python.\n(If a compiler is not available, concrete-python will fall back to the\nunaccelerated protocol automatically.) If you are on Linux, a suitable\nC++ compiler will be listed as ``g++`` or ``gcc-c++`` in your package\nmanager.\n\nIf you are using macOS Mojave with the Homebrew package manager\n(https://brew.sh), you can install the accelerated protocol using\nthe script ``install-mojave-homebrew-accelerated-thrift.sh``.\n\n\nInstallation\n------------\n\nYou can install Concrete using the ``pip`` package manager::\n\n pip install concrete\n\nor by cloning the repository and running ``setup.py``::\n\n git clone https://github.com/hltcoe/concrete-python.git\n cd concrete-python\n python setup.py install\n\n\nBasic usage\n-----------\n\nHere and in the following sections we make use of an example Concrete\nCommunication file included in the concrete-python source distribution.\nThe *Communication* type represents an article, book, post, Tweet, or\nany other kind of document that we might want to store and analyze.\nCopy it from ``tests/testdata/serif_dog-bites-man.concrete`` if you\nhave the concrete-python source distribution or download it\nseparately here: serif_dog-bites-man.concrete_.\n\nFirst we use the ``concrete-inspect.py`` tool (explained in more detail\nin the following section) to inspect some of the contents of the\nCommunication::\n\n concrete-inspect.py --text serif_dog-bites-man.concrete\n\nThis command prints the text of the Communication to the console. In\nour case the text is a short article formatted in SGML::\n\n \n \n Dog Bites Man\n \n \n

\n John Smith, manager of ACM\u00c9 INC, was bit by a dog on March 10th, 2013.\n

\n

\n He died!\n

\n

\n John's daughter Mary expressed sorrow.\n

\n
\n
\n\nNow run the following command to inspect some of the annotations stored\nin that Communication::\n\n concrete-inspect.py --ner --pos --dependency serif_dog-bites-man.concrete\n\nThis command shows a tokenization, part-of-speech tagging, named entity\ntagging, and dependency parse in a CoNLL_-like columnar format::\n\n INDEX\tTOKEN\tPOS\tNER\tHEAD\tDEPREL\n -----\t-----\t---\t---\t----\t------\n 1\tJohn\tNNP\tPER\t2\tcompound\n 2\tSmith\tNNP\tPER\t10\tnsubjpass\n 3\t,\t,\n 4\tmanager\tNN\t\t2\tappos\n 5\tof\tIN\t\t7\tcase\n 6\tACM\u00c9\tNNP\tORG\t7\tcompound\n 7\tINC\tNNP\tORG\t4\tnmod\n 8\t,\t,\n 9\twas\tVBD\t\t10\tauxpass\n 10\tbit\tNN\t\t0\tROOT\n 11\tby\tIN\t\t13\tcase\n 12\ta\tDT\t\t13\tdet\n 13\tdog\tNN\t\t10\tnmod\n 14\ton\tIN\t\t15\tcase\n 15\tMarch\tDATE-NNP\t\t13\tnmod\n 16\t10th\tJJ\t\t15\tamod\n 17\t,\t,\n 18\t2013\tCD\t\t13\tamod\n 19\t.\t.\n\n 1\tHe\tPRP\t\t2\tnsubj\n 2\tdied\tVBD\t\t0\tROOT\n 3\t!\t.\n\n 1\tJohn\tNNP\tPER\t3\tnmod:poss\n 2\t's\tPOS\t\t1\tcase\n 3\tdaughter\tNN\t\t5\tdep\n 4\tMary\tNNP\tPER\t5\tnsubj\n 5\texpressed\tVBD\t\t0\tROOT\n 6\tsorrow\tNN\t\t5\tdobj\n 7\t.\t.\n\nReading Concrete\n~~~~~~~~~~~~~~~~\n\nThere are even more annotations stored in this Communication, but for\nnow we move on to demonstrate handling of the Communication in Python.\nThe example file contains a single Communication, but many (if\nnot most) files contain several. The same code can be used to read\nCommunications in a regular file, tar archive, or zip\narchive::\n\n from concrete.util import CommunicationReader\n\n for (comm, filename) in CommunicationReader('serif_dog-bites-man.concrete'):\n print(comm.id)\n print()\n print(comm.text)\n\nThis loop prints the unique ID and text (the same text we saw\nbefore) of our one Communication::\n\n tests/testdata/serif_dog-bites-man.xml\n\n \n \n Dog Bites Man\n \n \n

\n John Smith, manager of ACM\u00c9 INC, was bit by a dog on March 10th, 2013.\n

\n

\n He died!\n

\n

\n John's daughter Mary expressed sorrow.\n

\n
\n
\n\nIn addition to the general-purpose ``CommunicationReader`` there is a\nconvenience function for reading a single Communication from a regular\nfile::\n\n from concrete.util import read_communication_from_file\n\n comm = read_communication_from_file('serif_dog-bites-man.concrete')\n\nCommunications are broken into *Sections*, which are in turn broken\ninto *Sentences*, which are in turn broken into *Tokens* (and that's\nonly scratching the surface). To traverse this decomposition::\n\n from concrete.util import lun, get_tokens\n\n for section in lun(comm.sectionList):\n print('* section')\n for sentence in lun(section.sentenceList):\n print(' + sentence')\n for token in get_tokens(sentence.tokenization):\n print(' - ' + token.text)\n\nThe output is::\n\n * section\n * section\n + sentence\n - John\n - Smith\n - ,\n - manager\n - of\n - ACM\u00c9\n - INC\n - ,\n - was\n - bit\n - by\n - a\n - dog\n - on\n - March\n - 10th\n - ,\n - 2013\n - .\n * section\n + sentence\n - He\n - died\n - !\n * section\n + sentence\n - John\n - 's\n - daughter\n - Mary\n - expressed\n - sorrow\n - .\n\nHere we used ``get_tokens``, which abstracts the process of extracting\na sequence of *Tokens* from a *Tokenization*, and ``lun``, which\nreturns its argument or (if its argument is ``None``) an empty list\nand stands for \"list un-none\". Many fields in Concrete are optional,\nincluding ``Communication.sectionList`` and ``Section.sentenceList``;\nchecking for ``None`` quickly becomes tedious.\n\nIn this Communication the tokens have been annotated with\npart-of-speech tags, as we saw previously using\n``concrete-inspect.py``. We can print them with the following code::\n\n from concrete.util import get_tagged_tokens\n\n for section in lun(comm.sectionList):\n print('* section')\n for sentence in lun(section.sentenceList):\n print(' + sentence')\n for token_tag in get_tagged_tokens(sentence.tokenization, 'POS'):\n print(' - ' + token_tag.tag)\n\nThe output is::\n\n * section\n * section\n + sentence\n - NNP\n - NNP\n - ,\n - NN\n - IN\n - NNP\n - NNP\n - ,\n - VBD\n - NN\n - IN\n - DT\n - NN\n - IN\n - DATE-NNP\n - JJ\n - ,\n - CD\n - .\n * section\n + sentence\n - PRP\n - VBD\n - .\n * section\n + sentence\n - NNP\n - POS\n - NN\n - NNP\n - VBD\n - NN\n - .\n\nWriting Concrete\n~~~~~~~~~~~~~~~~\n\nWe can add a new part-of-speech tagging to the Communication as well.\nLet's add a simplified version of the current tagging::\n\n from concrete.util import AnalyticUUIDGeneratorFactory, now_timestamp\n from concrete import TokenTagging, TaggedToken, AnnotationMetadata\n\n augf = AnalyticUUIDGeneratorFactory(comm)\n aug = augf.create()\n\n for section in lun(comm.sectionList):\n for sentence in lun(section.sentenceList):\n sentence.tokenization.tokenTaggingList.append(TokenTagging(\n uuid=aug.next(),\n metadata=AnnotationMetadata(\n tool='Simple POS',\n timestamp=now_timestamp(),\n kBest=1\n ),\n taggingType='POS',\n taggedTokenList=[\n TaggedToken(\n tokenIndex=original.tokenIndex,\n tag=original.tag.split('-')[-1][:2],\n )\n for original\n in get_tagged_tokens(sentence.tokenization, 'POS')\n ]\n ))\n\nHere we used ``AnalyticUUIDGeneratorFactory``, which creates generators of\nConcrete *UUID* objects (see `Working with UUIDs`_ for more information).\nWe also used ``now_timestamp``, which returns a Concrete timestamp representing\nthe current time. But now how do we know which tagging is ours? Each\nannotation's metadata contains a *tool* name, and we can use it to\ndistinguish between competing annotations::\n\n from concrete.util import get_tagged_tokens\n\n for section in lun(comm.sectionList):\n print('* section')\n for sentence in lun(section.sentenceList):\n print(' + sentence')\n token_tag_pairs = zip(\n get_tagged_tokens(sentence.tokenization, 'POS', tool='Serif: part-of-speech'),\n get_tagged_tokens(sentence.tokenization, 'POS', tool='Simple POS')\n )\n for (old_tag, new_tag) in token_tag_pairs:\n print(' - ' + old_tag.tag + ' -> ' + new_tag.tag)\n\nThe output shows our new part-of-speech tagging has a smaller, simpler\nset of possible values::\n\n * section\n * section\n + sentence\n - NNP -> NN\n - NNP -> NN\n - , -> ,\n - NN -> NN\n - IN -> IN\n - NNP -> NN\n - NNP -> NN\n - , -> ,\n - VBD -> VB\n - NN -> NN\n - IN -> IN\n - DT -> DT\n - NN -> NN\n - IN -> IN\n - DATE-NNP -> NN\n - JJ -> JJ\n - , -> ,\n - CD -> CD\n - . -> .\n * section\n + sentence\n - PRP -> PR\n - VBD -> VB\n - . -> .\n * section\n + sentence\n - NNP -> NN\n - POS -> PO\n - NN -> NN\n - NNP -> NN\n - VBD -> VB\n - NN -> NN\n - . -> .\n\nFinally, let's write our newly annotated Communication back to disk::\n\n from concrete.util import CommunicationWriter\n\n with CommunicationWriter('serif_dog-bites-man.concrete') as writer:\n writer.write(comm)\n\nNote there are many other useful classes and functions in the\n``concrete.util`` library. See the API reference in the\n`online documentation`_ for details.\n\n\nconcrete-inspect.py\n-------------------\n\nUse ``concrete-inspect.py`` to quickly explore the contents of a\nCommunication from the command line. ``concrete-inspect.py`` and other\nscripts are installed to the path along with the concrete-python\nlibrary.\n\n--id\n~~~~\n\nRun the following command to print the unique ID of our modified\nexample Communication::\n\n concrete-inspect.py --id serif_dog-bites-man.concrete\n\nOutput::\n\n tests/testdata/serif_dog-bites-man.xml\n\n--metadata\n~~~~~~~~~~\n\nUse ``--metadata`` to print the stored annotations along with their\ntool names::\n\n concrete-inspect.py --metadata serif_dog-bites-man.concrete\n\nOutput::\n\n Communication: concrete_serif v3.10.1pre\n\n Tokenization: Serif: tokens\n\n Dependency Parse: Stanford\n\n Parse: Serif: parse\n\n TokenTagging: Serif: names\n TokenTagging: Serif: part-of-speech\n TokenTagging: Simple POS\n\n EntityMentionSet #0: Serif: names\n EntityMentionSet #1: Serif: values\n EntityMentionSet #2: Serif: mentions\n\n EntitySet #0: Serif: doc-entities\n EntitySet #1: Serif: doc-values\n\n SituationMentionSet #0: Serif: relations\n SituationMentionSet #1: Serif: events\n\n SituationSet #0: Serif: relations\n SituationSet #1: Serif: events\n\n CommunicationTagging: lda\n CommunicationTagging: urgency\n\n--sections\n~~~~~~~~~~\n\nUse ``--sections`` to print the text of the Communication, broken out\nby section::\n\n concrete-inspect.py --sections serif_dog-bites-man.concrete\n\nOutput::\n\n Section 0 (0ab68635-c83d-4b02-b8c3-288626968e05)[kind: SectionKind.PASSAGE], from 81 to 82:\n\n\n\n Section 1 (54902d75-1841-4d8d-b4c5-390d4ef1a47a)[kind: SectionKind.PASSAGE], from 85 to 162:\n\n John Smith, manager of ACM\u00c9 INC, was bit by a dog on March 10th, 2013.\n

\n\n\n Section 2 (7ec8b7d9-6be0-4c62-af57-3c6c48bad711)[kind: SectionKind.PASSAGE], from 165 to 180:\n\n He died!\n

\n\n\n Section 3 (68da91a1-5beb-4129-943d-170c40c7d0f7)[kind: SectionKind.PASSAGE], from 183 to 228:\n\n John's daughter Mary expressed sorrow.\n

\n\n--entities\n~~~~~~~~~~\n\nUse ``--entities`` to print the named entities detected in the\nCommunication::\n\n concrete-inspect.py --entities serif_dog-bites-man.concrete\n\nOutput::\n\n Entity Set 0 (Serif: doc-entities):\n Entity 0-0:\n EntityMention 0-0-0:\n tokens: John Smith\n text: John Smith\n entityType: PER\n phraseType: PhraseType.NAME\n EntityMention 0-0-1:\n tokens: John Smith , manager of ACM\u00c9 INC ,\n text: John Smith, manager of ACM\u00c9 INC,\n entityType: PER\n phraseType: PhraseType.APPOSITIVE\n child EntityMention #0:\n tokens: John Smith\n text: John Smith\n entityType: PER\n phraseType: PhraseType.NAME\n child EntityMention #1:\n tokens: manager of ACM\u00c9 INC\n text: manager of ACM\u00c9 INC\n entityType: PER\n phraseType: PhraseType.COMMON_NOUN\n EntityMention 0-0-2:\n tokens: manager of ACM\u00c9 INC\n text: manager of ACM\u00c9 INC\n entityType: PER\n phraseType: PhraseType.COMMON_NOUN\n EntityMention 0-0-3:\n tokens: He\n text: He\n entityType: PER\n phraseType: PhraseType.PRONOUN\n EntityMention 0-0-4:\n tokens: John\n text: John\n entityType: PER.Individual\n phraseType: PhraseType.NAME\n\n Entity 0-1:\n EntityMention 0-1-0:\n tokens: ACM\u00c9 INC\n text: ACM\u00c9 INC\n entityType: ORG\n phraseType: PhraseType.NAME\n\n Entity 0-2:\n EntityMention 0-2-0:\n tokens: John 's daughter Mary\n text: John's daughter Mary\n entityType: PER.Individual\n phraseType: PhraseType.NAME\n child EntityMention #0:\n tokens: Mary\n text: Mary\n entityType: PER\n phraseType: PhraseType.OTHER\n EntityMention 0-2-1:\n tokens: daughter\n text: daughter\n entityType: PER\n phraseType: PhraseType.COMMON_NOUN\n\n\n Entity Set 1 (Serif: doc-values):\n Entity 1-0:\n EntityMention 1-0-0:\n tokens: March 10th , 2013\n text: March 10th, 2013\n entityType: TIMEX2.TIME\n phraseType: PhraseType.OTHER\n\n--mentions\n~~~~~~~~~~\n\nUse ``--mentions`` to show the named entity *mentions* in the\nCommunication, annotated on the text::\n\n concrete-inspect.py --mentions serif_dog-bites-man.concrete\n\nOutput::\n\n John Smith , manager of ACM\u00c9 INC , was bit by a dog on March 10th , 2013 .\n\n He died !\n\n John 's daughter Mary expressed sorrow .\n\n--situations\n~~~~~~~~~~~~\n\nUse ``--situations`` to show the situations detected in the\nCommunication::\n\n concrete-inspect.py --situations serif_dog-bites-man.concrete\n\nOutput::\n\n Situation Set 0 (Serif: relations):\n\n Situation Set 1 (Serif: events):\n Situation 1-0:\n situationType: Life.Die\n\n--treebank\n~~~~~~~~~~\n\nUse ``--treebank`` to show constituency parse trees of the sentences in\nthe Communication::\n\n concrete-inspect.py --treebank serif_dog-bites-man.concrete\n\nOutput::\n\n (S (NP (NPP (NNP john)\n (NNP smith))\n (, ,)\n (NP (NPA (NN manager))\n (PP (IN of)\n (NPP (NNP acme)\n (NNP inc))))\n (, ,))\n (VP (VBD was)\n (NP (NPA (NN bit))\n (PP (IN by)\n (NP (NPA (DT a)\n (NN dog))\n (PP (IN on)\n (NP (DATE (DATE-NNP march)\n (JJ 10th))\n (, ,)\n (NPA (CD 2013))))))))\n (. .))\n\n\n (S (NPA (PRP he))\n (VP (VBD died))\n (. !))\n\n\n (S (NPA (NPPOS (NPP (NNP john))\n (POS 's))\n (NN daughter)\n (NPP (NNP mary)))\n (VP (VBD expressed)\n (NPA (NN sorrow)))\n (. .))\n\nOther options\n~~~~~~~~~~~~~\n\nUse ``--ner``, ``--pos``, ``--lemmas``, and ``--dependency`` (together\nor independently) to show respective token-level information in a\nCoNLL-like format, and use ``--text`` to print the text of the\nCommunication, as described in a previous section.\n\nRun ``concrete-inspect.py --help`` to show a detailed help message\nexplaining the options discussed above and others. All\nconcrete-python scripts have such help messages.\n\n\ncreate-comm.py\n--------------\n\nUse ``create-comm.py`` to generate a simple Communication from a text\nfile. For example, create a file called ``history-of-the-world.txt``\ncontaining the following text::\n\n The dog ran .\n The cat jumped .\n\n The dolphin teleported .\n\nThen run the following command to convert it to a Concrete\nCommunication, creating Sections, Sentences, and Tokens based on\nwhitespace::\n\n create-comm.py --annotation-level token history-of-the-world.txt history-of-the-world.concrete\n\nUse ``concrete-inspect.py`` as shown previously to verify the\nstructure of the Communication::\n\n concrete-inspect.py --sections history-of-the-world.concrete\n\nOutput::\n\n Section 0 (a188dcdd-1ade-be5d-41c4-fd4d81f71685)[kind: passage], from 0 to 30:\n The dog ran .\n The cat jumped .\n\n Section 1 (a188dcdd-1ade-be5d-41c4-fd4d81f7168a)[kind: passage], from 32 to 57:\n The dolphin teleported .\n\nOther scripts\n-------------\n\nconcrete-python provides a number of other scripts, including but not\nlimited to:\n\n``concrete2json.py``\n reads in a Concrete Communication and prints a\n JSON version of the Communication to stdout. The JSON is \"pretty\n printed\" with indentation and whitespace, which makes the JSON\n easier to read and to use for diffs.\n\n``create-comm-tarball.py``\n like ``create-comm.py`` but for multiple files: reads in a tar.gz\n archive of text files, parses them into sections and sentences based\n on whitespace, and writes them back out as Concrete Communications\n in another tar.gz archive.\n\n``fetch-client.py``\n connects to a FetchCommunicationService, retrieves one or more\n Communications (as specified on the command line), and writes them\n to disk.\n\n``fetch-server.py``\n implements FetchCommunicationService, serving Communications to\n clients from a file or directory of Communications on disk.\n\n``search-client.py``\n connects to a SearchService, reading queries from the console and\n printing out results as Communication ids in a loop.\n\n``validate-communication.py``\n reads in a Concrete Communication file and prints out information\n about any invalid fields. This script is a command-line wrapper\n around the functionality in the ``concrete.validate`` library.\n\nUse the ``--help`` flag for details about the scripts' command line\narguments.\n\n\nWorking with UUIDs\n------------------\n\nEach *UUID* object contains a single string,\n``uuidString``, which can be used as a universally unique identifier for the\nobject the *UUID* is attached to. The ``AnalyticUUIDGeneratorFactory`` produces\n*UUID* generators for a *Communication,* one for each analytic (tool) used to\nprocess the *Communication.* In contrast to the Python ``uuid`` library, the\n``AnalyticUUIDGeneratorFactory`` yields UUIDs that have common prefixes within a\n*Communication* and within annotations produced by the same analytic, enabling\ncommon compression algorithms to much more efficiently store the UUIDs in each\n*Communication.* See the ``AnalyticUUIDGeneratorFactory`` class in the API\nreference in the `online documentation`_ for more information.\n\nNote that ``uuidString`` is generated by\na random process, so running the same code twice will result in two\ncompletely different sets of identifiers. Concretely, if you run a parser to\nproduce a part-of-speech *TokenTagging* for each *Tokenization* in a\n*Communication,* save the modified *Communication,* then run the parser again on\nthe same original *Communication,* you will get two different identifiers for\neach *TokenTagging,* even though the contents of each pair of\n*TokenTaggings*---the part-of-speech tags---may be the identical.\n\n\nValidating Concrete Communications\n----------------------------------\n\nThe Python version of the Thrift Libraries does not perform any\nvalidation of Thrift objects. You should use the\n``validate_communication()`` function after reading and before writing\na Concrete Communication::\n\n from concrete.util import read_communication_from_file\n from concrete.validate import validate_communication\n\n comm = read_communication_from_file('tests/testdata/serif_dog-bites-man.concrete')\n\n # Returns True|False, logs details using Python stdlib 'logging' module\n validate_communication(comm)\n\nThrift fields have three levels of requiredness:\n\n* explicitly labeled as **required**\n* explicitly labeled as **optional**\n* no requiredness label given (\"default required\")\n\nOther Concrete tools will raise an exception if a **required** field is\nmissing on deserialization or serialization, and will raise an\nexception if a \"default required\" field is missing on serialization.\nBy default, concrete-python does not perform any validation of Thrift\nobjects on serialization or deserialization. The Python Thrift classes\ndo provide shallow ``validate()`` methods, but they only check for\nexplicitly **required** fields (not \"default required\" fields) and do\nnot validate nested objects.\n\nThe ``validate_communication()`` function recursively checks a\nCommunication object for required fields, plus additional checks for\nUUID mismatches.\n\n\n\n\n\n.. _Concrete: http://hltcoe.github.io/concrete/\n.. _`online documentation`: http://hltcoe.github.io/concrete-python/\n.. _`Apache Thrift`: http://thrift.apache.org\n.. _`Concrete GitHub repository`: https://github.com/hltcoe/concrete\n.. _serif_dog-bites-man.concrete: https://github.com/hltcoe/concrete-python/raw/master/tests/testdata/serif_dog-bites-man.concrete\n.. _CoNLL: http://ufal.mff.cuni.cz/conll2009-st/task-description.html\n.. _LICENSE: https://github.com/hltcoe/concrete-python/blob/master/LICENSE", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hltcoe/concrete-python", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "concrete", "package_url": "https://pypi.org/project/concrete/", "platform": "", "project_url": "https://pypi.org/project/concrete/", "project_urls": { "Homepage": "https://github.com/hltcoe/concrete-python" }, "release_url": "https://pypi.org/project/concrete/4.15.1/", "requires_dist": null, "requires_python": "", "summary": "Python modules and scripts for working with Concrete", "version": "4.15.1" }, "last_serial": 5293913, "releases": { "3.0.1": [ { "comment_text": "", "digests": { "md5": "43ef3758fc07139ad8e3ee65a7e6d3b7", "sha256": "10b012e6d81078ec19860b21e851716f0801dc2632ec21b9856c70f88521275b" }, "downloads": -1, "filename": "concrete-3.0.1-py2.7.egg", "has_sig": false, "md5_digest": "43ef3758fc07139ad8e3ee65a7e6d3b7", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 164232, "upload_time": "2014-07-03T13:53:54", "url": "https://files.pythonhosted.org/packages/7d/57/ecb6ac33c8ce35c48ffd034669f4c4db2c01deff973b3a7a69b2df4f5105/concrete-3.0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "557cdcef1f063fe009ed637e57c507f4", "sha256": "a7f99ae1fdea9f1213cee23e8d873d517da783ae46b62070153eb06b4f7ad725" }, "downloads": -1, "filename": "concrete-3.0.1.tar.gz", "has_sig": false, "md5_digest": "557cdcef1f063fe009ed637e57c507f4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46966, "upload_time": "2014-07-03T13:53:52", "url": "https://files.pythonhosted.org/packages/c7/29/5e5db0fae0b3e16f0bf1ab6917ad532727d44a3a8bc415e6997925ac05ad/concrete-3.0.1.tar.gz" } ], "3.0.2pre": [ { "comment_text": "", "digests": { "md5": "a936164443cd73d767afe52019685780", "sha256": "6462610edae727ab86818e90e6ddd81b4d3ee9b0742a85dc5af0284621357899" }, "downloads": -1, "filename": "concrete-3.0.2pre-py2.7.egg", "has_sig": false, "md5_digest": "a936164443cd73d767afe52019685780", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 167424, "upload_time": "2014-07-03T13:54:35", "url": "https://files.pythonhosted.org/packages/89/5f/f79ea49679dba2bcb8ab1212b5e9cd4d0027c9b7360c3aeb5161ad1ddbed/concrete-3.0.2pre-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "570132b181ebee99aeb4e0588800c472", "sha256": "89a40bb81d730a8593b8b3647d73e819089403dcf5bd8e7f06c8bc34b02fd6e8" }, "downloads": -1, "filename": "concrete-3.0.2pre.tar.gz", "has_sig": false, "md5_digest": "570132b181ebee99aeb4e0588800c472", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48004, "upload_time": "2014-07-03T13:54:32", "url": "https://files.pythonhosted.org/packages/78/c9/ef8547d3d0892cffc4c8f0f2736d01411a256decf9d79780b2e59745432a/concrete-3.0.2pre.tar.gz" } ], "3.10.0": [ { "comment_text": "", "digests": { "md5": "6b484552020260b6962d19b600c916d2", "sha256": "253ec650d6b992adb889b75e47bfa017f372b657b1062bae91dbca3f60abf8b1" }, "downloads": -1, "filename": "concrete-3.10.0-py2.7.egg", "has_sig": false, "md5_digest": "6b484552020260b6962d19b600c916d2", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 192464, "upload_time": "2014-12-04T15:23:29", "url": "https://files.pythonhosted.org/packages/f3/fd/f77db38f58ec21a9ff84d794f7958aeb03e6e6ad6ce9aface3628a901884/concrete-3.10.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "3ed646fff3c145e21b47bd16f79e8f20", "sha256": "0c4f675418be653c1c6ddbcf89ea9aae2da02aa6428313e505e9d78e6f897c73" }, "downloads": -1, "filename": "concrete-3.10.0.tar.gz", "has_sig": false, "md5_digest": "3ed646fff3c145e21b47bd16f79e8f20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58191, "upload_time": "2014-12-04T15:23:25", "url": "https://files.pythonhosted.org/packages/bb/de/853cc9fe32771cde76b75ce0e718042b8b68231928c8f9ff1b07fdd206f8/concrete-3.10.0.tar.gz" } ], "3.10.7": [ { "comment_text": "", "digests": { "md5": "85fc9eafb1bd3e4a3e0e347cc47e8033", "sha256": "e877a0106c906e865563a13ff0594e8bde639066eafcbde7e1fb1b5434cb455f" }, "downloads": -1, "filename": "concrete-3.10.7-py2.7.egg", "has_sig": false, "md5_digest": "85fc9eafb1bd3e4a3e0e347cc47e8033", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 187887, "upload_time": "2015-01-14T20:17:19", "url": "https://files.pythonhosted.org/packages/49/45/40c8ba73c2c8c1f5e4201c395c7bfaa8c1e1f794edc0606896445b8982a5/concrete-3.10.7-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "1e2a1faf21406d44e0c68eb629cf9f61", "sha256": "18b1555929771b9199a561893db4b544e7f839d7c01ba09fb61ece6cbdaf0bf3" }, "downloads": -1, "filename": "concrete-3.10.7.tar.gz", "has_sig": false, "md5_digest": "1e2a1faf21406d44e0c68eb629cf9f61", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57619, "upload_time": "2015-01-14T20:17:17", "url": "https://files.pythonhosted.org/packages/3d/05/62f6e5389bbcab5007087c7ef008d6ade41b817647dc53c07df2c85de163/concrete-3.10.7.tar.gz" } ], "3.3.0pre": [ { "comment_text": "", "digests": { "md5": "d1f5a1c1a1a90ad7cba9a82ecf4d1497", "sha256": "29b7c26874278ad7b1e69ef58cae785dba232f458201b22a345e7da2649cd9cb" }, "downloads": -1, "filename": "concrete-3.3.0pre-py2.7.egg", "has_sig": false, "md5_digest": "d1f5a1c1a1a90ad7cba9a82ecf4d1497", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 168022, "upload_time": "2014-07-09T18:27:57", "url": "https://files.pythonhosted.org/packages/14/cf/2c34cce316b0bdaa238e5e543dd545d17759344fbba67bfec8ca4bb42c05/concrete-3.3.0pre-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "afbfcc9b7159444716ea6ba37f21b567", "sha256": "bf4532c4d32c11254661c4fd4db85d743fddd3a0647e2b784efd983deba4b9d9" }, "downloads": -1, "filename": "concrete-3.3.0pre.tar.gz", "has_sig": false, "md5_digest": "afbfcc9b7159444716ea6ba37f21b567", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 48209, "upload_time": "2014-07-09T18:27:54", "url": "https://files.pythonhosted.org/packages/81/b3/da48116d93d7c80caf5a80cbd13f9f7981f37e07dfcb56b511267ded885f/concrete-3.3.0pre.tar.gz" } ], "3.3.1": [ { "comment_text": "", "digests": { "md5": "6ebcacb06f1895cec06c1292553fefdf", "sha256": "017dd6ad2cfa137a091e7eed6151e19812ea84923c50cbac6ee45836975782bd" }, "downloads": -1, "filename": "concrete-3.3.1-py2.7.egg", "has_sig": false, "md5_digest": "6ebcacb06f1895cec06c1292553fefdf", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 178802, "upload_time": "2014-09-05T21:08:01", "url": "https://files.pythonhosted.org/packages/ef/90/8e749838474f0068a16d28fec27b83f8f5d52324c0a41a8cfedbec7d4209/concrete-3.3.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "4ca3ea13ff3fca06a7ea88287c861a62", "sha256": "f77ecadfc78c1e8806884d64c86be10f38a2b2a5eb26ec2f7eb758fb8bb3a62c" }, "downloads": -1, "filename": "concrete-3.3.1.tar.gz", "has_sig": false, "md5_digest": "4ca3ea13ff3fca06a7ea88287c861a62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 54062, "upload_time": "2014-09-05T21:07:58", "url": "https://files.pythonhosted.org/packages/74/04/62e993d0afb984acd7c1c0626c986f3fe10b959d97e08b476910be272083/concrete-3.3.1.tar.gz" } ], "3.7.0": [ { "comment_text": "", "digests": { "md5": "86a8833bbe2a6b19fcb3d3e7565d11bb", "sha256": "e4871a2d324a80e69ba628488c368e130921b031646d623706e24ac99b3e659c" }, "downloads": -1, "filename": "concrete-3.7.0-py2.7.egg", "has_sig": false, "md5_digest": "86a8833bbe2a6b19fcb3d3e7565d11bb", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 188558, "upload_time": "2014-10-17T18:53:18", "url": "https://files.pythonhosted.org/packages/1c/32/bca3b90863fa814dddf79df01ece4f3e3f5a7fcab0fe12ba644c6bbfba22/concrete-3.7.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "05865dc3e2b96b33a251d5fee7e239ad", "sha256": "b70200d7f01b4d06e4efe3004d245cdb200af247b80be75c5e2048178e68aa4a" }, "downloads": -1, "filename": "concrete-3.7.0.tar.gz", "has_sig": false, "md5_digest": "05865dc3e2b96b33a251d5fee7e239ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56621, "upload_time": "2014-10-17T18:53:15", "url": "https://files.pythonhosted.org/packages/b2/27/46dffb5d1a0801b8955507f6d89a373596f2a266a3e32d2baef5103c3fa7/concrete-3.7.0.tar.gz" } ], "3.9.0pre": [ { "comment_text": "", "digests": { "md5": "020226d9615308568240664befba9670", "sha256": "c83f4d0ce7222e3cc70b61be993ad4a65b2c489806c4c152d866bd460538d4d1" }, "downloads": -1, "filename": "concrete-3.9.0pre-py2.7.egg", "has_sig": false, "md5_digest": "020226d9615308568240664befba9670", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 185597, "upload_time": "2014-12-01T20:36:00", "url": "https://files.pythonhosted.org/packages/c2/ab/5be6d2576726c8ae56f56b83ee653323da381d7075b508f78c4fe182f344/concrete-3.9.0pre-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "e2d2f45cc1d39390dce67f8a8b1400fa", "sha256": "03af87b093853e85e7ab25d964640d836e00f36eddf14178f8e7e23da197115b" }, "downloads": -1, "filename": "concrete-3.9.0pre.tar.gz", "has_sig": false, "md5_digest": "e2d2f45cc1d39390dce67f8a8b1400fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 56884, "upload_time": "2014-12-01T20:35:58", "url": "https://files.pythonhosted.org/packages/bf/e9/332a954a7985a7b6b2e500b98b0398619f7bcaa48eb6f3b9e69235e1ec88/concrete-3.9.0pre.tar.gz" } ], "4.10.0": [ { "comment_text": "", "digests": { "md5": "84a29d8d550c343cdf5984b41b3e626b", "sha256": "ebbe7a26488fb7dd230a23c30e8bef6c3d2402c27d381de227f1d15249bb7966" }, "downloads": -1, "filename": "concrete-4.10.0.tar.gz", "has_sig": false, "md5_digest": "84a29d8d550c343cdf5984b41b3e626b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 152592, "upload_time": "2016-07-21T22:02:05", "url": "https://files.pythonhosted.org/packages/ea/8c/31d7c3f8df4fbd02926a8e802981f86f61e811d7e133a43f0693c4640dce/concrete-4.10.0.tar.gz" } ], "4.10.2": [ { "comment_text": "", "digests": { "md5": "7acc5411c7193afd4fbe285853db5a64", "sha256": "c2ba95efd2550549c207dedef43bec5f9423ba13412aa2860088392c0cec4638" }, "downloads": -1, "filename": "concrete-4.10.2.tar.gz", "has_sig": false, "md5_digest": "7acc5411c7193afd4fbe285853db5a64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 151276, "upload_time": "2016-07-22T01:42:06", "url": "https://files.pythonhosted.org/packages/c9/c8/095d918fc2603d99c3e3079284b9c0f5fe40e6fd17538df02e4fc7f82159/concrete-4.10.2.tar.gz" } ], "4.10.4": [ { "comment_text": "", "digests": { "md5": "b40f9e9b469f72c471648a0c9743c913", "sha256": "2c83868f74a3aa3cff9f2cb681b2d3e8ec7df810937d2841848b886c31831d03" }, "downloads": -1, "filename": "concrete-4.10.4.tar.gz", "has_sig": false, "md5_digest": "b40f9e9b469f72c471648a0c9743c913", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 155048, "upload_time": "2016-08-08T13:40:26", "url": "https://files.pythonhosted.org/packages/39/88/340b9fbc18076b542561327b47d344c6a6760519103422d2db08cad1afeb/concrete-4.10.4.tar.gz" } ], "4.10.6": [ { "comment_text": "", "digests": { "md5": "43e68ba919dda05af3049fae87959cbf", "sha256": "9d4d443f81367936b572adcef3a81650569c1a579763d2fa70bf5a2d04f7f8f8" }, "downloads": -1, "filename": "concrete-4.10.6.tar.gz", "has_sig": false, "md5_digest": "43e68ba919dda05af3049fae87959cbf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 153984, "upload_time": "2016-10-11T13:10:38", "url": "https://files.pythonhosted.org/packages/40/e7/e9ec72c834cdc8e4ce16bbbf97501acfb34faa51a3b01274be64d9bf868e/concrete-4.10.6.tar.gz" } ], "4.10.8": [ { "comment_text": "", "digests": { "md5": "33b31abcdf3db22374f8dad9d069b73e", "sha256": "d1042b0efce606f54ec4d69eb753d2c7d27a385fa95c9f42dd97adc1b7c8c435" }, "downloads": -1, "filename": "concrete-4.10.8.tar.gz", "has_sig": false, "md5_digest": "33b31abcdf3db22374f8dad9d069b73e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 156706, "upload_time": "2016-10-12T18:59:21", "url": "https://files.pythonhosted.org/packages/1f/f0/0318cea61277281516b9bcef67f63020d61e0fd2fe327edaf265006e9fec/concrete-4.10.8.tar.gz" } ], "4.11.0": [ { "comment_text": "", "digests": { "md5": "f8c05891985d86459e1be8f4833d5c71", "sha256": "91966c642e80aedc094c287a1f63ed9b44167009af276381931b430ecf647660" }, "downloads": -1, "filename": "concrete-4.11.0.tar.gz", "has_sig": false, "md5_digest": "f8c05891985d86459e1be8f4833d5c71", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 158050, "upload_time": "2016-10-27T00:04:20", "url": "https://files.pythonhosted.org/packages/2e/d1/fc42efb7720b3aaeafdf9e79d1da80a536e768ce54eaa89042bbf1b981d1/concrete-4.11.0.tar.gz" } ], "4.11.10": [ { "comment_text": "", "digests": { "md5": "e972e0a8c94e6d1245da2e07fe9c3131", "sha256": "3a5c0df8d196b87f434480042fdac1fbb6e419ce00219d40a9b375eec1aae096" }, "downloads": -1, "filename": "concrete-4.11.10.tar.gz", "has_sig": false, "md5_digest": "e972e0a8c94e6d1245da2e07fe9c3131", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171865, "upload_time": "2016-12-23T02:54:05", "url": "https://files.pythonhosted.org/packages/a1/74/137e90e33f1748668bb14348d8d942c44e145424e7eab4ca96e11a1d717b/concrete-4.11.10.tar.gz" } ], "4.11.12": [ { "comment_text": "", "digests": { "md5": "f0665662155687f6daa53a1ae8999141", "sha256": "81b248c4b74f42bdf107aeee777a2ce31836654875303c12f6cc8e55d179d417" }, "downloads": -1, "filename": "concrete-4.11.12.tar.gz", "has_sig": false, "md5_digest": "f0665662155687f6daa53a1ae8999141", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 172309, "upload_time": "2017-01-15T13:31:01", "url": "https://files.pythonhosted.org/packages/df/13/6317b1eecf5bee40c39b80ba57d13cd2d91cc2208ac31b9b4967a8ebecc0/concrete-4.11.12.tar.gz" } ], "4.11.2": [ { "comment_text": "", "digests": { "md5": "f84051de41713d467a2d73bb963c53a6", "sha256": "032bdc29579c0ee16554749d9cdce35ef0d4c39024fd549d5cf91ba2810a6271" }, "downloads": -1, "filename": "concrete-4.11.2.tar.gz", "has_sig": false, "md5_digest": "f84051de41713d467a2d73bb963c53a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 158886, "upload_time": "2016-10-27T18:59:46", "url": "https://files.pythonhosted.org/packages/43/5d/7c1a864e2e573d5e515cbf739576ad4f0072571f14a2adfc348565ecae83/concrete-4.11.2.tar.gz" } ], "4.11.4": [ { "comment_text": "", "digests": { "md5": "c4bce9288b27c8266a678061d1319c15", "sha256": "ca4f5cb2be3a21fa1633145ffc3ac6b9360c43613fda6b92682bc454f8272971" }, "downloads": -1, "filename": "concrete-4.11.4.tar.gz", "has_sig": false, "md5_digest": "c4bce9288b27c8266a678061d1319c15", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 159446, "upload_time": "2016-12-20T06:36:07", "url": "https://files.pythonhosted.org/packages/49/8b/6dfdb7865b5211643cd86429329de6cb53a5201733f8175365bfb2b7d3ef/concrete-4.11.4.tar.gz" } ], "4.11.6": [ { "comment_text": "", "digests": { "md5": "71b246a4e7d800c885d6c0ebf8ee87dd", "sha256": "c044e349ba279672e565cfec09ae528f2a1814e550b44953a3f8793db89388d9" }, "downloads": -1, "filename": "concrete-4.11.6.tar.gz", "has_sig": false, "md5_digest": "71b246a4e7d800c885d6c0ebf8ee87dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171039, "upload_time": "2016-12-21T23:42:34", "url": "https://files.pythonhosted.org/packages/b0/74/e25252e03d7f8477ed1b52a1f1663cadbc72bcd2732ab91f4d9883ba77cf/concrete-4.11.6.tar.gz" } ], "4.11.8": [ { "comment_text": "", "digests": { "md5": "b1bd612ba0bb7ae0f724097cd63466b2", "sha256": "de40d8cf19b4d05a80e7f201d121eeb607c69ce3b7c1752ccb22f059e05a6e3c" }, "downloads": -1, "filename": "concrete-4.11.8.tar.gz", "has_sig": false, "md5_digest": "b1bd612ba0bb7ae0f724097cd63466b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171044, "upload_time": "2016-12-22T17:58:03", "url": "https://files.pythonhosted.org/packages/f6/d0/92171086e2016eea38ad07acdfd311447c2ac7bd085b5690ed0c05953d4a/concrete-4.11.8.tar.gz" } ], "4.12.0": [ { "comment_text": "", "digests": { "md5": "3ae039b7ec84d3f60bd1228e194dde78", "sha256": "8171064c634e152b556bb1a67900e8ccd5f694c72b16c70bb60ee97fb251d1ce" }, "downloads": -1, "filename": "concrete-4.12.0.tar.gz", "has_sig": false, "md5_digest": "3ae039b7ec84d3f60bd1228e194dde78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171808, "upload_time": "2017-01-15T14:23:48", "url": "https://files.pythonhosted.org/packages/81/23/ce21a1cd842884d84472b1b0d087d49a05a8a764a341470beb2fe0cad076/concrete-4.12.0.tar.gz" } ], "4.12.10": [ { "comment_text": "", "digests": { "md5": "96e20c0c357b211541431d76423354bd", "sha256": "f89a9a398dfc0d6cad366956d7d25f17cb5cde945229d135ffe46d490f01d558" }, "downloads": -1, "filename": "concrete-4.12.10.tar.gz", "has_sig": false, "md5_digest": "96e20c0c357b211541431d76423354bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 206313, "upload_time": "2017-06-27T16:15:40", "url": "https://files.pythonhosted.org/packages/da/be/79c7c78c25231b51e1d4ad379efe7fd901a5e4b6fad2e99507c9a700d2f5/concrete-4.12.10.tar.gz" } ], "4.12.2": [ { "comment_text": "", "digests": { "md5": "dfab0d995ec225752e1c31d1ef6ab7e8", "sha256": "57ba56ac148988adfb20ad5e5c28d4a20261fe04fbe6b1e4c95e6cbd992911d3" }, "downloads": -1, "filename": "concrete-4.12.2.tar.gz", "has_sig": false, "md5_digest": "dfab0d995ec225752e1c31d1ef6ab7e8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 171705, "upload_time": "2017-01-15T15:00:04", "url": "https://files.pythonhosted.org/packages/17/9d/965ee10dd855f47646d065ec2ea9e9edc90312e7262b8e40b219edbeb014/concrete-4.12.2.tar.gz" } ], "4.12.3": [ { "comment_text": "", "digests": { "md5": "d5a7f425deb8de4a0b24991325adaf3d", "sha256": "0aac12af25ad29d35826bb4d83760d906f4a79bb1484b6ab52546b1fb9764386" }, "downloads": -1, "filename": "concrete-4.12.3.tar.gz", "has_sig": false, "md5_digest": "d5a7f425deb8de4a0b24991325adaf3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 170577, "upload_time": "2017-01-15T16:25:54", "url": "https://files.pythonhosted.org/packages/f9/d1/3912abb584395faf3be2459d8474789322265be8be5ffbfe5298762dce2f/concrete-4.12.3.tar.gz" } ], "4.12.4": [ { "comment_text": "", "digests": { "md5": "aa5402f5a461f69dd22afd980b076249", "sha256": "b6821fda730503281ca63233f63836a2d50fb87c703ca34bbd3921002b5e5a95" }, "downloads": -1, "filename": "concrete-4.12.4.tar.gz", "has_sig": false, "md5_digest": "aa5402f5a461f69dd22afd980b076249", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 174604, "upload_time": "2017-01-15T19:33:19", "url": "https://files.pythonhosted.org/packages/fd/09/af8cf4b167fe9e1a9913454dfdb10803641b4b4e184b9fdc721be3860685/concrete-4.12.4.tar.gz" } ], "4.12.5": [ { "comment_text": "", "digests": { "md5": "8b263b130ab60fe447477748fbf8a559", "sha256": "489e598cd5c116210af1cbd8276bbfe26fdefe8c0034a2ade94b1ef57e45589f" }, "downloads": -1, "filename": "concrete-4.12.5.tar.gz", "has_sig": false, "md5_digest": "8b263b130ab60fe447477748fbf8a559", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 179473, "upload_time": "2017-01-26T20:37:59", "url": "https://files.pythonhosted.org/packages/53/42/99146902045f217b5300916188bd34e4ed46f09879ddbdcf940a0944e1b4/concrete-4.12.5.tar.gz" } ], "4.12.6": [ { "comment_text": "", "digests": { "md5": "b42ba669456a16bea47a3a06f8a2734d", "sha256": "f4c58ec1b80893388c0b49f7ba35caa43ac9c3fca27cac3b272e2a4c64f91898" }, "downloads": -1, "filename": "concrete-4.12.6.tar.gz", "has_sig": false, "md5_digest": "b42ba669456a16bea47a3a06f8a2734d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 185057, "upload_time": "2017-01-28T21:40:49", "url": "https://files.pythonhosted.org/packages/e9/95/6cd39a3ee6c0420bc139f20ecce4deb8134077bd99692359d8238db20517/concrete-4.12.6.tar.gz" } ], "4.12.7": [ { "comment_text": "", "digests": { "md5": "aa155d64be45efb575e09d2277dddfce", "sha256": "64aa9ac0446db6199eeaf0326612977221d2f97978763a8d96a7c046a0e7e276" }, "downloads": -1, "filename": "concrete-4.12.7.tar.gz", "has_sig": false, "md5_digest": "aa155d64be45efb575e09d2277dddfce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 188877, "upload_time": "2017-01-30T01:13:08", "url": "https://files.pythonhosted.org/packages/9e/98/04065f2f7b336123b66cbdb3a9a020886f4507bf20c79f5a1978232e6609/concrete-4.12.7.tar.gz" } ], "4.12.8": [ { "comment_text": "", "digests": { "md5": "9f871fc018ab0f8d505a1ad42236265c", "sha256": "9bedfa020eb2d047b28783d3e228b9429d970a0b76ea120bb39614ddcfc808a7" }, "downloads": -1, "filename": "concrete-4.12.8.tar.gz", "has_sig": false, "md5_digest": "9f871fc018ab0f8d505a1ad42236265c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 196617, "upload_time": "2017-02-28T03:28:27", "url": "https://files.pythonhosted.org/packages/86/6f/f1df8dd8f30cb6bae75544ef06c386e751ba4329feca335c099bd9799865/concrete-4.12.8.tar.gz" } ], "4.12.9": [ { "comment_text": "", "digests": { "md5": "52bcd957885829bdf38401526bef73e9", "sha256": "66a2b854d66dcb59500613a589a491154d5ec1624ddbce046721af8814149543" }, "downloads": -1, "filename": "concrete-4.12.9.tar.gz", "has_sig": false, "md5_digest": "52bcd957885829bdf38401526bef73e9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 198806, "upload_time": "2017-05-13T16:12:08", "url": "https://files.pythonhosted.org/packages/ba/ca/6995631744fc6b4c4e5fc1fc48290e53ba962ddd597bbf53c9a24ab15c8c/concrete-4.12.9.tar.gz" } ], "4.13.0": [ { "comment_text": "", "digests": { "md5": "16661d479f8228863f105db078baf6b0", "sha256": "d9e506fda207356724170fb1cee1eab381de5267b4f98f7e796e2aa9ae7ca85f" }, "downloads": -1, "filename": "concrete-4.13.0.tar.gz", "has_sig": false, "md5_digest": "16661d479f8228863f105db078baf6b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 202555, "upload_time": "2017-07-18T14:15:10", "url": "https://files.pythonhosted.org/packages/59/03/1625673a6d889a7ef263c21a551ce1a1a27d87297f89697d70a1cc627bc9/concrete-4.13.0.tar.gz" } ], "4.13.1": [ { "comment_text": "", "digests": { "md5": "4d410bb8c6fce39c01e8252a13c12d41", "sha256": "a58b872186e89891ac3b84c2a7dbfb57f4ee988be79fa179ef32407af94b75e4" }, "downloads": -1, "filename": "concrete-4.13.1.tar.gz", "has_sig": false, "md5_digest": "4d410bb8c6fce39c01e8252a13c12d41", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 220246, "upload_time": "2017-07-29T12:57:51", "url": "https://files.pythonhosted.org/packages/d3/4f/4f9421ef08c4eca69b472a64f91b52f61267826560b578f51cd3712810a8/concrete-4.13.1.tar.gz" } ], "4.13.2": [ { "comment_text": "", "digests": { "md5": "c12ddddac44529413ab8c9097ff8ba06", "sha256": "329a8fb249e192bf3458da2cd540d70c6e1e955ce754ed7e9244b78a832b2be8" }, "downloads": -1, "filename": "concrete-4.13.2.tar.gz", "has_sig": false, "md5_digest": "c12ddddac44529413ab8c9097ff8ba06", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 223090, "upload_time": "2017-08-01T13:01:52", "url": "https://files.pythonhosted.org/packages/66/1a/10c98070ad1d4d6b116089dff6b85c7507861998f2ddc3a35a6a2ec52bef/concrete-4.13.2.tar.gz" } ], "4.13.3": [ { "comment_text": "", "digests": { "md5": "ef063fe4b5613ae0b204a50874fd1dd0", "sha256": "e2f0e3c61b7e5a857d089094dd14c0e0c42a849c1183d8e9b48d3df2f547ec54" }, "downloads": -1, "filename": "concrete-4.13.3.tar.gz", "has_sig": false, "md5_digest": "ef063fe4b5613ae0b204a50874fd1dd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 223088, "upload_time": "2017-08-01T22:07:13", "url": "https://files.pythonhosted.org/packages/81/77/f4dcd58c700532a39e6f679f7c215ea3f8e3f1746350f32905cb6baf17ee/concrete-4.13.3.tar.gz" } ], "4.14.0": [ { "comment_text": "", "digests": { "md5": "8d08bd968098f3ef0267e92ef85497be", "sha256": "8d38c9cd0cac8871b7c4afc753ad1da50835d85085294d6fe6e4dc3579f1f2b7" }, "downloads": -1, "filename": "concrete-4.14.0.tar.gz", "has_sig": false, "md5_digest": "8d08bd968098f3ef0267e92ef85497be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 213947, "upload_time": "2017-08-09T00:54:09", "url": "https://files.pythonhosted.org/packages/fb/6c/f6ed2fadcd219fd6a496126cfc3d6299c3a06ee863e6334fd760d0c2eae2/concrete-4.14.0.tar.gz" } ], "4.14.1": [ { "comment_text": "", "digests": { "md5": "47be01310881923b2d66eae1e3014dda", "sha256": "0f0b2ad5053e8862d1dd22a00fa74558782f0e0123b8c3d04ecce12e6de2c13b" }, "downloads": -1, "filename": "concrete-4.14.1.tar.gz", "has_sig": false, "md5_digest": "47be01310881923b2d66eae1e3014dda", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 220705, "upload_time": "2019-02-28T19:52:37", "url": "https://files.pythonhosted.org/packages/9c/be/1cfad5485fab2e53c3c1974418aaabb903e840fd61e5c33434de8e28ecf9/concrete-4.14.1.tar.gz" } ], "4.15.1": [ { "comment_text": "", "digests": { "md5": "e9217bc7e178b5525ffb4b9e1f753384", "sha256": "979e01c9393453d82f03a37051248ea43dcbc522e4bec879637809af5badd4cb" }, "downloads": -1, "filename": "concrete-4.15.1.tar.gz", "has_sig": false, "md5_digest": "e9217bc7e178b5525ffb4b9e1f753384", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 359541, "upload_time": "2019-05-20T19:45:29", "url": "https://files.pythonhosted.org/packages/fc/82/f2acc5be02bedac7f7fae48b21ab553ec38a591c477d991125f01469239f/concrete-4.15.1.tar.gz" } ], "4.2.1": [ { "comment_text": "", "digests": { "md5": "4cd0f428b985f11e5b8fe0cc92000974", "sha256": "a63b09d10072e1f8be84afe8b1301c1cf0e1e75c14e41c0b80af12883dbf3eed" }, "downloads": -1, "filename": "concrete-4.2.1-py2.7.egg", "has_sig": false, "md5_digest": "4cd0f428b985f11e5b8fe0cc92000974", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 222126, "upload_time": "2015-01-21T17:32:22", "url": "https://files.pythonhosted.org/packages/fc/19/f8da3eada95049ede7283232f1773d6e10f568d9fdb3f66ebc507a73e3d2/concrete-4.2.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "281ce9c4a579425d51ffde3ffdb97478", "sha256": "1b6f7bc73eea4c2acb3ce29a61aecc20787a1f48c716227be27e762629b5024a" }, "downloads": -1, "filename": "concrete-4.2.1.tar.gz", "has_sig": false, "md5_digest": "281ce9c4a579425d51ffde3ffdb97478", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 64746, "upload_time": "2015-01-21T17:32:21", "url": "https://files.pythonhosted.org/packages/64/55/5f2fa81b88b0eb98207c485bd13ebade04301da084eed90f446b9572405a/concrete-4.2.1.tar.gz" } ], "4.2.2": [ { "comment_text": "", "digests": { "md5": "33902043696d4e953b95f9a15dac9914", "sha256": "525017cda033342d8fdfd8a705907ca9a595fac8fa5e1df819ca6727f0d22197" }, "downloads": -1, "filename": "concrete-4.2.2-py2.7.egg", "has_sig": false, "md5_digest": "33902043696d4e953b95f9a15dac9914", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 224450, "upload_time": "2015-01-27T17:50:26", "url": "https://files.pythonhosted.org/packages/26/79/9d501a896f4892c0b32054f1424536ef6e83a69b32c7244bce055aac2223/concrete-4.2.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "ea093b115cea08717e2f7da444cab4ec", "sha256": "93946ff30e658931e031c617efb7959a0624c59a1f70c9b9dc02769a4b8635db" }, "downloads": -1, "filename": "concrete-4.2.2.tar.gz", "has_sig": false, "md5_digest": "ea093b115cea08717e2f7da444cab4ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 65269, "upload_time": "2015-01-27T17:50:24", "url": "https://files.pythonhosted.org/packages/f9/f8/bd317d6543cb00b947aa10d1220d5289c5e73d1b0c9b0539b1bf95837abc/concrete-4.2.2.tar.gz" } ], "4.2.3": [ { "comment_text": "", "digests": { "md5": "0b80e61ee8b4787dfa6c215b3b9abfa0", "sha256": "ac53919ca2b05469e0fcebbed50a8151f3bf3f9a5709f1e6b6ef607988ebb239" }, "downloads": -1, "filename": "concrete-4.2.3-py2.7.egg", "has_sig": false, "md5_digest": "0b80e61ee8b4787dfa6c215b3b9abfa0", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 231372, "upload_time": "2015-02-11T19:19:38", "url": "https://files.pythonhosted.org/packages/ab/41/dd0923474010d1cba5275bf5da86e84aaf75ac53635ab458ca45fc9b5c11/concrete-4.2.3-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "498229196669177ce08e8f498ae3d41e", "sha256": "a1099933ceeb573f397def4eccff1de1c44146f52ff51dd7bd789fe86900e25a" }, "downloads": -1, "filename": "concrete-4.2.3.tar.gz", "has_sig": false, "md5_digest": "498229196669177ce08e8f498ae3d41e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 77905, "upload_time": "2015-02-11T19:19:33", "url": "https://files.pythonhosted.org/packages/8e/93/7933c6969c3c285b610825fd529b555a2a509f700ade8cf39fd19a62ea34/concrete-4.2.3.tar.gz" } ], "4.2.4": [ { "comment_text": "", "digests": { "md5": "13013da311d0fb08a38a32491b16dee6", "sha256": "e8bc38d5f7c10e8109b2e9ee246900348a6d7b7d08ebb13f9f01939456fb0c8b" }, "downloads": -1, "filename": "concrete-4.2.4.tar.gz", "has_sig": false, "md5_digest": "13013da311d0fb08a38a32491b16dee6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 78827, "upload_time": "2015-03-11T16:39:29", "url": "https://files.pythonhosted.org/packages/8a/f0/46a5cc0729b973ea80a3e5040955aae9f0cda7a366cb5467d2fb963848de/concrete-4.2.4.tar.gz" } ], "4.4.0": [ { "comment_text": "", "digests": { "md5": "186f6feda30d815125858c3153f68217", "sha256": "662c3d01d80109d9005915e7d2bfaaa7181d5d02875e9e5f149473752f31c034" }, "downloads": -1, "filename": "concrete-4.4.0.tar.gz", "has_sig": false, "md5_digest": "186f6feda30d815125858c3153f68217", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79894, "upload_time": "2015-03-11T16:43:07", "url": "https://files.pythonhosted.org/packages/4a/eb/484941b9261b920551c31bb7d86dfed76fe3ec852a13495745d092b84354/concrete-4.4.0.tar.gz" } ], "4.4.1": [ { "comment_text": "", "digests": { "md5": "4cfe7640d106cd48b5b5df1b47eb66a4", "sha256": "3f667353e2eedb7289bdcff80bc4b2691ed525dc7c0c37adfead8b595cbe998a" }, "downloads": -1, "filename": "concrete-4.4.1.tar.gz", "has_sig": false, "md5_digest": "4cfe7640d106cd48b5b5df1b47eb66a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 80918, "upload_time": "2015-03-19T17:26:51", "url": "https://files.pythonhosted.org/packages/79/3c/28214cb887cb370cabedec7a3af3180eff32d490ebf6d75fdb2219deaac6/concrete-4.4.1.tar.gz" } ], "4.4.2": [ { "comment_text": "", "digests": { "md5": "f5108ec987c4724ef4bd58b42ebab2b1", "sha256": "d69dd0bfabb14aec4528832ce34ad4af849b492f0245888150cea896540a8ce2" }, "downloads": -1, "filename": "concrete-4.4.2.tar.gz", "has_sig": false, "md5_digest": "f5108ec987c4724ef4bd58b42ebab2b1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 82655, "upload_time": "2015-03-22T14:03:41", "url": "https://files.pythonhosted.org/packages/5f/17/30391ca859efdd4683e48ca4d90b4e1ee4b5ceceb40cdc7af4fec15744c8/concrete-4.4.2.tar.gz" } ], "4.4.3": [ { "comment_text": "", "digests": { "md5": "8f1f5fa14503c56f045b282b7c50ba78", "sha256": "f700e7e45c909062e64956a932e0a78c1bd9661ed062bc98609e0f6924cd763b" }, "downloads": -1, "filename": "concrete-4.4.3.tar.gz", "has_sig": false, "md5_digest": "8f1f5fa14503c56f045b282b7c50ba78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84201, "upload_time": "2015-03-26T17:33:05", "url": "https://files.pythonhosted.org/packages/b0/b1/108a5cf0f20869c35a9a77cda61f83016eb4a2eb79d3f202d58566d0694a/concrete-4.4.3.tar.gz" } ], "4.8.0": [ { "comment_text": "", "digests": { "md5": "3f05813b798fa7e6f05c9136cc8f17ea", "sha256": "20f9426597f2cab55937321e553386a5853446703dff91f9c072e983cfccd152" }, "downloads": -1, "filename": "concrete-4.8.0.tar.gz", "has_sig": false, "md5_digest": "3f05813b798fa7e6f05c9136cc8f17ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 97203, "upload_time": "2015-08-19T19:04:16", "url": "https://files.pythonhosted.org/packages/f7/9a/9d9f8cdc8a6f726543f7bba20af19e04956ee612f5bc1d74bc690b910b45/concrete-4.8.0.tar.gz" } ], "4.8.1": [ { "comment_text": "", "digests": { "md5": "e2cd1944a79d8259d63eb3051e3eda31", "sha256": "f127f20fec25da00512f5b9045ce7f24c60ca4abb70c674d6581d5130fe657df" }, "downloads": -1, "filename": "concrete-4.8.1.tar.gz", "has_sig": false, "md5_digest": "e2cd1944a79d8259d63eb3051e3eda31", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 90529, "upload_time": "2015-10-27T19:38:10", "url": "https://files.pythonhosted.org/packages/15/8b/023e6a23288640a58816f8219c2bf16b9260912ea42265e9a226036f87df/concrete-4.8.1.tar.gz" } ], "4.8.10": [ { "comment_text": "", "digests": { "md5": "f9e2a9960bed5b9f08e3908722a1eb57", "sha256": "b3f1916d40fd1e60b00aace27308f67217f2cc01b10eb3b1a2445fd8be7cb8b6" }, "downloads": -1, "filename": "concrete-4.8.10.tar.gz", "has_sig": false, "md5_digest": "f9e2a9960bed5b9f08e3908722a1eb57", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103982, "upload_time": "2016-05-17T00:26:48", "url": "https://files.pythonhosted.org/packages/08/d8/8ea7473cec104bc2cf99434bac511815e665362c8e55cca13fec790058cc/concrete-4.8.10.tar.gz" } ], "4.8.2": [ { "comment_text": "", "digests": { "md5": "3029c9213463c4cd623747de22024deb", "sha256": "6d0a128520297d7295a32b02f07274f98cae28012970be368d3de51161fbb056" }, "downloads": -1, "filename": "concrete-4.8.2.tar.gz", "has_sig": false, "md5_digest": "3029c9213463c4cd623747de22024deb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 93998, "upload_time": "2015-11-26T12:47:31", "url": "https://files.pythonhosted.org/packages/8c/c6/a78d31d8e3d26209f5ecafb1600a34d26e69553e5a7c3105aa35a8c6f3af/concrete-4.8.2.tar.gz" } ], "4.8.3": [ { "comment_text": "", "digests": { "md5": "a1ba19809b9ab47fbb2e7aa9d5786ae1", "sha256": "aa57627fc5a6e41054178a9dbee5ef153299d5be196dbe78009a667a3cd4fef9" }, "downloads": -1, "filename": "concrete-4.8.3.tar.gz", "has_sig": false, "md5_digest": "a1ba19809b9ab47fbb2e7aa9d5786ae1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 92107, "upload_time": "2015-12-12T16:32:28", "url": "https://files.pythonhosted.org/packages/45/e3/efa3af03d1c8197b5b2209d74ae258cf34133e13525861cac49f0e6b6c01/concrete-4.8.3.tar.gz" } ], "4.8.4": [ { "comment_text": "", "digests": { "md5": "be75ed2f2d29e9b7bfae0ddc2fd9c8ca", "sha256": "20581aaaf30ece9a8c1f62c3f55e2fc79ce55fa94a1554c5d7c883e1781f54de" }, "downloads": -1, "filename": "concrete-4.8.4.tar.gz", "has_sig": false, "md5_digest": "be75ed2f2d29e9b7bfae0ddc2fd9c8ca", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 96963, "upload_time": "2016-01-26T14:47:45", "url": "https://files.pythonhosted.org/packages/a0/9c/1f68d1d0f291ec6f134d6f43708095bbded9208e87a05d035392eb7ca893/concrete-4.8.4.tar.gz" } ], "4.8.6": [ { "comment_text": "", "digests": { "md5": "8f38d71f4621f3441bf8b4f356af6c1b", "sha256": "645ac950ba96dfaa4599921035e958e649742892077ab4f8c52e7d3bd1f397c4" }, "downloads": -1, "filename": "concrete-4.8.6.tar.gz", "has_sig": false, "md5_digest": "8f38d71f4621f3441bf8b4f356af6c1b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 95771, "upload_time": "2016-01-29T18:55:33", "url": "https://files.pythonhosted.org/packages/ba/b8/285941237e886caf3eae53d651d62cea92932b5654b0ddf36ba65da62c87/concrete-4.8.6.tar.gz" } ], "4.8.7": [ { "comment_text": "", "digests": { "md5": "e6637a663c284d721dfdcc52b7f7b7bc", "sha256": "e5d8f1397e70ebb2257a220fa374eb5458689814f9c1c80b42bb614d783a6005" }, "downloads": -1, "filename": "concrete-4.8.7.tar.gz", "has_sig": false, "md5_digest": "e6637a663c284d721dfdcc52b7f7b7bc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 96922, "upload_time": "2016-02-04T01:03:55", "url": "https://files.pythonhosted.org/packages/6e/65/284060d7d0fba18feea3476bd27fc82bcdda5e22d671f12c2e863c308bf6/concrete-4.8.7.tar.gz" } ], "4.8.9": [ { "comment_text": "", "digests": { "md5": "c0d53df9f391bb93d42edbc8078fc225", "sha256": "65a79104a75cdc145d303df12aede65e92c564aa794ae414483aa2abd49816d8" }, "downloads": -1, "filename": "concrete-4.8.9.tar.gz", "has_sig": false, "md5_digest": "c0d53df9f391bb93d42edbc8078fc225", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 102340, "upload_time": "2016-02-18T18:44:51", "url": "https://files.pythonhosted.org/packages/bc/e8/ce955fd9b0cb6df699839b6be16d892ea48a13224a4a9ecf323fe95274a8/concrete-4.8.9.tar.gz" } ], "4.9.0": [ { "comment_text": "", "digests": { "md5": "05984eea4161348751bec55f6b7a13ef", "sha256": "ad6d7994cb73c1d07ea6595715ba55d47b57f8cc66aa2459af4bef2110f6dffb" }, "downloads": -1, "filename": "concrete-4.9.0.tar.gz", "has_sig": false, "md5_digest": "05984eea4161348751bec55f6b7a13ef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103500, "upload_time": "2016-06-13T22:47:38", "url": "https://files.pythonhosted.org/packages/56/2e/5462581d5c9a5694e9c1419d1e9f988d95f451bc12c923e166da766f188f/concrete-4.9.0.tar.gz" } ], "4.9.0b0": [ { "comment_text": "", "digests": { "md5": "0b4564ac826a426e9ef98a701d8ad702", "sha256": "f9f426a7b9b53176fcb92ef95e4349b363d8abb29f40728a37ba58f88527e53d" }, "downloads": -1, "filename": "concrete-4.9.0b0.tar.gz", "has_sig": false, "md5_digest": "0b4564ac826a426e9ef98a701d8ad702", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 103511, "upload_time": "2016-06-13T22:46:11", "url": "https://files.pythonhosted.org/packages/3e/9d/03e50110bb321f9f324989a18f8c1e086ebfd2c3e7887675ad289f8ca091/concrete-4.9.0b0.tar.gz" } ], "4.9.2": [ { "comment_text": "", "digests": { "md5": "88f4eed8f1b42449d9c15dd4847565bf", "sha256": "bb1c3a3fbb32fb0892e67036d59d6dcf2a6d1d7213a1cc7eba5183ad78356180" }, "downloads": -1, "filename": "concrete-4.9.2.tar.gz", "has_sig": false, "md5_digest": "88f4eed8f1b42449d9c15dd4847565bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 108346, "upload_time": "2016-07-05T22:43:53", "url": "https://files.pythonhosted.org/packages/3e/0c/4a0b8740ae1b00d89651e80ba5b4c060a4877adb5506cdf7466ab875d5c4/concrete-4.9.2.tar.gz" } ], "4.9.4": [ { "comment_text": "", "digests": { "md5": "f581ad55da51c625f253641010d0f5ac", "sha256": "0f3b28881b1a69fcc76df4dcd22684e66895250c32868922c5a4d4e80ddc9c42" }, "downloads": -1, "filename": "concrete-4.9.4.tar.gz", "has_sig": false, "md5_digest": "f581ad55da51c625f253641010d0f5ac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 140387, "upload_time": "2016-07-11T15:04:35", "url": "https://files.pythonhosted.org/packages/9d/b1/77072872bd3fb9a58e9a6719c79464f786c52f73b68a100bc664d903aa51/concrete-4.9.4.tar.gz" } ], "4.9.6": [ { "comment_text": "", "digests": { "md5": "322fda93e7249e95799658d27d563b5a", "sha256": "e17e275b1c9d2b1683edb0f57e108a7dc6b861bde6b8431f3bf00c9aae2f2a5e" }, "downloads": -1, "filename": "concrete-4.9.6.tar.gz", "has_sig": false, "md5_digest": "322fda93e7249e95799658d27d563b5a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 140465, "upload_time": "2016-07-19T00:51:04", "url": "https://files.pythonhosted.org/packages/73/91/31d548cc22dd9d8c012d59cf0fec3c006d27d2f045cbce7b224a60a78b01/concrete-4.9.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e9217bc7e178b5525ffb4b9e1f753384", "sha256": "979e01c9393453d82f03a37051248ea43dcbc522e4bec879637809af5badd4cb" }, "downloads": -1, "filename": "concrete-4.15.1.tar.gz", "has_sig": false, "md5_digest": "e9217bc7e178b5525ffb4b9e1f753384", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 359541, "upload_time": "2019-05-20T19:45:29", "url": "https://files.pythonhosted.org/packages/fc/82/f2acc5be02bedac7f7fae48b21ab553ec38a591c477d991125f01469239f/concrete-4.15.1.tar.gz" } ] }