added compleme module implementation