unset variable if empty
refactoring path functions
adding set of variable