| write(Writer) |  | 0% |  | 0% | 18 | 18 | 36 | 36 | 1 | 1 |
| toString(int, int) |  | 0% |  | 0% | 7 | 7 | 23 | 23 | 1 | 1 |
| JSONObject(Map, int) |  | 0% |  | 0% | 7 | 7 | 16 | 16 | 1 | 1 |
| valueToString(Object, int, int, boolean) |  | 0% |  | 0% | 8 | 8 | 15 | 15 | 1 | 1 |
| doubleToString(double) |  | 0% |  | 0% | 8 | 8 | 9 | 9 | 1 | 1 |
| doGetBoolean(String, Object) |  | 0% |  | 0% | 7 | 7 | 7 | 7 | 1 | 1 |
| append(String, Object) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
| accumulate(String, Object) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
| JSONObject(Object, String[]) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
| toJSONArray(JSONArray) |  | 0% |  | 0% | 4 | 4 | 6 | 6 | 1 | 1 |
| doGetDouble(String, Object) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| valueToString(Object, boolean) |   | 56% |   | 81% | 2 | 9 | 7 | 15 | 0 | 1 |
| getJSONArray(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getJSONObject(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| doPut(String, Object, int, boolean) |   | 71% |   | 56% | 5 | 9 | 4 | 20 | 0 | 1 |
| get(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| names() |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| JSONObject(JSONObject, String[]) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| doGetLong(String, Object) |  | 0% |  | 0% | 3 | 3 | 2 | 2 | 1 | 1 |
| optBoolean(String, boolean) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| optDouble(String, double) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| optInt(String, int) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| optLong(String, long) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| isNull(String) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| testValidity(Object) |   | 62% |   | 57% | 4 | 8 | 2 | 8 | 0 | 1 |
| doGetInt(String, Object) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| optJSONArray(String) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| optJSONObject(String) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| optString(String, String) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| put(String, boolean) |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| putOpt(String, Object) |  | 0% |  | 0% | 3 | 3 | 3 | 3 | 1 | 1 |
| put(String, Collection) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| put(String, double) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| put(String, Map) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| quote(String, boolean) |   | 93% |   | 76% | 4 | 18 | 0 | 37 | 0 | 1 |
| opt(String) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| put(String, int) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| put(String, long) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| equals(Object) |   | 41% |   | 50% | 1 | 2 | 1 | 3 | 0 | 1 |
| JSONObject(List) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getBoolean(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getDouble(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getInt(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getLong(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| put(String, Object) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| numberToString(Number) |   | 90% |   | 83% | 2 | 7 | 1 | 10 | 0 | 1 |
| JSONObject(Map) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getString(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| has(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| optBoolean(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| optDouble(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| optInt(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| optLong(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| optString(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| remove(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| toString(int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| length() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| quote(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| hashCode() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setEscapeForwardSlashAlways(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| toMap() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| toString() |   | 94% |  | 100% | 0 | 3 | 2 | 14 | 0 | 1 |
| setGlobalRecursionDepthLimit(int) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setRecursionDepthLimit(int) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| isEscapeForwardSlashAlways() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRecursionDepthLimit() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| JSONObject(JSONTokener) |  | 100% |  | 100% | 0 | 11 | 0 | 24 | 0 | 1 |
| JSONObject(boolean, List, boolean, boolean) |  | 100% | | n/a | 0 | 1 | 0 | 9 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| JSONObject() |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| JSONObject(String) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| keys() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getGlobalRecursionDepthLimit() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |