First pass at adaptive.