looked over libexplain source code