moved Primitive to seperate package
tree map