updates, performance optimazation