def SliceDict(oData, iCond):
    oDataSeg = {}
    lenCond = len(iCond)
    for (k, v) in oData.items():
        if isinstance(v, dict):
            oDataSeg[k] = {}
            oDataSeg[k] = SliceDict(v, iCond)
        elif (v.shape[(- 1)] >= lenCond):
            oDataSeg[k] = np.copy(v[(..., iCond)])
        else:
            oDataSeg[k] = np.copy(v)
    return oDataSeg
def SliceDict(oData, iCond):
    oDataSeg = {}
    lenCond = len(iCond)
    for (k, v) in oData.items():
        if isinstance(v, dict):
            oDataSeg[k] = {}
            oDataSeg[k] = SliceDict(v, iCond)
        elif (v.shape[(- 1)] >= lenCond):
            oDataSeg[k] = np.copy(v[(..., iCond)])
        else:
            oDataSeg[k] = np.copy(v)
    return oDataSeg