# [MATL](https://esolangs.org/wiki/MATL), <s>18</s> 17 bytes YBTyd~Thhfd1wY{ZB [__Try it online!__](http://matl.tryitonline.net/#code=WUJUeWR-VGhoZmQxd1l7WkI&input=MzcxMDE3) YB % input number. Convert to binary string T % push true value y % duplicate binary string and push it at the top of the stack d~ % true for each value that equals the previous one T % push true value hh % concatenate: true, indices, true f % find indices of true values d % consecutive differences: lenghts of alternating sequences 1wY{ % split binary string according to those lengths ZB % convert each substring into decimal number