moved stuff to internal.