The main function of the module.

    The purpose of this module is to find markers that were removed by Plink.
    When Plinks exclude some markers from binary files, there are no easy way
    to find the list of removed markers, except by comparing the two BIM files
    (before and after modification).

    Here are the steps of this module:

    1. Reads the BIM file before the modification (:py:func:`readBIM`).
    2. Reads the BIM file after the modification (:py:func:`readBIM`).
    3. Compares the list of markers before and after modification, and write
       the removed markers into a file (:py:func:`compareSNPs`).

    .. note::
        This module only finds marker that were removed (since adding markers
        to a BIM file usually includes a companion file to tell Plink which
        marker to add.

def main():
    """ The main function of the module.

    The purpose of this module is to find markers that were removed by Plink.
    When Plinks exclude some markers from binary files, there are no easy way
    to find the list of removed markers, except by comparing the two BIM files
    (before and after modification).

    Here are the steps of this module:

    1. Reads the BIM file before the modification (:py:func:`readBIM`).
    2. Reads the BIM file after the modification (:py:func:`readBIM`).
    3. Compares the list of markers before and after modification, and write
       the removed markers into a file (:py:func:`compareSNPs`).

    .. note::
        This module only finds marker that were removed (since adding markers
        to a BIM file usually includes a companion file to tell Plink which
        marker to add.

    """
    # Getting and checking the options
    args = parseArgs()
    checkArgs(args)

    # Reading the bim files
    beforeBIM = readBIM(args.before)
    afterBIM = readBIM(args.after)

    # Find differences...
    compareSNPs(beforeBIM, afterBIM, args.out)