The implementation are gathered from the dropbox and the malamenteau server