added adaptive percent