start gifting implementation