-type input() :: euneus_encoder:input().
-type result() :: euneus_encoder:result().
-spec encode(input()) -> result().