updated seeding and other functions