def read_mol_list_from_sdf_file(filepath, line_by_line=False):
    """Simple loader to load a SDF file by only splitting.

    Args:
        filepath (str): File path for SDF file.
        line_by_line (bool): Whether to read SDF file line by line.

    Returns:
        list: List of mol blocks as string.
    """
    mol_list = []
    with open(filepath, "r") as f:
        if not line_by_line:
            all_sting = f.read()
            mol_list = all_sting.split("$$$$\n")
        else:
            iter_mol = ""
            for line in f:
                if line == "$$$$\n":
                    mol_list.append(iter_mol)
                    iter_mol = ""
                else:
                    iter_mol = iter_mol + line
            if iter_mol != "":
                mol_list.append(iter_mol)
    # Check if there was tailing $$$$ with nothing to follow.
    # Split will make empty string at the end, which does not match actual number of mol blocks.
    if len(mol_list[-1]) == 0:
        mol_list = mol_list[:-1]
    return mol_list