def __init__(self, docstr, template_order=False):
        if isinstance(docstr, Docstring):
            self.sections = docstr.sections
            self.trailing_newlines = docstr.trailing_newlines
            if not isinstance(docstr, type(self)):
                # fixme, this is kinda hacky
                make_new_sec = self.SECTION_STYLE.from_section
                for sec_name, sec in docstr.sections.items():
                    docstr.sections[sec_name] = make_new_sec(sec)

                # ok, this way of changing indentation is a thunder hack
                if "Parameters" in docstr.sections:
                    self.get_section("Parameters").heading = self.PREFERRED_PARAMS_ALIAS
                    for arg in self.get_section("Parameters").args.values():
                        arg.meta['indent'] = self.get_section("Parameters").indent
                if "Returns" in docstr.sections:
                    for arg in self.get_section("Returns").args.values():
                        arg.meta['indent'] = self.get_section("Returns").indent

        elif isinstance(docstr, string_types):
            if template_order:
                self.sections = self.TEMPLATE.copy()
            else:
                self.sections = OrderedDict()
            self._parse(docstr)
Parameters:
dataset/ETHPy150Open KristoforMaynard/SublimeAutoDocstring/docstring_styles.py/Docstring.__init__