reformat
add some predicates
step by step