{
"requesterUsername": "greglandrum",
"requesterAvatarIconUri": {
"$mid": 1,
"path": "/u/540511",
"scheme": "https",
"authority": "avatars.githubusercontent.com",
"query": "v=4"
},
"responderUsername": "GitHub Copilot",
"responderAvatarIconUri": {
"id": "copilot"
},
"initialLocation": "panel",
"requests": [
{
"requestId": "request_f0904dce-659b-4039-9cc9-3319de615198",
"message": {
"text": "suggest a topic for a new RDKit blog post",
"parts": [
{
"range": {
"start": 0,
"endExclusive": 41
},
"editorRange": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 1,
"endColumn": 42
},
"text": "suggest a topic for a new RDKit blog post",
"kind": "text"
}
]
},
"variableData": {
"variables": []
},
"response": [
{
"value": "I'll analyze your RDKit blog repository to understand what topics have been covered and suggest a new blog post topic based on the current state of the repository and recent developments. ",
"supportThemeIcons": false,
"supportHtml": false,
"baseUri": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog/",
"scheme": "file"
}
},
{
"kind": "prepareToolInvocation",
"toolName": "copilot_listDirectory"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Reading [](file:///home/glandrum/RDKit_blog)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog",
"scheme": "file"
}
}
},
"pastTenseMessage": {
"value": "Read [](file:///home/glandrum/RDKit_blog)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog": {
"$mid": 1,
"external": "file:///home/glandrum/RDKit_blog",
"path": "/home/glandrum/RDKit_blog",
"scheme": "file"
}
}
},
"isConfirmed": true,
"isComplete": true,
"toolCallId": "4bb4a7f1-89eb-4117-8c80-5c56ff1f99a5",
"toolId": "copilot_listDirectory"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Reading [](file:///home/glandrum/RDKit_blog/notebooks)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/notebooks": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog/notebooks",
"scheme": "file"
}
}
},
"pastTenseMessage": {
"value": "Read [](file:///home/glandrum/RDKit_blog/notebooks)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/notebooks": {
"$mid": 1,
"external": "file:///home/glandrum/RDKit_blog/notebooks",
"path": "/home/glandrum/RDKit_blog/notebooks",
"scheme": "file"
}
}
},
"isConfirmed": true,
"isComplete": true,
"toolCallId": "a3e17a22-97c1-4a6b-a4e4-0dab1f05f346",
"toolId": "copilot_listDirectory"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Reading [](file:///home/glandrum/RDKit_blog/README.md)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/README.md": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog/README.md",
"scheme": "file"
}
}
},
"pastTenseMessage": {
"value": "Read [](file:///home/glandrum/RDKit_blog/README.md)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/README.md": {
"$mid": 1,
"external": "file:///home/glandrum/RDKit_blog/README.md",
"path": "/home/glandrum/RDKit_blog/README.md",
"scheme": "file"
}
}
},
"isConfirmed": true,
"isComplete": true,
"toolCallId": "9e991c06-d1ba-4d4a-b6ae-9ed1e76c9238",
"toolId": "copilot_readFile"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Searching codebase for \"2024 2025 recent posts new features latest developments RDKit\"",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {}
},
"pastTenseMessage": {
"value": "Searched codebase for \"2024 2025 recent posts new features latest developments RDKit\", 52 results",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {}
},
"isConfirmed": true,
"isComplete": true,
"resultDetails": [
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20FilterCatalog.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 26,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20FilterCatalog.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 50,
"startColumn": 1,
"endLineNumber": 69,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20FilterCatalog.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 102,
"startColumn": 1,
"endLineNumber": 129,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 52,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 75,
"startColumn": 1,
"endLineNumber": 97,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 159,
"startColumn": 1,
"endLineNumber": 188,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 227,
"startColumn": 1,
"endLineNumber": 258,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 280,
"startColumn": 1,
"endLineNumber": 283,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 466,
"startColumn": 1,
"endLineNumber": 473,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 618,
"startColumn": 1,
"endLineNumber": 646,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 666,
"startColumn": 1,
"endLineNumber": 675,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2016_Q1%20Preview%20New%20Reaction%20Features.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1347,
"startColumn": 1,
"endLineNumber": 1368,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2018_Q3%20New%20Fingerprint%20Bit%20Rendering%20Code.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 13,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2018_Q3%20New%20Fingerprint%20Bit%20Rendering%20Code.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 233,
"startColumn": 1,
"endLineNumber": 264,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 24,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1258,
"startColumn": 1,
"endLineNumber": 1285,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 37,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 289,
"startColumn": 1,
"endLineNumber": 302,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 365,
"startColumn": 1,
"endLineNumber": 388,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 697,
"startColumn": 1,
"endLineNumber": 719,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 64,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 229,
"startColumn": 1,
"endLineNumber": 257,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Bits Set By Fingerprint Type.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Bits%20Set%20By%20Fingerprint%20Type.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Bits Set By Fingerprint Type.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 725,
"startColumn": 1,
"endLineNumber": 742,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Capturing error information.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Capturing%20error%20information.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Capturing error information.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 16,
"startColumn": 1,
"endLineNumber": 38,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Curating the PAINS filters.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Curating%20the%20PAINS%20filters.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Curating the PAINS filters.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 13,
"startColumn": 1,
"endLineNumber": 15,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Diversity Picking Optimizations.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Diversity%20Picking%20Optimizations.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Diversity Picking Optimizations.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 228,
"startColumn": 1,
"endLineNumber": 259,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Drawing on drawings.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Drawing%20on%20drawings.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Drawing on drawings.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 583,
"startColumn": 1,
"endLineNumber": 604,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Image metadata.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Image%20metadata.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Image metadata.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 11,
"startColumn": 1,
"endLineNumber": 31,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Introducing the SubstructLibrary.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Introducing%20the%20SubstructLibrary.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Introducing the SubstructLibrary.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 53,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/IntroducingRascalMCES.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/IntroducingRascalMCES.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/IntroducingRascalMCES.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 13,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/IntroducingRascalMCES.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/IntroducingRascalMCES.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/IntroducingRascalMCES.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 38,
"startColumn": 1,
"endLineNumber": 51,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/lwreg%20and%20the%20cartridge.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 10,
"startColumn": 1,
"endLineNumber": 14,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/lwreg%20and%20the%20cartridge.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 208,
"startColumn": 1,
"endLineNumber": 232,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/lwreg%20and%20the%20cartridge.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 437,
"startColumn": 1,
"endLineNumber": 463,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 29,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.md",
"external": "file:///home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.md",
"path": "/home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.md",
"scheme": "file"
},
"range": {
"startLineNumber": 3,
"startColumn": 1,
"endLineNumber": 14,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/New Drawing Code.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/New%20Drawing%20Code.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/New Drawing Code.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 19,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/New drawing options.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/New%20drawing%20options.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/New drawing options.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 32,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/New drawing options.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/New%20drawing%20options.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/New drawing options.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1319,
"startColumn": 1,
"endLineNumber": 1344,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Providing%20transformations.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 13,
"startColumn": 1,
"endLineNumber": 15,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Providing%20transformations.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 276,
"startColumn": 1,
"endLineNumber": 329,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Quick%20FingerprintGenerator%20tutorial.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 308,
"startColumn": 1,
"endLineNumber": 332,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Quick%20FingerprintGenerator%20tutorial.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 374,
"startColumn": 1,
"endLineNumber": 390,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Substructure%20Optimizations.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 9,
"startColumn": 1,
"endLineNumber": 16,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Substructure%20Optimizations.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 21,
"startColumn": 1,
"endLineNumber": 46,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/The%20RDKit%20and%20S3.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 25,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/The%20RDKit%20and%20S3.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 89,
"startColumn": 1,
"endLineNumber": 139,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Using Feature Maps - revisited.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Using%20Feature%20Maps%20-%20revisited.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Using Feature Maps - revisited.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 948,
"startColumn": 1,
"endLineNumber": 978,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Using intake for chemistry data part 2.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Using%20intake%20for%20chemistry%20data%20part%202.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Using intake for chemistry data part 2.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 11,
"startColumn": 1,
"endLineNumber": 29,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Using Reaction Information.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Using%20Reaction%20Information.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Using Reaction Information.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 29,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Using TCMalloc.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Using%20TCMalloc.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Using TCMalloc.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 47,
"startColumn": 1,
"endLineNumber": 73,
"endColumn": 1
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/README.md",
"external": "file:///home/glandrum/RDKit_blog/README.md",
"path": "/home/glandrum/RDKit_blog/README.md",
"scheme": "file"
},
"range": {
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 7,
"endColumn": 1
}
}
],
"toolCallId": "768e32d8-9627-4aa5-8157-3940e41a5b9b",
"toolId": "copilot_searchCodebase"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Searching text for `2025|Building a new|recent|latest|modern` (`**/*.ipynb`)",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {}
},
"pastTenseMessage": {
"value": "Searched text for `2025|Building a new|recent|latest|modern` (`**/*.ipynb`), 20 results",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {}
},
"isConfirmed": true,
"isComplete": true,
"resultDetails": [
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Unicode%20experiment.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 384,
"startColumn": 87,
"endLineNumber": 384,
"endColumn": 93
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Unicode%20experiment.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 413,
"startColumn": 87,
"endLineNumber": 413,
"endColumn": 93
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Unicode%20experiment.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 439,
"startColumn": 87,
"endLineNumber": 439,
"endColumn": 93
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Unicode%20experiment.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Unicode experiment.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 466,
"startColumn": 87,
"endLineNumber": 466,
"endColumn": 93
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Larger SubstructLibrary Example.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Larger%20SubstructLibrary%20Example.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Larger SubstructLibrary Example.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 171,
"startColumn": 87,
"endLineNumber": 171,
"endColumn": 93
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Working with unbalanced data - evaluation.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Working%20with%20unbalanced%20data%20-%20evaluation.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Working with unbalanced data - evaluation.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 11,
"startColumn": 284,
"endLineNumber": 11,
"endColumn": 290
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Working with unbalanced data - evaluation.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Working%20with%20unbalanced%20data%20-%20evaluation.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Working with unbalanced data - evaluation.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 14,
"startColumn": 284,
"endLineNumber": 14,
"endColumn": 290
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Sharing%20conda%20environments.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 7,
"startColumn": 72,
"endLineNumber": 7,
"endColumn": 78
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Sharing%20conda%20environments.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 103,
"startColumn": 249,
"endLineNumber": 103,
"endColumn": 255
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Sharing%20conda%20environments.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 144,
"startColumn": 135,
"endLineNumber": 144,
"endColumn": 141
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Sharing%20conda%20environments.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Sharing conda environments.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 146,
"startColumn": 527,
"endLineNumber": 146,
"endColumn": 533
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/The%20RDKit%20and%20S3.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 7,
"startColumn": 303,
"endLineNumber": 7,
"endColumn": 309
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/2018_Q3%20New%20Fingerprint%20Bit%20Rendering%20Code.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 368,
"startColumn": 421,
"endLineNumber": 368,
"endColumn": 425
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Image metadata.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Image%20metadata.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Image metadata.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 300,
"startColumn": 211,
"endLineNumber": 300,
"endColumn": 217
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Property Tutorial.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Property%20Tutorial.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Property Tutorial.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 326,
"startColumn": 87,
"endLineNumber": 326,
"endColumn": 93
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/MCSWhatsNew.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/MCSWhatsNew.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/MCSWhatsNew.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1439,
"startColumn": 40,
"endLineNumber": 1439,
"endColumn": 46
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Finding%20ChEMBL%20Ki-Scaffold%20Datasets.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1144,
"startColumn": 11835,
"endLineNumber": 1144,
"endColumn": 11839
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Finding%20ChEMBL%20Ki-Scaffold%20Datasets.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1144,
"startColumn": 14930,
"endLineNumber": 1144,
"endColumn": 14934
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Finding%20ChEMBL%20Ki-Scaffold%20Datasets.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1144,
"startColumn": 14950,
"endLineNumber": 1144,
"endColumn": 14954
}
},
{
"uri": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"external": "file:///home/glandrum/RDKit_blog/notebooks/Finding%20ChEMBL%20Ki-Scaffold%20Datasets.ipynb",
"path": "/home/glandrum/RDKit_blog/notebooks/Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"scheme": "file"
},
"range": {
"startLineNumber": 1144,
"startColumn": 15242,
"endLineNumber": 1144,
"endColumn": 15246
}
}
],
"toolCallId": "04fabd55-b299-4012-93b2-89c5d0a2ba11",
"toolId": "copilot_findTextInFiles"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Reading [](file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20new%20similarity%20comparison%20set.ipynb#1-1), lines 1 to 50",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20new%20similarity%20comparison%20set.ipynb#1-1": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog/notebooks/Building a new similarity comparison set.ipynb",
"scheme": "file",
"fragment": "1-1"
}
}
},
"pastTenseMessage": {
"value": "Read [](file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20new%20similarity%20comparison%20set.ipynb#1-1), lines 1 to 50",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20new%20similarity%20comparison%20set.ipynb#1-1": {
"$mid": 1,
"external": "file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20new%20similarity%20comparison%20set.ipynb#1-1",
"path": "/home/glandrum/RDKit_blog/notebooks/Building a new similarity comparison set.ipynb",
"scheme": "file",
"fragment": "1-1"
}
}
},
"isConfirmed": true,
"isComplete": true,
"toolCallId": "0ce0165f-96aa-4eb5-a2e0-7fd1c53d8bdc",
"toolId": "copilot_readFile"
},
{
"kind": "toolInvocationSerialized",
"invocationMessage": {
"value": "Reading [](file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20Similarity%20Comparison%20Set%20Revisited-2025.ipynb#1-1), lines 1 to 50",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20Similarity%20Comparison%20Set%20Revisited-2025.ipynb#1-1": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog/notebooks/Building a Similarity Comparison Set Revisited-2025.ipynb",
"scheme": "file",
"fragment": "1-1"
}
}
},
"pastTenseMessage": {
"value": "Read [](file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20Similarity%20Comparison%20Set%20Revisited-2025.ipynb#1-1), lines 1 to 50",
"supportThemeIcons": false,
"supportHtml": false,
"uris": {
"file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20Similarity%20Comparison%20Set%20Revisited-2025.ipynb#1-1": {
"$mid": 1,
"external": "file:///home/glandrum/RDKit_blog/notebooks/Building%20a%20Similarity%20Comparison%20Set%20Revisited-2025.ipynb#1-1",
"path": "/home/glandrum/RDKit_blog/notebooks/Building a Similarity Comparison Set Revisited-2025.ipynb",
"scheme": "file",
"fragment": "1-1"
}
}
},
"isConfirmed": true,
"isComplete": true,
"toolCallId": "76e3fb62-8e43-441f-97e4-28f4f45bfa13",
"toolId": "copilot_readFile"
},
{
"value": "Based on my analysis of your RDKit blog repository, I can see you have a rich collection of posts covering various aspects of the RDKit cheminformatics toolkit. Looking at the notebooks, I notice several patterns and can suggest a timely and relevant topic for a new blog post:\n\n## Suggested Topic: \"RDKit and Large Language Models: Chemical Structure-Text Integration in the AI Era\"\n\n### Why this topic is relevant:\n\n1. **Current trends**: The intersection of chemistry and AI/ML is extremely hot right now, particularly with the rise of large language models (LLMs) and foundation models.\n\n2. **Gap in your content**: While you have extensive coverage of fingerprints, similarity, ML applications, and chemical informatics, there's limited content specifically addressing how RDKit can integrate with modern LLM workflows.\n\n3. **Practical applications**: Many researchers are now trying to combine chemical structure data with text-based AI models for tasks like:\n - Chemical literature mining\n - Structure-activity relationship prediction with natural language descriptions\n - Automated chemical synthesis planning with text instructions\n - Multi-modal drug discovery workflows\n\n### Potential blog post content structure:\n\n1. **Introduction**: The convergence of chemical informatics and LLMs\n2. **Text-to-molecule workflows**: Using RDKit to validate and process SMILES/structures generated by LLMs\n3. **Molecule-to-text workflows**: Converting RDKit molecular representations into natural language descriptions\n4. **Integration patterns**: How to build pipelines that combine RDKit chemical processing with text-based AI models\n5. **Practical examples**: \n - Using RDKit to curate training data for chemical LLMs\n - Validating AI-generated chemical structures\n - Building chemical chatbots with RDKit backend validation\n6. **Performance considerations**: Efficient ways to handle large-scale structure-text processing\n\nThis topic would be highly relevant to the current AI landscape while leveraging RDKit's strengths, and would likely attract significant interest from both the cheminformatics and AI communities. It also represents a natural evolution from your existing ML-focused posts into the current frontier of AI applications in chemistry.",
"supportThemeIcons": false,
"supportHtml": false,
"baseUri": {
"$mid": 1,
"path": "/home/glandrum/RDKit_blog/",
"scheme": "file"
}
}
],
"responseId": "response_e151e2df-5746-4146-9822-d170077a3bb6",
"result": {
"timings": {
"firstProgress": 2418,
"totalElapsed": 44507
},
"metadata": {
"codeBlocks": [],
"renderedUserMessage": [
{
"type": 1,
"text": "\nThe current date is July 26, 2025.\nNo active tasks or terminals found.\n\n\nBelow is the information about the current repository. You can use this information when you need to calculate diffs or compare changes with the default branch.\nRepository name: rdkit_blog\nOwner: greglandrum\nCurrent branch: master\nDefault branch: master\n\n\n\nWhen using the replace_string_in_file tool, include 3-5 lines of unchanged code before and after the string you want to replace, to make it unambiguous which part of the file should be edited.\n\n\n\nsuggest a topic for a new RDKit blog post\n\n"
},
{
"type": 3,
"cacheType": "ephemeral"
}
],
"renderedGlobalContext": [
{
"type": 1,
"text": "\nThe user's current OS is: Linux\nThe user's default shell is: \"bash\". When you generate terminal commands, please generate them correctly for this shell.\n\n\nI am working in a workspace with the following folders:\n- /home/glandrum/RDKit_blog \nI am working in a workspace that has the following structure:\n```\nenvironment.yml\nherg_mmp.tar.bz2\nrdkit_demo_env.yml\nREADME.md\ndata/\n\t1TDU-results.sdf\n\tADME_public_set_3521.csv\n\taz_overlays.yaml\n\tbinding_db_sets.minimized.pkl\n\tbinding_db_sets.pdbs.pkl\n\tbinding_db_sets.pkl\n\tblah.fps\n\tBLSets_actives_target_key.txt\n\tBLSets_actives.txt\n\tBLSets_selected_actives.txt\n\tBLSets_selected.txt\n\tBLSets_singleic50_decoys.txt\n\tcdk2_rgd_dataset.csv\n\tcdk2_rgd_mols.txt\n\tchembl_20.mfp2.fpb\n\tchembl_27.sdf\n\tchembl_500K.fps.pkl\n\tchembl_500K.txt\n\tchembl_50K.fps.pkl\n\tchembl_50K.txt\n\tchembl_5HT.csv.gz\n\tChEMBL_DrugMatrix.csv.gz\n\tChEMBL_PubChem_HTS.csv.gz\n\tchembl_random_10.fpb\n\tchembl_random_10.smi\n\tchembl16_2010-2012.chiral.smi.gz\n\tchembl16_2010-2012.mfp2.fps\n\tchembl16_2010-2012.smi\n\tchembl16_25K.fraggle_randompairs.sims.pkl.gz\n\tchembl16_25K.pairs.3dmols.pkl.gz\n\tchembl16_25K.pairs.sim_workup.pkl.gz\n\tchembl16_25K.pairs.sims.pkl.gz\n\tchembl16_25K.pairs.sims2.pkl.gz\n\tchembl16_25K.pairs.txt.gz\n\tchembl16_50K_sss.txt.gz\n\tchembl16_50K_sss.txt.gz~\n\tchembl21_25K.mfp1.pairs.txt.gz\n\tchembl21_25K.pairs.txt.gz\n\tchembl23_all.fps.pkl\n\tchembl23_all.lib.pkl\n\tchembl23_all.txt\n\tchembl23_all.txt~\n\tchembl23_very_active.fps.pkl\n\tchembl23_very_active.txt\n\tchembl23_very_active.txt~\n\tchembl24_highlychiral.smi\n\tchembl25_chiral.pkl.gz\n\tchembl25_chiral.txt.gz\n\tchembl26_1000simqueries.txt\n\tchembl26_very_active.sdf.gz\n\tchembl27_confgen_tgts.txt\n\tchembl27_fps.mfp3.pkl\n\tchembl27_fps.pkl\n\tchembl27_fps.rdkit.pkl\n\tchembl27_mfp2.128.h5\n\tchembl27_mfp2.2048.h5\n\tchembl27_sssdata.pkl\n\tchembl27_ssslib.pkl\n\tchembl28_25K.mfp1.pairs.txt.gz\n\tchembl28_25K.pairs.txt.gz\n\tchembl28_ki_data.csv\n\tchembl29_sssdata.pkl\n\tchembl29_ssslib.pkl\n\tchembl30_25K.mfp0.pairs.3dmols.pkl.gz\n\tchembl30_50K.mfp0.pairs.3dmols.pkl.gz\n\tchembl30_50K.mfp0.pairs.txt.gz\n\tchembl30_50K.mfp1.pairs.txt.gz\n\tchembl32_fps.pkl\n\tchembl35_50K.mfp0.pairs.txt.gz\n\tchembl35_50K.mfp1.pairs.txt.gz\n\tchembl35_sssdata.pkl\n\tchembl35_ssslib.pkl\n\tchemical_words_all_counts.pkl\n\tchemical_words_clean_counts2.pkl\n\t...\nML_ThresholdOpt-master/\nnotebooks/\nsrc/\n```\nThis is the state of the context at this point in the conversation. The view of the workspace structure may be truncated. You can use tools to collect more context if needed.\n\n"
},
{
"type": 3,
"cacheType": "ephemeral"
}
],
"toolCallRounds": [
{
"response": "I'll analyze your RDKit blog repository to understand what topics have been covered and suggest a new blog post topic based on the current state of the repository and recent developments. ",
"toolCalls": [
{
"name": "list_dir",
"arguments": "{\"path\": \"/home/glandrum/RDKit_blog\"}",
"id": "toolu_vrtx_016jksQHVDXpj6GSyMdB3MTX__vscode-1753512037191"
}
],
"toolInputRetry": 0,
"id": "5eaad0c8-dca7-4e45-b209-3fe1762d97ae"
},
{
"response": "",
"toolCalls": [
{
"name": "list_dir",
"arguments": "{\"path\": \"/home/glandrum/RDKit_blog/notebooks\"}",
"id": "toolu_vrtx_016M5hFYvEotXqKpGGbyym5D__vscode-1753512037192"
}
],
"toolInputRetry": 0,
"id": "a25db723-ce49-4c36-8b40-d53c650f836e"
},
{
"response": "",
"toolCalls": [
{
"name": "read_file",
"arguments": "{\"filePath\": \"/home/glandrum/RDKit_blog/README.md\", \"startLine\": 1, \"endLine\": 50}",
"id": "toolu_vrtx_01CGKQhTytsZ4qyvhocZJ57u__vscode-1753512037193"
}
],
"toolInputRetry": 0,
"id": "d0e84fcb-ae39-4287-95b9-09e7fc261959"
},
{
"response": "",
"toolCalls": [
{
"name": "semantic_search",
"arguments": "{\"query\": \"2024 2025 recent posts new features latest developments RDKit\"}",
"id": "toolu_vrtx_014ckstgCLJCe5ehbxjyc3Xx__vscode-1753512037194"
}
],
"toolInputRetry": 0,
"id": "5fcd3d83-e7ff-467c-a195-10ee7c8f83a6"
},
{
"response": "",
"toolCalls": [
{
"name": "grep_search",
"arguments": "{\"includePattern\": \"*.ipynb\", \"isRegexp\": true, \"query\": \"2025|Building a new|recent|latest|modern\"}",
"id": "toolu_vrtx_01DPogujBueUF59YyJqxQLL6__vscode-1753512037195"
}
],
"toolInputRetry": 0,
"id": "a40aaa8d-8988-4d0f-9893-a9fa63a95440"
},
{
"response": "",
"toolCalls": [
{
"name": "read_file",
"arguments": "{\"filePath\": \"/home/glandrum/RDKit_blog/notebooks/Building a new similarity comparison set.ipynb\", \"startLine\": 1, \"endLine\": 50}",
"id": "toolu_vrtx_012qn92MA2HCo4H1pWXfn4z1__vscode-1753512037196"
}
],
"toolInputRetry": 0,
"id": "d27afe32-a1da-4853-a59b-53a2cc1f54ef"
},
{
"response": "",
"toolCalls": [
{
"name": "read_file",
"arguments": "{\"endLine\": 50, \"filePath\": \"/home/glandrum/RDKit_blog/notebooks/Building a Similarity Comparison Set Revisited-2025.ipynb\", \"startLine\": 1}",
"id": "toolu_vrtx_01NALTwdTZKWw6FCD2TEJmFH__vscode-1753512037197"
}
],
"toolInputRetry": 0,
"id": "b4904488-73f2-4f6f-b40e-83945aabb5f1"
},
{
"response": "Based on my analysis of your RDKit blog repository, I can see you have a rich collection of posts covering various aspects of the RDKit cheminformatics toolkit. Looking at the notebooks, I notice several patterns and can suggest a timely and relevant topic for a new blog post:\n\n## Suggested Topic: \"RDKit and Large Language Models: Chemical Structure-Text Integration in the AI Era\"\n\n### Why this topic is relevant:\n\n1. **Current trends**: The intersection of chemistry and AI/ML is extremely hot right now, particularly with the rise of large language models (LLMs) and foundation models.\n\n2. **Gap in your content**: While you have extensive coverage of fingerprints, similarity, ML applications, and chemical informatics, there's limited content specifically addressing how RDKit can integrate with modern LLM workflows.\n\n3. **Practical applications**: Many researchers are now trying to combine chemical structure data with text-based AI models for tasks like:\n - Chemical literature mining\n - Structure-activity relationship prediction with natural language descriptions\n - Automated chemical synthesis planning with text instructions\n - Multi-modal drug discovery workflows\n\n### Potential blog post content structure:\n\n1. **Introduction**: The convergence of chemical informatics and LLMs\n2. **Text-to-molecule workflows**: Using RDKit to validate and process SMILES/structures generated by LLMs\n3. **Molecule-to-text workflows**: Converting RDKit molecular representations into natural language descriptions\n4. **Integration patterns**: How to build pipelines that combine RDKit chemical processing with text-based AI models\n5. **Practical examples**: \n - Using RDKit to curate training data for chemical LLMs\n - Validating AI-generated chemical structures\n - Building chemical chatbots with RDKit backend validation\n6. **Performance considerations**: Efficient ways to handle large-scale structure-text processing\n\nThis topic would be highly relevant to the current AI landscape while leveraging RDKit's strengths, and would likely attract significant interest from both the cheminformatics and AI communities. It also represents a natural evolution from your existing ML-focused posts into the current frontier of AI applications in chemistry.",
"toolCalls": [],
"toolInputRetry": 0,
"id": "abf91bba-cf92-499c-b33d-a58beabc73a6"
}
],
"toolCallResults": {
"toolu_vrtx_016jksQHVDXpj6GSyMdB3MTX__vscode-1753512037191": {
"$mid": 20,
"content": [
{
"$mid": 22,
"value": {
"node": {
"type": 1,
"ctor": 2,
"ctorName": "dFe",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": ".git/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ML_ThresholdOpt-master/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "README.md",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "data/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "environment.yml",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "herg_mmp.tar.bz2",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "notebooks/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "rdkit_demo_env.yml",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "src/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
}
],
"props": {},
"references": []
}
}
}
]
},
"toolu_vrtx_016M5hFYvEotXqKpGGbyym5D__vscode-1753512037192": {
"$mid": 20,
"content": [
{
"$mid": 22,
"value": {
"node": {
"type": 1,
"ctor": 2,
"ctorName": "dFe",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": ".ipynb_checkpoints/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": ".pgpass",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2016_Q1 Preview Drawing Improvements.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2016_Q1 Preview FilterCatalog.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2016_Q1 Preview New Reaction Features.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2018_03 Highlights Coordgen.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2018_Q3 New Fingerprint Bit Rendering Code.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2018_Q3 New Fingerprint Bit Rendering Code.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2023_03_New_Stuff.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2023_09_1_New_Stuff_1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2024_New_Stuff.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "2024_New_Stuff_2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "3D Descriptor Distributions.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "3D Diversity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "3D MCS.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "3D structure of a cyclic peptide.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "3D structure of a natural product.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "3D structure of a natural product.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "A buried data treasure-Post.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "A buried data treasure-Post.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "A buried data treasure.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "A buried data treasure.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "AAAA.txt",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "About Benchmarking Sets II.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Adding Molecules to Matplotlib.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Additive fingerprints 2 - alternate fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Additive fingerprints-RDKit fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Additive fingerprints.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Additive fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Asymmetric Similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Atom Pair 3D Fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Atom Pair Fingerprints - revisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Atom Pair Fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Benchmarking again.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Binary molecules and the cartridge.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Binary molecules and the cartridge.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "BindingDb sets.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Bit frequencies and coverage.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Bits Set By Fingerprint Type.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Bits Set By Fingerprint Type.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Blah.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Briem_and_Lessel_dataset.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Building A Similarity Comparison Set Revisited-2021.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Building A Similarity Comparison Set Revisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Building A Similarity Comparison Set.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Building a Similarity Comparison Set Revisited-2025.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Building a new similarity comparison set.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Capturing error information.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL Document Similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL Molecule Count.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL Papers 2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL Papers.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL document similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL hERG MMPA.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL hERG MMPA.ipynb.bak",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL27 SubstructLibrary.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL29 SubstructLibrary.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL32_OverlappingIC50s-refined.clean.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL32_OverlappingKis-refined.clean.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL32_OverlappingKis-refined.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChEMBL_Document_SAR_Report.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Charged atom environments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Chemical Reaction Notes I.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Chiral Centers and Embedding.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ChiralFlag_and_StereoGroups.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Chirality Experiments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Chirality Reference Set.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Clustering Methods.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Clustering conformers.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Collecting a few scaffolds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits II LITPCBA.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits II MoleculeACE.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits II PCBA.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits II Revisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits II.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits III - expanded.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits III.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Colliding Bits.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Common Fragments 1 Revised.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Common Fragments 1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Common Fragments 2-bak.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Common Fragments 2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Comparing 3D Descriptors.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Comparing Fingerprints 1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Comparing Fraggle.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Comparing runtime environments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ConfGen Stability.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ConfGen and Intramolecular H Bonds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Constrained embedding and symmetry.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Constructing molecules more quickly.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Constructing molecules more quickly.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Coordgen questions.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Coordgen templates.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "CreatingEnvironment.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "CreatingEnvironment.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "CreatingWindowsEnvironment.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "CreatingWindowsEnvironment.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Cross Validation variability.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Curating the PAINS filters.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Custom atom pairs with the new fingerprinter.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Custom fingerprint in PostgreSQL.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Cutting apart molecules.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Dealing with multiconformer SDF files.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Descriptor tutorial.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Diversity Picking Methods.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Diversity Picking Optimizations.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Double Bond Stereochemistry Question.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Drawing on drawings.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Drawing options explained.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "E7310_a_crazy_structure.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "E7310_a_crazy_structure.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ETKDG and distance constraints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Efficient molecule editing.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Evaluating PR #2154.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Explaining Morgan Similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Explaining Stereo Groups.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Explaining enhanced stereo.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Exploring Blaze.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Find Scaffolds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding ChEMBL Ki-Scaffold Datasets.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds - Looking at the data.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds Expanded.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds Revisited again.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds Revisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds for Fragments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds from Patents.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding Scaffolds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding regioisomers.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Finding regioisomers.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint Thresholds Actives.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint Thresholds Database Fraction.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint Thresholds Scaffolds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint Thresholds-OLDRDKIT.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint Thresholds.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint Thresholds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint generators and custom invariants.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint size and neighbor counts - mfp3.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint size and neighbor counts - rdkit fp.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint size and neighbor counts - revisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint size and neighbor counts.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint size and neighbor counts.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fingerprint size and similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fukui Function and Reactivity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Fukui Functions.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Generalized Substructure Search.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "GpiDAPH3 Fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Highlighting Tutorial.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Highlighting in py3Dmol.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Highlighting_changed_bonds_in_reactions.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "How many tautomers?.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Image metadata.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Image metadata.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Interesting MCS use case.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Interrupting calculations.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Intro to the molecule enumerator.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Introducing rdDetermineBonds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Introducing the SubstructLibrary.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Introducing the SubstructLibrary.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "IntroducingRascalMCES.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Jupyter_widget.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Jupyter_widget.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Larger SubstructLibrary Example.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Learning alignments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Looking at Morgan bit counts.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Looking at random coordinate embedding.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Looking at the Platinum dataset.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Looking at the Platinum dataset.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MCS Similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MCSWhatsNew.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MDS I-Backup.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MDS I.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MDS II Clusters.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MaxMinPickerRevisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MaxMinPickerRevisited.md",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "MaxMinStrategy.png",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Model similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Modifying optimizerForceTol.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Mol2 Experiments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Molecules and SOMs.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "More multithreading.Feb2024.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "More on constrained embedding.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "More on constrained embedding.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "More on generalized substructure search.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "More on tautomer canonicalization.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Murcko Scaffolds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Naming similarity metrics.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New Briem_and_Lessel_dataset.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New Briem_and_Lessel_dataset.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New Briem_and_Lessel_measured_inactives.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New Drawing Code.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New drawing options - addendum.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New drawing options - addendum.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New drawing options.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "New drawing options.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Number of unique bits and dataset size.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "OA Alignment.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "On Tautomers and Hashes.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "OptimizeConfs Bug.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Optimizing the Pattern Fingerprint.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Optimizing the pattern fingerprint.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "PatternFingerprint Bug.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Picking Scaffolds I.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Picking related ChEMBL documents.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Platinum to SDF.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Plotting Rows and Columns of Molecules with MolsMatrixToGridImage.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Property Tutorial.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Providing transformations.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Quick FingerprintGenerator tutorial.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGD - making cores specific.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGD and MolZip.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGD-highlighting.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGD-highlighting.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGD_tutorial.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroupEdgeCases-Nik.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroupEdgeCases-Post-PR3767.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroupEdgeCases-Post.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroupEdgeCases-Post.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroupEdgeCases.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroupEdgeCases.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RGroups and Chirality.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "RWMol and batch edits.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Random Embedding.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Rough Reduced Graphs.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SAR Tables.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SAR Tables.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SVG Features.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Sanitization and file parsing.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffold Network - Interactive Views and Exploring the Options.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffold Network - Interactive Views and Exploring the Options.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffold replacement.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffold splits and Murcko scaffolds part 2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffold splits and Murcko scaffolds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffolds from highly active compounds.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffolds to RGD - orig.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Scaffolds to RGD.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Searching with generic groups.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Sharing conda environments.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Show_Ph4_Features_in_PyMOL.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity Maps with New Drawing Code-post.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity Maps with New Drawing Code-post.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity Maps with New Drawing Code.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity Maps with New Drawing Code.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity and activity values.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity and centrality.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity hitset overlap-noise level.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Similarity hitset overlap.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Simple isostere replacement.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Simple isostere replacement.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SimpleEnum.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Simulating Counts.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SingleMoleculeReactions.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Size_and_Similarity-Molecular changes.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Size_and_Similarity.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Specifying what should change.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Sphere exclusion-extended.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Sphere exclusion.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Sphere exclusion.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Stereochemistry Optimization.rst",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Storing molecules in image files.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SubstructLibrary and ChEMBL.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SubstructLibrary_SearchOrder.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Fingerprints and the Cartridge 2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Fingerprints and the Cartridge.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Optimization 1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Optimizations.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Optimizations.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Substructure Screening with RDKit Fingerprint.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "SynthonSearch.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "TEMP Looking at random coordinate embedding-Copy1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Tanimoto vs Euclidean.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Tautomers and Fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "The RDKit and S3.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "The RDKit and S3.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Timing count-based fingerprints.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Timing text methods for serializing molecules.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Trying out UMAP.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Trying py3Dmol.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Trying py3Dmol.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Trying the Tautomer Canonicalization.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Trying the Tautomer Canonicalization.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Tuning substructure queries II.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Tuning substructure queries II.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Tuning substructure queries III.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Tuning substructure queries.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Understanding_ConfGen_Error_Types.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Unicode experiment.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Untitled.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Untitled1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using ACS1996 Style in PandasTools.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using ConstrainedEmbed.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using Feature Maps - revisited.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using Intake for Chemistry-Post.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using Intake for Chemistry-Post.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using Intake for Chemistry.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using Intake for Chemistry.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using PostgreSQL as a document store.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using Reaction Information.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using TCMalloc.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using abbreviations.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using intake for chemistry data part 2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using the IFG Contrib.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "UsingTheMultithreadedReaders.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Using_SAScore_and_NPScore.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Variability of PMI descriptor values.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Various methods for parallel fingerprinting.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "What is very similar-Copy1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "What is very similar-backup.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "What is very similar.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "What_are_the_VSA_descriptors.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with Conformers.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with Proteins I.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data - evaluation.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data - sklearn shifted.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data PubChem assay.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data part 1 - Precision-Recall Curves.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data part 1 - Publication.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data part 1.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data part 1.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Working with unbalanced data part 2 - sklearn.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "Writing partial charges to SD files.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "__pycache__/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "a.out",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "alignment.sdf",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "bak.pkl",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "blah.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "blah.md",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "cartridge performance blog post.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "cartridge.md",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "cartridge_similarity.md",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "chembl24_molholder.pkl",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "chembl24_sssdata.pkl",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "chembl24_ssslib.pkl",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "chembl25_chiral.txt~",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "confgen_test.pkl",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "confgen_test_mmff.pkl",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "eHT in RDKit - part 2.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "eHT in RDKit.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "eHT in RDKit.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "eRG Demo.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "fig8.svg",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "foo.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "fp_results.sav.txt",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "fp_results.txt",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ghost_multiclass.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "ghost_ternary.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "guest_post_2d_molecular_templates.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "hs_err_pid4081424.log",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "hs_err_pid4397.log",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "images/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "img1.png",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "img1.svg",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "lwreg and the cartridge.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "new_post.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "nohup.out",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "nul",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "results/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "rgd_chirality_and_symmetrizaion_bug.ipynb",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "rsc_environment.yml",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "run.out",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "scaffoldnetwork_temp.html",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "temp_net/",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9007199254740991,
"text": "tmptest.pptx",
"references": [],
"lineBreakBefore": true
}
],
"props": {},
"references": []
}
],
"props": {},
"references": []
}
}
}
]
},
"toolu_vrtx_01CGKQhTytsZ4qyvhocZJ57u__vscode-1753512037193": {
"$mid": 20,
"content": [
{
"$mid": 22,
"value": {
"node": {
"type": 1,
"ctor": 2,
"ctorName": "QY",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "We",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9,
"text": "```markdown\n",
"references": [
{
"anchor": {
"$mid": 1,
"fsPath": "/home/glandrum/RDKit_blog/README.md",
"external": "file:///home/glandrum/RDKit_blog/README.md",
"path": "/home/glandrum/RDKit_blog/README.md",
"scheme": "file"
},
"options": {
"isFromTool": true
}
}
],
"lineBreakBefore": true
}
],
"props": {
"priority": 9
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 8,
"text": "rdkit_blog\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 8
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 7,
"text": "==========\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 7
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 6,
"text": "\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 6
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 5,
"text": "RDKit related blog posts, notebooks, and data.\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 5
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 4,
"text": "\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 4
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 3,
"text": "The blog itself is located here: http://rdkit.blogspot.com\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 3
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 2,
"text": "\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 2
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 9,
"text": "```",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 9
},
"references": []
}
],
"props": {},
"references": []
}
],
"props": {},
"references": []
}
}
}
]
},
"toolu_vrtx_014ckstgCLJCe5ehbxjyc3Xx__vscode-1753512037194": {
"$mid": 20,
"content": [
{
"$mid": 22,
"value": {
"node": {
"type": 1,
"ctor": 2,
"ctorName": "cDe",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "uSe",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "KS",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "y0",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "AP",
"children": [
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb` starting at line 437:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb\n...\n \"text/plain\": [\n \"\"\n ]\n },\n \"metadata\": {},\n \"output_type\": \"display_data\"\n }\n ],\n \"source\": [\n \"from matplotlib import pyplot as plt\\n\",\n \"%matplotlib inline\\n\",\n \"\\n\",\n \"plt.hist(vals,bins=20);\\n\",\n \"plt.xlabel('dihedral')\\n\",\n \"plt.ylabel('count')\\n\",\n \"plt.title(smi);\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"id\": \"060ac7a9\",\n \"metadata\": {},\n \"source\": [\n \"# Keeping the RDKit tables up-to-date when molecules are added to lwreg\\n\",\n \"\\n\",\n \"Our next step is to make sure that RDKit tables in the database are automatically updated when new molecules are added to lwreg.\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.015625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 280:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"\\n\",\n \"\\n\",\n \"\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.015625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.03125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 1347:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"\"\n ]\n },\n \"execution_count\": 24,\n \"metadata\": {},\n \"output_type\": \"execute_result\"\n }\n ],\n \"source\": [\n \"AllChem.ReduceProductToSideChains(p0s[0][0],addDummyAtoms=True)\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 25,\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"data\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.03125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.046875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 618:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"\"\n ]\n },\n \"execution_count\": 11,\n \"metadata\": {},\n \"output_type\": \"execute_result\"\n }\n ],\n \"source\": [\n \"AllChem.ReduceProductToSideChains(ps[0][0],addDummyAtoms=True)\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"Let's look at another ring-forming reaction, the Friedlaender reaction:\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 12,\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"data\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.046875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.0625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb` starting at line 276:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb\n...\n \"cell_type\": \"code\",\n \"execution_count\": 7,\n \"id\": \"6caa1f97\",\n \"metadata\": {\n \"ExecuteTime\": {\n \"end_time\": \"2024-02-23T04:55:18.810931Z\",\n \"start_time\": \"2024-02-23T04:55:18.808343Z\"\n }\n },\n \"outputs\": [],\n \"source\": [\n \"from rdkit import RDLogger\\n\",\n \"RDLogger.DisableLog('rdApp.info')\\n\",\n \"m2 = nrm2.normalize(m)\\n\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"id\": \"b058feb5\",\n \"metadata\": {},\n \"source\": [\n \"# Connecting the RDKit logs to the Python logger\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"id\": \"f14a635b\",\n \"metadata\": {},\n \"source\": [\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.0625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.078125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb` starting at line 10:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb\n...\n \"One of the key ideas behind lwreg is that it should not require any chemical intelligence in the database it uses to store its results. See the paper for more details, but the kinds of identity queries (i.e. \\\"is this molecule or something closely related already registered?\\\") that a registration system needs to support can be answered with standard text queries. Having said that, there are times when it's useful to ask questions like \\\"Are there any registered molecules in the database that contain this substructure?\\\". One easy way to allow this kind of query is to install the RDKit cartridge in the database.\\n\",\n \"\\n\",\n \"This post shows how to use the RDKit cartridge together with an lwreg instance that is using PostgreSQL as the database backend. Since installing PostgreSQL and the cartridge can be challenging for a normal user, I also show how to do that installation and get a database that's suitable for local use. The instructions below should work on Windows, Linux, or the Mac.\\n\",\n \"\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.078125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.09375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb` starting at line 1258:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2023_03_New_Stuff.ipynb\n...\n \"That's it for this post. I'll probably do another one or two of this as other thing strike me. If you see something in the release notes that you're curious about, leave a commet. I'll try and do a follow up to answer whatever questions come up.\"\n ]\n }\n ],\n \"metadata\": {\n \"kernelspec\": {\n \"display_name\": \"Python 3 (ipykernel)\",\n \"language\": \"python\",\n \"name\": \"python3\"\n },\n \"language_info\": {\n \"codemirror_mode\": {\n \"name\": \"ipython\",\n \"version\": 3\n },\n \"file_extension\": \".py\",\n \"mimetype\": \"text/x-python\",\n \"name\": \"python\",\n \"nbconvert_exporter\": \"python\",\n \"pygments_lexer\": \"ipython3\",\n \"version\": \"3.10.8\"\n },\n \"toc\": {\n \"base_numbering\": 1,\n \"nav_menu\": {},\n \"number_sections\": true,\n \"sideBar\": true,\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.09375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.109375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Bits Set By Fingerprint Type.ipynb` starting at line 725:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Bits Set By Fingerprint Type.ipynb\n...\n \"subplot(3,3,pidx)\\n\",\n \"for n,r in rdkit_ks:\\n\",\n \" lmeans = means[(n,r)]\\n\",\n \" ldevs = devs[(n,r)]\\n\",\n \" errorbar(nmols2,lmeans,yerr=ldevs,capsize=3)\\n\",\n \"_=title(\\\"RDKit\\\")\\n\",\n \"_=xlabel(\\\"num mols (millions)\\\")\\n\",\n \"_=ylabel(\\\"count\\\")\\n\",\n \"#_=legend()\\n\",\n \"\\n\",\n \"for k in counts.keys():\\n\",\n \" if k[0] in ('Morgan','FeatMorgan','RDKit'):\\n\",\n \" continue\\n\",\n \" pidx+=1\\n\",\n \" subplot(3,3,pidx)\\n\",\n \" lmeans = means[k]\\n\",\n \" ldevs = devs[k]\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.109375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb` starting at line 102:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb\n...\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.140625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb` starting at line 36:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb\n...\n \"id\": \"e64587b3\",\n \"metadata\": {},\n \"outputs\": [],\n \"source\": [\n \"from rdkit import Chem\\n\",\n \"from rdkit.Chem import Draw\\n\",\n \"from rdkit.Chem.Draw import IPythonConsole\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"id\": \"cbcee7f4\",\n \"metadata\": {},\n \"source\": [\n \"# rdMolProcessing\\n\",\n \"\\n\",\n \"The idea of the `rdMolProcessing` package is to make it easy and fast to carry out common operations on molecules read from files.\\n\",\n \"\\n\",\n \"In this initial release the only function provided generates fingerprints, but we will add additional capabilities in future releases.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 3,\n \"id\": \"d5e0eb11\",\n \"metadata\": {},\n \"outputs\": [],\n \"source\": [\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.140625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.15625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb` starting at line 308:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb\n...\n \"rdk5gen = rdFingerprintGenerator.GetRDKitFPGenerator(maxPath=5,fpSize=2048)\\n\",\n \"rdk5gen.GetFingerprint(ms[0]).GetNumOnBits(),rdkgen.GetFingerprint(ms[0]).GetNumOnBits()\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"The default RDKit FP generator, which uses a max path length of 7, sets many more bits.\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"You can find out which options are available by introspecting the functions which create generators:\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 11,\n \"metadata\": {\n \"ExecuteTime\": {\n \"end_time\": \"2023-01-17T03:42:13.085665Z\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.15625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.171875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb` starting at line 108:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb\n...\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\",\n \"RDKit WARNING: [15:06:12] WARNING: merging explicit H queries involved in ORs is not supported. This query will not be merged\\n\"\n ]\n }\n ],\n \"source\": [\n \"params = FilterCatalogParams()\\n\",\n \"params.AddCatalog(FilterCatalogParams.FilterCatalogs.PAINS)\\n\",\n \"params.AddCatalog(FilterCatalogParams.FilterCatalogs.BRENK)\\n\",\n \"params.AddCatalog(FilterCatalogParams.FilterCatalogs.NIH)\\n\",\n \"\\n\",\n \"filters = FilterCatalog.FilterCatalog(params)\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"*Note* this shows another addition to the 2016.03 release: error messages and warnings from the C++ code now show up in the Jupyter notebook (at least on Linux and the Mac)\"\n ]\n },\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.171875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.1875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb` starting at line 13:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Providing transformations.ipynb\n...\n \"The RDKit's `MolStandardize` module includes functionality for \\\"normalizing\\\" input molecules: applying a set of chemical transformations expressed as reactions to standardize the representation of particular functional groups or substructures of the input molecule. This kind of normalization is a common step in preparing molecules for a compound registration system. `MolStandardize` has a collection of default transformations adapted from Matt Swain's [MolVS](https://molvs.readthedocs.io/en/latest/) (`MolStandardize` itself started as a C++ port of MolVS) which cover standardizing a variety of common functional groups. The full list is in the [RDKit source](https://github.com/rdkit/rdkit/blob/master/Code/GraphMol/MolStandardize/TransformCatalog/normalizations.in).\\n\",\n \"\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.1875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.203125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb` starting at line 30:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb\n...\n \"Note that if you want to follow along with this, you will need to download the datasets that are being used (they are big enough that I didn't want to make them part of the RDKit source distro. URLs for where to find the data are in the script's source. The datasets themselves are described in the first blog post [mentioned above](http://rdkit.blogspot.com/2013/11/fingerprint-based-substructure.html) (though note that the 25K pairs of molecules are [pulled from ChEMBL21](http://rdkit.blogspot.com/2016/04/revisiting-similarity-comparison-set.html), not ChEMBL16 as in the original post).\\n\",\n \"\\n\",\n \"Running the script in Jupyter is pretty easy:\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 2,\n \"metadata\": {},\n \"outputs\": [],\n \"source\": [\n \"from rdkit import RDConfig\"\n ]\n },\n {\n \"cell_type\": \"code\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.203125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.21875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 32:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"from rdkit.Chem import AllChem\\n\",\n \"from rdkit.Chem import Draw\\n\",\n \"from rdkit.Chem.Draw import IPythonConsole\\n\",\n \"IPythonConsole.ipython_useSVG=True\\n\",\n \"from rdkit import rdBase\\n\",\n \"print(rdBase.rdkitVersion)\\n\",\n \"import time\\n\",\n \"print(time.asctime())\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"Let's start with the Pictet-Spengler reaction from Markus Hartenfeller's collection. The reaction itself has some interesting features, plus the name is fun. ;-)\\n\",\n \"\\n\",\n \"Here's the reference:\\n\",\n \"M. Hartenfeller et al; \\\"A Collection of Robust Organic Synthesis Reactions for In Silico Molecule Design\\\" J. Chem. Inf. Model. **51**:3093-8 (2011) \\n\"\n ]\n },\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.21875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.234375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Using Feature Maps - revisited.ipynb` starting at line 948:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Using Feature Maps - revisited.ipynb\n...\n \"source\": [\n \"scoreVect = [0]*fms[2].GetNumFeatures()\\n\",\n \"fms[2].ScoreFeats(featLists[0],mapScoreVect=scoreVect)\\n\",\n \"scoreVect\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"Feature map vectors can also be used as descriptors for machine learning, as shown in the second reference mentioned above. If I find a good example system I'll try and do a blog post on that as well.\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {\n \"collapsed\": true\n },\n \"source\": [\n \"Hopefully others find this brief introduction to the RDKit's `FeatMap` implementation useful.\"\n ]\n }\n ],\n \"metadata\": {\n \"kernelspec\": {\n \"display_name\": \"Python 3\",\n \"language\": \"python\",\n \"name\": \"python3\"\n },\n \"language_info\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.234375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.25,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Curating the PAINS filters.ipynb` starting at line 13:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Curating the PAINS filters.ipynb\n...\n \"This all led me to spend some time looking at the SMARTS versions of the PAINS filters and the way the RDKit handles them. It's fortunate that I had a good-sized block of time, because this turned into a larger task than I had anticipated. I ended up making a number of improvements to the ways Hs from SMARTS are handled, fixing [some](https://github.com/rdkit/rdkit/issues/544) [bugs](https://github.com/rdkit/rdkit/issues/557), and modifying a lot of the PAINS SMARTS definitions. This required a bunch of iterative tweaking and testing that I won't describe in detail here, but I think it's worthwhile getting into a bit of what I did and why the changes were necessary.\\n\",\n \"\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.25
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.265625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Diversity Picking Optimizations.ipynb` starting at line 228:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Diversity Picking Optimizations.ipynb\n...\n \"*Note* the LazyBitVectorPick call is a new addition to the RDKit. At the time of this writing it is only available in the github version of the code. It will appear in the 2014.09 release.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"collapsed\": false,\n \"input\": [\n \"mmp =SimDivFilters.MaxMinPicker()\\n\",\n \"bv_ids = mmp.LazyBitVectorPick(fps[:1000],1000,50)\"\n ],\n \"language\": \"python\",\n \"metadata\": {},\n \"outputs\": [],\n \"prompt_number\": 15\n },\n {\n \"cell_type\": \"code\",\n \"collapsed\": false,\n \"input\": [\n \"list(bv_ids)==list(dmat_ids)\"\n ],\n \"language\": \"python\",\n \"metadata\": {},\n \"outputs\": [\n {\n \"metadata\": {},\n \"output_type\": \"pyout\",\n \"prompt_number\": 16,\n \"text\": [\n \"True\"\n ]\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.265625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.28125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.ipynb` starting at line 1:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.ipynb\n{\n \"cells\": [\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"# MaxMinPicker\\n\",\n \"\\n\",\n \"Notebook that investigates the improvements to MaxMinPicker that will be present in the 2017_09 RDkit release.\\n\",\n \"This work is described in Roger Sayle's talk at the \\n\",\n \"[2017 UGM](https://github.com/rdkit/UGM_2017/blob/master/Presentations/Sayle_RDKitDiversity_Berlin17.pdf).\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 1,\n \"metadata\": {\n \"collapsed\": true\n },\n \"outputs\": [],\n \"source\": [\n \"from rdkit import Chem\\n\",\n \"from rdkit.Chem import Draw,rdMolDescriptors,AllChem\\n\",\n \"from rdkit import SimDivFilters,DataStructs\\n\",\n \"import gzip, time, platform\"\n ]\n },\n {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.28125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.296875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb` starting at line 90:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/The RDKit and S3.ipynb\n...\n \"text/plain\": [\n \"\"\n ]\n },\n \"execution_count\": 16,\n \"metadata\": {},\n \"output_type\": \"execute_result\"\n }\n ],\n \"source\": [\n \"first12 = []\\n\",\n \"while len(first12)<12:\\n\",\n \" m = next(suppl)\\n\",\n \" if not m or m.GetNumAtoms()>30:\\n\",\n \" continue\\n\",\n \" first12.append(m)\\n\",\n \"Draw.MolsToGridImage(first12,legends=[x.GetProp('_Name') for x in first12])\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"That's it. We read directly from S3 without having to download and create a local copy of the >500MB SDF.\"\n ]\n }\n ],\n \"metadata\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.296875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.3125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Introducing the SubstructLibrary.ipynb` starting at line 1:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Introducing the SubstructLibrary.ipynb\n{\n \"cells\": [\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"This introduces another of the new features in the 2017.09 release of the RDKit: the `SubstructLibrary` - a class to make it straightforward to do substructure searches across sets of compounds.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 1,\n \"metadata\": {},\n \"outputs\": [\n {\n \"name\": \"stdout\",\n \"output_type\": \"stream\",\n \"text\": [\n \"2018.03.1.dev1\\n\",\n \"Thu Feb 22 06:47:45 2018\\n\"\n ]\n }\n ],\n \"source\": [\n \"from rdkit import Chem\\n\",\n \"from rdkit.Chem import Draw\\n\",\n \"from rdkit.Chem.Draw import IPythonConsole\\n\",\n \"from rdkit import rdBase\\n\",\n \"import time\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.3125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.328125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Using TCMalloc.ipynb` starting at line 47:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Using TCMalloc.ipynb\n...\n \"It is, unfortunatetly, not possible to make using tcmalloc the default at RDKit build time: this would require that other programs using the RDKit shared libraries (python, postgresql, etc.) also be re-compiled to use tcmalloc. It's probably also not safe to use the LD_PRELOAD trick in your .bashrc, but setting it before starting a long-running process seems like it definitely could be a win.\\n\",\n \"\\n\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"collapsed\": false,\n \"input\": [],\n \"language\": \"python\",\n \"metadata\": {},\n \"outputs\": [],\n \"prompt_number\": 0\n },\n {\n \"cell_type\": \"code\",\n \"collapsed\": false,\n \"input\": [],\n \"language\": \"python\",\n \"metadata\": {},\n \"outputs\": []\n }\n ],\n \"metadata\": {}\n }\n ]\n}\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.328125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.34375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 75:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"rxn\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"And now a basic set of reactants\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 3,\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"data\": {\n \"image/svg+xml\": [\n \"\\n\"\n ],\n \"text/plain\": [\n \"\"\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.359375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb` starting at line 21:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Substructure Optimizations.ipynb\n...\n \"Since benchmarking screenout performance and substructure search speeds seems like a useful thing to be able to do, I created a new script that will be part of the RDKit source distribution in future releases; that's [here](https://github.com/rdkit/rdkit/blob/master/Regress/Scripts/fingerprint_screenout.py).\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"Rather than duplicating a bunch of code from the new benchmarking script here, I'll just show how to run it and then talk about the results.\\n\",\n \"\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.390625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb` starting at line 697:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb\n...\n \"\\tviewer_17285371717767177.setStyle({\\\"stick\\\": {}});\\n\",\n \"\\tviewer_17285371717767177.setStyle({\\\"model\\\": 0},{\\\"stick\\\": {\\\"colorscheme\\\": \\\"cyanCarbon\\\"}});\\n\",\n \"\\tviewer_17285371717767177.setStyle({\\\"model\\\": 1},{\\\"stick\\\": {\\\"colorscheme\\\": \\\"blueCarbon\\\"}});\\n\",\n \"\\tviewer_17285371717767177.zoomTo();\\n\",\n \"viewer_17285371717767177.render();\\n\",\n \"});\\n\",\n \"\"\n ]\n },\n \"metadata\": {},\n \"output_type\": \"display_data\"\n }\n ],\n \"source\": [\n \"from rdkit.Chem import rdShapeAlign\\n\",\n \"tpl = rdShapeAlign.AlignMol(ref,ms[0])\\n\",\n \"print(tpl)\\n\",\n \"\\n\",\n \"drawit([ref,ms[0]])\"\n ]\n },\n {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.390625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.40625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Capturing error information.ipynb` starting at line 16:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Capturing error information.ipynb\n...\n \"Brian Kelley recently added functionality to the RDKit to enable both of these things. For anyone interested, the two pull requests for those changes are: [#736](https://github.com/rdkit/rdkit/pull/736) and [#739](https://github.com/rdkit/rdkit/pull/739).\\n\",\n \"\\n\",\n \"This is a short note on how to take advantage of that.\\n\",\n \"\\n\",\n \"A couple of things to note: \\n\",\n \" - This is currently in git and will be available in the 2016.03 release.\\n\",\n \" - This post was written using Python3, some adaptation would be required for Python2.\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {\n \"collapsed\": true\n },\n \"source\": [\n \"Let's start by showing the standard state of affairs:\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 2,\n \"metadata\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.40625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.421875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 227:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"\"\n ]\n },\n \"execution_count\": 4,\n \"metadata\": {},\n \"output_type\": \"execute_result\"\n }\n ],\n \"source\": [\n \"ps = rxn.RunReactants(reactants)\\n\",\n \"ps[0][0]\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"Ok, those were the basics that have been around for a while.\\n\",\n \"\\n\",\n \"One of the new additions is `ChemicalReaction.RunReactant()`, this carries out whatever manipulations are required to process just one of the reaction's reactants and add it to the products:\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 5,\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"data\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.421875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.4375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb` starting at line 1:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb\n{\n \"cells\": [\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"# Changes in the 2016.03 Release: the FilterCatalog\\n\",\n \"\\n\",\n \"This is one of a series of posts highlighting changes (mostly new features) in the 2016.03 (Q1 2016) release of the RDKit.\\n\",\n \"\\n\",\n \"This one focuses on the `FilterCatalog`: a class introduced in the 2015.09 release that has seen some small improvements for this release and that remains \\\"underdocumented\\\". This is intended to help a bit with that second part.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 1,\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"name\": \"stdout\",\n \"output_type\": \"stream\",\n \"text\": [\n \"2016.03.1.b1\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.4375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.453125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Using Reaction Information.ipynb` starting at line 1:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Using Reaction Information.ipynb\n{\n \"cells\": [\n {\n \"cell_type\": \"markdown\",\n \"id\": \"9b664a81\",\n \"metadata\": {},\n \"source\": [\n \"We often get questions about how to relate atoms in the products of a chemical reaction to the corresponding atoms in the reactants which were provided to the reaction. The RDKit provides a couple of pieces of information that can help here; this post shows how to access that information and what it means.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 1,\n \"id\": \"45e6c132\",\n \"metadata\": {},\n \"outputs\": [\n {\n \"name\": \"stdout\",\n \"output_type\": \"stream\",\n \"text\": [\n \"2025.03.3\\n\"\n ]\n }\n ],\n \"source\": [\n \"from rdkit import Chem\\n\",\n \"from rdkit.Chem import rdChemReactions\\n\",\n \"from rdkit.Chem import Draw\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.453125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.46875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb` starting at line 374:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/Quick FingerprintGenerator tutorial.ipynb\n...\n \"help(rdFingerprintGenerator.GetRDKitFPGenerator)\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {},\n \"source\": [\n \"As always with the RDKit, we try to keep the documentation up to date, so hopefully the docstrings are complete and correct. The automatically generate function signature, on the other hand, are always right. These show you all of the arguments and their default values:\\n\",\n \"```\\n\",\n \"GetRDKitFPGenerator([ (int)minPath=1 [, (int)maxPath=7 [, (bool)useHs=True [, (bool)branchedPaths=True [, (bool)useBondOrder=True [, (bool)countSimulation=False [, (object)countBounds=None [, (int)fpSize=2048 [, (int)numBitsPerFeature=2 [, (object)atomInvariantsGenerator=None]]]]]]]]]]) -> FingerprintGenerator64\\n\",\n \"```\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"metadata\": {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.46875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.484375,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb` starting at line 208:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/lwreg and the cartridge.ipynb\n...\n \"We start by installing the cartridge in our database (if it's not already installed) and create a new schema to hold the RDKit tables.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 6,\n \"id\": \"2ded2d3f\",\n \"metadata\": {\n \"ExecuteTime\": {\n \"end_time\": \"2024-10-22T11:10:00.483038Z\",\n \"start_time\": \"2024-10-22T11:10:00.479904Z\"\n }\n },\n \"outputs\": [],\n \"source\": [\n \"cn = utils.connect(config=cfg)\\n\",\n \"curs = cn.cursor()\\n\",\n \"curs.execute('create extension if not exists rdkit')\\n\",\n \"curs.execute('create schema if not exists rdk')\\n\",\n \"cn.commit()\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.484375
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.5,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb` starting at line 289:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2024_New_Stuff_2.ipynb\n...\n \" m2 = Chem.RemoveHs(Chem.Mol(mh,confId=cids[j]))\\n\",\n \" rms1 = rdMolAlign.GetBestRMS(m1,m2)\\n\",\n \" rms2 = rdMolAlign.GetBestRMS(m1,m2,symmetrizeConjugatedTerminalGroups=False)\\n\",\n \" print(f'{i}, {j}: {rms1:.2f}, {rms2:.2f}')\\n\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"id\": \"6c1d21e9\",\n \"metadata\": {},\n \"source\": [\n \"The `symmetrizeConjugatedTerminalGroups` option was added (and made the default) in the 2022.09.1 release of the RDKit. In the 2024.03.1 release we added support for this behavior to the RMSD pruning done during conformer generation and made it the default.\\n\",\n \"\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.5
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.515625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.md` starting at line 3:\n```md\n// filepath: /home/glandrum/RDKit_blog/notebooks/MaxMinPickerRevisited.md\n# MaxMinPicker revisited\n\nThis post has a bit of history. It is primarily inspired by \n[Roger Sayle's talk](https://github.com/rdkit/UGM_2017/blob/master/Presentations/Sayle_RDKitDiversity_Berlin17.pdf)\nat the recent [UGM in Berlin](https://github.com/rdkit/UGM_2017). \nIf you have attended these great events you will know that Roger's talk is one of the highlights. \nIn a way that only Roger can, he picks an area of the RDKit and tears it to pieces. \nHaving done so he reassembles those pieces using his immense computer science brain\nand the result is something improved. Greg sits there not quite knowing what is coming, but assured that the \noutcome will be positive!\n\nThis time he picked on (pun!) the MaxMinPicker algorithm in RDKit.\nThis also has history, as it was the subject of [a blog](http://rdkit.blogspot.co.uk/2014/08/optimizing-diversity-picking-in-rdkit.html)\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.515625
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.53125,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb` starting at line 229:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2024_New_Stuff.ipynb\n...\n \"outputs\": [],\n \"source\": [\n \"fpg = rdFingerprintGenerator.GetRDKitFPGenerator(maxPath=5)\\n\",\n \"fps = rdMolProcessing.GetFingerprintsForMolsInFile('../data/herg_data.txt',options=opts,generator=fpg)\\n\"\n ]\n },\n {\n \"cell_type\": \"markdown\",\n \"id\": \"111789b2\",\n \"metadata\": {},\n \"source\": [\n \"# Addition of GetAllConformerBestRMS()\\n\",\n \"\\n\",\n \"The new function `GetAllConformerBestRMS()` makes it easy to calculate the RMSDs between all of the conformers of a molecule.\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 13,\n \"id\": \"a892dd29\",\n \"metadata\": {},\n \"outputs\": [],\n \"source\": [\n \"from rdkit.Chem import rdDistGeom\\n\",\n \"from rdkit.Chem import rdMolAlign\"\n ]\n },\n {\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.53125
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.546875,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb` starting at line 50:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview FilterCatalog.ipynb\n...\n \"The RDKit comes with a number of query sets pre-configured:\"\n ]\n },\n {\n \"cell_type\": \"code\",\n \"execution_count\": 2,\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"data\": {\n \"text/plain\": [\n \"{'ALL': rdkit.Chem.rdfiltercatalog.FilterCatalogs.ALL,\\n\",\n \" 'BRENK': rdkit.Chem.rdfiltercatalog.FilterCatalogs.BRENK,\\n\",\n \" 'NIH': rdkit.Chem.rdfiltercatalog.FilterCatalogs.NIH,\\n\",\n \" 'PAINS': rdkit.Chem.rdfiltercatalog.FilterCatalogs.PAINS,\\n\",\n \" 'PAINS_A': rdkit.Chem.rdfiltercatalog.FilterCatalogs.PAINS_A,\\n\",\n \" 'PAINS_B': rdkit.Chem.rdfiltercatalog.FilterCatalogs.PAINS_B,\\n\",\n...\n```\n\n",
"references": [],
"lineBreakBefore": true
}
],
"props": {
"priority": 100.546875
},
"references": []
},
{
"type": 1,
"ctor": 2,
"ctorName": "Lee",
"children": [
{
"type": 2,
"priority": 100.5625,
"text": "Here is a potentially relevant text excerpt in `/home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb` starting at line 666:\n```ipynb\n// filepath: /home/glandrum/RDKit_blog/notebooks/2016_Q1 Preview New Reaction Features.ipynb\n...\n \"metadata\": {\n \"collapsed\": false\n },\n \"outputs\": [\n {\n \"data\": {\n \"image/svg+xml\": [\n \"