def METHOD_NAME(ccdata,mol):
    """
    Returns pyscf formatted MO properties from a cclib object.
    Parameters
    ---
    ccdata: cclib object
        cclib object from parsed output
    mol: pyscf Molecule object
       molecule object that must contain the mol.basis attribute
    Returns
    ----
    mo_coeff : n_spin x nmo x nao ndarray
        molecular coeffcients, unnormalized according to pyscf standards
    mo_occ : array
        molecular orbital occupation
    mo_syms : array
       molecular orbital symmetry labels
    mo_energies: array
        molecular orbital energies in units of Hartree
    """
    inputattrs = ccdata.__dict__
    if "mocoeffs" in inputattrs:
        mol.build()
        s = mol.intor('int1e_ovlp')
        if np.shape(ccdata.mocoeffs)[0] == 1:
            mo_coeffs = np.einsum('i,ij->ij', np.sqrt(1/s.diagonal()), ccdata.mocoeffs[0].T)
            mo_occ = np.zeros(ccdata.nmo)
            mo_occ[:ccdata.homos[0]+1] = 2
            mo_energies = convertor(np.array(ccdata.moenergies),"eV","hartree")
            if hasattr(ccdata, 'mosyms'):
                mo_syms = ccdata.mosyms
            else:
                mo_syms = np.full_like(ccdata.moenergies, 'A', dtype=str)
        elif np.shape(ccdata.mocoeffs)[0] == 2:
            mo_coeff_a = np.einsum('i,ij->ij', np.sqrt(1/s.diagonal()), ccdata.mocoeffs[0].T)
            mo_coeff_b = np.einsum('i,ij->ij', np.sqrt(1/s.diagonal()), ccdata.mocoeffs[1].T)
            mo_occ = np.zeros((2,ccdata.nmo))
            mo_occ[0,:ccdata.homos[0]+1] = 1
            mo_occ[1,:ccdata.homos[1]+1] = 1
            mo_coeffs = np.array([mo_coeff_a,mo_coeff_b])
            mo_energies = convertor(np.array(ccdata.moenergies),"eV","hartree")
            if hasattr(ccdata, 'mosyms'):
                mo_syms = ccdata.mosyms
            else:
                mo_syms = np.full_like(ccdata.moenergies, 'A', dtype=str)
    return mo_coeffs, mo_occ, mo_syms, mo_energies