Add initial draft code (incomplete)