improved self described handlers