basic functionality for generating pairings