added more nonnull annotations