adding generic versions of initialization functions