-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
51 changed files
with
881 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 App Assignments | ||
subtitle: App Assignments | ||
--- | ||
|
||
You can assign apps to always open on a particular desktop by using the Apps preferences. | ||
|
||
<img src="/images/apps-preferences-ts2.png"> | ||
|
||
Press the + button to open a dialog and choose the application you want to assign. Then choose the desktop you want to assign it to from the dropdown list. You can also choose **All spaces** if you would like an app to appear on all desktops. | ||
|
||
These assignments allow you to choose where apps start, but note that you may still move windows from desktop to desktop - for instance by dragging them in the [Overview Grid](/overview2 "Overview grid"). | ||
|
||
You can delete an app assignment by highlighting it and pressing the - (minus) button. | ||
|
||
## Adding Finder | ||
|
||
Finder is not in the normal Applications folder. In order to add it you should navigate to /System/Library/CoreServices/Finder | ||
|
||
<img src="/images/apps-prefs-finder.png"> | ||
|
||
|
||
» Next [**Full screen desktops**](/full-screen-desktops2) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
--- | ||
layout: ts-doc | ||
layout: ts2-doc | ||
title: Recent changes in TotalSpaces2 | ||
subtitle: Recent changes | ||
--- | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 Credits | ||
subtitle: Credits | ||
--- | ||
|
||
## __TotalSpaces2 was created with contributions from many people__ | ||
|
||
## People who contributed | ||
|
||
* **[Anna from Annaway](http://annaway.fi)** - created the TotalSpaces2 icon | ||
* **Harry Grover** - contributed the initial code for the notification grid graphics | ||
* **atoxx** - helped with debugging test builds of ReSpaceApp | ||
* **Daniel Unterberger** - helped with overview grid transitions and debugging | ||
|
||
## TotalSpaces2 leveraged these open-source projects and tools | ||
|
||
* <a href="http://www.codethecode.com/projects/class-dump">**class-dump**</a> by Steve Nygard | ||
* <a href="http://code.google.com/p/google-toolbox-for-mac">**Google Toolbox for Mac**</a> by The GTM Authors (Google) | ||
* <a href="http://sparkle.andymatuschak.org">**Sparkle**</a> by Andy Matuschak | ||
* <a href="http://s.sudre.free.fr/Software/Packages.html">**Packages.app**</a> by Stéphane Sudre (<a href="http://s.sudre.free.fr">WhiteBox</a>) | ||
* <a href="http://github.com/glebd/cocoafob">**CocoaFob**</a> by PixelEspresso | ||
* <a href="https://gist.github.com/rjw57/5495406">**CGSPrivate**</a> by Richard J Wareham | ||
* <a href="https://github.com/Smartling/ios-i18n">**Smartling.i18n.framework**</a> by Smartling, Inc. | ||
* <a href="https://github.com/kwbock/KBButton">**KBButton**</a> by Kyle Bock | ||
* <a href="https://github.com/shpakovski/MASShortcut">**MASShortcut**</a> by Vadim Shpakovski | ||
|
||
## Thank you! | ||
|
||
Anyone who contributed to these projects can [grab a free copy](http://totalspaces.binaryage.com/free-licenses2). | ||
|
||
--- | ||
|
||
<div style="color: #666; font-size: 10px">Please <a href="mailto:[email protected]">send me an email</a> if you think I forgot to mention someone. Thank you.</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
layout: ts2-doc | ||
title: Differences from TotalSpaces | ||
subtitle: How TotalSpaces2 is different from TotalSpaces | ||
--- | ||
|
||
TotalSpaces2 is a substantial rewrite of TotalSpaces. It focuses on the grid, and the most important idea is that all spaces participate in the grid, whether regular desktops, fullscreens, or the dashboard. | ||
|
||
There is support for both multi-monitor modes provided by OSX Mavericks (Mission Control's "Displays have separate Spaces" setting), and a more active overview grid that allows you to move your spaces to where you want them. | ||
|
||
The space transitions have also been rewritten, and there is a new preferences pane for the layout allowing you to easily choose the grid you want. | ||
|
||
Here is a brief list of changes so you can review whether TotalSpaces2 will do everything you need. **Please download and test TotalSpaces2 before you pay for the upgrade.** | ||
|
||
* Everything in the grid - dashboard and fullscreen apps are part of the grid. Newly created fullscreens are added to the bottom of the grid, making a new row if needed. | ||
* Multi-monitor modes - respects the new "Displays have separate Spaces" setting. When displays have separate spaces there is a separate grid on each screen. When displays do not have separate spaces, TotalSpaces2 works the same as TotalSpaces did. | ||
* Spaces can freely be dragged into new positions in the overview grid. | ||
* New transition "Inside cube". Swap transition has been dropped in TotalSpaces2. | ||
* New whole grid zoom transition to the overview grid. | ||
* New hotkey setting for taking the current window with you when moving to an adjacent space. | ||
* Dragging an item to another space via a hotcorner and the overview grid can be done in TotalSpaces2 (just hover over the destination space). | ||
* No API at the present time, the API is being redesigned to support Mavericks. | ||
* For single row users, if you define just one row of spaces you can add additional empty columns, and they will be filled by fullscreen apps. | ||
* Notification graphic now smoothly floats above desktop transition. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
<head> | ||
<meta http-equiv="Refresh" content="0; url=/documentation"> | ||
<title>Redirect to /documentation</title> | ||
</head> | ||
<body> | ||
<a href="/documentation">/documentation</a> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 Documentation | ||
subtitle: Documentation | ||
--- | ||
|
||
## TotalSpaces2 provides a grid of spaces on your Mac | ||
|
||
<img src="/images/grid-view.png"> | ||
|
||
An easy to use 2D grid of desktops. Navigate using the cursor keys (by default together with SHIFT-ALT), choose your [transitions](/transitions2), and quickly access a [birds eye view](/overview2) of your grid of spaces where you can manage your application windows. You can even give your spaces names. | ||
|
||
Having a grid of spaces allows you to keep a mental picture of where each of your applications is, and to navigate easily and quickly between them. | ||
|
||
TotalSpaces2 lives in an icon in your menu bar, like this: | ||
|
||
<img src="/images/totalspaces-main-menu.png"> | ||
|
||
From there, you can control TotalSpaces2, and access the preferences where you can [set up your grid](/layout2), name your spaces, and configure your desktops just how you like them. | ||
|
||
TotalSpaces2 allows you to easily navigate between your spaces, by [**swiping**](/swipe2), with [**hotkeys**](/hotkeys2), or by just moving your mouse the the edge of the screen in the direction you wish to move. | ||
|
||
You'll see a helpful notification as you move between your spaces. | ||
|
||
<img src="/images/totalspaces-changing-space-notification2.png"> | ||
|
||
**« For more info please select a topic from the left-side menu** | ||
|
||
» Next [**Grid layout**](/layout2) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,114 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 Questions | ||
subtitle: Questions and answers | ||
--- | ||
|
||
0. [What systems will TotalSpaces run on?](#system-requirements) | ||
0. [Where is TotalSpaces?](#finding-totalspaces) | ||
0. [Help, I can't see the menu bar icon!](#menubar-icon) | ||
0. [How can I make a particular app stay on a particular desktop in the grid?](#app-assignments) | ||
0. [How can I uninstall TotalSpaces?](#uninstall) | ||
0. [Why are there no diagonal transitions?](#diagonal-transitions) | ||
0. [How can I turn on growl notifications?](#growl-notifications) | ||
0. [How can I make the transitions even faster than the slider allows?](#faster-transitions) | ||
0. [How can I make the notification graphic stay on the screen longer?](#longer-notifications) | ||
0. [How can I adjust the mouse-at-edge switch timing?](#mouse-edge-timings) | ||
0. [How can I change window positioning when dragging windows in the overview grid](#place-window-as-dropped) | ||
|
||
## <a id="system-requirements"></a>What systems will TotalSpaces2 run on? | ||
|
||
TotalSpaces2 is tested on **OSX Mavericks 10.9** and should work on any mac that can run this operating system. We also try to add support for new versions as soon as the betas are available. | ||
|
||
## <a id="finding-totalspaces"></a>Where is TotalSpaces2? | ||
|
||
TotalSpaces2 runs without an icon in the Dock, but instead an icon like this should appear in your menu bar. | ||
|
||
<img src="/images/menubar-icon.png"> | ||
|
||
## <a id="menubar-icon"></a>Help, I can't see the menu bar icon! | ||
|
||
There is an option to hide the menu bar icon, and perhaps this is turned on for some reason. In order to re-show the menu bar icon, double click on TotalSpaces2 in your Applications folder (as if to launch the app). This should tell the app to show the menu bar icon again. | ||
|
||
## <a id="app-assignments"></a>How can I make a particular app stay on a particular desktop in the grid? | ||
|
||
You can now do this from the [Apps preferences](/apps) | ||
|
||
## <a id="uninstall"></a>How can I uninstall TotalSpaces2? | ||
|
||
Use [the uninstaller](http://downloads.binaryage.com/TotalSpaces2Uninstaller.zip). | ||
|
||
TotalSpaces2 is a normal app that can be dragged to the Trash, except for one additional file that must be removed from /Library/ScriptingAdditions. | ||
|
||
The uninstaller will remove this file along with the app itself, as well as restarting Dock so that no trace of TotalSpaces2 remains running in the system. | ||
|
||
Note: TotalSpaces2 is built on top of Mission Control. Underneath TotalSpaces2, the desktops are normal OSX desktops. The uninstaller will not remove any desktops you have created whilst running TotalSpaces2, you must adjust your desktops how you like them in Mission Control once you have uninstalled TotalSpaces2. | ||
**TotalSpaces does not make any changes whatsoever to the system software or to OSX - once you have uninstalled it the system will be running only the original OSX software.** | ||
|
||
Final note: If you wish to be super-clean you can also remove the preferences files in ~/Library/Preferences/com.binaryage.TotalSpaces2.plist and ~/Library/Preferences/com.binaryage.totalspacescrashwatcher.plist | ||
|
||
## <a id="diagonal-transitions"></a>Why are there no diagonal transitions? | ||
|
||
As we have rewritten the system transitions for TotalSpaces2, it may be that we can support diagonal transitions for some of the animations in the future. | ||
|
||
## <a id="growl-notifications"></a>How can I turn on growl notifications? | ||
|
||
Use this command at the command line: | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 sendGrowlNotifications YES</code> | ||
|
||
then restart TotalSpaces2. | ||
|
||
Note that once you have turned on the notifications, then you can fully control them with the Growl app. | ||
|
||
There are three types of notification, one on space change, one on circulation, and one for when you asked to change space but you were at the edge of the grid (and circulation was turned off). They may be useful to play sound effects while navigating your grid. | ||
|
||
## <a id="faster-transitions"></a>How can I make the transitions even faster than the slider allows? | ||
|
||
Use this command at the command line: | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 transitionSpeed 115</code> | ||
|
||
then restart TotalSpaces2. | ||
|
||
The normal preferences slider goes to 110, but 130 is the hard limit; do not set it higher - anyway you won't even see the transitions at that speed. | ||
|
||
Note that there is a small built in delay after you press the hotkey that is unavoidable with transitions - they take a little time to set up. | ||
|
||
## <a id="longer-notifications"></a>How can I make the notification graphic stay on the screen longer? | ||
|
||
You can use this command at the command line: | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 notificationDuration 1.0</code> | ||
|
||
then restart TotalSpaces2. | ||
|
||
The value is in seconds, and should be between 0.25 and 3.0. The default value is 0.85. | ||
|
||
## <a id="mouse-edge-timings"></a>How can I adjust the mouse-at-edge switch timing? | ||
|
||
You can adjust the dwell and repeat period for triggering [space changes by bringing your mouse to the edge of the screen](/mouse-edges2). | ||
|
||
Here are the settings: | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 sideSwitchDelay 1.5</code> | ||
|
||
The range is 0.1 - 20.0, the default is 1.1 seconds. This setting also affects how quickly you can drag windows from desktop to desktop. | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 sideSwitchDelayWithModkeys 0.5</code> | ||
|
||
The range is 0.01 - 20.0, the default is 0.3 seconds. | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 sideSwitchRepeatDelay 1.2</code> | ||
|
||
The range is 0.5 - 3.5, the default is 1.0 seconds. | ||
|
||
Don't forget to restart TotalSpaces2 after you have changed these settings. | ||
|
||
## <a id="place-window-as-dropped"></a>How can I change window positioning when dragging windows in the overview grid | ||
|
||
Normally windows stay where you drop them in the overview grid, but pressing the ALT (option) key whilst dragging will cause the windows to retain their original position, so will be positioned as they were in the space the window came from. | ||
|
||
You can swap this behaviour so that keeping the position is the default, and pressing the ALT key will allow the to be dropped in an exact position by using this commend, then restarting TotalSpaces. | ||
|
||
<code>defaults write com.binaryage.TotalSpaces2 placeWindowsAsDroppedByDefault NO</code> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
--- | ||
layout: ts2-doc | ||
title: Free licenses for TotalSpaces2 | ||
subtitle: Free licenses for TotalSpaces2 | ||
--- | ||
|
||
## Free licenses for users | ||
|
||
I will grant a free license to everyone who meets any of these criteria: | ||
|
||
1. **helped directly** in TotalSpaces2 development, or in development of its forerunners TotalSpaces, ReSpaceApp and ChangeSpace.app | ||
2. created or significantly **contributed to an open-source project** I've used in TotalSpaces2 | ||
3. is **a public speaker** and sends me a link to his/her talk (must be recorded and publicly available on youtube or similar site) | ||
4. is **a Google engineer** with a valid `[email protected]` email address<br>- this is my "thanks" for the Chrome project and great meals | ||
5. is **an Apple employee** with a valid `[email protected]` email address<br>- this is my general "thank you" for making awesome products | ||
6. feels that he/she should get a free license for **some other reason** and convinces me | ||
|
||
Please [drop me an email](mailto:[email protected]?subject=Free%20TotalSpaces%20license%20request) and I will send you a free license link if you meet the criteria. | ||
|
||
## Free licenses for the press | ||
|
||
Journalists and bloggers may apply for a TotalSpaces2 license if they plan to review it. | ||
|
||
I love to read articles about TotalSpaces2 and I will be happy to [give you a NFR license](mailto:[email protected]?subject=NFR%20TotalSpaces%20license%20request) in exchange. | ||
|
||
For your articles you may grab any graphics assets you see around. You may also browse these public github projects: | ||
|
||
* [http://github.com/binaryage/shared/tree/master/img/](http://github.com/binaryage/shared/tree/master/img/) | ||
* [http://github.com/binaryage/totalspaces-web/tree/gh-pages/images/](http://github.com/binaryage/totalfinder-web/tree/gh-pages/images/) | ||
* [http://github.com/binaryage/blog/tree/gh-pages/images/](http://github.com/binaryage/blog/tree/gh-pages/images/) | ||
|
||
**Thank you!** |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 Full screen desktops | ||
subtitle: Full screen desktops | ||
--- | ||
|
||
TotalSpaces2 fully supports full screen apps, and they will appear in your [overview grid](/overview2). When you make an app fullscreen, it will be added as a new item in your grid, making a new row at the bottom if needed. | ||
|
||
You can drag your fullscreen desktops to the position you want them in the [overview grid](/overview2). | ||
|
||
<img src="/images/overview-grid-with-fullscreen-ts2.png"> | ||
|
||
» Next [**Overview grid app**](/overview-grid-app2) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 Hot corners | ||
subtitle: Hot corners | ||
--- | ||
|
||
TotalSpaces2 allows you to set a hot corner for opening the Overview Grid, the birds-eye view of your desktops. You can also set a hotcorner to toggle the windows exposé mode once in the overview grid, or to directly open the grid in exposé mode. | ||
|
||
A hotcorner works simply by bringing your mouse down to the corner you have selected. | ||
|
||
<img src="/images/hotcorners-preferences-ts2.png" class="prefs-screenshot"> | ||
|
||
You can also dismiss the overview grid or exposé by triggering the hot corner once again. | ||
|
||
» Next [**App assignments**](/apps2) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
--- | ||
layout: ts2-doc | ||
title: TotalSpaces2 Hotkeys | ||
subtitle: Hotkeys | ||
--- | ||
|
||
TotalSpaces2 allows you to set hotkeys for going Left, Right, Up and Down in your grid of desktops, and for opening the [Overview Grid](/overview2). | ||
|
||
You can also choose to use the center or 3rd button to trigger the grid if you have a 3 button mouse, or even the 4th or 5th buttons if you have those. | ||
|
||
And you can set a hotkey to open the [Overview Grid](/overview2) and have it switch immediately to Exposé mode. | ||
|
||
<img src="/images/hotkeys-preferences-ts2.png" class="prefs-screenshot"> | ||
|
||
You can click inside the hotkey recorder to change the hotkey setting. | ||
|
||
Some hotkey combinations are already reserved - TotalSpaces will warn you about this if it's the case, and give you the option to try to force assignment of the hotkey, as some system hotkeys are still marked as reserved by the system even when they are not being used. | ||
|
||
You can also set hotkeys for going to a particular space by clicking the spaces in [Layout preferences](/layout2). | ||
|
||
You cannot change the Toggle exposé key, it is displayed for information only. | ||
|
||
» Next [**Swiping**](/swipe2) |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.