siging function complete, probably does not work