Various additions by Ko