misc functionality improvements