# 1D proton assignment ```javascript get1HAssignments(Ranges[], OCL.Molecule, options={}) { const { numberOfAssignments = 10 } = options; const {joinedSignals} = predictProton(OCL.Molecule); // smart code to calculate the score and keep the best 10 // based on integration // if in the top 10: const currentAssignement = JSON.parse(JSON.stringify(ranges)) // set the diaIDs // update the signals // add statistics at the level of the signals ? // after we set the result, based on statistics color line // background (green, less than 0.1 ppm, orange less than 0.3 ppm,...) Assignment: {score, ranges} return { prediction, assignments } } ``` [ {from: 7, to: 8, integration: 5, signals: [ ]} {from: 7, to: 8, integration: 2} {from: 7, to: 8, integration: 3} ] Assignment: ```json { score: 12, ranges: [`` { } ] } ``` ```json= { "kind": "signal", "from": 1.1668694066861198, "to": 1.214377440766073, "integration": 2.9791037959436015, "signals": [ { "kind": "signal", "id": "KFrwqUxQ", "multiplicity": "t", "js": [ { "coupling": 7.621313885122277, "multiplicity": "t" } ], "delta": 1.1906234237260964, "predictedDelta": 1.234 } ], "id": "mXDHGr0I", }, ``` get13CAssignments(Ranges[], OCL.Molecule) { // only based on prediction } ```json "ranges": { "values": [ { "from": 1.1660347510067777, "to": 1.2152120927566827, "integration": 30.073051097315076, "signals": [ { "kind": "signal", "id": "qvKRu6U9", "originDelta": 1.1906234218817302, "delta": 1.1906234218817302, "multiplicity": "t", "peaks": [], "js": [ { "coupling": 7.621313894458865, "multiplicity": "t" } ] } ], "kind": "signal", "id": "PFWprjhr", "absolute": 2611327.443381513 }, { ```