Added generic methods.
merged.