(feat) add difficulty parameter