pledge extraction function