@SuppressWarnings("null")
private final static Charset UTF_8 = Charset.forName("UTF-8");
private final static byte[] getYggdrasilStart(final ClassInfo<?> c) throws NotSerializableException {
assert Enum.class.isAssignableFrom(Kleenean.class) && Tag.getType(Kleenean.class) == Tag.T_ENUM : Tag.getType(Kleenean.class); // TODO why is this check here?
final Tag t = Tag.getType(c.getC());
assert t.isWrapper() || t == Tag.T_STRING || t == Tag.T_OBJECT || t == Tag.T_ENUM;
final byte[] cn = t == Tag.T_OBJECT || t == Tag.T_ENUM ? Variables.yggdrasil.getID(c.getC()).getBytes(UTF_8) : null;
final byte[] r = new byte[YGGDRASIL_START.length + 1 + (cn == null ? 0 : 1 + cn.length)];
int i = 0;
for (; i < YGGDRASIL_START.length; i++)
r[i] = YGGDRASIL_START[i];