public function createRemessa($codigo_banco, $formato = 'cnab400', $layoutVersao = null)
    {
        if (empty($codigo_banco)) {
            throw new \InvalidArgumentException('$codigo_banco cannot be empty');
        }
        switch ($formato) {
            case 'cnab400':
                return new Remessa\Cnab400\Arquivo($codigo_banco, $layoutVersao);
            case 'cnab240':
                return new Remessa\Cnab240\Arquivo($codigo_banco, $layoutVersao);
            default:
                throw new \InvalidArgumentException('Invalid cnab format: ' + $formato);
        }
    }