Definition and types of hydrogen bonding with examples