add David solutions