making custom solutions to be dynamic