···3838 // case expression that checks if the first bit of the string is in a
3939 // alphanumeric character range of ascii
4040 case bin {
4141+ // digits
4142 <<c, rest:bits>> if c >= 48 && c <= 57 ->
4243 do_escape_attribute(rest, original, length + 1)
4444+ // A-Z
4345 <<c, rest:bits>> if c >= 65 && c <= 90 ->
4446 do_escape_attribute(rest, original, length + 1)
4747+ // a-z
4548 <<c, rest:bits>> if c >= 97 && c <= 122 ->
4649 do_escape_attribute(rest, original, length + 1)
5050+ // couple chars
4751 <<"-", rest:bits>>
4852 | <<"_", rest:bits>>
4953 | <<".", rest:bits>>
5454+ | <<"/", rest:bits>>
5055 | <<":", rest:bits>> -> do_escape_attribute(rest, original, length + 1)
51565257 // didn't ever find something that wasn't whitelisted, can go ahead and