draft methods needed for ad algorithm