class KeyStoreDecryptionProvider implements DecryptionProvider {

    private static final ChainingEncryptedKeyResolver encryptedKeyResolver;
    private final CredentialProvider credentialProvider;

    static {
        final List<EncryptedKeyResolver> list = new ArrayList<>();
        list.add(new InlineEncryptedKeyResolver());
        list.add(new EncryptedElementTypeEncryptedKeyResolver());
        list.add(new SimpleRetrievalMethodEncryptedKeyResolver());
        encryptedKeyResolver = new ChainingEncryptedKeyResolver(list);
    }

    /**
     * <p>Constructor for KeyStoreDecryptionProvider.</p>
     *
     * @param credentialProvider a {@link CredentialProvider} object
     */
    public KeyStoreDecryptionProvider(final CredentialProvider credentialProvider) {
        this.credentialProvider = credentialProvider;
    }

    /** {@inheritDoc} */
    @Override
    public final Decrypter build() {<FILL_FUNCTION_BODY>}
}

        val encryptionCredential = this.credentialProvider.getCredential();
        final KeyInfoCredentialResolver resolver = new StaticKeyInfoCredentialResolver(encryptionCredential);
        val decrypter = new Decrypter(null, resolver, encryptedKeyResolver);
        decrypter.setRootInNewDocument(true);

        return decrypter;
    
<no_super_class>