negin implementation