First part, still working on it.