WWF = """
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMKo,.   .:dOWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMKl.         .oXMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMWx.             cXMMMMMMMMMMMMMMMMMMMMMWKkolloxKWMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMk.               oWMMMMMMMMMMMMMMMMMMWO;.      .,xXMM
MMMMMMMMMMMMMMMMMMMMMMMMMMWo                ;XMMMMMMMMMMMMMMMMMNo.           ,OW
MMMMMMMMMMMMMMMMMMMMMMMMMMMk.             .;OWMMMMMMMMMMMMMMMMWd              '0
MMMMMMMMMMMMMWKO0NMMMMMMMMMWk.       .,odkXWMMMMMMMMMMMMMMMMMMWl               d
MMMMMMMMMMWXxldkXMMMMMMMMMNOc. .   .lOWMMMMMMMMMMMMMMMMMMMMMMMMXxc'           .k
MMMMMMMMWOc,c0WMMMMMMMMMNx,  .xK0kOXMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNk:.       .xW
MMMMMMWO;.,OWMMMMMMMMMNx'   ,0MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWO;    .lKMM
MMMMMKc..lXMMMMMMMMMWO;    ;KMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNOxdOXMMMM
MMMWk' .dWMMMMMMMMMNd.    ,KMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMWx.  oWMMMMMMMMMNo.    .OMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MWx.  :XMMMMMMMMMWd.     lWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MO.  .xMMMMMMMMMMO.     .kMMMMMMMMMMN0dllloONMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Nc   ,KMMMMMMMMMWc      ,KMMMMMMMMNx,.      :KMMMMMMMMMMMMN0OOKWMMMMMMMMMMMMWWMM
O.   :NMMMMMMMMM0'      ;XMMMMMMM0;          cNMMMMMMMMMNk,.  .,dXMMMMMMMMMMOdXM
o    :NMMMMMMMMMk.      '0MMMMMMK;           '0MMMMMMMMNo.       ,0MMMMMMMMMd'xM
:    ,KMMMMMMMMMx.      .xMMMMMMx.          .oXMMMMMMMMx.         ,KMMMMMMMWl cW
;    .kMMMMMMMMMx.       :XMMMMMO.         ;0WMMMMMMMMMK;         .xMMMMMMMK, ;X
;     cNMMMMMMMMx.        lNMMMMWx.      'dNMMMMMMMMMMMMK;        .xMMMMMMWl  '0
c     .xWMMMMMMMx.         cXMMMMWKdlclk0XMMMMMMMMMMMMMMM0,       ;KMMMMMWd.  .O
d      'OMMMMMMWl           ,kNMMMMMMMMMMMMMMMMMMMMMMMMMMMK:.   .cKMMMMMNo.   .O
O.      '0MMMMMN:             ,dKWMMMMMMMMMWX0000KXNMMMMMMMWKkkOXWMMMMWO;     '0
Nc       .kWMMMX;               .,lxOXWMMMWx.   ...':xNMMMMMMMMMMMMMNk:.      ;X
Md        .cKMMWl                    .cKMMMKdc'    ..lXMMMMMMMMWN0xc'         cN
Mx.         .dXMO.                     ,o0WMMMNxcoOKNWMMXkdool:;..            oM
Md            .lx:                       .cxxdllldOXWWXd'                    .OM
Mx.                                        .oxdolcloc,.                      ;XM
M0'                                         .lxOOOxc.                        dMM
MWl                                                 ..                      '0MM
MMK,                                              ,kXKo.                    oWMM
MMMk.               ';.                          ;KMMMWl                   ,KMMM
MMMWd.              ,Ol                         .xMMMMMx.                 .xWMMM
MMMMNo              .xX:                        '0MMMMMk.                 cNMMMM
MMMMMNo.             ,KK;                       ,KMMMMMd                 ,KMMMMM
MMMMMMWk'             oWK,                      '0MMMMWc                .OMMMMMM
MMMMMMMMXd,.          cNM0,                     .kMMMM0'               .kWMMMMMM
MMMMMMMMMMN0xlc:;;;:cdXMMMK;                     cWMMMd               .kWMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMXc                    .OMMMo              :0MMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMNx'                   :XMMk.          .:kNMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMKo.                  cXMWO:.....,:oOXWMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMXd;.               .OMMMWNKKKXWMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWKxl:,'........,ckWMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNX0OOkO0XWMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
"""

APPLE = """
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNOo:'.  oWMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWOl'       dMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWO:.        '0MMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMXo.         .dWMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMX:          .oNMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMN0c          .xWMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMx,.        .lKWMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMWc       .,oKWMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNo...';cd0NMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMWN0kxdoooodk0XWMMMMMNXXXNWMMWX0kdlcccclodk0XWMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMNOo:'.          .,cdOKNWWWNKkdc,.             .;lkNMMMMMMMMMMMMM
MMMMMMMMMMMMMW0o'                    .',,,'.                      'l0WMMMMMMMMMM
MMMMMMMMMMMW0c.                                                     .lKWMMMMMMMM
MMMMMMMMMMNd.                                                        'xWMMMMMMMM
MMMMMMMMMXc                                                        ,xXMMMMMMMMMM
MMMMMMMMX:                                                       .dNMMMMMMMMMMMM
MMMMMMMWl                                                       ;0MMMMMMMMMMMMMM
MMMMMMMO.                                                      ;KMMMMMMMMMMMMMMM
MMMMMMWl                                                      .OMMMMMMMMMMMMMMMM
MMMMMMK,                                                      cNMMMMMMMMMMMMMMMM
MMMMMM0'                                                      dMMMMMMMMMMMMMMMMM
MMMMMMO.                                                      oMMMMMMMMMMMMMMMMM
MMMMMM0'                                                      :NMMMMMMMMMMMMMMMM
MMMMMMK,                                                      .OMMMMMMMMMMMMMMMM
MMMMMMWc                                                       ;KMMMMMMMMMMMMMMM
MMMMMMMx.                                                       ;0MMMMMMMMMMMMMM
MMMMMMMX;                                                        .dNMMMMMMMMMMMM
MMMMMMMMx.                                                         ,dXWMMMMMMMMM
MMMMMMMMN:                                                           .:xKWMMMMMM
MMMMMMMMM0'                                                             cNMMMMMM
MMMMMMMMMWk.                                                           .OMMMMMMM
MMMMMMMMMMWx.                                                         .xWMMMMMMM
MMMMMMMMMMMWx.                                                       .xWMMMMMMMM
MMMMMMMMMMMMWk.                                                     .kWMMMMMMMMM
MMMMMMMMMMMMMW0,                                                   ,0WMMMMMMMMMM
MMMMMMMMMMMMMMMXl.                                               .lXMMMMMMMMMMMM
MMMMMMMMMMMMMMMMWk,                                             'kWMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMXd.                                         .oXMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMXd,.         .,:oxkOOO0Okxo:'.         .,oKWMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMMMMMXx;.    .,oONMMMMMMMMMMMMMNOl,.    .:xXMMMMMMMMMMMMMMMMMMM
"""


def artcode_i(s):
    """retourne la liste de tuples encodant une chaîne de caractères passée en argument selon un algorithme itératif

    Args:
        s (str): la chaîne de caractères à encoder

    Returns:
        list: la liste des tuples (caractère, nombre d'occurences)

    >>> artcode_i('MMMMaaacXolloMM')
    [('M', 4), ('a', 3), ('c', 1), ('X', 1), ('o', 1), ('l', 2), ('o', 1), ('M', 2)]
    >>> artcode_i('gggfhhhhhhggg')
    [('g', 3), ('f', 1), ('h', 6), ('g', 3)]
    >>> artcode_i('HHHjjRReeee')
    [('H', 3), ('j', 2), ('R', 2), ('e', 4)]
    >>> artcode_i('~~~~~@@@---@@@~~~~~')
    [('~', 5), ('@', 3), ('-', 3), ('@', 3), ('~', 5)]
    """
    n = len(s)
    return [ ]

def artcode_r(s):
    """retourne la liste de tuples encodant une chaîne de caractères passée en argument selon un algorithme récursif

    Args:
        s (str): la chaîne de caractères à encoder

    Returns:
        list: la liste des tuples (caractère, nombre d'occurences)

    >>> artcode_i('MMMMaaacXolloMM')
    [('M', 4), ('a', 3), ('c', 1), ('X', 1), ('o', 1), ('l', 2), ('o', 1), ('M', 2)]
    >>> artcode_i('gggfhhhhhhggg')
    [('g', 3), ('f', 1), ('h', 6), ('g', 3)]
    >>> artcode_i('HHHjjRReeee')
    [('H', 3), ('j', 2), ('R', 2), ('e', 4)]
    >>> artcode_i('~~~~~@@@---@@@~~~~~')
    [('~', 5), ('@', 3), ('-', 3), ('@', 3), ('~', 5)]
    """
    # cas de base
    # recherche nombre de caractères identiques au premier
    # appel récursif
    return []
    

def main():
    pass
    # print(artcode_i('MMMMaaacXolloMM'))
    # print(artcode_r('MMMMaaacXolloMM'))

if __name__ == "__main__":
    main()