again, underscores could be replaced with camelCase here, which might be more meaningful

attributes and return type don't need to be on the same line as the symbol name, either