added more advanced set functions