added init and snapsho inv