add functionality, that can set appropriate type of contracts