Initial implementation

first attempt to implement assignment functions