, but this code // executes before the first paint, when

ƴɸ̳

is not yet present. The // classes are added to so styling immediately reflects the current // toolbar state. The classes are removed after the toolbar completes // initialization. const classesToAdd = ['toolbar-loading', 'toolbar-anti-flicker']; if (toolbarState) { const { orientation, hasActiveTab, isFixed, activeTray, activeTabId, isOriented, userButtonMinWidth } = toolbarState; classesToAdd.push( orientation ? `toolbar-` + orientation + `` : 'toolbar-horizontal', ); if (hasActiveTab !== false) { classesToAdd.push('toolbar-tray-open'); } if (isFixed) { classesToAdd.push('toolbar-fixed'); } if (isOriented) { classesToAdd.push('toolbar-oriented'); } if (activeTray) { // These styles are added so the active tab/tray styles are present // immediately instead of "flickering" on as the toolbar initializes. In // instances where a tray is lazy loaded, these styles facilitate the // lazy loaded tray appearing gracefully and without reflow. const styleContent = ` .toolbar-loading #` + activeTabId + ` { background-image: linear-gradient(rgba(255, 255, 255, 0.25) 20%, transparent 200%); } .toolbar-loading #` + activeTabId + `-tray { display: block; box-shadow: -1px 0 5px 2px rgb(0 0 0 / 33%); border-right: 1px solid #aaa; background-color: #f5f5f5; z-index: 0; } .toolbar-loading.toolbar-vertical.toolbar-tray-open #` + activeTabId + `-tray { width: 15rem; height: 100vh; } .toolbar-loading.toolbar-horizontal :not(#` + activeTray + `) > .toolbar-lining {opacity: 0}`; const style = document.createElement('style'); style.textContent = styleContent; style.setAttribute('data-toolbar-anti-flicker-loading', true); document.querySelector('head').appendChild(style); if (userButtonMinWidth) { const userButtonStyle = document.createElement('style'); userButtonStyle.textContent = `#toolbar-item-user {min-width: ` + userButtonMinWidth +`px;}` document.querySelector('head').appendChild(userButtonStyle); } } } document.querySelector('html').classList.add(...classesToAdd); })(); Extension of Stay (Immigration) | ƴɸ̳

ƴɸ̳

Skip to main content

Extension of Stay (Immigration)

Table of Contents


Instructions

  • If you intend to study as an F-1 student past the “program end date” found on your I-20, you must apply for an extension of your I-20.
  • Extension is only possible with a compelling medical or academic reason.
  • Extensions forms must be submitted at least 3 days before the end date on your I-20. If you do not submit the forms until after the end date, you will lose your F-1 status.
  • Delays due to academic suspension do not qualify a student for extension.
  • Extension of stay is not available for the purpose of pursuing additional CPT. You may seek CPT authorization only if you still have other requirements left for graduation.

Procedure

Ask your advisor to fill out the Academic Advisor Recommendation for Extension. Fill out the top portion before requesting that your advisor complete the rest.

Ask your financial sponsor to fill out a Statement of Continued Financial Support. Your sponsor is whoever is paying for your education. If you are funding your own education, you may sign the form yourself.


Immigration Contact

Jim_Wilder

Jim Wilder

Immigration Coordinator
1-616-526-6629

Basic information

Date issued
Last updated
Audience
Current Students
Prospective Students
Approved by

International Admissions