merge from @eigenstate