Changesets: occt

master 0493ffd0

2019-02-27 16:39:08

asl


Committer: apn Details Diff
0029787: Visualization - Avoid in presentation edges of certain continuity class

A new flag Prs3d_Drawer::FaceBoundaryUpperContinuity() has been introduced
handled by StdPrs_ShadedShape::FillFaceBoundaries() method to exclude edges
of higher continuity class (e.g. to skip seam edges).

Draw Harness command vshowfaceboundary has been replaced by vaspects:
> vaspects -setFaceBoundaryDraw 1 -setFaceBoundaryColor RED -setFaceBoundaryType DASH.
mod - samples/tcl/ANC101.tcl Diff File
mod - samples/tcl/cad.tcl Diff File
mod - samples/tcl/MBBGehauseRohteil.tcl Diff File
mod - src/AIS/AIS_ColoredShape.cxx Diff File
mod - src/BRep/BRep_Tool.cxx Diff File
mod - src/BRep/BRep_Tool.hxx Diff File
mod - src/Prs3d/Prs3d_Drawer.cxx Diff File
mod - src/Prs3d/Prs3d_Drawer.hxx Diff File
mod - src/StdPrs/StdPrs_ShadedShape.cxx Diff File
mod - src/StdPrs/StdPrs_ShadedShape.hxx Diff File
mod - src/ViewerTest/ViewerTest.cxx Diff File
mod - src/ViewerTest/ViewerTest_ObjectCommands.cxx Diff File
mod - tests/bugs/vis/bug23407_2 Diff File
mod - tests/bugs/vis/bug25060 Diff File
mod - tests/bugs/vis/bug25071 Diff File
mod - tests/bugs/vis/bug27083 Diff File
mod - tests/bugs/vis/bug27821 Diff File
add - tests/bugs/vis/bug29787 Diff File
mod - tests/v3d/raytrace/bug26070 Diff File

master 4ec8ee66

2019-02-27 14:02:37

pdn


Committer: apn Details Diff
0030356: Data Exchange - IGES model after importing into document has location issues
mod - src/IGESCAFControl/IGESCAFControl_Reader.cxx Diff File
add - tests/bugs/iges/bug30356 Diff File
mod - tests/de/iges_2/F4 Diff File
mod - tests/de/iges_2/F5 Diff File
mod - tests/de/iges_2/F6 Diff File

master d84b49c7

2019-02-26 11:06:30

emv


Committer: apn Details Diff
0030522: Modeling Algorithms - BRepBuilderAPI_MakeWire produces different wires depending on the order of parameters

The following improvements have been implemented in BRepLib_MakeWire class to make it more reliable:
1. Quit adding edges of a wire into result if the current edges have not been added. Return NotDone status.
2. Allow merging not only bounding vertices (connected to only one edge) but also the middle ones, so the multi-connected vertices may appear in the result.

Test case for the issue.
mod - src/BRepLib/BRepLib_MakeWire.cxx Diff File
mod - src/BRepLib/BRepLib_MakeWire.hxx Diff File
mod - src/BRepLib/BRepLib_MakeWire_1.cxx Diff File
add - tests/bugs/modalg_7/bug30522 Diff File

master d95f5ce1

2019-02-26 10:56:03

asl


Committer: apn Details Diff
0029810: Visualization - Tool for debugging shaders

A new tool for debugging shaders has been introduced.
The new method OpenGl_ShaderProgram::UpdateDebugDump() allows dynamically
dumping/restoring certain shader program (vertex and fragment shaders) to/from external file.

The file name is generated from the program's name with suffix ".vs" or ".fs" for shader type.
The environment variable CSF_ShadersDirectoryDump specifies the folder for dumps.

If the file does not exist (first frame), then it is automatically saved.
When the file date/time is changed in comparison with recent cached date,
then the file will be automatically loaded from external file,
thus this file can be modified in any editor.

OpenGl_ShaderManager now generates a human-readable resource ids for standard GLSL programs.

Draw Harness command vshader has been extended with arguments -list,-dump and -reload
for debugging shaders within OpenGl_Context.
mod - src/Graphic3d/Graphic3d_ShaderProgram.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderManager.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderManager.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderObject.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderObject.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.hxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_Raytrace.cxx Diff File
mod - src/Shaders/Declarations.glsl Diff File
mod - src/Shaders/DeclarationsImpl.glsl Diff File
mod - src/Shaders/Shaders_DeclarationsImpl_glsl.pxx Diff File
mod - src/Shaders/Shaders_Declarations_glsl.pxx Diff File
mod - src/ViewerTest/ViewerTest_OpenGlCommands.cxx Diff File

master 3bb61eb0

2019-02-26 10:07:09

abv


Committer: abv Details Diff
0029996: Porting to VC 2017: memory leak reported in visualisation

Tests for memory leaks on display / erase cycles are performed with VBO disabled to avoid false memory leaks reported on NVidia graphics
Affected Issues
0029996
mod - tests/bugs/vis/bug172 Diff File
mod - tests/bugs/vis/bug79 Diff File

master 1e756cb9

2019-02-26 05:17:19

kgv


Committer: apn Details Diff
0030520: VIS - IVtkTools_ShapePicker::GetPickPosition() returns incorrect point

vmoveto and ivtkmoveto commands now print topmost picked 3D point.
Affected Issues
0030520
mod - src/IVtkDraw/IVtkDraw.cxx Diff File
mod - src/IVtkDraw/IVtkDraw_Interactor.hxx Diff File
mod - src/IVtkOCC/IVtkOCC_ShapePickerAlgo.cxx Diff File
mod - src/IVtkOCC/IVtkOCC_ShapePickerAlgo.hxx Diff File
mod - src/IVtkTools/IVtkTools_ShapePicker.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File

master 5d003862

2019-02-25 12:53:27

emv


Committer: apn Details Diff
0030490: Modeling Algorithms - Incomplete result of Cut operation

The problem is fixed by the fix for the issue #0027448, thus integrating the test case only.
add - tests/bugs/modalg_7/bug30490 Diff File

master 0be7dbe1

2019-02-25 09:52:01

BenjaminBihler


Committer: apn Details Diff
0030448: Coding - add typo detection to derivation creation methods using Standard_NODISCARD attribute

Added macro Standard_NODISCARD equivalent to C++17 attribute [[nodiscard]] for compilers that support this.
Using Standard_NODISCARD macro for methods that create new object in gp, math, Geom, Bnd packages.
Marked equivalent operators with Standard_NODISCARD, if they are defined close to relevant methods.

Corrected code where warnings on unused result of calls to methods creating new objects are generated.
In most cases it looks like spelling errors (e.g. Normalised() instead of Normalise())
Affected Issues
0030448
mod - dox/resources/occt_rm.doxyfile Diff File
mod - src/Bnd/Bnd_B2d.hxx Diff File
mod - src/Bnd/Bnd_B2f.hxx Diff File
mod - src/Bnd/Bnd_B3d.hxx Diff File
mod - src/Bnd/Bnd_B3f.hxx Diff File
mod - src/Bnd/Bnd_Box.hxx Diff File
mod - src/Bnd/Bnd_Box2d.hxx Diff File
mod - src/ChFi3d/ChFi3d_Builder_2.cxx Diff File
mod - src/Contap/Contap_ArcFunction.cxx Diff File
mod - src/Extrema/Extrema_ExtPElS.cxx Diff File
mod - src/Geom/Geom_Axis1Placement.hxx Diff File
mod - src/Geom/Geom_Curve.hxx Diff File
mod - src/Geom/Geom_Geometry.hxx Diff File
mod - src/Geom/Geom_Surface.hxx Diff File
mod - src/Geom/Geom_Transformation.hxx Diff File
mod - src/Geom/Geom_Vector.hxx Diff File
mod - src/Geom/Geom_VectorWithMagnitude.hxx Diff File
mod - src/Geom2d/Geom2d_AxisPlacement.hxx Diff File
mod - src/Geom2d/Geom2d_Curve.hxx Diff File
mod - src/Geom2d/Geom2d_Geometry.hxx Diff File
mod - src/Geom2d/Geom2d_Transformation.hxx Diff File
mod - src/Geom2d/Geom2d_Vector.hxx Diff File
mod - src/Geom2d/Geom2d_VectorWithMagnitude.cxx Diff File
mod - src/Geom2d/Geom2d_VectorWithMagnitude.hxx Diff File
mod - src/GeomFill/GeomFill_GuideTrihedronPlan.cxx Diff File
mod - src/GeomFill/GeomFill_TgtOnCoons.cxx Diff File
mod - src/gp/gp_Ax1.hxx Diff File
mod - src/gp/gp_Ax2.hxx Diff File
mod - src/gp/gp_Ax22d.hxx Diff File
mod - src/gp/gp_Ax2d.hxx Diff File
mod - src/gp/gp_Ax3.hxx Diff File
mod - src/gp/gp_Circ.hxx Diff File
mod - src/gp/gp_Circ2d.hxx Diff File
mod - src/gp/gp_Cone.hxx Diff File
mod - src/gp/gp_Cylinder.hxx Diff File
mod - src/gp/gp_Dir.hxx Diff File
mod - src/gp/gp_Dir2d.hxx Diff File
mod - src/gp/gp_Elips.hxx Diff File
mod - src/gp/gp_Elips2d.hxx Diff File
mod - src/gp/gp_GTrsf.hxx Diff File
mod - src/gp/gp_GTrsf2d.hxx Diff File
mod - src/gp/gp_Hypr.hxx Diff File
mod - src/gp/gp_Hypr2d.hxx Diff File
mod - src/gp/gp_Lin.hxx Diff File
mod - src/gp/gp_Lin2d.hxx Diff File
mod - src/gp/gp_Mat.hxx Diff File
mod - src/gp/gp_Mat2d.hxx Diff File
mod - src/gp/gp_Parab.hxx Diff File
mod - src/gp/gp_Parab2d.hxx Diff File
mod - src/gp/gp_Pln.hxx Diff File
mod - src/gp/gp_Pnt.hxx Diff File
mod - src/gp/gp_Pnt2d.hxx Diff File
mod - src/gp/gp_Quaternion.hxx Diff File
mod - src/gp/gp_Sphere.hxx Diff File
mod - src/gp/gp_Torus.hxx Diff File
mod - src/gp/gp_Trsf.hxx Diff File
mod - src/gp/gp_Trsf2d.hxx Diff File
mod - src/gp/gp_Vec.hxx Diff File
mod - src/gp/gp_Vec2d.hxx Diff File
mod - src/gp/gp_XY.hxx Diff File
mod - src/gp/gp_XYZ.hxx Diff File
mod - src/IntImpParGen/IntImpParGen.cxx Diff File
mod - src/IntImpParGen/IntImpParGen_Tool.cxx Diff File
mod - src/math/math_IntegerVector.hxx Diff File
mod - src/math/math_Matrix.hxx Diff File
mod - src/math/math_Vector.hxx Diff File
mod - src/ShapeAnalysis/ShapeAnalysis_TransferParametersProj.cxx Diff File
mod - src/Standard/Standard_Macro.hxx Diff File
mod - src/TopLoc/TopLoc_Location.hxx Diff File
mod - src/Units/Units_Token.hxx Diff File

master 4efe27fc

2019-02-21 09:49:05

jfa


Committer: apn Details Diff
0030510: Application Framework - add missing NULL check within TDataStd_RealArray::ChangeArray()
mod - src/TDataStd/TDataStd_RealArray.cxx Diff File
add - tests/bugs/caf/bug30510 Diff File

master f522ce50

2019-02-21 09:32:33

anv


Committer: apn Details Diff
0030532: Visualization - Manipulator for dragging within a plane

Added dragging sectors to Manipulator presentation.
Test added.
mod - src/AIS/AIS_Manipulator.cxx Diff File
mod - src/AIS/AIS_Manipulator.hxx Diff File
mod - src/AIS/AIS_ManipulatorMode.hxx Diff File
mod - src/Prs3d/FILES Diff File
add - src/Prs3d/Prs3d_ToolSector.cxx Diff File
add - src/Prs3d/Prs3d_ToolSector.hxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
add - tests/v3d/manipulator/dragg Diff File
mod - tests/v3d/manipulator/translate Diff File

master ea298f59

2019-02-20 21:23:19

kgv


Committer: apn Details Diff
0030384: Visualization - Won't display line with dot and dash style on Android

Fix misprint leading to double semicolon in GLSL code.
Affected Issues
0030384
mod - src/OpenGl/OpenGl_ShaderManager.cxx Diff File

master 78d5ea7a

2019-02-18 11:59:32

apn

Details Diff
0030498: Warnings of building documentation

Fix warning 'Reached end of file while still insided a (nested) comment in Markdown' for old versions of doxygen
Affected Issues
0030498
mod - dox/dev_guides/upgrade/upgrade.md Diff File
mod - samples/qt/AndroidQt/ReadMe.md Diff File

master e607bd3e

2019-02-15 08:27:15

kgv


Committer: apn Details Diff
0028488: VIS - fix compilation with VTK 8.2

Occurrences of removed method vtkDataArray::InsertNextTupleValue() have been replaced by InsertNextTypedTuple().
Fixed misprint in vtkTypeMacro usage for class IVtkTools_ShapeObject.
Patch 0030452 (SelectMgr_ViewerSelector::Deactivate() raises exception when called twice) has been propagated to IVtkOCC_ViewerSelector.
Affected Issues
0028488
mod - src/IVtkOCC/IVtkOCC_ViewerSelector.cxx Diff File
mod - src/IVtkTools/IVtkTools_ShapeObject.hxx Diff File
mod - src/IVtkVTK/IVtkVTK_ShapeData.cxx Diff File
mod - src/IVtkVTK/IVtkVTK_ShapeData.hxx Diff File

master 1c8fc6be

2019-02-12 09:22:26

kgv


Committer: apn Details Diff
0030493: Draw, ViewerTest - minor improvement of vdisplay command

vdisplay no longer opens BREP file in case if Draw variable is not found.

Draw::Get() unused Complain argument has been removed from method definition.
Added Draw::GetExisting() and DBRep::GetExisting() commands never performing picking.
mod - src/DBRep/DBRep.cxx Diff File
mod - src/DBRep/DBRep.hxx Diff File
mod - src/DDataStd/DDataStd_DrawDisplayCommands.cxx Diff File
mod - src/DDataStd/DDataStd_TreeCommands.cxx Diff File
mod - src/DDF/DDF.cxx Diff File
mod - src/DDF/DDF_BrowserCommands.cxx Diff File
mod - src/DDocStd/DDocStd.cxx Diff File
mod - src/DDocStd/DDocStd_ApplicationCommands.cxx Diff File
mod - src/DDocStd/DDocStd_MTMCommands.cxx Diff File
mod - src/DNaming/DNaming_ToolsCommands.cxx Diff File
mod - src/Draw/Draw.hxx Diff File
mod - src/Draw/Draw_VariableCommands.cxx Diff File
mod - src/QABugs/QABugs_1.cxx Diff File
mod - src/QABugs/QABugs_3.cxx Diff File
mod - src/QADNaming/QADNaming_ToolsCommands.cxx Diff File
mod - src/ViewerTest/ViewerTest.cxx Diff File
mod - src/ViewerTest/ViewerTest_FilletCommands.cxx Diff File
mod - src/XDEDRAW/XDEDRAW.cxx Diff File

master 597fde68

2019-02-12 06:37:30

kgv


Committer: apn Details Diff
0030494: Coding Rules - eliminate declaration of OpenGl_Workspace::IsCullingEnabled() Affected Issues
0030494
mod - src/OpenGl/OpenGl_Workspace.hxx Diff File

master e084dbbc

2019-02-11 15:00:35

kgv


Committer: apn Details Diff
0030476: Visualization, Path Tracing - Adaptive Screen Sampling leads to unstable results

OpenGl_View::runPathtrace() has been extended with alternative multi-pass
Adaptive Screen Sampling mode, not relying on atomic floating point operations.
Although atomic operations on floats allows single-pass rendering,
such operations leads to instability in case of different calculation order.
Atomic float operations are also currently supported only by single GPU vendor.

Fixed GLSL compilation on Intel drivers (follow ARB_shader_image_load_store
specs rather than EXT_shader_image_load_store).

Graphic3d_RenderingParams::AdaptiveScreenSamplingAtomic option has been added
to activate 1-pass Adaptive Screen Sampling mode when supported by hardware.

vfps command has been extended with -duration argument allowing to limit command execution time.
vactivate command has been extended with -noUpdate argument.
Affected Issues
0030476
mod - src/Graphic3d/Graphic3d_RenderingParams.hxx Diff File
mod - src/Graphic3d/Graphic3d_TypeOfLimit.hxx Diff File
mod - src/OpenGl/OpenGl_Context.cxx Diff File
mod - src/OpenGl/OpenGl_Context.hxx Diff File
mod - src/OpenGl/OpenGl_FrameStats.cxx Diff File
mod - src/OpenGl/OpenGl_GraphicDriver.cxx Diff File
mod - src/OpenGl/OpenGl_TileSampler.cxx Diff File
mod - src/OpenGl/OpenGl_TileSampler.hxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_Raytrace.cxx Diff File
mod - src/Shaders/Display.fs Diff File
mod - src/Shaders/RaytraceBase.fs Diff File
mod - src/Shaders/RaytraceRender.fs Diff File
mod - src/Shaders/Shaders_Display_fs.pxx Diff File
mod - src/Shaders/Shaders_RaytraceBase_fs.pxx Diff File
mod - src/Shaders/Shaders_RaytraceRender_fs.pxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands_1.mm Diff File

master 5ac0f989

2019-02-11 09:01:40

kgv


Committer: apn Details Diff
0030477: Visualization - crash in AIS_Manipulator::ObjectTransformation after using V3d_View::SetProj(V3d_Zpos) Affected Issues
0030477
mod - src/AIS/AIS_Manipulator.cxx Diff File

master 1ccc1371

2019-02-08 22:38:28

kgv


Committer: apn Details Diff
0030486: Visualization - Rubber-band selection does not work with disabled overlap detection

SelectMgr_RectangularFrustum::Overlaps() now treats degenerated polygon as point instead of returning FALSE.
Affected Issues
0030486
mod - src/SelectMgr/SelectMgr_RectangularFrustum.cxx Diff File

master 458ff6a6

2019-02-08 14:29:55

abv


Committer: apn Details Diff
0030129: With newest doxygen 1.8.14 generation of overview gives warnings

Doxygen configuration scripts are corrected to avoid '\n' symbols in the end of the @figure alias that caused multiple warning messages.
Other Doxygen warnings in Markdown files are eliminated.
In CMake builds the format of Doxygen warnings is set to use the style recognized by Visual Studio when compiler is MSVC.
Affected Issues
0030129
mod - dox/CMakeLists.txt Diff File
mod - dox/resources/occt_ug_html.doxyfile Diff File
mod - dox/resources/occt_ug_pdf.doxyfile Diff File
mod - dox/user_guides/iges/iges.md Diff File

master 2bda8346

2019-02-07 14:24:47

kgv


Committer: apn Details Diff
0030488: Visualization, Ray Tracing - empty error message on GLSL program compilation

OpenGl_ShaderObject::LoadAndCompile() - added method combining Load() and Compile() with optional error logging.
OpenGl_ShaderProgram::Link() now logs failures by default.
Affected Issues
0030488
mod - src/OpenGl/OpenGl_ShaderObject.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderObject.hxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.hxx Diff File
mod - src/OpenGl/OpenGl_View_Raytrace.cxx Diff File

master a7ced2a4

2019-02-06 17:20:47

nds


Committer: bugmaster Details Diff
0030480: Visualization - Clear of Select3D_SensitiveGroup does not update internal container Affected Issues
0030480
mod - src/Select3D/Select3D_SensitiveGroup.cxx Diff File

master 66d1cdc6

2019-02-06 16:21:23

kgv


Committer: apn Details Diff
0030483: Visualization, Path Tracing - make Tile Size configurable

OpenGl_TileSampler has been refactored to better describe its logic:
- Offset image now defines tile index instead of offset to tile origin.
- Added 2D array defining the number of times to sample tile for straight-forward debugging.

Graphic3d_RenderingParams has been extended with property
RayTracingTileSize for testing various tile configurations.
Default behavior is the following:
- Target number of tiles (e.g. upper limit per frame): 256
- Tile size: 32x32.

OpenGl_View::runPathtrace() has been split into two methods per rendering stage.
OpenGl_Texture::Init() now returns FALSE immediately on 0 input dimensions.

Added Image_PixMapTypedData template class allowing to work with image data of known pixel format.
Affected Issues
0030483
mod - src/Graphic3d/Graphic3d_RenderingParams.hxx Diff File
mod - src/Image/FILES Diff File
mod - src/Image/Image_PixMapData.hxx Diff File
add - src/Image/Image_PixMapTypedData.hxx Diff File
mod - src/OpenGl/OpenGl_Texture.cxx Diff File
mod - src/OpenGl/OpenGl_TileSampler.cxx Diff File
mod - src/OpenGl/OpenGl_TileSampler.hxx Diff File
mod - src/OpenGl/OpenGl_View.hxx Diff File
mod - src/OpenGl/OpenGl_View_Raytrace.cxx Diff File
mod - src/OpenGl/OpenGl_View_Redraw.cxx Diff File
mod - src/Shaders/Display.fs Diff File
mod - src/Shaders/RaytraceBase.fs Diff File
mod - src/Shaders/RaytraceRender.fs Diff File
mod - src/Shaders/Shaders_Display_fs.pxx Diff File
mod - src/Shaders/Shaders_RaytraceBase_fs.pxx Diff File
mod - src/Shaders/Shaders_RaytraceRender_fs.pxx Diff File
mod - src/ViewerTest/ViewerTest_ViewerCommands.cxx Diff File

master ab9f6cab

2019-02-06 12:02:48

bugmaster

Details Diff
0028936: Draw freezes while making a 3d representation

Adding testing case
add - tests/bugs/vis/bug28936 Diff File

master 92435cd0

2019-02-06 09:29:21

kgv


Committer: apn Details Diff
0030478: Foundation Classes, NCollection_Array2 - provide Resize/Move methods consistent to NCollection_Array1 Affected Issues
0030478
mod - src/NCollection/NCollection_Array2.hxx Diff File
mod - src/QANCollection/QANCollection_Test.cxx Diff File

master e08a9b03

2019-02-05 11:58:41

emv


Committer: apn Details Diff
0030470: Modeling Algorithms - Invalid result of offset operation in mode "Complete" with join type "Intersection"

The fix is intended to obtain the correct result of offset operation in which the result contained only the small inverse part of the shape, which clearly should not have been included in the result at all.

The fix adds treatment of the inverted edges while removing the inside faces (collapsed ones) - RemoveInsideFaces method:
- Removing the invalid hanging blocks containing the inverted edges.
- Considering the face containing the inverted edges as the invalid one.

Test cases for the issue.
mod - src/BRepOffset/BRepOffset_MakeOffset_1.cxx Diff File
mod - tests/offset/shape_type_i_c/begin Diff File
add - tests/offset/shape_type_i_c/XS4 Diff File
add - tests/offset/shape_type_i_c/XS5 Diff File
add - tests/offset/shape_type_i_c/XS6 Diff File
add - tests/offset/shape_type_i_c/XS7 Diff File
add - tests/offset/shape_type_i_c/XS8 Diff File
add - tests/offset/shape_type_i_c/XS9 Diff File
add - tests/offset/shape_type_i_c/XT1 Diff File
add - tests/offset/shape_type_i_c/XT2 Diff File
mod - tests/offset/shape_type_i_c/ZC7 Diff File
 First  Prev  1 2 3 ... 30 ... 60 61 62 63 64 65 66 67 ... 90 ... 120 ... 150 ... 180 ... 210 ... 240 ... 254 255 256  Next  Last