added lifecycle features and positioning