POLITICA
A una semana de la reunión entre Milei y Trump, Santiago Caputo recibió al estratega republicano Barry Bennett

Cuando falta menos de una semana para la reunión entre Javier Milei y Donald Trump en Washington, el asesor presidencial, Santiago Caputo, volvió a recibir en la Casa Rosada a su par estadounidense, Barry Bennett, para acordar el temario que va a haber en el Salón Oval y debatir sobre la situación política en la Argentina.
El estratega del Partido Republicano arribó a la sede de Gobierno cerca de las 15:00 y se dirigió directamente a la oficina del consultor político libertario, que ya lo estaba esperando.
Al ingresar, y en una muestra más de buena sintonía entre las dos administraciones, el dirigente norteamericano aseguró que tiene “grandes expectativas sobre el futuro” de la gestión que está llevando adelante Mile.
“Se conversó sobre la visita que va a hacer el Presidente a la Casa Blanca el próximo 14 de octubre, pero también se compartieron miradas sobre el proceso electoral que se viene, cómo quedaría configurado el Congreso y esas cuestiones”, reveló a Infobae una fuente al tanto del encuentro.
Durante la charla, Caputo estuvo acompañado por dos de sus principales colaboradores, el también consultor Manuel Vidal, y Macarena Alifraco.
Por su parte, Bennett llegó junto con Soledad Cedro, una periodista argentina radicada desde hace varios años en Miami y que además es CEO en Argentina de la Conferencia de Acción Política Conservadora (CPAC).
De hecho, fue ella quien organizó la cumbre de derecha cuando se realizó en Buenos Aires en diciembre del 2024, mientras que Vidal fue parte de la comitiva libertaria que viajó en febrero último a Estados Unidos para asistir a la edición que se llevó adelante en Maryland.
Noticia en desarrollo…
POLITICA
Guillermo Francos mantuvo un duro cruce con un hombre que lo insultó en Mar del Plata: del “estás loco” a dos “fuck you”

El jefe de Gabinete, Guillermo Francos, mantuvo una acalorada discusión con un hombre que lo insultó en las inmediaciones del Hotel Hermitage, en Mar del Plata. El episodio ocurrió este martes, durante la visita de Javier Milei, Francos, candidatos y funcionarios a la ciudad balnearia. Allí participaron de la inauguración de una planta de procesamiento de papas de la multinacional Lamb Weston y en una caravana militante por la calle Güemes.
Las imágenes, que se viralizaron en la red social X, fueron registradas entre las 18 y las 19. Sucedió antes de la recorrida de Milei junto a la secretaria general de la Presidencia Karina Milei, los aspirantes a ingresar al Congreso Diego Santilli y Karen Reichardt, y el armador oficialista en territorio bonaerense, Sebastián Pareja, por la avenida comercial.
Según confirmaron a desde el entorno de Francos, el individuo no dejaba de insultarlo, motivo por el cual el ministro se acercó a dialogar. Al advertir que el hombre estaba exaltado, decidió retirarse.
En los primeros segundos del video se observa al jefe de Gabinete cerca de un automóvil perteneciente a la flota oficial, mientras escucha los gritos de un individuo que, desde detrás de una valla, le increpa: “La van a tener que pagar. La historia se las va a cobrar. A todos ustedes”. Francos preguntó “por qué”.
A partir de ese momento, la grabación, registrada por un tercero, se tornó ininteligible por unos segundos. El sujeto y Francos discutían a viva voz. Quien grabó el episodio identificó en ese momento al hombre como “kirchnerista”. Cuando los gritos cesan, se escucha nuevamente la voz del sujeto que se había acercado a Francos. “Ahora te la están cobrando, te la están pidiendo. ¿Cuántos miles de dólares pediste?”.
Ante los insultos, Francos se lleva el dedo índice a la cabeza y le responde “estás loco”, para luego coronar el gesto con dos “fuck you”, lo que provoca aún más enojo en el hombre.
“A mí no me digas loco, forro (sic). ¿Quién te creés que sos? Sos un mandatario. Te votaron para mandar, no para pedir guita. Ladrón. Hijo de p… (sic). ¿Qué se puede esperar de un burro más que una patada?”, replica el individuo, mientras el jefe de Gabinete se aleja de la escena.
Francos no fue el único en recibir insultos durante su paso por la ciudad balnearia. Durante una caminata en la avenida Colón y las Heras, de la cual participó también la diputada nacional Lilia Lemoine, Milei discutió a lo lejos con un vecino que lo insultó desde un balcón mientras saludaba a simpatizantes y se sacaba fotos.
En las imágenes se escucha cómo el hombre le grita “estafador hijo de puta” al mandatario. Milei, lejos de responder con insultos, replicó con ironía: “Igual te estoy arreglando la vida”.

El intercambio no terminó ahí. Ante la insistencia del vecino, una mujer que acompañaba al jefe de Estado le pidió: “Dome, Milei, dome”. Entonces el Presidente volvió a levantar la voz para cerrar la discusión. “Te voy a bajar un poco más la inflación así puteás un poco más, dale”, dijo, lo que provocó risas entre los militantes presentes.
durante la visita de Javier Milei, Francos, candidatos y funcionarios a la ciudad balnearia,Guillermo Francos,Mar del Plata,Javier Milei,Conforme a,,»Le gustan las cámaras». Facundo Manes denunció a Martín Menem por amenazas en los pasillos del Congreso y el libertario lo desmintió,,Dictó más de cuatro DNU por mes La oposición puso en jaque la principal herramienta de gobernabilidad de Milei,,»Momento bisagra». Milei relanzó la campaña de LLA junto a Santilli y busca dejar atrás la crisis por el escándalo de Espert,Guillermo Francos,,Guitarra en mano. El salteño Sáenz reclamó en Plaza de Mayo por la obra pública prometida por la Casa Rosada,,»Generó daño en la campaña». Qué dijo Francos sobre la renuncia de Espert a su candidatura,,Uno por uno, los apuntados. El Congreso activa su rol de contralor y acorrala a los funcionarios a los que cuestiona
POLITICA
El Gobierno gana tiempo porque Diputados no pudo convertir en ley el límite a los DNU

El Gobierno calculaba que no tenía los números suficientes para evitar que la oposición aprobara el proyecto que limita el uso de los Decretos de Necesidad y Urgencia (DNU). Es por eso que Javier Milei tenía entre sus previsiones vetar la ley, según pudo saber TN, pero luego de que se aplicaran algunos cambios, el Ejecutivo logró ganar tiempo hasta que el Senado defina la resolución final.
En el oficialismo consideraban que la medida no podía salir tal cual como estaba redactada. “Se va a vetar, excepto que haya cambios”, expresaba una fuente de Casa Rosada mientras se desarrollaba el debate parlamentario. Otra persona, con acceso al despacho presidencial, también confirmó esa decisión.
Leé también: Santilli, tras la decisión de la Justicia Electoral: “No me importa el lugar, voy a estar donde el Presidente
Desde que hubo quorum para la sesión, distintos actores de La Libertad Avanza avizoraban la complejidad del panorama. “No creo que tengamos los números”, reconoció una voz libertaria del bloque de Diputados.
Asimismo, los aliados de LLA en el recinto dieron cuenta de la situación: “No puede no vetarla. Se cae el Gobierno, te dejan inmovilizado”.
A pesar de los intentos, el Ejecutivo no logró evitar que Unión por la Patria, Encuentro Federal, Democracia para Siempre y la Coalición Cívica den el presente para comenzar la sesión.
Además, fueron claves los cuatro diputados que responden a Martín Llaryora, el gobernador de Córdoba. En Balcarce 50 no lograron convencer al mandatario provincial, que es uno de los principales referentes del frente Provincias Unidas.
En cambio, los que sí se ausentaron fueron los legisladores de Ignacio Torres (Chubut), Maximiliano Pullaro (Santa Fe), Gustavo Sáenz (Salta), Hugo Passalacqua (Misiones) y Alberto Weretilneck (Río Negro).

Después de varias horas de debate, Diputados aprobó la reforma que limita los DNU de Milei, pero no pudo convertirla en ley porque se impusieron cambios y ahora la iniciativa vuelve al Senado.
Qué dice el proyecto que limita los DNU
La iniciativa nació en la Cámara Alta, donde obtuvo media sanción. El proyecto modifica la ley 26.122, que fue sancionada en 2006 e impulsada por Cristina Kirchner.
Entre los puntos más destacados del texto figura la eliminación de la convalidación tácita de los DNU, cuando el Congreso no los trata. Ahora, se propone que sean aprobados por ambas cámaras y con mayoría absoluta para que mantengan vigencia.
Leé también: José Luis Espert pidió licencia hasta el final de su mandato como diputado
Además, el documento fija un plazo para que este trámite se lleve adelante: 90 días corridos desde la publicación del decreto en el Boletín Oficial. Si no es aprobado dentro de ese lapso de tiempo, perdería vigencia de manera automática.
La medida establece que si alguna de las dos cámaras del Congreso rechaza un DNU, el decreto quedará derogado. No obstante, estarán a salvo los derechos adquiridos durante su vigencia.
Por último, la iniciativa también le prohíbe al Gobierno dictar megadecretos, como el DNU 70/2023 que Javier Milei firmó al inicio de su gestión. En cambio, se especifica que los documentos deberán referirse a una sola temática.
Cámara de Diputados, Congreso., DNU
POLITICA
Uno por uno, cómo votaron en general los diputados la reforma de la ley de DNU, que ahora vuelve al Senado

`
: `
`
}
${bloque}
`;
targetContainer.appendChild(card);
}
function createHemicicleSmall(nAfirmativo, nNegativo, nAbstencion, nAusente) {
const hemicycle = document.querySelector(‘.votos-diputados__hemiciclo.small’);
hemicycle.innerHTML = »; // Clear previous content.
const centerX = 300;
const baseY = 450;
const numberOfRows = 10;
// Array of seats per row (from outer to inner)
const seatsPerRow = [38, 36, 33, 30, 27, 24, 21, 19, 16, 13];
const verticalOffset = 2;
const totalSeats = seatsPerRow.reduce((a, b) => a + b, 0);
const totalVotes = nAfirmativo + nNegativo + nAbstencion + nAusente;
// Instead of percentage-based rounding, we’ll compute a per-row distribution
// using floor() and then distribute any remaining seats based on the remainders.
let rowSeatCounts = seatsPerRow.map((seatsInRow) => {
// Compute the exact (floating point) allocation for each category.
const exactAfirmativo = (nAfirmativo * seatsInRow) / totalSeats;
const exactNegativo = (nNegativo * seatsInRow) / totalSeats;
const exactAbstencion = (nAbstencion * seatsInRow) / totalSeats;
const exactAusente = (nAusente * seatsInRow) / totalSeats;
// Take floor values.
let rowAfirmativo = Math.floor(exactAfirmativo);
let rowNegativo = Math.floor(exactNegativo);
let rowAbstencion = Math.floor(exactAbstencion);
let rowAusente = Math.floor(exactAusente);
let assigned = rowAfirmativo + rowNegativo + rowAbstencion + rowAusente;
let diff = seatsInRow – assigned;
// Create an array of remainders along with category identifiers.
let remainders = [{
cat: «afirmativo»,
remainder: exactAfirmativo – rowAfirmativo
},
{
cat: «negativo»,
remainder: exactNegativo – rowNegativo
},
{
cat: «abstencion»,
remainder: exactAbstencion – rowAbstencion
},
{
cat: «ausente»,
remainder: exactAusente – rowAusente
}
];
// Sort descending by remainder.
remainders.sort((a, b) => b.remainder – a.remainder);
// Distribute the remaining seats one by one to the categories with the highest remainders.
while (diff > 0) {
for (let r of remainders) {
if (diff <= 0) break;
switch (r.cat) {
case «afirmativo»:
rowAfirmativo++;
break;
case «negativo»:
rowNegativo++;
break;
case «abstencion»:
rowAbstencion++;
break;
case «ausente»:
rowAusente++;
break;
}
diff–;
}
}
return {
afirmativo: rowAfirmativo,
negativo: rowNegativo,
abstencion: rowAbstencion,
ausente: rowAusente
};
});
// Now, using your inverted loop order (columns first, then rows)
const maxSeatsInRow = seatsPerRow[0]; // maximum seats in the outer row
// For each seat position (by column, then row), assign the color based on that row’s distribution.
for (let col = 0; col < maxSeatsInRow; col++) {
for (let row = 0; row < numberOfRows; row++) {
if (col < seatsPerRow[row]) { // only if this row has a seat at this column
const seatsInThisRow = seatsPerRow[row];
const radius = 170 – row * (16 – verticalOffset);
const angleRange = Math.PI; // semicircle
const angleStep = (seatsInThisRow > 1) ? angleRange / (seatsInThisRow – 1) : 0;
const angle = (Math.PI – angleRange) / 2 + col * angleStep;
const x = centerX + radius * Math.cos(angle);
const y = baseY – radius * Math.sin(angle);
// For this row, assign colors in order:
// First use available «afirmativo», then «negativo», then «abstencion», then «ausente»
let colorClass=»color-empty»;
if (rowSeatCounts[row].afirmativo > 0) {
colorClass=»color-afirmativo»;
rowSeatCounts[row].afirmativo–;
} else if (rowSeatCounts[row].negativo > 0) {
colorClass=»color-negativo»;
rowSeatCounts[row].negativo–;
} else if (rowSeatCounts[row].abstencion > 0) {
colorClass=»color-abstencion»;
rowSeatCounts[row].abstencion–;
} else if (rowSeatCounts[row].ausente > 0) {
colorClass=»color-ausente»;
rowSeatCounts[row].ausente–;
}
const seat = document.createElement(‘div’);
seat.classList.add(‘seat’, colorClass);
seat.style.left = `${x}px`;
seat.style.top = `${y}px`;
hemicycle.appendChild(seat);
}
}
}
// Set the legend text.
const leyText = nAfirmativo > nNegativo ? ‘Ley Aprobada’ : ‘Ley no aprobada’;
document.querySelector(‘#voto-summary’).innerHTML = `
Afirmativo: ${nAfirmativo} |
Negativo: ${nNegativo}
Abstención: ${nAbstencion} |
Ausente: ${nAusente}
` + ‘
‘ + leyText + ‘
‘;
}
// Creates the big hemiciclo visualization.
function createHemicicleBig(nAfirmativo, nNegativo, nAbstencion, nAusente) {
const hemicycle = document.querySelector(‘.votos-diputados__hemiciclo.big’);
hemicycle.innerHTML = »; // Clear previous content.
const centerX = 300;
const baseY = 450;
const numberOfRows = 10;
// Array of seats per row (outer to inner; total should be 257)
const seatsPerRow = [38, 36, 33, 30, 27, 24, 21, 19, 16, 13];
const verticalOffset = 2;
const totalSeats = seatsPerRow.reduce((a, b) => a + b, 0);
// Raw vote counts must sum to totalSeats (257)
const totalVotes = nAfirmativo + nNegativo + nAbstencion + nAusente;
if (totalVotes !== totalSeats) {
console.warn(«Total votes (» + totalVotes + «) do not equal total seats (» + totalSeats + «).»);
}
// — Per-Row Distribution Using Absolute Counts —
// For each row, compute the exact allocation for each vote category based on its fraction of the total seats.
let rowSeatCounts = seatsPerRow.map(seatsInRow => {
const exactA = (nAfirmativo / totalSeats) * seatsInRow;
const exactN = (nNegativo / totalSeats) * seatsInRow;
const exactAb = (nAbstencion / totalSeats) * seatsInRow;
const exactAu = (nAusente / totalSeats) * seatsInRow;
let rowA = Math.floor(exactA);
let rowN = Math.floor(exactN);
let rowAb = Math.floor(exactAb);
let rowAu = Math.floor(exactAu);
let assigned = rowA + rowN + rowAb + rowAu;
let diff = seatsInRow – assigned;
// Create an array of remainders for each category.
let remainders = [{
cat: «afirmativo»,
rem: exactA – rowA
},
{
cat: «negativo»,
rem: exactN – rowN
},
{
cat: «abstencion»,
rem: exactAb – rowAb
},
{
cat: «ausente»,
rem: exactAu – rowAu
}
];
// Sort the remainders in descending order.
remainders.sort((a, b) => b.rem – a.rem);
// Distribute any leftover seats one by one.
while (diff > 0) {
for (let r of remainders) {
if (diff <= 0) break;
switch (r.cat) {
case «afirmativo»:
rowA++;
break;
case «negativo»:
rowN++;
break;
case «abstencion»:
rowAb++;
break;
case «ausente»:
rowAu++;
break;
}
diff–;
}
}
return {
afirmativo: rowA,
negativo: rowN,
abstencion: rowAb,
ausente: rowAu
};
});
// — Global Correction —
// Sum the allocated seats for each category across all rows.
let globalA = rowSeatCounts.reduce((sum, row) => sum + row.afirmativo, 0);
let globalN = rowSeatCounts.reduce((sum, row) => sum + row.negativo, 0);
let globalAb = rowSeatCounts.reduce((sum, row) => sum + row.abstencion, 0);
let globalAu = rowSeatCounts.reduce((sum, row) => sum + row.ausente, 0);
// For each category, if the global total is less than the raw count, add the missing seats to the outer row (row 0).
if (globalA < nAfirmativo) {
rowSeatCounts[0].afirmativo += (nAfirmativo – globalA);
}
if (globalN < nNegativo) {
rowSeatCounts[0].negativo += (nNegativo – globalN);
}
if (globalAb < nAbstencion) {
rowSeatCounts[0].abstencion += (nAbstencion – globalAb);
}
if (globalAu < nAusente) {
rowSeatCounts[0].ausente += (nAusente – globalAu);
}
// — Seat Placement Using Inverted Loop Order —
const maxSeatsInRow = seatsPerRow[0];
for (let col = 0; col < maxSeatsInRow; col++) {
for (let row = 0; row < numberOfRows; row++) {
if (col < seatsPerRow[row]) { // Only process if this row has a seat at the current column.
const seatsInThisRow = seatsPerRow[row];
const radius = 300 – row * (30 – verticalOffset);
const angleRange = Math.PI; // semicircle
const angleStep = (seatsInThisRow > 1) ? angleRange / (seatsInThisRow – 1) : 0;
const angle = (Math.PI – angleRange) / 2 + col * angleStep;
const x = centerX + radius * Math.cos(angle);
const y = baseY – radius * Math.sin(angle);
// For the current row, assign the color in order: afirmativo, then negativo, then abstencion, then ausente.
let colorClass=»color-empty»;
if (rowSeatCounts[row].afirmativo > 0) {
colorClass=»color-afirmativo»;
rowSeatCounts[row].afirmativo–;
} else if (rowSeatCounts[row].negativo > 0) {
colorClass=»color-negativo»;
rowSeatCounts[row].negativo–;
} else if (rowSeatCounts[row].abstencion > 0) {
colorClass=»color-abstencion»;
rowSeatCounts[row].abstencion–;
} else if (rowSeatCounts[row].ausente > 0) {
colorClass=»color-ausente»;
rowSeatCounts[row].ausente–;
}
const seat = document.createElement(‘div’);
seat.classList.add(‘seat’, colorClass);
seat.style.left = `${x}px`;
seat.style.top = `${y}px`;
hemicycle.appendChild(seat);
}
}
}
/* // — Update Legend —
const leyText = nAfirmativo > nNegativo ? «Ley Aprobada» : «Ley no aprobada»;
const resultsText=»shshs»;
document.querySelector(«#voto-summary»).innerHTML = leyText + resultsText; */
}
// Go-to-top button functionality.
document.addEventListener(‘DOMContentLoaded’, function() {
const goToTopButton = document.querySelector(‘.votos-diputados__go-to-top’);
const targetElement = document.querySelector(‘.votos-diputados’);
goToTopButton.addEventListener(‘click’, function() {
targetElement.scrollIntoView({
behavior: ‘smooth’
});
});
const observer = new IntersectionObserver((entries) => {
entries.forEach((entry) => {
goToTopButton.style.display = entry.isIntersecting ? ‘block’ : ‘none’;
});
}, {
root: null,
rootMargin: ‘0px’,
threshold: 0.1
});
observer.observe(targetElement);
// Attach the toggle listener to each vote button.
const toggleBtns = document.getElementsByClassName(‘votos-diputados__voto-btn’);
for (let i = 0; i < toggleBtns.length; i++) {
toggleBtns[i].addEventListener(‘click’, function() {
this.classList.toggle(‘active’);
const panel = this.nextElementSibling;
panel.style.maxHeight = panel.style.maxHeight ? null : ‘14000px’;
});
}
// Now simulate a click on each button from within DOMContentLoaded.
// This will trigger the listener and expand each panel on load.
for (let i = 0; i < toggleBtns.length; i++) {
toggleBtns[i].click();
}
});
- CHIMENTOS2 días ago
Mica Viciconte confesó por qué no fue a conocer a su primer sobrino: “Me cuesta, no me hallo”
- POLITICA3 días ago
En la antesala de la elección de la CGT, los gremios del transporte refuerzan su conducción y su perfil opositor a Milei
- CHIMENTOS1 día ago
Quién es la Gran Hermano que se separó y se puso de novia con un futbolista argentino: «Catalina Gorostidi está con Germán Ferreyra»