Add efficient intialization from list