updated ui implementation