def was_modified_since(header=None, mtime=<NUM_LIT:0>, size=<NUM_LIT:0>):
try:<EOL><INDENT>if header is None:<EOL><INDENT>raise ValueError<EOL><DEDENT>matches = re.match(r"<STR_LIT>", header,<EOL>re.IGNORECASE)<EOL>header_mtime = parse_http_date(matches.group(<NUM_LIT:1>))<EOL>header_len = matches.group(<NUM_LIT:3>)<EOL>if header_len and int(header_len) != size:<EOL><INDENT>raise ValueError<EOL><DEDENT>if int(mtime) > header_mtime:<EOL><INDENT>raise ValueError<EOL><DEDENT><DEDENT>except (AttributeError, ValueError, OverflowError):<EOL><INDENT>return True<EOL><DEDENT>return False<EOL>
Was something modified since the user last downloaded it?
header
  This is the value of the If-Modified-Since header.  If this is None,
  I'll just return True.
mtime
  This is the modification time of the item we're talking about.
size
  This is the size of the item we're talking about.