smart algorithms.