I want to annotate each gene in the Homo sapiens taxon with its respective GO terms and its hierarchical parent terms in the GO database. How can I systematically do that? While I am aware that the obo file contains information such as "is a," "part of," and "regulates," it lacks a comprehensive hierarchy from child GO terms to all their parent terms. Is there an existing method available to achieve this systematic annotation, or do I need to develop a custom script to extract this information from the obo file?