separate guardian into modules