Mainly solved public export