import FWCore.ParameterSet.Config as cms

pfHiggsInteractionNetPreprocessParams = cms.PSet(
    input_names = cms.vstring(
        'input_cpf',
        'input_sv'
    ),
    input_cpf = cms.PSet(
        input_shape = cms.vuint32(1, 30, 60),
        var_infos = cms.PSet(
            pfcand_ptrel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_erel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_phirel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_etarel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_deltaR = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_drminsv = cms.PSet(
                median = cms.double(0.8),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.8),
                lower_bound = cms.double(-0.8),
                upper_bound = cms.double(0),
            ),
            pfcand_drsubjet1 = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_drsubjet2 = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dz = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dzsig = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-2000),
                upper_bound = cms.double(2000),
            ),
            pfcand_dxy  = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dxysig = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-2000),
                upper_bound = cms.double(2000),
            ),
            pfcand_normchi2  = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(300),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(300),
            ),
            pfcand_quality = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dptdpt  = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_detadeta = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dphidphi = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dxydxy = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dzdz = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dxydz = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dphidxy  = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_dlambdadz = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            pfcand_btagEtaRel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-5),
                upper_bound = cms.double(15),
            ),
            pfcand_btagPtRatio = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(10),
            ),
            pfcand_btagPParRatio = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-10),
                upper_bound = cms.double(100),
            ),
            pfcand_btagSip2dVal = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(70),
            ),
            pfcand_btagSip2dSig = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(4e4),
            ),
            pfcand_btagSip3dVal = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(1e5),
            ),
            pfcand_btagSip3dSig = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(4e4),
            ),
            pfcand_btagJetDistVal = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-20),
                upper_bound = cms.double(1),
            ),
        ),
        var_length = cms.uint32(60),
        var_names = cms.vstring(
            'pfcand_ptrel', 
            'pfcand_erel', 
            'pfcand_phirel', 
            'pfcand_etarel', 
            'pfcand_deltaR', 
            'pfcand_drminsv', 
            'pfcand_drsubjet1', 
            'pfcand_drsubjet2', 
            'pfcand_dz', 
            'pfcand_dzsig', 
            'pfcand_dxy', 
            'pfcand_dxysig', 
            'pfcand_normchi2', 
            'pfcand_quality', 
            'pfcand_dptdpt', 
            'pfcand_detadeta', 
            'pfcand_dphidphi', 
            'pfcand_dxydxy', 
            'pfcand_dzdz', 
            'pfcand_dxydz', 
            'pfcand_dphidxy', 
            'pfcand_dlambdadz', 
            'pfcand_btagEtaRel', 
            'pfcand_btagPtRatio', 
            'pfcand_btagPParRatio', 
            'pfcand_btagSip2dVal', 
            'pfcand_btagSip2dSig', 
            'pfcand_btagSip3dVal', 
            'pfcand_btagSip3dSig', 
            'pfcand_btagJetDistVal'
        )
    ),
    input_sv = cms.PSet(
        input_shape = cms.vuint32(1, 14, 5),
        var_infos = cms.PSet(
            sv_ptrel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_erel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_phirel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_etarel = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_deltaR = cms.PSet(
                median = cms.double(0.5),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-2),
                upper_bound = cms.double(0),
            ),
            sv_pt = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_mass = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_ntracks = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_normchi2 = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(1000),
                lower_bound = cms.double(-1000),
                upper_bound = cms.double(1000),
            ),
            sv_dxy = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_dxysig = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(800),
            ),
            sv_d3d = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
            sv_d3dsig = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1),
                upper_bound = cms.double(800),
            ),
            sv_costhetasvpv = cms.PSet(
                median = cms.double(0.0),
                norm_factor = cms.double(1.0),
                replace_inf_value = cms.double(0.0),
                lower_bound = cms.double(-1e32),
                upper_bound = cms.double(1e32),
            ),
        ),
        var_length = cms.uint32(5),
        var_names = cms.vstring(
            'sv_ptrel', 
            'sv_erel', 
            'sv_phirel', 
            'sv_etarel', 
            'sv_deltaR',
            'sv_pt',  
            'sv_mass', 
            'sv_ntracks', 
            'sv_normchi2', 
            'sv_dxy', 
            'sv_dxysig', 
            'sv_d3d', 
            'sv_d3dsig', 
            'sv_costhetasvpv'
        )
    )
)
