extension methods prepared.