NobleBlocks
    Partial shape recognition using dynamic programming | NobleBlocks