crit_path_delay_mcw;vpr.out;^\s*Final critical path delay \(least slack\): (.*) ns

#Setup CPD
clk_to_clk_cpd;vpr.out;^\s*clk to clk CPD: (.*) ns
clk_to_clk2_cpd;vpr.out;^\s*clk to clk2 CPD: (.*) ns
clk_to_input_cpd;vpr.out;^\s*clk to input_clk CPD: (.*) ns
clk_to_output_cpd;vpr.out;^\s*clk to output_clk CPD: (.*) ns

clk2_to_clk2_cpd;vpr.out;^\s*clk2 to clk2 CPD: (.*) ns
clk2_to_clk_cpd;vpr.out;^\s*clk2 to clk CPD: (.*) ns
clk2_to_input_cpd;vpr.out;^\s*clk2 to input_clk CPD: (.*) ns
clk2_to_output_cpd;vpr.out;^\s*clk2 to output_clk CPD: (.*) ns

input_to_input_cpd;vpr.out;^\s*input_clk to input_clk CPD: (.*) ns
input_to_clk_cpd;vpr.out;^\s*input_clk to clk CPD: (.*) ns
input_to_clk2_cpd;vpr.out;^\s*input_clk to clk2 CPD: (.*) ns
input_to_output_cpd;vpr.out;^\s*input_clk to output_clk CPD: (.*) ns

output_to_output_cpd;vpr.out;^\s*output_clk to output_clk CPD: (.*) ns
output_to_clk_cpd;vpr.out;^\s*output_clk to clk CPD: (.*) ns
output_to_clk2_cpd;vpr.out;^\s*output_clk to clk2 CPD: (.*) ns
output_to_input_cpd;vpr.out;^\s*output_clk to input_clk CPD: (.*) ns

#Setup slack
clk_to_clk_setup_slack;vpr.out;^\s*clk to clk setup slack: (.*) ns
clk_to_clk2_setup_slack;vpr.out;^\s*clk to clk2 setup slack: (.*) ns
clk_to_input_setup_slack;vpr.out;^\s*clk to input_clk setup slack: (.*) ns
clk_to_output_setup_slack;vpr.out;^\s*clk to output_clk setup slack: (.*) ns

clk2_to_clk2_setup_slack;vpr.out;^\s*clk2 to clk2 setup slack: (.*) ns
clk2_to_clk_setup_slack;vpr.out;^\s*clk2 to clk setup slack: (.*) ns
clk2_to_input_setup_slack;vpr.out;^\s*clk2 to input_clk setup slack: (.*) ns
clk2_to_output_setup_slack;vpr.out;^\s*clk2 to output_clk setup slack: (.*) ns

input_to_input_setup_slack;vpr.out;^\s*input_clk to input_clk setup slack: (.*) ns
input_to_clk_setup_slack;vpr.out;^\s*input_clk to clk setup slack: (.*) ns
input_to_clk2_setup_slack;vpr.out;^\s*input_clk to clk2 setup slack: (.*) ns
input_to_output_setup_slack;vpr.out;^\s*input_clk to output_clk setup slack: (.*) ns

output_to_output_setup_slack;vpr.out;^\s*output_clk to output_clk setup slack: (.*) ns
output_to_clk_setup_slack;vpr.out;^\s*output_clk to clk setup slack: (.*) ns
output_to_clk2_setup_slack;vpr.out;^\s*output_clk to clk2 setup slack: (.*) ns
output_to_input_setup_slack;vpr.out;^\s*output_clk to input_clk setup slack: (.*) ns

#Hold slack
clk_to_clk_hold_slack;vpr.out;^\s*clk to clk worst hold slack: (.*) ns
clk_to_clk2_hold_slack;vpr.out;^\s*clk to clk2 worst hold slack: (.*) ns
clk_to_input_hold_slack;vpr.out;^\s*clk to input_clk worst hold slack: (.*) ns
clk_to_output_hold_slack;vpr.out;^\s*clk to output_clk worst hold slack: (.*) ns

clk2_to_clk2_hold_slack;vpr.out;^\s*clk2 to clk2 worst hold slack: (.*) ns
clk2_to_clk_hold_slack;vpr.out;^\s*clk2 to clk worst hold slack: (.*) ns
clk2_to_input_hold_slack;vpr.out;^\s*clk2 to input_clk worst hold slack: (.*) ns
clk2_to_output_hold_slack;vpr.out;^\s*clk2 to output_clk worst hold slack: (.*) ns

input_to_input_hold_slack;vpr.out;^\s*input_clk to input_clk worst hold slack: (.*) ns
input_to_clk_hold_slack;vpr.out;^\s*input_clk to clk worst hold slack: (.*) ns
input_to_clk2_hold_slack;vpr.out;^\s*input_clk to clk2 worst hold slack: (.*) ns
input_to_output_hold_slack;vpr.out;^\s*input_clk to output_clk worst hold slack: (.*) ns

output_to_output_hold_slack;vpr.out;^\s*output_clk to output_clk worst hold slack: (.*) ns
output_to_clk_hold_slack;vpr.out;^\s*output_clk to clk worst hold slack: (.*) ns
output_to_clk2_hold_slack;vpr.out;^\s*output_clk to clk2 worst hold slack: (.*) ns
output_to_input_hold_slack;vpr.out;^\s*output_clk to input_clk worst hold slack: (.*) ns
