depend
merge
pattern_guard bug fix
merge