<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def parse_md(self):
 """Takes a post path and returns a dictionary of variables"""

    post_content = _MARKDOWN.convert(self.raw_src)

    if hasattr(_MARKDOWN, 'Meta'):
      # 'Meta' in _MARKDOWN and _MARKDOWN.Meta:
      for key in _MARKDOWN.Meta:
        print "\t meta: %s: %s (%s)" % (key, _MARKDOWN.Meta[key][0], type(_MARKDOWN.Meta[key][0]))
        if key == 'pubdate':
          setattr(self, key, datetime.datetime.fromtimestamp(float(_MARKDOWN.Meta[key][0])))
        else:
          setattr(self, key, _MARKDOWN.Meta[key][0])
      
    self.content = post_content
    self.stub = self.__key__
  
    # set required fields
    # @TODO required in schema rather than here
    
    if not hasattr(self, 'pubdate'):
      print '\t Notice: setting default pubdate'
      setattr(self, 'pubdate', datetime.datetime.now())