made tags work recursively