add yasnippet part
more util functions