make the rules neat
todo list update
add sink for key attr
rename func