'The values of :attr:`forms` and :attr:`files` combined into a single
:class:`MultiDict`. Values are either strings (form values) or
instances of :class:`cgi.FieldStorage` (file uploads).'

@DictProperty('environ', 'bottle.request.post', read_only=True)
def POST(self):

    post = MultiDict()
    safe_env = {'QUERY_STRING': ''}
    for key in ('REQUEST_METHOD', 'CONTENT_TYPE', 'CONTENT_LENGTH'):
        if (key in self.environ):
            safe_env[key] = self.environ[key]
    if NCTextIOWrapper:
        fb = NCTextIOWrapper(self.body, encoding='ISO-8859-1', newline='\n')
    else:
        fb = self.body
    data = cgi.FieldStorage(fp=fb, environ=safe_env, keep_blank_values=True)
    for item in (data.list or []):
        post[item.name] = (item if item.filename else item.value)
    return post
